quasar/dbg.fir

1281 lines
75 KiB
Plaintext
Raw Normal View History

2020-12-16 15:40:41 +08:00
;buildInfoPackage: chisel3, version: 3.3.1, scalaVersion: 2.12.11, sbtVersion: 1.3.10
circuit dbg :
extmodule gated_latch :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_1 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_1 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_1 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_2 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_2 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_2 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_3 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_3 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_3 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_4 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_4 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_4 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_5 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_5 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_5 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_6 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_6 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_6 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
extmodule gated_latch_7 :
output Q : Clock
input CK : Clock
input EN : UInt<1>
input SE : UInt<1>
defname = gated_latch
module rvclkhdr_7 :
input clock : Clock
input reset : Reset
output io : {l1clk : Clock, flip clk : Clock, flip en : UInt<1>, flip scan_mode : UInt<1>}
inst clkhdr of gated_latch_7 @[lib.scala 334:26]
clkhdr.SE is invalid
clkhdr.EN is invalid
clkhdr.CK is invalid
clkhdr.Q is invalid
io.l1clk <= clkhdr.Q @[lib.scala 335:14]
clkhdr.CK <= io.clk @[lib.scala 336:18]
clkhdr.EN <= io.en @[lib.scala 337:18]
clkhdr.SE <= io.scan_mode @[lib.scala 338:18]
module dbg :
input clock : Clock
input reset : AsyncReset
output io : {dbg_cmd_size : UInt<2>, dbg_core_rst_l : UInt<1>, flip core_dbg_rddata : UInt<32>, flip core_dbg_cmd_done : UInt<1>, flip core_dbg_cmd_fail : UInt<1>, dbg_halt_req : UInt<1>, dbg_resume_req : UInt<1>, flip dec_tlu_debug_mode : UInt<1>, flip dec_tlu_dbg_halted : UInt<1>, flip dec_tlu_mpc_halted_only : UInt<1>, flip dec_tlu_resume_ack : UInt<1>, flip dmi_reg_en : UInt<1>, flip dmi_reg_addr : UInt<7>, flip dmi_reg_wr_en : UInt<1>, flip dmi_reg_wdata : UInt<32>, dmi_reg_rdata : UInt<32>, sb_axi : {aw : {flip ready : UInt<1>, valid : UInt<1>, bits : {id : UInt<1>, addr : UInt<32>, region : UInt<4>, len : UInt<8>, size : UInt<3>, burst : UInt<2>, lock : UInt<1>, cache : UInt<4>, prot : UInt<3>, qos : UInt<4>}}, w : {flip ready : UInt<1>, valid : UInt<1>, bits : {data : UInt<64>, strb : UInt<8>, last : UInt<1>}}, flip b : {flip ready : UInt<1>, valid : UInt<1>, bits : {resp : UInt<2>, id : UInt<1>}}, ar : {flip ready : UInt<1>, valid : UInt<1>, bits : {id : UInt<1>, addr : UInt<32>, region : UInt<4>, len : UInt<8>, size : UInt<3>, burst : UInt<2>, lock : UInt<1>, cache : UInt<4>, prot : UInt<3>, qos : UInt<4>}}, flip r : {flip ready : UInt<1>, valid : UInt<1>, bits : {id : UInt<1>, data : UInt<64>, resp : UInt<2>, last : UInt<1>}}}, flip dbg_dec : {dbg_ib : {flip dbg_cmd_valid : UInt<1>, flip dbg_cmd_write : UInt<1>, flip dbg_cmd_type : UInt<2>, flip dbg_cmd_addr : UInt<32>}, dbg_dctl : {flip dbg_cmd_wrdata : UInt<32>}}, flip dbg_dma : {dbg_ib : {flip dbg_cmd_valid : UInt<1>, flip dbg_cmd_write : UInt<1>, flip dbg_cmd_type : UInt<2>, flip dbg_cmd_addr : UInt<32>}, dbg_dctl : {flip dbg_cmd_wrdata : UInt<32>}}, flip dbg_dma_io : {flip dbg_dma_bubble : UInt<1>, dma_dbg_ready : UInt<1>}, flip dbg_bus_clk_en : UInt<1>, flip dbg_rst_l : UInt<1>, flip clk_override : UInt<1>, flip scan_mode : UInt<1>}
wire dbg_state : UInt<3>
dbg_state <= UInt<3>("h00")
wire dbg_state_en : UInt<1>
dbg_state_en <= UInt<1>("h00")
wire sb_state : UInt<4>
sb_state <= UInt<4>("h00")
wire sb_state_en : UInt<1>
sb_state_en <= UInt<1>("h00")
wire dmcontrol_reg : UInt<32>
dmcontrol_reg <= UInt<32>("h00")
wire sbaddress0_reg : UInt<32>
sbaddress0_reg <= UInt<32>("h00")
wire sbcs_sbbusy_wren : UInt<1>
sbcs_sbbusy_wren <= UInt<1>("h00")
wire sbcs_sberror_wren : UInt<1>
sbcs_sberror_wren <= UInt<1>("h00")
wire sb_bus_rdata : UInt<64>
sb_bus_rdata <= UInt<64>("h00")
wire sbaddress0_reg_wren1 : UInt<1>
sbaddress0_reg_wren1 <= UInt<1>("h00")
wire dmstatus_reg : UInt<32>
dmstatus_reg <= UInt<32>("h00")
wire dmstatus_havereset : UInt<1>
dmstatus_havereset <= UInt<1>("h00")
wire dmstatus_resumeack : UInt<1>
dmstatus_resumeack <= UInt<1>("h00")
wire dmstatus_unavail : UInt<1>
dmstatus_unavail <= UInt<1>("h00")
wire dmstatus_running : UInt<1>
dmstatus_running <= UInt<1>("h00")
wire dmstatus_halted : UInt<1>
dmstatus_halted <= UInt<1>("h00")
wire abstractcs_busy_wren : UInt<1>
abstractcs_busy_wren <= UInt<1>("h00")
wire abstractcs_busy_din : UInt<1>
abstractcs_busy_din <= UInt<1>("h00")
wire sb_bus_cmd_read : UInt<1>
sb_bus_cmd_read <= UInt<1>("h00")
wire sb_bus_cmd_write_addr : UInt<1>
sb_bus_cmd_write_addr <= UInt<1>("h00")
wire sb_bus_cmd_write_data : UInt<1>
sb_bus_cmd_write_data <= UInt<1>("h00")
wire sb_bus_rsp_read : UInt<1>
sb_bus_rsp_read <= UInt<1>("h00")
wire sb_bus_rsp_error : UInt<1>
sb_bus_rsp_error <= UInt<1>("h00")
wire sb_bus_rsp_write : UInt<1>
sb_bus_rsp_write <= UInt<1>("h00")
wire sbcs_sbbusy_din : UInt<1>
sbcs_sbbusy_din <= UInt<1>("h00")
wire sbcs_sberror_din : UInt<3>
sbcs_sberror_din <= UInt<3>("h00")
wire data1_reg : UInt<32>
data1_reg <= UInt<32>("h00")
wire sbcs_reg : UInt<32>
sbcs_reg <= UInt<32>("h00")
node _T = neq(dbg_state, UInt<3>("h00")) @[dbg.scala 95:51]
node _T_1 = or(io.dmi_reg_en, _T) @[dbg.scala 95:38]
node _T_2 = or(_T_1, dbg_state_en) @[dbg.scala 95:69]
node _T_3 = or(_T_2, io.dec_tlu_dbg_halted) @[dbg.scala 95:84]
node dbg_free_clken = or(_T_3, io.clk_override) @[dbg.scala 95:108]
node _T_4 = or(io.dmi_reg_en, sb_state_en) @[dbg.scala 96:37]
node _T_5 = neq(sb_state, UInt<4>("h00")) @[dbg.scala 96:63]
node _T_6 = or(_T_4, _T_5) @[dbg.scala 96:51]
node sb_free_clken = or(_T_6, io.clk_override) @[dbg.scala 96:86]
inst rvclkhdr of rvclkhdr @[lib.scala 343:22]
rvclkhdr.clock <= clock
rvclkhdr.reset <= reset
rvclkhdr.io.clk <= clock @[lib.scala 344:17]
rvclkhdr.io.en <= dbg_free_clken @[lib.scala 345:16]
rvclkhdr.io.scan_mode <= io.scan_mode @[lib.scala 346:23]
inst rvclkhdr_1 of rvclkhdr_1 @[lib.scala 343:22]
rvclkhdr_1.clock <= clock
rvclkhdr_1.reset <= reset
rvclkhdr_1.io.clk <= clock @[lib.scala 344:17]
rvclkhdr_1.io.en <= sb_free_clken @[lib.scala 345:16]
rvclkhdr_1.io.scan_mode <= io.scan_mode @[lib.scala 346:23]
node _T_7 = bits(io.dbg_rst_l, 0, 0) @[dbg.scala 100:42]
node _T_8 = bits(dmcontrol_reg, 0, 0) @[dbg.scala 100:61]
node _T_9 = or(_T_8, io.scan_mode) @[dbg.scala 100:65]
node _T_10 = and(_T_7, _T_9) @[dbg.scala 100:45]
node dbg_dm_rst_l = asAsyncReset(_T_10) @[dbg.scala 100:94]
node _T_11 = asUInt(dbg_dm_rst_l) @[dbg.scala 102:38]
node _T_12 = asUInt(reset) @[dbg.scala 102:55]
node _T_13 = and(_T_11, _T_12) @[dbg.scala 102:41]
node rst_temp = asAsyncReset(_T_13) @[dbg.scala 102:71]
node _T_14 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 105:39]
node _T_15 = eq(_T_14, UInt<1>("h00")) @[dbg.scala 105:25]
node _T_16 = bits(_T_15, 0, 0) @[dbg.scala 105:50]
io.dbg_core_rst_l <= _T_16 @[dbg.scala 105:21]
node _T_17 = eq(io.dmi_reg_addr, UInt<6>("h038")) @[dbg.scala 106:36]
node _T_18 = and(_T_17, io.dmi_reg_en) @[dbg.scala 106:49]
node _T_19 = and(_T_18, io.dmi_reg_wr_en) @[dbg.scala 106:65]
node _T_20 = eq(sb_state, UInt<4>("h00")) @[dbg.scala 106:96]
node sbcs_wren = and(_T_19, _T_20) @[dbg.scala 106:84]
node _T_21 = bits(io.dmi_reg_wdata, 22, 22) @[dbg.scala 107:60]
node _T_22 = and(sbcs_wren, _T_21) @[dbg.scala 107:42]
node _T_23 = neq(sb_state, UInt<4>("h00")) @[dbg.scala 107:79]
node _T_24 = and(_T_23, io.dmi_reg_en) @[dbg.scala 107:102]
node _T_25 = eq(io.dmi_reg_addr, UInt<6>("h039")) @[dbg.scala 108:23]
node _T_26 = eq(io.dmi_reg_addr, UInt<6>("h03c")) @[dbg.scala 108:55]
node _T_27 = or(_T_25, _T_26) @[dbg.scala 108:36]
node _T_28 = eq(io.dmi_reg_addr, UInt<6>("h03d")) @[dbg.scala 108:87]
node _T_29 = or(_T_27, _T_28) @[dbg.scala 108:68]
node _T_30 = and(_T_24, _T_29) @[dbg.scala 107:118]
node sbcs_sbbusyerror_wren = or(_T_22, _T_30) @[dbg.scala 107:66]
node _T_31 = bits(io.dmi_reg_wdata, 22, 22) @[dbg.scala 110:61]
node _T_32 = and(sbcs_wren, _T_31) @[dbg.scala 110:43]
node sbcs_sbbusyerror_din = not(_T_32) @[dbg.scala 110:31]
reg temp_sbcs_22 : UInt, rvclkhdr_1.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when sbcs_sbbusyerror_wren : @[Reg.scala 28:19]
temp_sbcs_22 <= sbcs_sbbusyerror_din @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
reg temp_sbcs_21 : UInt, rvclkhdr_1.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when sbcs_sbbusy_wren : @[Reg.scala 28:19]
temp_sbcs_21 <= sbcs_sbbusy_din @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_33 = bits(io.dmi_reg_wdata, 20, 20) @[dbg.scala 120:31]
reg temp_sbcs_20 : UInt, rvclkhdr_1.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when sbcs_wren : @[Reg.scala 28:19]
temp_sbcs_20 <= _T_33 @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_34 = bits(io.dmi_reg_wdata, 19, 15) @[dbg.scala 124:31]
reg temp_sbcs_19_15 : UInt, rvclkhdr_1.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when sbcs_wren : @[Reg.scala 28:19]
temp_sbcs_19_15 <= _T_34 @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_35 = bits(sbcs_sberror_din, 2, 0) @[dbg.scala 128:31]
reg temp_sbcs_14_12 : UInt, rvclkhdr_1.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when sbcs_sberror_wren : @[Reg.scala 28:19]
temp_sbcs_14_12 <= _T_35 @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_36 = cat(UInt<7>("h020"), UInt<5>("h0f")) @[Cat.scala 29:58]
node _T_37 = cat(temp_sbcs_19_15, temp_sbcs_14_12) @[Cat.scala 29:58]
node _T_38 = cat(_T_37, _T_36) @[Cat.scala 29:58]
node _T_39 = cat(temp_sbcs_21, temp_sbcs_20) @[Cat.scala 29:58]
node _T_40 = cat(UInt<3>("h01"), UInt<6>("h00")) @[Cat.scala 29:58]
node _T_41 = cat(_T_40, temp_sbcs_22) @[Cat.scala 29:58]
node _T_42 = cat(_T_41, _T_39) @[Cat.scala 29:58]
node _T_43 = cat(_T_42, _T_38) @[Cat.scala 29:58]
sbcs_reg <= _T_43 @[dbg.scala 130:12]
node _T_44 = bits(sbcs_reg, 19, 17) @[dbg.scala 132:33]
node _T_45 = eq(_T_44, UInt<3>("h01")) @[dbg.scala 132:42]
node _T_46 = bits(sbaddress0_reg, 0, 0) @[dbg.scala 132:77]
node _T_47 = and(_T_45, _T_46) @[dbg.scala 132:61]
node _T_48 = bits(sbcs_reg, 19, 17) @[dbg.scala 133:14]
node _T_49 = eq(_T_48, UInt<3>("h02")) @[dbg.scala 133:23]
node _T_50 = bits(sbaddress0_reg, 1, 0) @[dbg.scala 133:58]
node _T_51 = orr(_T_50) @[dbg.scala 133:65]
node _T_52 = and(_T_49, _T_51) @[dbg.scala 133:42]
node _T_53 = or(_T_47, _T_52) @[dbg.scala 132:81]
node _T_54 = bits(sbcs_reg, 19, 17) @[dbg.scala 134:14]
node _T_55 = eq(_T_54, UInt<3>("h03")) @[dbg.scala 134:23]
node _T_56 = bits(sbaddress0_reg, 2, 0) @[dbg.scala 134:58]
node _T_57 = orr(_T_56) @[dbg.scala 134:65]
node _T_58 = and(_T_55, _T_57) @[dbg.scala 134:42]
node sbcs_unaligned = or(_T_53, _T_58) @[dbg.scala 133:69]
node sbcs_illegal_size = bits(sbcs_reg, 19, 19) @[dbg.scala 136:35]
node _T_59 = bits(sbcs_reg, 19, 17) @[dbg.scala 137:42]
node _T_60 = eq(_T_59, UInt<1>("h00")) @[dbg.scala 137:51]
node _T_61 = bits(_T_60, 0, 0) @[Bitwise.scala 72:15]
node _T_62 = mux(_T_61, UInt<4>("h0f"), UInt<4>("h00")) @[Bitwise.scala 72:12]
node _T_63 = and(_T_62, UInt<4>("h01")) @[dbg.scala 137:64]
node _T_64 = bits(sbcs_reg, 19, 17) @[dbg.scala 137:100]
node _T_65 = eq(_T_64, UInt<1>("h01")) @[dbg.scala 137:109]
node _T_66 = bits(_T_65, 0, 0) @[Bitwise.scala 72:15]
node _T_67 = mux(_T_66, UInt<4>("h0f"), UInt<4>("h00")) @[Bitwise.scala 72:12]
node _T_68 = and(_T_67, UInt<4>("h02")) @[dbg.scala 137:122]
node _T_69 = or(_T_63, _T_68) @[dbg.scala 137:81]
node _T_70 = bits(sbcs_reg, 19, 17) @[dbg.scala 138:22]
node _T_71 = eq(_T_70, UInt<2>("h02")) @[dbg.scala 138:31]
node _T_72 = bits(_T_71, 0, 0) @[Bitwise.scala 72:15]
node _T_73 = mux(_T_72, UInt<4>("h0f"), UInt<4>("h00")) @[Bitwise.scala 72:12]
node _T_74 = and(_T_73, UInt<4>("h04")) @[dbg.scala 138:44]
node _T_75 = or(_T_69, _T_74) @[dbg.scala 137:139]
node _T_76 = bits(sbcs_reg, 19, 17) @[dbg.scala 138:80]
node _T_77 = eq(_T_76, UInt<2>("h03")) @[dbg.scala 138:89]
node _T_78 = bits(_T_77, 0, 0) @[Bitwise.scala 72:15]
node _T_79 = mux(_T_78, UInt<4>("h0f"), UInt<4>("h00")) @[Bitwise.scala 72:12]
node _T_80 = and(_T_79, UInt<4>("h08")) @[dbg.scala 138:102]
node sbaddress0_incr = or(_T_75, _T_80) @[dbg.scala 138:61]
node _T_81 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 140:41]
node _T_82 = eq(io.dmi_reg_addr, UInt<6>("h03c")) @[dbg.scala 140:79]
node sbdata0_reg_wren0 = and(_T_81, _T_82) @[dbg.scala 140:60]
node _T_83 = eq(sb_state, UInt<4>("h07")) @[dbg.scala 141:37]
node _T_84 = and(_T_83, sb_state_en) @[dbg.scala 141:60]
node _T_85 = eq(sbcs_sberror_wren, UInt<1>("h00")) @[dbg.scala 141:76]
node sbdata0_reg_wren1 = and(_T_84, _T_85) @[dbg.scala 141:74]
node sbdata0_reg_wren = or(sbdata0_reg_wren0, sbdata0_reg_wren1) @[dbg.scala 142:44]
node _T_86 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 143:41]
node _T_87 = eq(io.dmi_reg_addr, UInt<6>("h03d")) @[dbg.scala 143:79]
node sbdata1_reg_wren0 = and(_T_86, _T_87) @[dbg.scala 143:60]
node _T_88 = eq(sb_state, UInt<4>("h07")) @[dbg.scala 144:37]
node _T_89 = and(_T_88, sb_state_en) @[dbg.scala 144:60]
node _T_90 = eq(sbcs_sberror_wren, UInt<1>("h00")) @[dbg.scala 144:76]
node sbdata1_reg_wren1 = and(_T_89, _T_90) @[dbg.scala 144:74]
node sbdata1_reg_wren = or(sbdata1_reg_wren0, sbdata1_reg_wren1) @[dbg.scala 145:44]
node _T_91 = bits(sbdata0_reg_wren0, 0, 0) @[Bitwise.scala 72:15]
node _T_92 = mux(_T_91, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_93 = and(_T_92, io.dmi_reg_wdata) @[dbg.scala 146:49]
node _T_94 = bits(sbdata0_reg_wren1, 0, 0) @[Bitwise.scala 72:15]
node _T_95 = mux(_T_94, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_96 = bits(sb_bus_rdata, 31, 0) @[dbg.scala 147:47]
node _T_97 = and(_T_95, _T_96) @[dbg.scala 147:33]
node sbdata0_din = or(_T_93, _T_97) @[dbg.scala 146:68]
node _T_98 = bits(sbdata1_reg_wren0, 0, 0) @[Bitwise.scala 72:15]
node _T_99 = mux(_T_98, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_100 = and(_T_99, io.dmi_reg_wdata) @[dbg.scala 149:49]
node _T_101 = bits(sbdata1_reg_wren1, 0, 0) @[Bitwise.scala 72:15]
node _T_102 = mux(_T_101, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_103 = bits(sb_bus_rdata, 63, 32) @[dbg.scala 150:47]
node _T_104 = and(_T_102, _T_103) @[dbg.scala 150:33]
node sbdata1_din = or(_T_100, _T_104) @[dbg.scala 149:68]
inst rvclkhdr_2 of rvclkhdr_2 @[lib.scala 368:23]
rvclkhdr_2.clock <= clock
rvclkhdr_2.reset <= dbg_dm_rst_l
rvclkhdr_2.io.clk <= clock @[lib.scala 370:18]
rvclkhdr_2.io.en <= sbdata0_reg_wren @[lib.scala 371:17]
rvclkhdr_2.io.scan_mode <= io.scan_mode @[lib.scala 372:24]
reg sbdata0_reg : UInt, rvclkhdr_2.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[lib.scala 374:16]
sbdata0_reg <= sbdata0_din @[lib.scala 374:16]
inst rvclkhdr_3 of rvclkhdr_3 @[lib.scala 368:23]
rvclkhdr_3.clock <= clock
rvclkhdr_3.reset <= dbg_dm_rst_l
rvclkhdr_3.io.clk <= clock @[lib.scala 370:18]
rvclkhdr_3.io.en <= sbdata1_reg_wren @[lib.scala 371:17]
rvclkhdr_3.io.scan_mode <= io.scan_mode @[lib.scala 372:24]
reg sbdata1_reg : UInt, rvclkhdr_3.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[lib.scala 374:16]
sbdata1_reg <= sbdata1_din @[lib.scala 374:16]
node _T_105 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 160:44]
node _T_106 = eq(io.dmi_reg_addr, UInt<6>("h039")) @[dbg.scala 160:82]
node sbaddress0_reg_wren0 = and(_T_105, _T_106) @[dbg.scala 160:63]
node sbaddress0_reg_wren = or(sbaddress0_reg_wren0, sbaddress0_reg_wren1) @[dbg.scala 161:50]
node _T_107 = bits(sbaddress0_reg_wren0, 0, 0) @[Bitwise.scala 72:15]
node _T_108 = mux(_T_107, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_109 = and(_T_108, io.dmi_reg_wdata) @[dbg.scala 162:59]
node _T_110 = bits(sbaddress0_reg_wren1, 0, 0) @[Bitwise.scala 72:15]
node _T_111 = mux(_T_110, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_112 = cat(UInt<28>("h00"), sbaddress0_incr) @[Cat.scala 29:58]
node _T_113 = add(sbaddress0_reg, _T_112) @[dbg.scala 163:54]
node _T_114 = tail(_T_113, 1) @[dbg.scala 163:54]
node _T_115 = and(_T_111, _T_114) @[dbg.scala 163:36]
node sbaddress0_reg_din = or(_T_109, _T_115) @[dbg.scala 162:78]
inst rvclkhdr_4 of rvclkhdr_4 @[lib.scala 368:23]
rvclkhdr_4.clock <= clock
rvclkhdr_4.reset <= dbg_dm_rst_l
rvclkhdr_4.io.clk <= clock @[lib.scala 370:18]
rvclkhdr_4.io.en <= sbaddress0_reg_wren @[lib.scala 371:17]
rvclkhdr_4.io.scan_mode <= io.scan_mode @[lib.scala 372:24]
reg _T_116 : UInt, rvclkhdr_4.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[lib.scala 374:16]
_T_116 <= sbaddress0_reg_din @[lib.scala 374:16]
sbaddress0_reg <= _T_116 @[dbg.scala 164:18]
node _T_117 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 168:43]
node _T_118 = eq(io.dmi_reg_addr, UInt<6>("h039")) @[dbg.scala 168:81]
node _T_119 = and(_T_117, _T_118) @[dbg.scala 168:62]
node _T_120 = bits(sbcs_reg, 20, 20) @[dbg.scala 168:104]
node sbreadonaddr_access = and(_T_119, _T_120) @[dbg.scala 168:94]
node _T_121 = eq(io.dmi_reg_wr_en, UInt<1>("h00")) @[dbg.scala 169:45]
node _T_122 = and(io.dmi_reg_en, _T_121) @[dbg.scala 169:43]
node _T_123 = eq(io.dmi_reg_addr, UInt<6>("h03c")) @[dbg.scala 169:82]
node _T_124 = and(_T_122, _T_123) @[dbg.scala 169:63]
node _T_125 = bits(sbcs_reg, 15, 15) @[dbg.scala 169:105]
node sbreadondata_access = and(_T_124, _T_125) @[dbg.scala 169:95]
node _T_126 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 170:40]
node _T_127 = eq(io.dmi_reg_addr, UInt<6>("h03c")) @[dbg.scala 170:78]
node sbdata0wr_access = and(_T_126, _T_127) @[dbg.scala 170:59]
node _T_128 = eq(io.dmi_reg_addr, UInt<5>("h010")) @[dbg.scala 171:41]
node _T_129 = and(_T_128, io.dmi_reg_en) @[dbg.scala 171:54]
node dmcontrol_wren = and(_T_129, io.dmi_reg_wr_en) @[dbg.scala 171:70]
node _T_130 = bits(io.dmi_reg_wdata, 31, 30) @[dbg.scala 174:27]
node _T_131 = bits(io.dmi_reg_wdata, 28, 28) @[dbg.scala 174:53]
node _T_132 = bits(io.dmi_reg_wdata, 1, 1) @[dbg.scala 174:75]
node _T_133 = cat(_T_130, _T_131) @[Cat.scala 29:58]
node _T_134 = cat(_T_133, _T_132) @[Cat.scala 29:58]
reg dm_temp : UInt, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when dmcontrol_wren : @[Reg.scala 28:19]
dm_temp <= _T_134 @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_135 = asAsyncReset(io.dbg_rst_l) @[dbg.scala 178:76]
node _T_136 = bits(io.dmi_reg_wdata, 0, 0) @[dbg.scala 179:31]
reg dm_temp_0 : UInt, rvclkhdr.io.l1clk with : (reset => (_T_135, UInt<1>("h00"))) @[Reg.scala 27:20]
when dmcontrol_wren : @[Reg.scala 28:19]
dm_temp_0 <= _T_136 @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_137 = bits(dm_temp, 3, 2) @[dbg.scala 182:25]
node _T_138 = bits(dm_temp, 1, 1) @[dbg.scala 182:45]
node _T_139 = bits(dm_temp, 0, 0) @[dbg.scala 182:68]
node _T_140 = cat(UInt<26>("h00"), _T_139) @[Cat.scala 29:58]
node _T_141 = cat(_T_140, dm_temp_0) @[Cat.scala 29:58]
node _T_142 = cat(_T_137, UInt<1>("h00")) @[Cat.scala 29:58]
node _T_143 = cat(_T_142, _T_138) @[Cat.scala 29:58]
node temp = cat(_T_143, _T_141) @[Cat.scala 29:58]
dmcontrol_reg <= temp @[dbg.scala 183:17]
reg dmcontrol_wren_Q : UInt<1>, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[dbg.scala 186:12]
dmcontrol_wren_Q <= dmcontrol_wren @[dbg.scala 186:12]
node _T_144 = bits(dmstatus_havereset, 0, 0) @[Bitwise.scala 72:15]
node _T_145 = mux(_T_144, UInt<2>("h03"), UInt<2>("h00")) @[Bitwise.scala 72:12]
node _T_146 = bits(dmstatus_resumeack, 0, 0) @[Bitwise.scala 72:15]
node _T_147 = mux(_T_146, UInt<2>("h03"), UInt<2>("h00")) @[Bitwise.scala 72:12]
node _T_148 = bits(dmstatus_unavail, 0, 0) @[Bitwise.scala 72:15]
node _T_149 = mux(_T_148, UInt<2>("h03"), UInt<2>("h00")) @[Bitwise.scala 72:12]
node _T_150 = bits(dmstatus_running, 0, 0) @[Bitwise.scala 72:15]
node _T_151 = mux(_T_150, UInt<2>("h03"), UInt<2>("h00")) @[Bitwise.scala 72:12]
node _T_152 = bits(dmstatus_halted, 0, 0) @[Bitwise.scala 72:15]
node _T_153 = mux(_T_152, UInt<2>("h03"), UInt<2>("h00")) @[Bitwise.scala 72:12]
node _T_154 = cat(UInt<3>("h00"), UInt<4>("h02")) @[Cat.scala 29:58]
node _T_155 = cat(_T_151, _T_153) @[Cat.scala 29:58]
node _T_156 = cat(_T_155, UInt<1>("h01")) @[Cat.scala 29:58]
node _T_157 = cat(_T_156, _T_154) @[Cat.scala 29:58]
node _T_158 = cat(UInt<2>("h00"), _T_149) @[Cat.scala 29:58]
node _T_159 = cat(UInt<12>("h00"), _T_145) @[Cat.scala 29:58]
node _T_160 = cat(_T_159, _T_147) @[Cat.scala 29:58]
node _T_161 = cat(_T_160, _T_158) @[Cat.scala 29:58]
node _T_162 = cat(_T_161, _T_157) @[Cat.scala 29:58]
dmstatus_reg <= _T_162 @[dbg.scala 189:16]
node _T_163 = eq(dbg_state, UInt<3>("h06")) @[dbg.scala 191:44]
node _T_164 = and(_T_163, io.dec_tlu_resume_ack) @[dbg.scala 191:66]
node _T_165 = bits(dmcontrol_reg, 30, 30) @[dbg.scala 191:127]
node _T_166 = eq(_T_165, UInt<1>("h00")) @[dbg.scala 191:113]
node _T_167 = and(dmstatus_resumeack, _T_166) @[dbg.scala 191:111]
node dmstatus_resumeack_wren = or(_T_164, _T_167) @[dbg.scala 191:90]
node _T_168 = eq(dbg_state, UInt<3>("h06")) @[dbg.scala 192:43]
node dmstatus_resumeack_din = and(_T_168, io.dec_tlu_resume_ack) @[dbg.scala 192:65]
node _T_169 = eq(io.dmi_reg_addr, UInt<5>("h010")) @[dbg.scala 193:50]
node _T_170 = bits(io.dmi_reg_wdata, 1, 1) @[dbg.scala 193:81]
node _T_171 = and(_T_169, _T_170) @[dbg.scala 193:63]
node _T_172 = and(_T_171, io.dmi_reg_en) @[dbg.scala 193:85]
node dmstatus_havereset_wren = and(_T_172, io.dmi_reg_wr_en) @[dbg.scala 193:101]
node _T_173 = eq(io.dmi_reg_addr, UInt<5>("h010")) @[dbg.scala 194:49]
node _T_174 = bits(io.dmi_reg_wdata, 28, 28) @[dbg.scala 194:80]
node _T_175 = and(_T_173, _T_174) @[dbg.scala 194:62]
node _T_176 = and(_T_175, io.dmi_reg_en) @[dbg.scala 194:85]
node dmstatus_havereset_rst = and(_T_176, io.dmi_reg_wr_en) @[dbg.scala 194:101]
node temp_rst = asUInt(reset) @[dbg.scala 195:30]
node _T_177 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 196:37]
node _T_178 = eq(temp_rst, UInt<1>("h00")) @[dbg.scala 196:43]
node _T_179 = or(_T_177, _T_178) @[dbg.scala 196:41]
node _T_180 = bits(_T_179, 0, 0) @[dbg.scala 196:62]
dmstatus_unavail <= _T_180 @[dbg.scala 196:20]
node _T_181 = or(dmstatus_unavail, dmstatus_halted) @[dbg.scala 197:42]
node _T_182 = not(_T_181) @[dbg.scala 197:23]
dmstatus_running <= _T_182 @[dbg.scala 197:20]
reg _T_183 : UInt, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when dmstatus_resumeack_wren : @[Reg.scala 28:19]
_T_183 <= dmstatus_resumeack_din @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
dmstatus_resumeack <= _T_183 @[dbg.scala 198:22]
node _T_184 = eq(io.dec_tlu_mpc_halted_only, UInt<1>("h00")) @[dbg.scala 203:37]
node _T_185 = and(io.dec_tlu_dbg_halted, _T_184) @[dbg.scala 203:35]
reg _T_186 : UInt<1>, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[dbg.scala 203:12]
_T_186 <= _T_185 @[dbg.scala 203:12]
dmstatus_halted <= _T_186 @[dbg.scala 202:19]
node _T_187 = mux(dmstatus_havereset_wren, UInt<1>("h01"), dmstatus_havereset) @[dbg.scala 207:16]
node _T_188 = eq(dmstatus_havereset_rst, UInt<1>("h00")) @[dbg.scala 207:72]
node _T_189 = and(_T_187, _T_188) @[dbg.scala 207:70]
reg _T_190 : UInt<1>, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[dbg.scala 207:12]
_T_190 <= _T_189 @[dbg.scala 207:12]
dmstatus_havereset <= _T_190 @[dbg.scala 206:22]
node haltsum0_reg = cat(UInt<31>("h00"), dmstatus_halted) @[Cat.scala 29:58]
wire abstractcs_reg : UInt<32>
abstractcs_reg <= UInt<32>("h02")
node _T_191 = bits(abstractcs_reg, 12, 12) @[dbg.scala 213:45]
node _T_192 = and(_T_191, io.dmi_reg_en) @[dbg.scala 213:50]
node _T_193 = eq(io.dmi_reg_addr, UInt<5>("h016")) @[dbg.scala 213:106]
node _T_194 = eq(io.dmi_reg_addr, UInt<5>("h017")) @[dbg.scala 213:138]
node _T_195 = or(_T_193, _T_194) @[dbg.scala 213:119]
node _T_196 = and(io.dmi_reg_wr_en, _T_195) @[dbg.scala 213:86]
node _T_197 = eq(io.dmi_reg_addr, UInt<3>("h04")) @[dbg.scala 213:171]
node _T_198 = or(_T_196, _T_197) @[dbg.scala 213:152]
node abstractcs_error_sel0 = and(_T_192, _T_198) @[dbg.scala 213:66]
node _T_199 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 214:45]
node _T_200 = eq(io.dmi_reg_addr, UInt<5>("h017")) @[dbg.scala 214:83]
node _T_201 = and(_T_199, _T_200) @[dbg.scala 214:64]
node _T_202 = bits(io.dmi_reg_wdata, 31, 24) @[dbg.scala 214:117]
node _T_203 = eq(_T_202, UInt<1>("h00")) @[dbg.scala 214:126]
node _T_204 = bits(io.dmi_reg_wdata, 31, 24) @[dbg.scala 214:154]
node _T_205 = eq(_T_204, UInt<2>("h02")) @[dbg.scala 214:163]
node _T_206 = or(_T_203, _T_205) @[dbg.scala 214:135]
node _T_207 = eq(_T_206, UInt<1>("h00")) @[dbg.scala 214:98]
node abstractcs_error_sel1 = and(_T_201, _T_207) @[dbg.scala 214:96]
node abstractcs_error_sel2 = and(io.core_dbg_cmd_done, io.core_dbg_cmd_fail) @[dbg.scala 215:52]
node _T_208 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 216:45]
node _T_209 = eq(io.dmi_reg_addr, UInt<5>("h017")) @[dbg.scala 216:83]
node _T_210 = and(_T_208, _T_209) @[dbg.scala 216:64]
node _T_211 = bits(dmstatus_reg, 9, 9) @[dbg.scala 216:111]
node _T_212 = eq(_T_211, UInt<1>("h00")) @[dbg.scala 216:98]
node abstractcs_error_sel3 = and(_T_210, _T_212) @[dbg.scala 216:96]
node _T_213 = eq(io.dmi_reg_addr, UInt<5>("h017")) @[dbg.scala 217:48]
node _T_214 = and(_T_213, io.dmi_reg_en) @[dbg.scala 217:61]
node _T_215 = and(_T_214, io.dmi_reg_wr_en) @[dbg.scala 217:77]
node _T_216 = bits(io.dmi_reg_wdata, 22, 20) @[dbg.scala 218:23]
node _T_217 = neq(_T_216, UInt<3>("h02")) @[dbg.scala 218:32]
node _T_218 = bits(io.dmi_reg_wdata, 31, 24) @[dbg.scala 218:71]
node _T_219 = eq(_T_218, UInt<2>("h02")) @[dbg.scala 218:80]
node _T_220 = bits(data1_reg, 1, 0) @[dbg.scala 218:104]
node _T_221 = orr(_T_220) @[dbg.scala 218:111]
node _T_222 = and(_T_219, _T_221) @[dbg.scala 218:92]
node _T_223 = or(_T_217, _T_222) @[dbg.scala 218:51]
node abstractcs_error_sel4 = and(_T_215, _T_223) @[dbg.scala 217:96]
node _T_224 = eq(io.dmi_reg_addr, UInt<5>("h016")) @[dbg.scala 220:48]
node _T_225 = and(_T_224, io.dmi_reg_en) @[dbg.scala 220:61]
node abstractcs_error_sel5 = and(_T_225, io.dmi_reg_wr_en) @[dbg.scala 220:77]
node _T_226 = or(abstractcs_error_sel0, abstractcs_error_sel1) @[dbg.scala 221:54]
node _T_227 = or(_T_226, abstractcs_error_sel2) @[dbg.scala 221:78]
node _T_228 = or(_T_227, abstractcs_error_sel3) @[dbg.scala 221:102]
node _T_229 = or(_T_228, abstractcs_error_sel4) @[dbg.scala 221:126]
node abstractcs_error_selor = or(_T_229, abstractcs_error_sel5) @[dbg.scala 221:150]
node _T_230 = bits(abstractcs_error_sel0, 0, 0) @[Bitwise.scala 72:15]
node _T_231 = mux(_T_230, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_232 = and(_T_231, UInt<3>("h01")) @[dbg.scala 222:62]
node _T_233 = bits(abstractcs_error_sel1, 0, 0) @[Bitwise.scala 72:15]
node _T_234 = mux(_T_233, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_235 = and(_T_234, UInt<3>("h02")) @[dbg.scala 223:37]
node _T_236 = or(_T_232, _T_235) @[dbg.scala 222:79]
node _T_237 = bits(abstractcs_error_sel2, 0, 0) @[Bitwise.scala 72:15]
node _T_238 = mux(_T_237, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_239 = and(_T_238, UInt<3>("h03")) @[dbg.scala 224:37]
node _T_240 = or(_T_236, _T_239) @[dbg.scala 223:54]
node _T_241 = bits(abstractcs_error_sel3, 0, 0) @[Bitwise.scala 72:15]
node _T_242 = mux(_T_241, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_243 = and(_T_242, UInt<3>("h04")) @[dbg.scala 225:37]
node _T_244 = or(_T_240, _T_243) @[dbg.scala 224:54]
node _T_245 = bits(abstractcs_error_sel4, 0, 0) @[Bitwise.scala 72:15]
node _T_246 = mux(_T_245, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_247 = and(_T_246, UInt<3>("h07")) @[dbg.scala 226:37]
node _T_248 = or(_T_244, _T_247) @[dbg.scala 225:54]
node _T_249 = bits(abstractcs_error_sel5, 0, 0) @[Bitwise.scala 72:15]
node _T_250 = mux(_T_249, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_251 = bits(io.dmi_reg_wdata, 10, 8) @[dbg.scala 227:57]
node _T_252 = not(_T_251) @[dbg.scala 227:40]
node _T_253 = and(_T_250, _T_252) @[dbg.scala 227:37]
node _T_254 = bits(abstractcs_reg, 10, 8) @[dbg.scala 227:91]
node _T_255 = and(_T_253, _T_254) @[dbg.scala 227:75]
node _T_256 = or(_T_248, _T_255) @[dbg.scala 226:54]
node _T_257 = not(abstractcs_error_selor) @[dbg.scala 228:15]
node _T_258 = bits(_T_257, 0, 0) @[Bitwise.scala 72:15]
node _T_259 = mux(_T_258, UInt<3>("h07"), UInt<3>("h00")) @[Bitwise.scala 72:12]
node _T_260 = bits(abstractcs_reg, 10, 8) @[dbg.scala 228:66]
node _T_261 = and(_T_259, _T_260) @[dbg.scala 228:50]
node abstractcs_error_din = or(_T_256, _T_261) @[dbg.scala 227:100]
reg abs_temp_12 : UInt, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when abstractcs_busy_wren : @[Reg.scala 28:19]
abs_temp_12 <= abstractcs_busy_din @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
node _T_262 = bits(abstractcs_error_din, 2, 0) @[dbg.scala 235:33]
reg abs_temp_10_8 : UInt, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[dbg.scala 235:12]
abs_temp_10_8 <= _T_262 @[dbg.scala 235:12]
node _T_263 = cat(abs_temp_10_8, UInt<8>("h02")) @[Cat.scala 29:58]
node _T_264 = cat(UInt<19>("h00"), abs_temp_12) @[Cat.scala 29:58]
node _T_265 = cat(_T_264, UInt<1>("h00")) @[Cat.scala 29:58]
node _T_266 = cat(_T_265, _T_263) @[Cat.scala 29:58]
abstractcs_reg <= _T_266 @[dbg.scala 238:18]
node _T_267 = eq(io.dmi_reg_addr, UInt<5>("h017")) @[dbg.scala 240:39]
node _T_268 = and(_T_267, io.dmi_reg_en) @[dbg.scala 240:52]
node _T_269 = and(_T_268, io.dmi_reg_wr_en) @[dbg.scala 240:68]
node _T_270 = eq(dbg_state, UInt<3>("h02")) @[dbg.scala 240:100]
node command_wren = and(_T_269, _T_270) @[dbg.scala 240:87]
node _T_271 = bits(io.dmi_reg_wdata, 31, 24) @[dbg.scala 241:41]
node _T_272 = bits(io.dmi_reg_wdata, 22, 20) @[dbg.scala 241:77]
node _T_273 = bits(io.dmi_reg_wdata, 16, 0) @[dbg.scala 241:113]
node _T_274 = cat(UInt<3>("h00"), _T_273) @[Cat.scala 29:58]
node _T_275 = cat(_T_271, UInt<1>("h00")) @[Cat.scala 29:58]
node _T_276 = cat(_T_275, _T_272) @[Cat.scala 29:58]
node command_din = cat(_T_276, _T_274) @[Cat.scala 29:58]
inst rvclkhdr_5 of rvclkhdr_5 @[lib.scala 368:23]
rvclkhdr_5.clock <= clock
rvclkhdr_5.reset <= dbg_dm_rst_l
rvclkhdr_5.io.clk <= clock @[lib.scala 370:18]
rvclkhdr_5.io.en <= command_wren @[lib.scala 371:17]
rvclkhdr_5.io.scan_mode <= io.scan_mode @[lib.scala 372:24]
reg command_reg : UInt, rvclkhdr_5.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[lib.scala 374:16]
command_reg <= command_din @[lib.scala 374:16]
node _T_277 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 246:39]
node _T_278 = eq(io.dmi_reg_addr, UInt<3>("h04")) @[dbg.scala 246:77]
node _T_279 = and(_T_277, _T_278) @[dbg.scala 246:58]
node _T_280 = eq(dbg_state, UInt<3>("h02")) @[dbg.scala 246:102]
node data0_reg_wren0 = and(_T_279, _T_280) @[dbg.scala 246:89]
node _T_281 = eq(dbg_state, UInt<3>("h04")) @[dbg.scala 247:59]
node _T_282 = and(io.core_dbg_cmd_done, _T_281) @[dbg.scala 247:46]
node _T_283 = bits(command_reg, 16, 16) @[dbg.scala 247:95]
node _T_284 = eq(_T_283, UInt<1>("h00")) @[dbg.scala 247:83]
node data0_reg_wren1 = and(_T_282, _T_284) @[dbg.scala 247:81]
node data0_reg_wren = or(data0_reg_wren0, data0_reg_wren1) @[dbg.scala 249:40]
node _T_285 = bits(data0_reg_wren0, 0, 0) @[Bitwise.scala 72:15]
node _T_286 = mux(_T_285, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_287 = and(_T_286, io.dmi_reg_wdata) @[dbg.scala 250:45]
node _T_288 = bits(data0_reg_wren1, 0, 0) @[Bitwise.scala 72:15]
node _T_289 = mux(_T_288, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_290 = and(_T_289, io.core_dbg_rddata) @[dbg.scala 250:92]
node data0_din = or(_T_287, _T_290) @[dbg.scala 250:64]
inst rvclkhdr_6 of rvclkhdr_6 @[lib.scala 368:23]
rvclkhdr_6.clock <= clock
rvclkhdr_6.reset <= dbg_dm_rst_l
rvclkhdr_6.io.clk <= clock @[lib.scala 370:18]
rvclkhdr_6.io.en <= data0_reg_wren @[lib.scala 371:17]
rvclkhdr_6.io.scan_mode <= io.scan_mode @[lib.scala 372:24]
reg data0_reg : UInt, rvclkhdr_6.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[lib.scala 374:16]
data0_reg <= data0_din @[lib.scala 374:16]
node _T_291 = and(io.dmi_reg_en, io.dmi_reg_wr_en) @[dbg.scala 255:39]
node _T_292 = eq(io.dmi_reg_addr, UInt<3>("h05")) @[dbg.scala 255:77]
node _T_293 = and(_T_291, _T_292) @[dbg.scala 255:58]
node _T_294 = eq(dbg_state, UInt<3>("h02")) @[dbg.scala 255:102]
node data1_reg_wren = and(_T_293, _T_294) @[dbg.scala 255:89]
node _T_295 = bits(data1_reg_wren, 0, 0) @[Bitwise.scala 72:15]
node _T_296 = mux(_T_295, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node data1_din = and(_T_296, io.dmi_reg_wdata) @[dbg.scala 256:44]
inst rvclkhdr_7 of rvclkhdr_7 @[lib.scala 368:23]
rvclkhdr_7.clock <= clock
rvclkhdr_7.reset <= dbg_dm_rst_l
rvclkhdr_7.io.clk <= clock @[lib.scala 370:18]
rvclkhdr_7.io.en <= data1_reg_wren @[lib.scala 371:17]
rvclkhdr_7.io.scan_mode <= io.scan_mode @[lib.scala 372:24]
reg _T_297 : UInt, rvclkhdr_7.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[lib.scala 374:16]
_T_297 <= data1_din @[lib.scala 374:16]
data1_reg <= _T_297 @[dbg.scala 257:13]
wire dbg_nxtstate : UInt<3>
dbg_nxtstate <= UInt<3>("h00")
dbg_nxtstate <= UInt<3>("h00") @[dbg.scala 262:16]
dbg_state_en <= UInt<1>("h00") @[dbg.scala 263:16]
abstractcs_busy_wren <= UInt<1>("h00") @[dbg.scala 264:24]
abstractcs_busy_din <= UInt<1>("h00") @[dbg.scala 265:23]
io.dbg_halt_req <= UInt<1>("h00") @[dbg.scala 266:19]
io.dbg_resume_req <= UInt<1>("h00") @[dbg.scala 267:21]
node _T_298 = eq(UInt<3>("h00"), dbg_state) @[Conditional.scala 37:30]
when _T_298 : @[Conditional.scala 40:58]
node _T_299 = bits(dmstatus_reg, 9, 9) @[dbg.scala 270:39]
node _T_300 = or(_T_299, io.dec_tlu_mpc_halted_only) @[dbg.scala 270:43]
node _T_301 = mux(_T_300, UInt<3>("h02"), UInt<3>("h01")) @[dbg.scala 270:26]
dbg_nxtstate <= _T_301 @[dbg.scala 270:20]
node _T_302 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 271:38]
node _T_303 = eq(io.dec_tlu_debug_mode, UInt<1>("h00")) @[dbg.scala 271:45]
node _T_304 = and(_T_302, _T_303) @[dbg.scala 271:43]
node _T_305 = bits(dmstatus_reg, 9, 9) @[dbg.scala 271:83]
node _T_306 = or(_T_304, _T_305) @[dbg.scala 271:69]
node _T_307 = or(_T_306, io.dec_tlu_mpc_halted_only) @[dbg.scala 271:87]
node _T_308 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 271:133]
node _T_309 = eq(_T_308, UInt<1>("h00")) @[dbg.scala 271:119]
node _T_310 = and(_T_307, _T_309) @[dbg.scala 271:117]
dbg_state_en <= _T_310 @[dbg.scala 271:20]
node _T_311 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 272:40]
node _T_312 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 272:61]
node _T_313 = eq(_T_312, UInt<1>("h00")) @[dbg.scala 272:47]
node _T_314 = and(_T_311, _T_313) @[dbg.scala 272:45]
node _T_315 = bits(_T_314, 0, 0) @[dbg.scala 272:72]
io.dbg_halt_req <= _T_315 @[dbg.scala 272:23]
skip @[Conditional.scala 40:58]
else : @[Conditional.scala 39:67]
node _T_316 = eq(UInt<3>("h01"), dbg_state) @[Conditional.scala 37:30]
when _T_316 : @[Conditional.scala 39:67]
node _T_317 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 275:40]
node _T_318 = mux(_T_317, UInt<3>("h00"), UInt<3>("h02")) @[dbg.scala 275:26]
dbg_nxtstate <= _T_318 @[dbg.scala 275:20]
node _T_319 = bits(dmstatus_reg, 9, 9) @[dbg.scala 276:35]
node _T_320 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 276:54]
node _T_321 = or(_T_319, _T_320) @[dbg.scala 276:39]
dbg_state_en <= _T_321 @[dbg.scala 276:20]
node _T_322 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 277:59]
node _T_323 = and(dmcontrol_wren_Q, _T_322) @[dbg.scala 277:44]
node _T_324 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 277:81]
node _T_325 = not(_T_324) @[dbg.scala 277:67]
node _T_326 = and(_T_323, _T_325) @[dbg.scala 277:64]
node _T_327 = bits(_T_326, 0, 0) @[dbg.scala 277:102]
io.dbg_halt_req <= _T_327 @[dbg.scala 277:23]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_328 = eq(UInt<3>("h02"), dbg_state) @[Conditional.scala 37:30]
when _T_328 : @[Conditional.scala 39:67]
node _T_329 = bits(dmstatus_reg, 9, 9) @[dbg.scala 280:39]
node _T_330 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 280:59]
node _T_331 = eq(_T_330, UInt<1>("h00")) @[dbg.scala 280:45]
node _T_332 = and(_T_329, _T_331) @[dbg.scala 280:43]
node _T_333 = bits(dmcontrol_reg, 30, 30) @[dbg.scala 281:26]
node _T_334 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 281:47]
node _T_335 = eq(_T_334, UInt<1>("h00")) @[dbg.scala 281:33]
node _T_336 = and(_T_333, _T_335) @[dbg.scala 281:31]
node _T_337 = mux(_T_336, UInt<3>("h06"), UInt<3>("h03")) @[dbg.scala 281:12]
node _T_338 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 282:26]
node _T_339 = mux(_T_338, UInt<3>("h01"), UInt<3>("h00")) @[dbg.scala 282:12]
node _T_340 = mux(_T_332, _T_337, _T_339) @[dbg.scala 280:26]
dbg_nxtstate <= _T_340 @[dbg.scala 280:20]
node _T_341 = bits(dmstatus_reg, 9, 9) @[dbg.scala 283:35]
node _T_342 = bits(dmcontrol_reg, 30, 30) @[dbg.scala 283:54]
node _T_343 = and(_T_341, _T_342) @[dbg.scala 283:39]
node _T_344 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 283:75]
node _T_345 = eq(_T_344, UInt<1>("h00")) @[dbg.scala 283:61]
node _T_346 = and(_T_343, _T_345) @[dbg.scala 283:59]
node _T_347 = and(_T_346, dmcontrol_wren_Q) @[dbg.scala 283:80]
node _T_348 = or(_T_347, command_wren) @[dbg.scala 283:99]
node _T_349 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 284:22]
node _T_350 = or(_T_348, _T_349) @[dbg.scala 283:114]
node _T_351 = bits(dmstatus_reg, 9, 9) @[dbg.scala 284:42]
node _T_352 = or(_T_351, io.dec_tlu_mpc_halted_only) @[dbg.scala 284:46]
node _T_353 = eq(_T_352, UInt<1>("h00")) @[dbg.scala 284:28]
node _T_354 = or(_T_350, _T_353) @[dbg.scala 284:26]
dbg_state_en <= _T_354 @[dbg.scala 283:20]
node _T_355 = eq(dbg_nxtstate, UInt<3>("h03")) @[dbg.scala 285:60]
node _T_356 = and(dbg_state_en, _T_355) @[dbg.scala 285:44]
abstractcs_busy_wren <= _T_356 @[dbg.scala 285:28]
abstractcs_busy_din <= UInt<1>("h01") @[dbg.scala 286:27]
node _T_357 = eq(dbg_nxtstate, UInt<3>("h06")) @[dbg.scala 287:58]
node _T_358 = and(dbg_state_en, _T_357) @[dbg.scala 287:42]
node _T_359 = bits(_T_358, 0, 0) @[dbg.scala 287:87]
io.dbg_resume_req <= _T_359 @[dbg.scala 287:25]
node _T_360 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 288:59]
node _T_361 = and(dmcontrol_wren_Q, _T_360) @[dbg.scala 288:44]
node _T_362 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 288:81]
node _T_363 = not(_T_362) @[dbg.scala 288:67]
node _T_364 = and(_T_361, _T_363) @[dbg.scala 288:64]
node _T_365 = bits(_T_364, 0, 0) @[dbg.scala 288:102]
io.dbg_halt_req <= _T_365 @[dbg.scala 288:23]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_366 = eq(UInt<3>("h03"), dbg_state) @[Conditional.scala 37:30]
when _T_366 : @[Conditional.scala 39:67]
node _T_367 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 291:40]
node _T_368 = bits(abstractcs_reg, 10, 8) @[dbg.scala 291:77]
node _T_369 = orr(_T_368) @[dbg.scala 291:85]
node _T_370 = mux(_T_369, UInt<3>("h05"), UInt<3>("h04")) @[dbg.scala 291:62]
node _T_371 = mux(_T_367, UInt<3>("h00"), _T_370) @[dbg.scala 291:26]
dbg_nxtstate <= _T_371 @[dbg.scala 291:20]
node _T_372 = bits(abstractcs_reg, 10, 8) @[dbg.scala 292:71]
node _T_373 = orr(_T_372) @[dbg.scala 292:79]
node _T_374 = or(io.dbg_dec.dbg_ib.dbg_cmd_valid, _T_373) @[dbg.scala 292:55]
node _T_375 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 292:98]
node _T_376 = or(_T_374, _T_375) @[dbg.scala 292:83]
dbg_state_en <= _T_376 @[dbg.scala 292:20]
node _T_377 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 293:59]
node _T_378 = and(dmcontrol_wren_Q, _T_377) @[dbg.scala 293:44]
node _T_379 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 293:81]
node _T_380 = not(_T_379) @[dbg.scala 293:67]
node _T_381 = and(_T_378, _T_380) @[dbg.scala 293:64]
node _T_382 = bits(_T_381, 0, 0) @[dbg.scala 293:102]
io.dbg_halt_req <= _T_382 @[dbg.scala 293:23]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_383 = eq(UInt<3>("h04"), dbg_state) @[Conditional.scala 37:30]
when _T_383 : @[Conditional.scala 39:67]
node _T_384 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 296:40]
node _T_385 = mux(_T_384, UInt<3>("h00"), UInt<3>("h05")) @[dbg.scala 296:26]
dbg_nxtstate <= _T_385 @[dbg.scala 296:20]
node _T_386 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 297:59]
node _T_387 = or(io.core_dbg_cmd_done, _T_386) @[dbg.scala 297:44]
dbg_state_en <= _T_387 @[dbg.scala 297:20]
node _T_388 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 298:59]
node _T_389 = and(dmcontrol_wren_Q, _T_388) @[dbg.scala 298:44]
node _T_390 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 298:81]
node _T_391 = not(_T_390) @[dbg.scala 298:67]
node _T_392 = and(_T_389, _T_391) @[dbg.scala 298:64]
node _T_393 = bits(_T_392, 0, 0) @[dbg.scala 298:102]
io.dbg_halt_req <= _T_393 @[dbg.scala 298:23]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_394 = eq(UInt<3>("h05"), dbg_state) @[Conditional.scala 37:30]
when _T_394 : @[Conditional.scala 39:67]
node _T_395 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 301:40]
node _T_396 = mux(_T_395, UInt<3>("h00"), UInt<3>("h02")) @[dbg.scala 301:26]
dbg_nxtstate <= _T_396 @[dbg.scala 301:20]
dbg_state_en <= UInt<1>("h01") @[dbg.scala 302:20]
abstractcs_busy_wren <= dbg_state_en @[dbg.scala 303:28]
abstractcs_busy_din <= UInt<1>("h00") @[dbg.scala 304:27]
node _T_397 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 305:59]
node _T_398 = and(dmcontrol_wren_Q, _T_397) @[dbg.scala 305:44]
node _T_399 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 305:81]
node _T_400 = not(_T_399) @[dbg.scala 305:67]
node _T_401 = and(_T_398, _T_400) @[dbg.scala 305:64]
node _T_402 = bits(_T_401, 0, 0) @[dbg.scala 305:102]
io.dbg_halt_req <= _T_402 @[dbg.scala 305:23]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_403 = eq(UInt<3>("h06"), dbg_state) @[Conditional.scala 37:30]
when _T_403 : @[Conditional.scala 39:67]
dbg_nxtstate <= UInt<3>("h00") @[dbg.scala 308:20]
node _T_404 = bits(dmstatus_reg, 17, 17) @[dbg.scala 309:35]
node _T_405 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 309:55]
node _T_406 = or(_T_404, _T_405) @[dbg.scala 309:40]
dbg_state_en <= _T_406 @[dbg.scala 309:20]
node _T_407 = bits(dmcontrol_reg, 31, 31) @[dbg.scala 310:59]
node _T_408 = and(dmcontrol_wren_Q, _T_407) @[dbg.scala 310:44]
node _T_409 = bits(dmcontrol_reg, 1, 1) @[dbg.scala 310:81]
node _T_410 = not(_T_409) @[dbg.scala 310:67]
node _T_411 = and(_T_408, _T_410) @[dbg.scala 310:64]
node _T_412 = bits(_T_411, 0, 0) @[dbg.scala 310:102]
io.dbg_halt_req <= _T_412 @[dbg.scala 310:23]
skip @[Conditional.scala 39:67]
node _T_413 = eq(io.dmi_reg_addr, UInt<3>("h04")) @[dbg.scala 313:52]
node _T_414 = bits(_T_413, 0, 0) @[Bitwise.scala 72:15]
node _T_415 = mux(_T_414, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_416 = and(_T_415, data0_reg) @[dbg.scala 313:71]
node _T_417 = eq(io.dmi_reg_addr, UInt<3>("h05")) @[dbg.scala 313:110]
node _T_418 = bits(_T_417, 0, 0) @[Bitwise.scala 72:15]
node _T_419 = mux(_T_418, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_420 = and(_T_419, data1_reg) @[dbg.scala 313:122]
node _T_421 = or(_T_416, _T_420) @[dbg.scala 313:83]
node _T_422 = eq(io.dmi_reg_addr, UInt<5>("h010")) @[dbg.scala 314:30]
node _T_423 = bits(_T_422, 0, 0) @[Bitwise.scala 72:15]
node _T_424 = mux(_T_423, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_425 = and(_T_424, dmcontrol_reg) @[dbg.scala 314:43]
node _T_426 = or(_T_421, _T_425) @[dbg.scala 313:134]
node _T_427 = eq(io.dmi_reg_addr, UInt<5>("h011")) @[dbg.scala 314:86]
node _T_428 = bits(_T_427, 0, 0) @[Bitwise.scala 72:15]
node _T_429 = mux(_T_428, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_430 = and(_T_429, dmstatus_reg) @[dbg.scala 314:99]
node _T_431 = or(_T_426, _T_430) @[dbg.scala 314:59]
node _T_432 = eq(io.dmi_reg_addr, UInt<5>("h016")) @[dbg.scala 315:30]
node _T_433 = bits(_T_432, 0, 0) @[Bitwise.scala 72:15]
node _T_434 = mux(_T_433, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_435 = and(_T_434, abstractcs_reg) @[dbg.scala 315:43]
node _T_436 = or(_T_431, _T_435) @[dbg.scala 314:114]
node _T_437 = eq(io.dmi_reg_addr, UInt<5>("h017")) @[dbg.scala 315:87]
node _T_438 = bits(_T_437, 0, 0) @[Bitwise.scala 72:15]
node _T_439 = mux(_T_438, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_440 = and(_T_439, command_reg) @[dbg.scala 315:100]
node _T_441 = or(_T_436, _T_440) @[dbg.scala 315:60]
node _T_442 = eq(io.dmi_reg_addr, UInt<7>("h040")) @[dbg.scala 316:30]
node _T_443 = bits(_T_442, 0, 0) @[Bitwise.scala 72:15]
node _T_444 = mux(_T_443, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_445 = and(_T_444, haltsum0_reg) @[dbg.scala 316:43]
node _T_446 = or(_T_441, _T_445) @[dbg.scala 315:114]
node _T_447 = eq(io.dmi_reg_addr, UInt<6>("h038")) @[dbg.scala 316:85]
node _T_448 = bits(_T_447, 0, 0) @[Bitwise.scala 72:15]
node _T_449 = mux(_T_448, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_450 = and(_T_449, sbcs_reg) @[dbg.scala 316:98]
node _T_451 = or(_T_446, _T_450) @[dbg.scala 316:58]
node _T_452 = eq(io.dmi_reg_addr, UInt<6>("h039")) @[dbg.scala 317:30]
node _T_453 = bits(_T_452, 0, 0) @[Bitwise.scala 72:15]
node _T_454 = mux(_T_453, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_455 = and(_T_454, sbaddress0_reg) @[dbg.scala 317:43]
node _T_456 = or(_T_451, _T_455) @[dbg.scala 316:109]
node _T_457 = eq(io.dmi_reg_addr, UInt<6>("h03c")) @[dbg.scala 317:87]
node _T_458 = bits(_T_457, 0, 0) @[Bitwise.scala 72:15]
node _T_459 = mux(_T_458, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_460 = and(_T_459, sbdata0_reg) @[dbg.scala 317:100]
node _T_461 = or(_T_456, _T_460) @[dbg.scala 317:60]
node _T_462 = eq(io.dmi_reg_addr, UInt<6>("h03d")) @[dbg.scala 318:30]
node _T_463 = bits(_T_462, 0, 0) @[Bitwise.scala 72:15]
node _T_464 = mux(_T_463, UInt<32>("h0ffffffff"), UInt<32>("h00")) @[Bitwise.scala 72:12]
node _T_465 = and(_T_464, sbdata1_reg) @[dbg.scala 318:43]
node dmi_reg_rdata_din = or(_T_461, _T_465) @[dbg.scala 317:114]
reg _T_466 : UInt, rvclkhdr.io.l1clk with : (reset => (rst_temp, UInt<1>("h00"))) @[Reg.scala 27:20]
when dbg_state_en : @[Reg.scala 28:19]
_T_466 <= dbg_nxtstate @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
dbg_state <= _T_466 @[dbg.scala 320:13]
reg _T_467 : UInt, rvclkhdr.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when io.dmi_reg_en : @[Reg.scala 28:19]
_T_467 <= dmi_reg_rdata_din @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
io.dmi_reg_rdata <= _T_467 @[dbg.scala 325:20]
node _T_468 = bits(command_reg, 31, 24) @[dbg.scala 329:53]
node _T_469 = eq(_T_468, UInt<2>("h02")) @[dbg.scala 329:62]
node _T_470 = bits(data1_reg, 31, 2) @[dbg.scala 329:88]
node _T_471 = cat(_T_470, UInt<2>("h00")) @[Cat.scala 29:58]
node _T_472 = bits(command_reg, 11, 0) @[dbg.scala 329:138]
node _T_473 = cat(UInt<20>("h00"), _T_472) @[Cat.scala 29:58]
node _T_474 = mux(_T_469, _T_471, _T_473) @[dbg.scala 329:40]
io.dbg_dec.dbg_ib.dbg_cmd_addr <= _T_474 @[dbg.scala 329:34]
node _T_475 = bits(data0_reg, 31, 0) @[dbg.scala 330:50]
io.dbg_dec.dbg_dctl.dbg_cmd_wrdata <= _T_475 @[dbg.scala 330:38]
node _T_476 = eq(dbg_state, UInt<3>("h03")) @[dbg.scala 331:50]
node _T_477 = bits(abstractcs_reg, 10, 8) @[dbg.scala 331:91]
node _T_478 = orr(_T_477) @[dbg.scala 331:99]
node _T_479 = eq(_T_478, UInt<1>("h00")) @[dbg.scala 331:75]
node _T_480 = and(_T_476, _T_479) @[dbg.scala 331:73]
node _T_481 = and(_T_480, io.dbg_dma_io.dma_dbg_ready) @[dbg.scala 331:104]
node _T_482 = bits(_T_481, 0, 0) @[dbg.scala 331:141]
io.dbg_dec.dbg_ib.dbg_cmd_valid <= _T_482 @[dbg.scala 331:35]
node _T_483 = bits(command_reg, 16, 16) @[dbg.scala 332:49]
node _T_484 = bits(_T_483, 0, 0) @[dbg.scala 332:60]
io.dbg_dec.dbg_ib.dbg_cmd_write <= _T_484 @[dbg.scala 332:35]
node _T_485 = bits(command_reg, 31, 24) @[dbg.scala 333:53]
node _T_486 = eq(_T_485, UInt<2>("h02")) @[dbg.scala 333:62]
node _T_487 = bits(command_reg, 15, 12) @[dbg.scala 333:113]
node _T_488 = eq(_T_487, UInt<1>("h00")) @[dbg.scala 333:122]
node _T_489 = cat(UInt<1>("h00"), _T_488) @[Cat.scala 29:58]
node _T_490 = mux(_T_486, UInt<2>("h02"), _T_489) @[dbg.scala 333:40]
io.dbg_dec.dbg_ib.dbg_cmd_type <= _T_490 @[dbg.scala 333:34]
node _T_491 = bits(command_reg, 21, 20) @[dbg.scala 334:33]
io.dbg_cmd_size <= _T_491 @[dbg.scala 334:19]
node _T_492 = eq(dbg_state, UInt<3>("h03")) @[dbg.scala 335:47]
node _T_493 = bits(abstractcs_reg, 10, 8) @[dbg.scala 335:88]
node _T_494 = orr(_T_493) @[dbg.scala 335:96]
node _T_495 = eq(_T_494, UInt<1>("h00")) @[dbg.scala 335:72]
node _T_496 = and(_T_492, _T_495) @[dbg.scala 335:70]
node _T_497 = eq(dbg_state, UInt<3>("h04")) @[dbg.scala 335:114]
node _T_498 = or(_T_496, _T_497) @[dbg.scala 335:101]
node _T_499 = bits(_T_498, 0, 0) @[dbg.scala 335:143]
io.dbg_dma_io.dbg_dma_bubble <= _T_499 @[dbg.scala 335:32]
wire sb_nxtstate : UInt<4>
sb_nxtstate <= UInt<4>("h00")
sb_nxtstate <= UInt<4>("h00") @[dbg.scala 338:15]
sbcs_sbbusy_wren <= UInt<1>("h00") @[dbg.scala 340:20]
sbcs_sbbusy_din <= UInt<1>("h00") @[dbg.scala 341:19]
sbcs_sberror_wren <= UInt<1>("h00") @[dbg.scala 342:21]
sbcs_sberror_din <= UInt<3>("h00") @[dbg.scala 343:20]
sbaddress0_reg_wren1 <= UInt<1>("h00") @[dbg.scala 344:24]
node _T_500 = eq(UInt<4>("h00"), sb_state) @[Conditional.scala 37:30]
when _T_500 : @[Conditional.scala 40:58]
node _T_501 = mux(sbdata0wr_access, UInt<4>("h02"), UInt<4>("h01")) @[dbg.scala 347:25]
sb_nxtstate <= _T_501 @[dbg.scala 347:19]
node _T_502 = or(sbdata0wr_access, sbreadondata_access) @[dbg.scala 348:39]
node _T_503 = or(_T_502, sbreadonaddr_access) @[dbg.scala 348:61]
sb_state_en <= _T_503 @[dbg.scala 348:19]
sbcs_sbbusy_wren <= sb_state_en @[dbg.scala 349:24]
sbcs_sbbusy_din <= UInt<1>("h01") @[dbg.scala 350:23]
node _T_504 = bits(io.dmi_reg_wdata, 14, 12) @[dbg.scala 351:56]
node _T_505 = orr(_T_504) @[dbg.scala 351:65]
node _T_506 = and(sbcs_wren, _T_505) @[dbg.scala 351:38]
sbcs_sberror_wren <= _T_506 @[dbg.scala 351:25]
node _T_507 = bits(io.dmi_reg_wdata, 14, 12) @[dbg.scala 352:44]
node _T_508 = not(_T_507) @[dbg.scala 352:27]
node _T_509 = bits(sbcs_reg, 14, 12) @[dbg.scala 352:63]
node _T_510 = and(_T_508, _T_509) @[dbg.scala 352:53]
sbcs_sberror_din <= _T_510 @[dbg.scala 352:24]
skip @[Conditional.scala 40:58]
else : @[Conditional.scala 39:67]
node _T_511 = eq(UInt<4>("h01"), sb_state) @[Conditional.scala 37:30]
when _T_511 : @[Conditional.scala 39:67]
node _T_512 = or(sbcs_unaligned, sbcs_illegal_size) @[dbg.scala 355:41]
node _T_513 = mux(_T_512, UInt<4>("h09"), UInt<4>("h03")) @[dbg.scala 355:25]
sb_nxtstate <= _T_513 @[dbg.scala 355:19]
node _T_514 = or(io.dbg_bus_clk_en, sbcs_unaligned) @[dbg.scala 356:40]
node _T_515 = or(_T_514, sbcs_illegal_size) @[dbg.scala 356:57]
sb_state_en <= _T_515 @[dbg.scala 356:19]
node _T_516 = or(sbcs_unaligned, sbcs_illegal_size) @[dbg.scala 357:43]
sbcs_sberror_wren <= _T_516 @[dbg.scala 357:25]
node _T_517 = mux(sbcs_unaligned, UInt<3>("h03"), UInt<3>("h04")) @[dbg.scala 358:30]
sbcs_sberror_din <= _T_517 @[dbg.scala 358:24]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_518 = eq(UInt<4>("h02"), sb_state) @[Conditional.scala 37:30]
when _T_518 : @[Conditional.scala 39:67]
node _T_519 = or(sbcs_unaligned, sbcs_illegal_size) @[dbg.scala 361:41]
node _T_520 = mux(_T_519, UInt<4>("h09"), UInt<4>("h04")) @[dbg.scala 361:25]
sb_nxtstate <= _T_520 @[dbg.scala 361:19]
node _T_521 = or(io.dbg_bus_clk_en, sbcs_unaligned) @[dbg.scala 362:40]
node _T_522 = or(_T_521, sbcs_illegal_size) @[dbg.scala 362:57]
sb_state_en <= _T_522 @[dbg.scala 362:19]
node _T_523 = or(sbcs_unaligned, sbcs_illegal_size) @[dbg.scala 363:43]
sbcs_sberror_wren <= _T_523 @[dbg.scala 363:25]
node _T_524 = mux(sbcs_unaligned, UInt<3>("h03"), UInt<3>("h04")) @[dbg.scala 364:30]
sbcs_sberror_din <= _T_524 @[dbg.scala 364:24]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_525 = eq(UInt<4>("h03"), sb_state) @[Conditional.scala 37:30]
when _T_525 : @[Conditional.scala 39:67]
sb_nxtstate <= UInt<4>("h07") @[dbg.scala 367:19]
node _T_526 = and(sb_bus_cmd_read, io.dbg_bus_clk_en) @[dbg.scala 368:38]
sb_state_en <= _T_526 @[dbg.scala 368:19]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_527 = eq(UInt<4>("h04"), sb_state) @[Conditional.scala 37:30]
when _T_527 : @[Conditional.scala 39:67]
node _T_528 = and(sb_bus_cmd_write_addr, sb_bus_cmd_write_data) @[dbg.scala 371:48]
node _T_529 = mux(sb_bus_cmd_write_data, UInt<4>("h05"), UInt<4>("h06")) @[dbg.scala 371:95]
node _T_530 = mux(_T_528, UInt<4>("h08"), _T_529) @[dbg.scala 371:25]
sb_nxtstate <= _T_530 @[dbg.scala 371:19]
node _T_531 = or(sb_bus_cmd_write_addr, sb_bus_cmd_write_data) @[dbg.scala 372:45]
node _T_532 = and(_T_531, io.dbg_bus_clk_en) @[dbg.scala 372:70]
sb_state_en <= _T_532 @[dbg.scala 372:19]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_533 = eq(UInt<4>("h05"), sb_state) @[Conditional.scala 37:30]
when _T_533 : @[Conditional.scala 39:67]
sb_nxtstate <= UInt<4>("h08") @[dbg.scala 375:19]
node _T_534 = and(sb_bus_cmd_write_addr, io.dbg_bus_clk_en) @[dbg.scala 376:44]
sb_state_en <= _T_534 @[dbg.scala 376:19]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_535 = eq(UInt<4>("h06"), sb_state) @[Conditional.scala 37:30]
when _T_535 : @[Conditional.scala 39:67]
sb_nxtstate <= UInt<4>("h08") @[dbg.scala 379:19]
node _T_536 = and(sb_bus_cmd_write_data, io.dbg_bus_clk_en) @[dbg.scala 380:44]
sb_state_en <= _T_536 @[dbg.scala 380:19]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_537 = eq(UInt<4>("h07"), sb_state) @[Conditional.scala 37:30]
when _T_537 : @[Conditional.scala 39:67]
sb_nxtstate <= UInt<4>("h09") @[dbg.scala 383:19]
node _T_538 = and(sb_bus_rsp_read, io.dbg_bus_clk_en) @[dbg.scala 384:38]
sb_state_en <= _T_538 @[dbg.scala 384:19]
node _T_539 = and(sb_state_en, sb_bus_rsp_error) @[dbg.scala 385:40]
sbcs_sberror_wren <= _T_539 @[dbg.scala 385:25]
sbcs_sberror_din <= UInt<3>("h02") @[dbg.scala 386:24]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_540 = eq(UInt<4>("h08"), sb_state) @[Conditional.scala 37:30]
when _T_540 : @[Conditional.scala 39:67]
sb_nxtstate <= UInt<4>("h09") @[dbg.scala 389:19]
node _T_541 = and(sb_bus_rsp_write, io.dbg_bus_clk_en) @[dbg.scala 390:39]
sb_state_en <= _T_541 @[dbg.scala 390:19]
node _T_542 = and(sb_state_en, sb_bus_rsp_error) @[dbg.scala 391:40]
sbcs_sberror_wren <= _T_542 @[dbg.scala 391:25]
sbcs_sberror_din <= UInt<3>("h02") @[dbg.scala 392:24]
skip @[Conditional.scala 39:67]
else : @[Conditional.scala 39:67]
node _T_543 = eq(UInt<4>("h09"), sb_state) @[Conditional.scala 37:30]
when _T_543 : @[Conditional.scala 39:67]
sb_nxtstate <= UInt<4>("h00") @[dbg.scala 395:19]
sb_state_en <= UInt<1>("h01") @[dbg.scala 396:19]
sbcs_sbbusy_wren <= UInt<1>("h01") @[dbg.scala 397:24]
sbcs_sbbusy_din <= UInt<1>("h00") @[dbg.scala 398:23]
node _T_544 = bits(sbcs_reg, 16, 16) @[dbg.scala 399:39]
sbaddress0_reg_wren1 <= _T_544 @[dbg.scala 399:28]
skip @[Conditional.scala 39:67]
reg _T_545 : UInt, rvclkhdr_1.io.l1clk with : (reset => (dbg_dm_rst_l, UInt<1>("h00"))) @[Reg.scala 27:20]
when sb_state_en : @[Reg.scala 28:19]
_T_545 <= sb_nxtstate @[Reg.scala 28:23]
skip @[Reg.scala 28:19]
sb_state <= _T_545 @[dbg.scala 402:12]
node _T_546 = and(io.sb_axi.ar.valid, io.sb_axi.ar.ready) @[dbg.scala 406:41]
sb_bus_cmd_read <= _T_546 @[dbg.scala 406:19]
node _T_547 = and(io.sb_axi.aw.valid, io.sb_axi.aw.ready) @[dbg.scala 407:47]
sb_bus_cmd_write_addr <= _T_547 @[dbg.scala 407:25]
node _T_548 = and(io.sb_axi.w.valid, io.sb_axi.w.ready) @[dbg.scala 408:46]
sb_bus_cmd_write_data <= _T_548 @[dbg.scala 408:25]
node _T_549 = and(io.sb_axi.r.valid, io.sb_axi.r.ready) @[dbg.scala 409:40]
sb_bus_rsp_read <= _T_549 @[dbg.scala 409:19]
node _T_550 = and(io.sb_axi.b.valid, io.sb_axi.b.ready) @[dbg.scala 410:41]
sb_bus_rsp_write <= _T_550 @[dbg.scala 410:20]
node _T_551 = bits(io.sb_axi.r.bits.resp, 1, 0) @[dbg.scala 411:62]
node _T_552 = orr(_T_551) @[dbg.scala 411:69]
node _T_553 = and(sb_bus_rsp_read, _T_552) @[dbg.scala 411:39]
node _T_554 = bits(io.sb_axi.b.bits.resp, 1, 0) @[dbg.scala 411:115]
node _T_555 = orr(_T_554) @[dbg.scala 411:122]
node _T_556 = and(sb_bus_rsp_write, _T_555) @[dbg.scala 411:92]
node _T_557 = or(_T_553, _T_556) @[dbg.scala 411:73]
sb_bus_rsp_error <= _T_557 @[dbg.scala 411:20]
node _T_558 = eq(sb_state, UInt<4>("h04")) @[dbg.scala 412:36]
node _T_559 = eq(sb_state, UInt<4>("h05")) @[dbg.scala 412:71]
node _T_560 = or(_T_558, _T_559) @[dbg.scala 412:59]
node _T_561 = bits(_T_560, 0, 0) @[dbg.scala 412:106]
io.sb_axi.aw.valid <= _T_561 @[dbg.scala 412:22]
io.sb_axi.aw.bits.addr <= sbaddress0_reg @[dbg.scala 413:26]
io.sb_axi.aw.bits.id <= UInt<1>("h00") @[dbg.scala 414:24]
node _T_562 = bits(sbcs_reg, 19, 17) @[dbg.scala 415:37]
io.sb_axi.aw.bits.size <= _T_562 @[dbg.scala 415:26]
io.sb_axi.aw.bits.prot <= UInt<1>("h00") @[dbg.scala 416:26]
io.sb_axi.aw.bits.cache <= UInt<4>("h0f") @[dbg.scala 417:27]
node _T_563 = bits(sbaddress0_reg, 31, 28) @[dbg.scala 418:45]
io.sb_axi.aw.bits.region <= _T_563 @[dbg.scala 418:28]
io.sb_axi.aw.bits.len <= UInt<1>("h00") @[dbg.scala 419:25]
io.sb_axi.aw.bits.burst <= UInt<2>("h01") @[dbg.scala 420:27]
io.sb_axi.aw.bits.qos <= UInt<1>("h00") @[dbg.scala 421:25]
io.sb_axi.aw.bits.lock <= UInt<1>("h00") @[dbg.scala 422:26]
node _T_564 = eq(sb_state, UInt<4>("h04")) @[dbg.scala 423:35]
node _T_565 = eq(sb_state, UInt<4>("h06")) @[dbg.scala 423:70]
node _T_566 = or(_T_564, _T_565) @[dbg.scala 423:58]
node _T_567 = bits(_T_566, 0, 0) @[dbg.scala 423:105]
io.sb_axi.w.valid <= _T_567 @[dbg.scala 423:21]
node _T_568 = bits(sbcs_reg, 19, 17) @[dbg.scala 424:46]
node _T_569 = eq(_T_568, UInt<1>("h00")) @[dbg.scala 424:55]
node _T_570 = bits(_T_569, 0, 0) @[Bitwise.scala 72:15]
node _T_571 = mux(_T_570, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_572 = bits(sbdata0_reg, 7, 0) @[dbg.scala 424:87]
node _T_573 = cat(_T_572, _T_572) @[Cat.scala 29:58]
node _T_574 = cat(_T_573, _T_573) @[Cat.scala 29:58]
node _T_575 = cat(_T_574, _T_574) @[Cat.scala 29:58]
node _T_576 = and(_T_571, _T_575) @[dbg.scala 424:65]
node _T_577 = bits(sbcs_reg, 19, 17) @[dbg.scala 424:116]
node _T_578 = eq(_T_577, UInt<1>("h01")) @[dbg.scala 424:125]
node _T_579 = bits(_T_578, 0, 0) @[Bitwise.scala 72:15]
node _T_580 = mux(_T_579, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_581 = bits(sbdata0_reg, 15, 0) @[dbg.scala 424:159]
node _T_582 = cat(_T_581, _T_581) @[Cat.scala 29:58]
node _T_583 = cat(_T_582, _T_582) @[Cat.scala 29:58]
node _T_584 = and(_T_580, _T_583) @[dbg.scala 424:138]
node _T_585 = or(_T_576, _T_584) @[dbg.scala 424:96]
node _T_586 = bits(sbcs_reg, 19, 17) @[dbg.scala 425:23]
node _T_587 = eq(_T_586, UInt<2>("h02")) @[dbg.scala 425:32]
node _T_588 = bits(_T_587, 0, 0) @[Bitwise.scala 72:15]
node _T_589 = mux(_T_588, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_590 = bits(sbdata0_reg, 31, 0) @[dbg.scala 425:67]
node _T_591 = cat(_T_590, _T_590) @[Cat.scala 29:58]
node _T_592 = and(_T_589, _T_591) @[dbg.scala 425:45]
node _T_593 = or(_T_585, _T_592) @[dbg.scala 424:168]
node _T_594 = bits(sbcs_reg, 19, 17) @[dbg.scala 425:97]
node _T_595 = eq(_T_594, UInt<2>("h03")) @[dbg.scala 425:106]
node _T_596 = bits(_T_595, 0, 0) @[Bitwise.scala 72:15]
node _T_597 = mux(_T_596, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_598 = bits(sbdata1_reg, 31, 0) @[dbg.scala 425:136]
node _T_599 = bits(sbdata0_reg, 31, 0) @[dbg.scala 425:156]
node _T_600 = cat(_T_598, _T_599) @[Cat.scala 29:58]
node _T_601 = and(_T_597, _T_600) @[dbg.scala 425:119]
node _T_602 = or(_T_593, _T_601) @[dbg.scala 425:77]
io.sb_axi.w.bits.data <= _T_602 @[dbg.scala 424:25]
node _T_603 = bits(sbcs_reg, 19, 17) @[dbg.scala 427:45]
node _T_604 = eq(_T_603, UInt<1>("h00")) @[dbg.scala 427:54]
node _T_605 = bits(_T_604, 0, 0) @[Bitwise.scala 72:15]
node _T_606 = mux(_T_605, UInt<8>("h0ff"), UInt<8>("h00")) @[Bitwise.scala 72:12]
node _T_607 = bits(sbaddress0_reg, 2, 0) @[dbg.scala 427:99]
node _T_608 = dshl(UInt<8>("h01"), _T_607) @[dbg.scala 427:82]
node _T_609 = and(_T_606, _T_608) @[dbg.scala 427:67]
node _T_610 = bits(sbcs_reg, 19, 17) @[dbg.scala 428:22]
node _T_611 = eq(_T_610, UInt<1>("h01")) @[dbg.scala 428:31]
node _T_612 = bits(_T_611, 0, 0) @[Bitwise.scala 72:15]
node _T_613 = mux(_T_612, UInt<8>("h0ff"), UInt<8>("h00")) @[Bitwise.scala 72:12]
node _T_614 = bits(sbaddress0_reg, 2, 1) @[dbg.scala 428:80]
node _T_615 = cat(_T_614, UInt<1>("h00")) @[Cat.scala 29:58]
node _T_616 = dshl(UInt<8>("h03"), _T_615) @[dbg.scala 428:59]
node _T_617 = and(_T_613, _T_616) @[dbg.scala 428:44]
node _T_618 = or(_T_609, _T_617) @[dbg.scala 427:107]
node _T_619 = bits(sbcs_reg, 19, 17) @[dbg.scala 429:22]
node _T_620 = eq(_T_619, UInt<2>("h02")) @[dbg.scala 429:31]
node _T_621 = bits(_T_620, 0, 0) @[Bitwise.scala 72:15]
node _T_622 = mux(_T_621, UInt<8>("h0ff"), UInt<8>("h00")) @[Bitwise.scala 72:12]
node _T_623 = bits(sbaddress0_reg, 2, 2) @[dbg.scala 429:80]
node _T_624 = cat(_T_623, UInt<2>("h00")) @[Cat.scala 29:58]
node _T_625 = dshl(UInt<8>("h0f"), _T_624) @[dbg.scala 429:59]
node _T_626 = and(_T_622, _T_625) @[dbg.scala 429:44]
node _T_627 = or(_T_618, _T_626) @[dbg.scala 428:97]
node _T_628 = bits(sbcs_reg, 19, 17) @[dbg.scala 430:22]
node _T_629 = eq(_T_628, UInt<2>("h03")) @[dbg.scala 430:31]
node _T_630 = bits(_T_629, 0, 0) @[Bitwise.scala 72:15]
node _T_631 = mux(_T_630, UInt<8>("h0ff"), UInt<8>("h00")) @[Bitwise.scala 72:12]
node _T_632 = and(_T_631, UInt<8>("h0ff")) @[dbg.scala 430:44]
node _T_633 = or(_T_627, _T_632) @[dbg.scala 429:100]
io.sb_axi.w.bits.strb <= _T_633 @[dbg.scala 427:25]
io.sb_axi.w.bits.last <= UInt<1>("h01") @[dbg.scala 432:25]
node _T_634 = eq(sb_state, UInt<4>("h03")) @[dbg.scala 433:35]
node _T_635 = bits(_T_634, 0, 0) @[dbg.scala 433:64]
io.sb_axi.ar.valid <= _T_635 @[dbg.scala 433:22]
io.sb_axi.ar.bits.addr <= sbaddress0_reg @[dbg.scala 434:26]
io.sb_axi.ar.bits.id <= UInt<1>("h00") @[dbg.scala 435:24]
node _T_636 = bits(sbcs_reg, 19, 17) @[dbg.scala 436:37]
io.sb_axi.ar.bits.size <= _T_636 @[dbg.scala 436:26]
io.sb_axi.ar.bits.prot <= UInt<1>("h00") @[dbg.scala 437:26]
io.sb_axi.ar.bits.cache <= UInt<1>("h00") @[dbg.scala 438:27]
node _T_637 = bits(sbaddress0_reg, 31, 28) @[dbg.scala 439:45]
io.sb_axi.ar.bits.region <= _T_637 @[dbg.scala 439:28]
io.sb_axi.ar.bits.len <= UInt<1>("h00") @[dbg.scala 440:25]
io.sb_axi.ar.bits.burst <= UInt<2>("h01") @[dbg.scala 441:27]
io.sb_axi.ar.bits.qos <= UInt<1>("h00") @[dbg.scala 442:25]
io.sb_axi.ar.bits.lock <= UInt<1>("h00") @[dbg.scala 443:26]
io.sb_axi.b.ready <= UInt<1>("h01") @[dbg.scala 444:21]
io.sb_axi.r.ready <= UInt<1>("h01") @[dbg.scala 445:21]
node _T_638 = bits(sbcs_reg, 19, 17) @[dbg.scala 446:37]
node _T_639 = eq(_T_638, UInt<1>("h00")) @[dbg.scala 446:46]
node _T_640 = bits(_T_639, 0, 0) @[Bitwise.scala 72:15]
node _T_641 = mux(_T_640, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_642 = bits(io.sb_axi.r.bits.data, 63, 0) @[dbg.scala 446:84]
node _T_643 = bits(sbaddress0_reg, 2, 0) @[dbg.scala 446:115]
node _T_644 = mul(UInt<4>("h08"), _T_643) @[dbg.scala 446:99]
node _T_645 = dshr(_T_642, _T_644) @[dbg.scala 446:92]
node _T_646 = and(_T_645, UInt<64>("h0ff")) @[dbg.scala 446:123]
node _T_647 = and(_T_641, _T_646) @[dbg.scala 446:59]
node _T_648 = bits(sbcs_reg, 19, 17) @[dbg.scala 447:23]
node _T_649 = eq(_T_648, UInt<1>("h01")) @[dbg.scala 447:32]
node _T_650 = bits(_T_649, 0, 0) @[Bitwise.scala 72:15]
node _T_651 = mux(_T_650, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_652 = bits(io.sb_axi.r.bits.data, 63, 0) @[dbg.scala 447:70]
node _T_653 = bits(sbaddress0_reg, 2, 1) @[dbg.scala 447:102]
node _T_654 = mul(UInt<5>("h010"), _T_653) @[dbg.scala 447:86]
node _T_655 = dshr(_T_652, _T_654) @[dbg.scala 447:78]
node _T_656 = and(_T_655, UInt<64>("h0ffff")) @[dbg.scala 447:110]
node _T_657 = and(_T_651, _T_656) @[dbg.scala 447:45]
node _T_658 = or(_T_647, _T_657) @[dbg.scala 446:140]
node _T_659 = bits(sbcs_reg, 19, 17) @[dbg.scala 448:23]
node _T_660 = eq(_T_659, UInt<2>("h02")) @[dbg.scala 448:32]
node _T_661 = bits(_T_660, 0, 0) @[Bitwise.scala 72:15]
node _T_662 = mux(_T_661, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_663 = bits(io.sb_axi.r.bits.data, 63, 0) @[dbg.scala 448:70]
node _T_664 = bits(sbaddress0_reg, 2, 2) @[dbg.scala 448:102]
node _T_665 = mul(UInt<6>("h020"), _T_664) @[dbg.scala 448:86]
node _T_666 = dshr(_T_663, _T_665) @[dbg.scala 448:78]
node _T_667 = and(_T_666, UInt<64>("h0ffffffff")) @[dbg.scala 448:107]
node _T_668 = and(_T_662, _T_667) @[dbg.scala 448:45]
node _T_669 = or(_T_658, _T_668) @[dbg.scala 447:129]
node _T_670 = bits(sbcs_reg, 19, 17) @[dbg.scala 449:23]
node _T_671 = eq(_T_670, UInt<2>("h03")) @[dbg.scala 449:32]
node _T_672 = bits(_T_671, 0, 0) @[Bitwise.scala 72:15]
node _T_673 = mux(_T_672, UInt<64>("h0ffffffffffffffff"), UInt<64>("h00")) @[Bitwise.scala 72:12]
node _T_674 = bits(io.sb_axi.r.bits.data, 63, 0) @[dbg.scala 449:68]
node _T_675 = and(_T_673, _T_674) @[dbg.scala 449:45]
node _T_676 = or(_T_669, _T_675) @[dbg.scala 448:131]
sb_bus_rdata <= _T_676 @[dbg.scala 446:16]
io.dbg_dma.dbg_ib.dbg_cmd_addr <= io.dbg_dec.dbg_ib.dbg_cmd_addr @[dbg.scala 452:39]
io.dbg_dma.dbg_dctl.dbg_cmd_wrdata <= io.dbg_dec.dbg_dctl.dbg_cmd_wrdata @[dbg.scala 453:39]
io.dbg_dma.dbg_ib.dbg_cmd_valid <= io.dbg_dec.dbg_ib.dbg_cmd_valid @[dbg.scala 454:39]
io.dbg_dma.dbg_ib.dbg_cmd_write <= io.dbg_dec.dbg_ib.dbg_cmd_write @[dbg.scala 455:39]
io.dbg_dma.dbg_ib.dbg_cmd_type <= io.dbg_dec.dbg_ib.dbg_cmd_type @[dbg.scala 456:39]