From b1a6c0bf30eaaff69eea8a57f5e34885bebe8b00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=8BLaraib=20Khan?= <​laraib.khan@lampromellon.com> Date: Tue, 22 Dec 2020 16:51:17 +0500 Subject: [PATCH] rvclkhdr with scan mode=0 --- lsu_clkdomain.fir | 4 +- lsu_clkdomain.v | 65 ++++-------------- src/main/scala/lib/lib.scala | 2 +- .../classes/lib/lib$rvclkhdr$.class | Bin 5453 -> 5684 bytes 4 files changed, 17 insertions(+), 54 deletions(-) diff --git a/lsu_clkdomain.fir b/lsu_clkdomain.fir index 448757c7..5cf2616e 100644 --- a/lsu_clkdomain.fir +++ b/lsu_clkdomain.fir @@ -414,7 +414,7 @@ circuit lsu_clkdomain : rvclkhdr_8.reset <= reset rvclkhdr_8.io.clk <= clock @[lib.scala 344:17] rvclkhdr_8.io.en <= _T_37 @[lib.scala 345:16] - rvclkhdr_8.io.scan_mode <= io.scan_mode @[lib.scala 346:23] + rvclkhdr_8.io.scan_mode <= UInt<1>("h00") @[lib.scala 346:23] io.lsu_bus_obuf_c1_clk <= rvclkhdr_8.io.l1clk @[lsu_clkdomain.scala 95:26] node _T_38 = bits(lsu_bus_buf_c1_clken, 0, 0) @[lsu_clkdomain.scala 96:66] inst rvclkhdr_9 of rvclkhdr_9 @[lib.scala 352:22] @@ -430,7 +430,7 @@ circuit lsu_clkdomain : rvclkhdr_10.reset <= reset rvclkhdr_10.io.clk <= clock @[lib.scala 344:17] rvclkhdr_10.io.en <= _T_39 @[lib.scala 345:16] - rvclkhdr_10.io.scan_mode <= io.scan_mode @[lib.scala 346:23] + rvclkhdr_10.io.scan_mode <= UInt<1>("h00") @[lib.scala 346:23] io.lsu_busm_clk <= rvclkhdr_10.io.l1clk @[lsu_clkdomain.scala 97:26] node _T_40 = bits(lsu_free_c2_clken, 0, 0) @[lsu_clkdomain.scala 98:63] inst rvclkhdr_11 of rvclkhdr_11 @[lib.scala 352:22] diff --git a/lsu_clkdomain.v b/lsu_clkdomain.v index 036fe5f4..bb81a8fe 100644 --- a/lsu_clkdomain.v +++ b/lsu_clkdomain.v @@ -1,8 +1,7 @@ module rvclkhdr( output io_l1clk, input io_clk, - input io_en, - input io_scan_mode + input io_en ); wire clkhdr_Q; // @[lib.scala 334:26] wire clkhdr_CK; // @[lib.scala 334:26] @@ -17,7 +16,7 @@ module rvclkhdr( assign io_l1clk = clkhdr_Q; // @[lib.scala 335:14] assign clkhdr_CK = io_clk; // @[lib.scala 336:18] assign clkhdr_EN = io_en; // @[lib.scala 337:18] - assign clkhdr_SE = io_scan_mode; // @[lib.scala 338:18] + assign clkhdr_SE = 1'h0; // @[lib.scala 338:18] endmodule module lsu_clkdomain( input clock, @@ -110,51 +109,39 @@ module lsu_clkdomain( wire rvclkhdr_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_io_clk; // @[lib.scala 352:22] wire rvclkhdr_io_en; // @[lib.scala 352:22] - wire rvclkhdr_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_1_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_1_io_clk; // @[lib.scala 352:22] wire rvclkhdr_1_io_en; // @[lib.scala 352:22] - wire rvclkhdr_1_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_2_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_2_io_clk; // @[lib.scala 352:22] wire rvclkhdr_2_io_en; // @[lib.scala 352:22] - wire rvclkhdr_2_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_3_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_3_io_clk; // @[lib.scala 352:22] wire rvclkhdr_3_io_en; // @[lib.scala 352:22] - wire rvclkhdr_3_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_4_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_4_io_clk; // @[lib.scala 352:22] wire rvclkhdr_4_io_en; // @[lib.scala 352:22] - wire rvclkhdr_4_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_5_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_5_io_clk; // @[lib.scala 352:22] wire rvclkhdr_5_io_en; // @[lib.scala 352:22] - wire rvclkhdr_5_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_6_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_6_io_clk; // @[lib.scala 352:22] wire rvclkhdr_6_io_en; // @[lib.scala 352:22] - wire rvclkhdr_6_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_7_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_7_io_clk; // @[lib.scala 352:22] wire rvclkhdr_7_io_en; // @[lib.scala 352:22] - wire rvclkhdr_7_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_8_io_l1clk; // @[lib.scala 343:22] wire rvclkhdr_8_io_clk; // @[lib.scala 343:22] wire rvclkhdr_8_io_en; // @[lib.scala 343:22] - wire rvclkhdr_8_io_scan_mode; // @[lib.scala 343:22] wire rvclkhdr_9_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_9_io_clk; // @[lib.scala 352:22] wire rvclkhdr_9_io_en; // @[lib.scala 352:22] - wire rvclkhdr_9_io_scan_mode; // @[lib.scala 352:22] wire rvclkhdr_10_io_l1clk; // @[lib.scala 343:22] wire rvclkhdr_10_io_clk; // @[lib.scala 343:22] wire rvclkhdr_10_io_en; // @[lib.scala 343:22] - wire rvclkhdr_10_io_scan_mode; // @[lib.scala 343:22] wire rvclkhdr_11_io_l1clk; // @[lib.scala 352:22] wire rvclkhdr_11_io_clk; // @[lib.scala 352:22] wire rvclkhdr_11_io_en; // @[lib.scala 352:22] - wire rvclkhdr_11_io_scan_mode; // @[lib.scala 352:22] wire _T = io_lsu_p_valid | io_dma_dccm_req; // @[lsu_clkdomain.scala 64:47] wire lsu_c1_m_clken = _T | io_clk_override; // @[lsu_clkdomain.scala 64:65] reg lsu_c1_m_clken_q; // @[lsu_clkdomain.scala 84:67] @@ -185,74 +172,62 @@ module lsu_clkdomain( rvclkhdr rvclkhdr ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_io_l1clk), .io_clk(rvclkhdr_io_clk), - .io_en(rvclkhdr_io_en), - .io_scan_mode(rvclkhdr_io_scan_mode) + .io_en(rvclkhdr_io_en) ); rvclkhdr rvclkhdr_1 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_1_io_l1clk), .io_clk(rvclkhdr_1_io_clk), - .io_en(rvclkhdr_1_io_en), - .io_scan_mode(rvclkhdr_1_io_scan_mode) + .io_en(rvclkhdr_1_io_en) ); rvclkhdr rvclkhdr_2 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_2_io_l1clk), .io_clk(rvclkhdr_2_io_clk), - .io_en(rvclkhdr_2_io_en), - .io_scan_mode(rvclkhdr_2_io_scan_mode) + .io_en(rvclkhdr_2_io_en) ); rvclkhdr rvclkhdr_3 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_3_io_l1clk), .io_clk(rvclkhdr_3_io_clk), - .io_en(rvclkhdr_3_io_en), - .io_scan_mode(rvclkhdr_3_io_scan_mode) + .io_en(rvclkhdr_3_io_en) ); rvclkhdr rvclkhdr_4 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_4_io_l1clk), .io_clk(rvclkhdr_4_io_clk), - .io_en(rvclkhdr_4_io_en), - .io_scan_mode(rvclkhdr_4_io_scan_mode) + .io_en(rvclkhdr_4_io_en) ); rvclkhdr rvclkhdr_5 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_5_io_l1clk), .io_clk(rvclkhdr_5_io_clk), - .io_en(rvclkhdr_5_io_en), - .io_scan_mode(rvclkhdr_5_io_scan_mode) + .io_en(rvclkhdr_5_io_en) ); rvclkhdr rvclkhdr_6 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_6_io_l1clk), .io_clk(rvclkhdr_6_io_clk), - .io_en(rvclkhdr_6_io_en), - .io_scan_mode(rvclkhdr_6_io_scan_mode) + .io_en(rvclkhdr_6_io_en) ); rvclkhdr rvclkhdr_7 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_7_io_l1clk), .io_clk(rvclkhdr_7_io_clk), - .io_en(rvclkhdr_7_io_en), - .io_scan_mode(rvclkhdr_7_io_scan_mode) + .io_en(rvclkhdr_7_io_en) ); rvclkhdr rvclkhdr_8 ( // @[lib.scala 343:22] .io_l1clk(rvclkhdr_8_io_l1clk), .io_clk(rvclkhdr_8_io_clk), - .io_en(rvclkhdr_8_io_en), - .io_scan_mode(rvclkhdr_8_io_scan_mode) + .io_en(rvclkhdr_8_io_en) ); rvclkhdr rvclkhdr_9 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_9_io_l1clk), .io_clk(rvclkhdr_9_io_clk), - .io_en(rvclkhdr_9_io_en), - .io_scan_mode(rvclkhdr_9_io_scan_mode) + .io_en(rvclkhdr_9_io_en) ); rvclkhdr rvclkhdr_10 ( // @[lib.scala 343:22] .io_l1clk(rvclkhdr_10_io_l1clk), .io_clk(rvclkhdr_10_io_clk), - .io_en(rvclkhdr_10_io_en), - .io_scan_mode(rvclkhdr_10_io_scan_mode) + .io_en(rvclkhdr_10_io_en) ); rvclkhdr rvclkhdr_11 ( // @[lib.scala 352:22] .io_l1clk(rvclkhdr_11_io_l1clk), .io_clk(rvclkhdr_11_io_clk), - .io_en(rvclkhdr_11_io_en), - .io_scan_mode(rvclkhdr_11_io_scan_mode) + .io_en(rvclkhdr_11_io_en) ); assign io_lsu_bus_obuf_c1_clken = _T_9 & io_lsu_bus_clk_en; // @[lsu_clkdomain.scala 74:30] assign io_lsu_busm_clken = _T_24 & io_lsu_bus_clk_en; // @[lsu_clkdomain.scala 79:21] @@ -270,40 +245,28 @@ module lsu_clkdomain( assign io_lsu_free_c2_clk = rvclkhdr_11_io_l1clk; // @[lsu_clkdomain.scala 98:26] assign rvclkhdr_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_io_en = _T | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_1_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_1_io_en = _T_1 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_1_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_2_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_2_io_en = _T_2 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_2_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_3_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_3_io_en = _T_3 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_3_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_4_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_4_io_en = _T_4 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_4_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_5_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_5_io_en = _T_5 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_5_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_6_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_6_io_en = _T_7 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_6_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_7_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_7_io_en = io_lsu_busreq_r | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_7_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_8_io_clk = clock; // @[lib.scala 344:17] assign rvclkhdr_8_io_en = io_lsu_bus_obuf_c1_clken; // @[lib.scala 345:16] - assign rvclkhdr_8_io_scan_mode = io_scan_mode; // @[lib.scala 346:23] assign rvclkhdr_9_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_9_io_en = _T_13 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_9_io_scan_mode = 1'h0; // @[lib.scala 355:23] assign rvclkhdr_10_io_clk = clock; // @[lib.scala 344:17] assign rvclkhdr_10_io_en = io_lsu_busm_clken; // @[lib.scala 345:16] - assign rvclkhdr_10_io_scan_mode = io_scan_mode; // @[lib.scala 346:23] assign rvclkhdr_11_io_clk = clock; // @[lib.scala 353:17] assign rvclkhdr_11_io_en = _T_21 | io_clk_override; // @[lib.scala 354:16] - assign rvclkhdr_11_io_scan_mode = 1'h0; // @[lib.scala 355:23] `ifdef RANDOMIZE_GARBAGE_ASSIGN `define RANDOMIZE `endif diff --git a/src/main/scala/lib/lib.scala b/src/main/scala/lib/lib.scala index 798f5927..4d1f8c11 100644 --- a/src/main/scala/lib/lib.scala +++ b/src/main/scala/lib/lib.scala @@ -343,7 +343,7 @@ trait lib extends param{ val cg = Module(new rvclkhdr) cg.io.clk := clk cg.io.en := en - cg.io.scan_mode := scan_mode + cg.io.scan_mode := 0.U cg.io.l1clk } } diff --git a/target/scala-2.12/classes/lib/lib$rvclkhdr$.class b/target/scala-2.12/classes/lib/lib$rvclkhdr$.class index 0d0e9b9dface8162d5fbf88b1771612389d21fbf..aaf8ac8f2b5015308393f7191b45bda0a8134fc5 100644 GIT binary patch literal 5684 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 M@{2$v@OLufzjhD6NdN!<