mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	Fixed bugs I introduced to the icache.
This commit is contained in:
		
							parent
							
								
									d433db3048
								
							
						
					
					
						commit
						6a9fa2fae3
					
				@ -96,11 +96,11 @@ add wave -noupdate -group Bpred -expand -group {bp wrong} /testbench/dut/hart/if
 | 
				
			|||||||
add wave -noupdate -group Bpred -expand -group {bp wrong} /testbench/dut/hart/ifu/bpred/bpred/BPPredClassNonCFIWrongE
 | 
					add wave -noupdate -group Bpred -expand -group {bp wrong} /testbench/dut/hart/ifu/bpred/bpred/BPPredClassNonCFIWrongE
 | 
				
			||||||
add wave -noupdate -group Bpred -expand -group {bp wrong} /testbench/dut/hart/ifu/bpred/bpred/BPPredWrongE
 | 
					add wave -noupdate -group Bpred -expand -group {bp wrong} /testbench/dut/hart/ifu/bpred/bpred/BPPredWrongE
 | 
				
			||||||
add wave -noupdate -group Bpred /testbench/dut/hart/ifu/bpred/bpred/BPPredWrongE
 | 
					add wave -noupdate -group Bpred /testbench/dut/hart/ifu/bpred/bpred/BPPredWrongE
 | 
				
			||||||
add wave -noupdate -group {instruction pipeline} /testbench/InstrFName
 | 
					add wave -noupdate -expand -group {instruction pipeline} /testbench/InstrFName
 | 
				
			||||||
add wave -noupdate -group {instruction pipeline} /testbench/dut/hart/ifu/InstrD
 | 
					add wave -noupdate -expand -group {instruction pipeline} /testbench/dut/hart/ifu/icache/FinalInstrRawF
 | 
				
			||||||
add wave -noupdate -group {instruction pipeline} /testbench/dut/hart/ifu/InstrE
 | 
					add wave -noupdate -expand -group {instruction pipeline} /testbench/dut/hart/ifu/InstrD
 | 
				
			||||||
add wave -noupdate -group {instruction pipeline} /testbench/dut/hart/ifu/InstrM
 | 
					add wave -noupdate -expand -group {instruction pipeline} /testbench/dut/hart/ifu/InstrE
 | 
				
			||||||
add wave -noupdate -group {instruction pipeline} /testbench/InstrW
 | 
					add wave -noupdate -expand -group {instruction pipeline} /testbench/dut/hart/ifu/InstrM
 | 
				
			||||||
add wave -noupdate -group {PCNext Generation} /testbench/dut/hart/ifu/PCNextF
 | 
					add wave -noupdate -group {PCNext Generation} /testbench/dut/hart/ifu/PCNextF
 | 
				
			||||||
add wave -noupdate -group {PCNext Generation} /testbench/dut/hart/ifu/PCF
 | 
					add wave -noupdate -group {PCNext Generation} /testbench/dut/hart/ifu/PCF
 | 
				
			||||||
add wave -noupdate -group {PCNext Generation} /testbench/dut/hart/ifu/PCPlus2or4F
 | 
					add wave -noupdate -group {PCNext Generation} /testbench/dut/hart/ifu/PCPlus2or4F
 | 
				
			||||||
@ -129,18 +129,18 @@ add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart
 | 
				
			|||||||
add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart/ieu/dp/CSRReadValW
 | 
					add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart/ieu/dp/CSRReadValW
 | 
				
			||||||
add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart/ieu/dp/ResultSrcW
 | 
					add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart/ieu/dp/ResultSrcW
 | 
				
			||||||
add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart/ieu/dp/ResultW
 | 
					add wave -noupdate -group RegFile -group {write regfile mux} /testbench/dut/hart/ieu/dp/ResultW
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/a
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/a
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/b
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/b
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/alucontrol
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/alucontrol
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/result
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/result
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/flags
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/flags
 | 
				
			||||||
add wave -noupdate -group alu -divider internals
 | 
					add wave -noupdate -expand -group alu -divider internals
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/overflow
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/overflow
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/carry
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/carry
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/zero
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/zero
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/neg
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/neg
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/lt
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/lt
 | 
				
			||||||
add wave -noupdate -group alu /testbench/dut/hart/ieu/dp/alu/ltu
 | 
					add wave -noupdate -expand -group alu /testbench/dut/hart/ieu/dp/alu/ltu
 | 
				
			||||||
add wave -noupdate -group Forward /testbench/dut/hart/ieu/fw/Rs1D
 | 
					add wave -noupdate -group Forward /testbench/dut/hart/ieu/fw/Rs1D
 | 
				
			||||||
add wave -noupdate -group Forward /testbench/dut/hart/ieu/fw/Rs2D
 | 
					add wave -noupdate -group Forward /testbench/dut/hart/ieu/fw/Rs2D
 | 
				
			||||||
add wave -noupdate -group Forward /testbench/dut/hart/ieu/fw/Rs1E
 | 
					add wave -noupdate -group Forward /testbench/dut/hart/ieu/fw/Rs1E
 | 
				
			||||||
@ -158,12 +158,12 @@ add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/Write
 | 
				
			|||||||
add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/ALUResultE
 | 
					add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/ALUResultE
 | 
				
			||||||
add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/SrcAE
 | 
					add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/SrcAE
 | 
				
			||||||
add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/SrcBE
 | 
					add wave -noupdate -group {alu execution stage} /testbench/dut/hart/ieu/dp/SrcBE
 | 
				
			||||||
add wave -noupdate -group PCS /testbench/dut/hart/ifu/PCNextF
 | 
					add wave -noupdate -expand -group PCS /testbench/dut/hart/ifu/PCNextF
 | 
				
			||||||
add wave -noupdate -group PCS /testbench/dut/hart/PCF
 | 
					add wave -noupdate -expand -group PCS /testbench/dut/hart/PCF
 | 
				
			||||||
add wave -noupdate -group PCS /testbench/dut/hart/ifu/PCD
 | 
					add wave -noupdate -expand -group PCS /testbench/dut/hart/ifu/PCD
 | 
				
			||||||
add wave -noupdate -group PCS /testbench/dut/hart/PCE
 | 
					add wave -noupdate -expand -group PCS /testbench/dut/hart/PCE
 | 
				
			||||||
add wave -noupdate -group PCS /testbench/dut/hart/PCM
 | 
					add wave -noupdate -expand -group PCS /testbench/dut/hart/PCM
 | 
				
			||||||
add wave -noupdate -group PCS /testbench/PCW
 | 
					add wave -noupdate -expand -group PCS /testbench/PCW
 | 
				
			||||||
add wave -noupdate -group muldiv /testbench/dut/hart/mdu/InstrD
 | 
					add wave -noupdate -group muldiv /testbench/dut/hart/mdu/InstrD
 | 
				
			||||||
add wave -noupdate -group muldiv /testbench/dut/hart/mdu/SrcAE
 | 
					add wave -noupdate -group muldiv /testbench/dut/hart/mdu/SrcAE
 | 
				
			||||||
add wave -noupdate -group muldiv /testbench/dut/hart/mdu/SrcBE
 | 
					add wave -noupdate -group muldiv /testbench/dut/hart/mdu/SrcBE
 | 
				
			||||||
@ -183,43 +183,32 @@ add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/N
 | 
				
			|||||||
add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/D
 | 
					add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/D
 | 
				
			||||||
add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/Q
 | 
					add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/Q
 | 
				
			||||||
add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/rem0
 | 
					add wave -noupdate -group divider /testbench/dut/hart/mdu/genblk1/div/rem0
 | 
				
			||||||
add wave -noupdate -group icache -color Orange /testbench/dut/hart/ifu/icache/controller/CurrState
 | 
					add wave -noupdate -expand -group icache -color Gold /testbench/dut/hart/ifu/icache/controller/CurrState
 | 
				
			||||||
add wave -noupdate -group icache /testbench/dut/hart/ifu/icache/controller/NextState
 | 
					add wave -noupdate -expand -group icache /testbench/dut/hart/ifu/icache/controller/NextState
 | 
				
			||||||
add wave -noupdate -group icache /testbench/dut/hart/ifu/ITLBMissF
 | 
					add wave -noupdate -expand -group icache /testbench/dut/hart/ifu/ITLBMissF
 | 
				
			||||||
add wave -noupdate -group icache /testbench/dut/hart/ifu/icache/ITLBWriteF
 | 
					add wave -noupdate -expand -group icache /testbench/dut/hart/ifu/icache/ITLBWriteF
 | 
				
			||||||
add wave -noupdate -group icache -group {tag read} /testbench/dut/hart/ifu/icache/cachemem/DataValidBit
 | 
					add wave -noupdate -expand -group icache /testbench/dut/hart/ifu/icache/ReadLineF
 | 
				
			||||||
add wave -noupdate -group icache -group {tag read} /testbench/dut/hart/ifu/icache/cachemem/cachetags/ReadData
 | 
					add wave -noupdate -expand -group icache {/testbench/dut/hart/ifu/icache/icachemem/word[0]/CacheDataMem/Addr}
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/hit
 | 
					add wave -noupdate -expand -group icache {/testbench/dut/hart/ifu/icache/icachemem/word[0]/CacheDataMem/WriteData}
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/spill
 | 
					add wave -noupdate -expand -group icache {/testbench/dut/hart/ifu/icache/icachemem/word[0]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/ICacheStallF
 | 
					add wave -noupdate -expand -group icache /testbench/dut/hart/ifu/icache/PCNextIndexF
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/SavePC
 | 
					add wave -noupdate -expand -group icache /testbench/dut/hart/ifu/icache/ReadLineF
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/spillSave
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/hit
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/UnalignedSelect
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/spill
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/PCMux
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/ICacheStallF
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/spillSave
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/SavePC
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/CntReset
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/spillSave
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/PreCntEn
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/UnalignedSelect
 | 
				
			||||||
add wave -noupdate -group icache -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/CntEn
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/spillSave
 | 
				
			||||||
add wave -noupdate -group icache -group {icache parameters} -radix unsigned /testbench/dut/hart/ifu/icache/cachemem/NUMLINES
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/CntReset
 | 
				
			||||||
add wave -noupdate -group icache -group {icache parameters} -radix unsigned /testbench/dut/hart/ifu/icache/cachemem/BLOCKLEN
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/PreCntEn
 | 
				
			||||||
add wave -noupdate -group icache -group {icache parameters} -radix unsigned /testbench/dut/hart/ifu/icache/cachemem/BLOCKBYTELEN
 | 
					add wave -noupdate -expand -group icache -expand -group {fsm out and control} /testbench/dut/hart/ifu/icache/controller/CntEn
 | 
				
			||||||
add wave -noupdate -group icache -group {icache parameters} -radix unsigned /testbench/dut/hart/ifu/icache/cachemem/OFFSETLEN
 | 
					add wave -noupdate -expand -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/FetchCountFlag
 | 
				
			||||||
add wave -noupdate -group icache -group {icache parameters} -radix unsigned /testbench/dut/hart/ifu/icache/cachemem/INDEXLEN
 | 
					add wave -noupdate -expand -group icache -expand -group memory /testbench/dut/hart/ifu/icache/FetchCount
 | 
				
			||||||
add wave -noupdate -group icache -group {icache parameters} -radix unsigned /testbench/dut/hart/ifu/icache/cachemem/TAGLEN
 | 
					add wave -noupdate -expand -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/InstrReadF
 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/FetchCountFlag
 | 
					add wave -noupdate -expand -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/InstrAckF
 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/FetchCount
 | 
					add wave -noupdate -expand -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/ICacheMemWriteEnable
 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/InstrPAdrF
 | 
					add wave -noupdate -expand -group icache -expand -group memory /testbench/dut/hart/ifu/icache/ICacheMemWriteData
 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/InstrReadF
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/InstrAckF
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/InstrInF
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/ICacheMemWriteEnable
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory /testbench/dut/hart/ifu/icache/controller/ICacheMemWriteData
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory -group {tag write} /testbench/dut/hart/ifu/icache/cachemem/WriteEnable
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory -group {tag write} /testbench/dut/hart/ifu/icache/cachemem/WriteLine
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group memory -group {tag write} /testbench/dut/hart/ifu/icache/cachemem/cachetags/StoredData
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group {instr to cpu} /testbench/dut/hart/ifu/icache/controller/FinalInstrRawF
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group pc /testbench/dut/hart/ifu/icache/controller/PCPF
 | 
					 | 
				
			||||||
add wave -noupdate -group icache -expand -group pc /testbench/dut/hart/ifu/icache/controller/PCPreFinalF
 | 
					 | 
				
			||||||
add wave -noupdate -group AHB -color Gold /testbench/dut/hart/ebu/BusState
 | 
					add wave -noupdate -group AHB -color Gold /testbench/dut/hart/ebu/BusState
 | 
				
			||||||
add wave -noupdate -group AHB /testbench/dut/hart/ebu/NextBusState
 | 
					add wave -noupdate -group AHB /testbench/dut/hart/ebu/NextBusState
 | 
				
			||||||
add wave -noupdate -group AHB -expand -group {input requests} /testbench/dut/hart/ebu/AtomicMaskedM
 | 
					add wave -noupdate -group AHB -expand -group {input requests} /testbench/dut/hart/ebu/AtomicMaskedM
 | 
				
			||||||
@ -243,7 +232,7 @@ add wave -noupdate -group AHB /testbench/dut/hart/ebu/HSIZED
 | 
				
			|||||||
add wave -noupdate -group AHB /testbench/dut/hart/ebu/HWRITED
 | 
					add wave -noupdate -group AHB /testbench/dut/hart/ebu/HWRITED
 | 
				
			||||||
add wave -noupdate -group AHB /testbench/dut/hart/ebu/StallW
 | 
					add wave -noupdate -group AHB /testbench/dut/hart/ebu/StallW
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group {LSU ARB} /testbench/dut/hart/lsu/arbiter/SelPTW
 | 
					add wave -noupdate -group lsu -expand -group {LSU ARB} /testbench/dut/hart/lsu/arbiter/SelPTW
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -color Gold /testbench/dut/hart/lsu/dcache/CurrState
 | 
					add wave -noupdate -group lsu -expand -group dcache -color Gold /testbench/dut/hart/lsu/dcache/dcachefsm/CurrState
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/WalkerPageFaultM
 | 
					add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/WalkerPageFaultM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/WriteDataM
 | 
					add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/WriteDataM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/SRAMBlockWriteEnableM
 | 
					add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/SRAMBlockWriteEnableM
 | 
				
			||||||
@ -253,72 +242,102 @@ add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcac
 | 
				
			|||||||
add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/SRAMBlockWayWriteEnableM
 | 
					add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/SRAMBlockWayWriteEnableM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/SelAdrM
 | 
					add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/SelAdrM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/DCacheMemWriteData
 | 
					add wave -noupdate -group lsu -expand -group dcache /testbench/dut/hart/lsu/dcache/DCacheMemWriteData
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group replacement /testbench/dut/hart/lsu/dcache/genblk2/cacheLRU/LRUIn
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group replacement /testbench/dut/hart/lsu/dcache/genblk2/cacheLRU/WayIn
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/SetValid}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group replacement /testbench/dut/hart/lsu/dcache/genblk2/cacheLRU/LRUEn
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/SetDirty}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group replacement /testbench/dut/hart/lsu/dcache/genblk2/cacheLRU/LRUMask
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -label TAG {/testbench/dut/hart/lsu/dcache/MemWay[0]/CacheTagMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group replacement /testbench/dut/hart/lsu/dcache/genblk2/cacheLRU/LRUOut
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/DirtyBits}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group replacement /testbench/dut/hart/lsu/dcache/genblk2/cacheLRU/VictimWay
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/ValidBits}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} /testbench/dut/hart/lsu/dcache/ReplacementBits
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[0]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} /testbench/dut/hart/lsu/dcache/NewReplacement
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[0]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} /testbench/dut/hart/lsu/dcache/LRUWriteEn
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word1 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[1]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word1 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[1]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/SetValid}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word2 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[2]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/SetDirty}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word2 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[2]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/Adr}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word3 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[3]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -label TAG {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/CacheTagMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way0 -expand -group Way0Word3 {/testbench/dut/hart/lsu/dcache/MemWay[0]/word[3]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/DirtyBits}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/DirtyBits}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/ValidBits}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/SetDirty}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[0]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word0 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[0]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/WriteWordEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word1 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[1]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -label TAG {/testbench/dut/hart/lsu/dcache/MemWay[1]/CacheTagMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word1 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[1]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word0 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[0]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word2 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[2]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word0 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[0]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word2 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[2]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[1]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word3 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[3]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[1]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way0 -expand -group Way0Word3 {/testbench/dut/hart/lsu/dcache/CacheWays[0]/MemWay/word[3]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word2 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[2]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/DirtyBits}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word2 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[2]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/SetDirty}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word3 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[3]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way1 -expand -group Way1Word3 {/testbench/dut/hart/lsu/dcache/MemWay[1]/word[3]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/WriteWordEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -label TAG {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/CacheTagMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/SetValid}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word0 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[0]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/SetDirty}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word0 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[0]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -label TAG {/testbench/dut/hart/lsu/dcache/MemWay[2]/CacheTagMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word1 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[1]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/DirtyBits}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word1 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[1]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/ValidBits}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word2 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[2]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word0 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[0]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word2 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[2]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word0 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[0]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word3 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[3]/CacheDataMem/WriteEnable}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word1 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[1]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way1 -expand -group Way1Word3 {/testbench/dut/hart/lsu/dcache/CacheWays[1]/MemWay/word[3]/CacheDataMem/StoredData}
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word1 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[1]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/SRAMAdr
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[2]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataBlockWayM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[2]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataBlockWayMaskedM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word3 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[3]/CacheDataMem/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataBlockM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -group way2 -expand -group Way2Word3 {/testbench/dut/hart/lsu/dcache/MemWay[2]/word[3]/CacheDataMem/StoredData}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataBlockSetsM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/WriteEnable}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataWordM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/SetValid}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadTag
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/SetDirty}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/BlockReplacementBits
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -label TAG {/testbench/dut/hart/lsu/dcache/MemWay[3]/CacheTagMem/StoredData}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/DirtyBits}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/ValidBits}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word0 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[0]/CacheDataMem/StoredData}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word0 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[0]/CacheDataMem/WriteEnable}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word1 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[1]/CacheDataMem/StoredData}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word1 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[1]/CacheDataMem/WriteEnable}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word2 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[2]/CacheDataMem/WriteEnable}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word2 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[2]/CacheDataMem/StoredData}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[3]/CacheDataMem/WriteEnable}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group way3 -expand -group Way3Word3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/word[3]/CacheDataMem/StoredData}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group valid/dirty /testbench/dut/hart/lsu/dcache/SetValid
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group valid/dirty /testbench/dut/hart/lsu/dcache/ClearValid
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group valid/dirty /testbench/dut/hart/lsu/dcache/SetDirty
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM writes} -expand -group valid/dirty /testbench/dut/hart/lsu/dcache/ClearDirty
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/WayHit}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/Valid}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/Dirty}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -group way0 {/testbench/dut/hart/lsu/dcache/MemWay[0]/ReadTag}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/WayHit}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/Valid}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/Dirty}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way1 {/testbench/dut/hart/lsu/dcache/MemWay[1]/ReadTag}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/WayHit}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/Valid}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/Dirty}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way2 {/testbench/dut/hart/lsu/dcache/MemWay[2]/ReadTag}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/WayHit}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/Valid}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/Dirty}
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} -expand -group way3 {/testbench/dut/hart/lsu/dcache/MemWay[3]/ReadTag}
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/WayHit
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/WayHit
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/Dirty
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataBlockWayMaskedM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/Valid
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataWordM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimReadDataBlockM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Cache SRAM read} /testbench/dut/hart/lsu/dcache/ReadDataWordMuxM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimTag
 | 
					add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimTag
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimWay
 | 
					add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimWay
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimDirtyWay
 | 
					add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimDirtyWay
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimDirty
 | 
					add wave -noupdate -group lsu -expand -group dcache -group Victim /testbench/dut/hart/lsu/dcache/VictimDirty
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/MemRWM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/MemRWM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/MemAdrE
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/MemAdrE
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/MemAdrM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/MemPAdrM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/MemPAdrM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/Funct3M
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/Funct3M
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/Funct7M
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/Funct7M
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/AtomicM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/AtomicM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/CacheableM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/CacheableM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/WriteDataM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/WriteDataM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/ReadDataM
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/ReadDataM
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {CPU side} /testbench/dut/hart/lsu/dcache/DCacheStall
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -expand -group {CPU side} /testbench/dut/hart/lsu/dcache/DCacheStall
 | 
					 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group status /testbench/dut/hart/lsu/dcache/WayHit
 | 
					add wave -noupdate -group lsu -expand -group dcache -group status /testbench/dut/hart/lsu/dcache/WayHit
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group status -color {Medium Orchid} /testbench/dut/hart/lsu/dcache/CacheHit
 | 
					add wave -noupdate -group lsu -expand -group dcache -group status -color {Medium Orchid} /testbench/dut/hart/lsu/dcache/CacheHit
 | 
				
			||||||
 | 
					add wave -noupdate -group lsu -expand -group dcache -group status /testbench/dut/hart/lsu/dcache/FetchCount
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Memory Side} /testbench/dut/hart/lsu/dcache/AHBPAdr
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Memory Side} /testbench/dut/hart/lsu/dcache/AHBPAdr
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Memory Side} /testbench/dut/hart/lsu/dcache/AHBRead
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Memory Side} /testbench/dut/hart/lsu/dcache/AHBRead
 | 
				
			||||||
add wave -noupdate -group lsu -expand -group dcache -group {Memory Side} /testbench/dut/hart/lsu/dcache/AHBWrite
 | 
					add wave -noupdate -group lsu -expand -group dcache -group {Memory Side} /testbench/dut/hart/lsu/dcache/AHBWrite
 | 
				
			||||||
@ -450,29 +469,35 @@ add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HSELUART
 | 
				
			|||||||
add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HADDR
 | 
					add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HADDR
 | 
				
			||||||
add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HWRITE
 | 
					add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HWRITE
 | 
				
			||||||
add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HWDATA
 | 
					add wave -noupdate -group UART /testbench/dut/uncore/uart/uart/HWDATA
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem -color Yellow /testbench/dut/hart/FlushW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem -color Yellow /testbench/dut/hart/FlushW
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem /testbench/dut/hart/priv/trap/InstrValidM
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem /testbench/dut/hart/priv/trap/InstrValidM
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem /testbench/checkInstrM
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem /testbench/checkInstrM
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem /testbench/dut/hart/PCM
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem /testbench/dut/hart/PCM
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem /testbench/ExpectedPCM
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem /testbench/ExpectedPCM
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem /testbench/line
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem /testbench/line
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem /testbench/textM
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem /testbench/textM
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group mem -color Brown /testbench/dut/hart/hzu/TrapM
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group mem -color Brown /testbench/dut/hart/hzu/TrapM
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group wb /testbench/dut/hart/ieu/c/InstrValidW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group wb /testbench/dut/hart/ieu/c/InstrValidW
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group wb /testbench/checkInstrW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group wb /testbench/checkInstrW
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group wb /testbench/PCW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group wb /testbench/PCW
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group wb /testbench/ExpectedPCW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group wb /testbench/ExpectedPCW
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group wb /testbench/TrapW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group wb /testbench/TrapW
 | 
				
			||||||
add wave -noupdate -group {debug trace} -expand -group wb /testbench/textW
 | 
					add wave -noupdate -expand -group {debug trace} -expand -group wb /testbench/textW
 | 
				
			||||||
add wave -noupdate -group {pc selection} /testbench/dut/hart/ifu/PCNext2F
 | 
					add wave -noupdate -group {pc selection} /testbench/dut/hart/ifu/PCNext2F
 | 
				
			||||||
add wave -noupdate -group {pc selection} /testbench/dut/hart/ifu/PrivilegedNextPCM
 | 
					add wave -noupdate -group {pc selection} /testbench/dut/hart/ifu/PrivilegedNextPCM
 | 
				
			||||||
add wave -noupdate -group {pc selection} /testbench/dut/hart/ifu/PrivilegedChangePCM
 | 
					add wave -noupdate -group {pc selection} /testbench/dut/hart/ifu/PrivilegedChangePCM
 | 
				
			||||||
add wave -noupdate -group {pc selection} /testbench/dut/hart/priv/PrivilegedNextPCM
 | 
					add wave -noupdate -group {pc selection} /testbench/dut/hart/priv/PrivilegedNextPCM
 | 
				
			||||||
add wave -noupdate -group {pc selection} /testbench/dut/hart/priv/trap/PrivilegedVectoredTrapVector
 | 
					add wave -noupdate -group {pc selection} /testbench/dut/hart/priv/trap/PrivilegedVectoredTrapVector
 | 
				
			||||||
add wave -noupdate -group {pc selection} /testbench/dut/hart/priv/trap/PrivilegedTrapVector
 | 
					add wave -noupdate -group {pc selection} /testbench/dut/hart/priv/trap/PrivilegedTrapVector
 | 
				
			||||||
 | 
					add wave -noupdate /testbench/dut/hart/ifu/PCCorrectE
 | 
				
			||||||
 | 
					add wave -noupdate /testbench/dut/hart/ifu/PCSrcE
 | 
				
			||||||
 | 
					add wave -noupdate /testbench/dut/hart/ieu/c/BranchTakenE
 | 
				
			||||||
 | 
					add wave -noupdate /testbench/dut/hart/ieu/c/BranchE
 | 
				
			||||||
 | 
					add wave -noupdate /testbench/dut/hart/ifu/PCTargetE
 | 
				
			||||||
 | 
					add wave -noupdate /testbench/dut/hart/ifu/PCLinkE
 | 
				
			||||||
TreeUpdate [SetDefaultTree]
 | 
					TreeUpdate [SetDefaultTree]
 | 
				
			||||||
WaveRestoreCursors {{Cursor 6} {161370956 ns} 0} {{Cursor 21} {161371350 ns} 0} {{Cursor 22} {72228581 ns} 0} {{Cursor 23} {11297671 ns} 0}
 | 
					WaveRestoreCursors {{Cursor 6} {160470606 ns} 0} {{Cursor 21} {161371350 ns} 0} {{Cursor 22} {72228581 ns} 0} {{Cursor 23} {11297671 ns} 0}
 | 
				
			||||||
quietly wave cursor active 3
 | 
					quietly wave cursor active 1
 | 
				
			||||||
configure wave -namecolwidth 250
 | 
					configure wave -namecolwidth 250
 | 
				
			||||||
configure wave -valuecolwidth 354
 | 
					configure wave -valuecolwidth 354
 | 
				
			||||||
configure wave -justifyvalue left
 | 
					configure wave -justifyvalue left
 | 
				
			||||||
@ -487,4 +512,4 @@ configure wave -griddelta 40
 | 
				
			|||||||
configure wave -timeline 0
 | 
					configure wave -timeline 0
 | 
				
			||||||
configure wave -timelineunits ns
 | 
					configure wave -timelineunits ns
 | 
				
			||||||
update
 | 
					update
 | 
				
			||||||
WaveRestoreZoom {72227242 ns} {72229920 ns}
 | 
					WaveRestoreZoom {160470352 ns} {160470676 ns}
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										4
									
								
								wally-pipelined/src/cache/icachefsm.sv
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								wally-pipelined/src/cache/icachefsm.sv
									
									
									
									
										vendored
									
									
								
							@ -324,8 +324,8 @@ module icachefsm #(parameter BLOCKLEN = 256)
 | 
				
			|||||||
        SavePC = 1'b1;
 | 
					        SavePC = 1'b1;
 | 
				
			||||||
        ICacheStallF = 1'b0;	
 | 
					        ICacheStallF = 1'b0;	
 | 
				
			||||||
	if(StallF) begin
 | 
						if(StallF) begin
 | 
				
			||||||
	  NextState = STATE_CPU_BUSY;
 | 
						  NextState = STATE_CPU_BUSY_SPILL;
 | 
				
			||||||
	  SelAdr = 2'b01;
 | 
						  SelAdr = 2'b10;
 | 
				
			||||||
	end else begin
 | 
						end else begin
 | 
				
			||||||
          NextState = STATE_READY;
 | 
					          NextState = STATE_READY;
 | 
				
			||||||
	end
 | 
						end
 | 
				
			||||||
 | 
				
			|||||||
@ -230,7 +230,7 @@ module bpred
 | 
				
			|||||||
  assign FallThroughWrongE = PCLinkE != PCD;
 | 
					  assign FallThroughWrongE = PCLinkE != PCD;
 | 
				
			||||||
  // If the target is taken check the target rather than fallthrough.  The instruction needs to be a branch if PCSrcE is selected
 | 
					  // If the target is taken check the target rather than fallthrough.  The instruction needs to be a branch if PCSrcE is selected
 | 
				
			||||||
  // Remember the bpred can incorrectly predict a non cfi instruction as a branch taken.  If the real instruction is non cfi
 | 
					  // Remember the bpred can incorrectly predict a non cfi instruction as a branch taken.  If the real instruction is non cfi
 | 
				
			||||||
  // it must have selected teh fall through.
 | 
					  // it must have selected the fall through.
 | 
				
			||||||
  assign PredictionPCWrongE = (PCSrcE  & (|InstrClassE) ? TargetWrongE : FallThroughWrongE);
 | 
					  assign PredictionPCWrongE = (PCSrcE  & (|InstrClassE) ? TargetWrongE : FallThroughWrongE);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // The branch direction also need to checked.
 | 
					  // The branch direction also need to checked.
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user