forked from Github_Repos/cvw
		
	fix testbench timing bug where interrupt forcing didn't happen soon enough because it was waiting on StallM
This commit is contained in:
		
							parent
							
								
									489ce4269a
								
							
						
					
					
						commit
						0e183be3e5
					
				| @ -729,8 +729,11 @@ module testbench; | ||||
|   // New IP spoofing
 | ||||
|   logic globalIntsBecomeEnabled; | ||||
|   assign globalIntsBecomeEnabled = (`CSR_BASE.csrm.WriteMSTATUSM || `CSR_BASE.csrs.WriteSSTATUSM) && (|(`CSR_BASE.CSRWriteValM & (~`CSR_BASE.csrm.MSTATUS_REGW) & 32'h22)); | ||||
|   logic checkInterruptM; | ||||
|   assign checkInterruptM = dut.core.ieu.InstrValidM & ~dut.core.priv.priv.trap.InstrPageFaultM & ~dut.core.priv.priv.trap.InterruptM; | ||||
|    | ||||
|   always @(negedge clk) begin | ||||
|     if(checkInstrM) begin | ||||
|     if(checkInterruptM) begin | ||||
|       if((interruptInstrCount+1) == AttemptedInstructionCount) begin | ||||
|         if(!NO_IE_MTIME_CHECKPOINT) begin | ||||
|           case (interruptCauseVal) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user