mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	Possible fix for interrupt during a floating point divide.
This commit is contained in:
		
							parent
							
								
									65c2fe294a
								
							
						
					
					
						commit
						47608df73e
					
				@ -69,7 +69,7 @@ module hazard(
 | 
			
		||||
  assign StallECause = (DivBusyE) & ~(TrapM);  // *** can we move to decode stage (KP?)
 | 
			
		||||
  // WFI terminates if any enabled interrupt is pending, even if global interrupts are disabled.  It could also terminate with TW trap
 | 
			
		||||
//  assign StallMCause = (wfiM & (~TrapM & ~IntPendingM)); // | FDivBusyE;  
 | 
			
		||||
  assign StallMCause = (wfiM & (~TrapM & ~IntPendingM)) | FDivBusyE;  
 | 
			
		||||
  assign StallMCause = ((wfiM | FDivBusyE) & (~TrapM & ~IntPendingM));  //*** Ross: should FDivBusyE trigger StallECause rather than StallMCause similar to DivBusyE?
 | 
			
		||||
  assign StallWCause = LSUStallM | IFUStallF;
 | 
			
		||||
 | 
			
		||||
  assign #1 StallF = StallFCause | StallD;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user