mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	More cleanup.
This commit is contained in:
		
							parent
							
								
									d2a747bf3d
								
							
						
					
					
						commit
						1d811b085c
					
				
							
								
								
									
										10
									
								
								src/cache/cachefsm.sv
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								src/cache/cachefsm.sv
									
									
									
									
										vendored
									
									
								
							| @ -171,13 +171,9 @@ module cachefsm import cvw::*; #(parameter cvw_t P, | |||||||
|                       (CurrState == STATE_FLUSH & LineDirty) | // This is wrong in a multicore snoop cache protocal.  Dirty must be cleared concurrently and atomically with writeback.  For single core cannot clear after writeback on bus ack and change flushadr.  Clears the wrong set.
 |                       (CurrState == STATE_FLUSH & LineDirty) | // This is wrong in a multicore snoop cache protocal.  Dirty must be cleared concurrently and atomically with writeback.  For single core cannot clear after writeback on bus ack and change flushadr.  Clears the wrong set.
 | ||||||
|   // Flush and eviction controls
 |   // Flush and eviction controls
 | ||||||
|                       (P.ZICBOM_SUPPORTED & CurrState == STATE_WRITEBACK & (CMOp[1] | CMOp[2]) & CacheBusAck); |                       (P.ZICBOM_SUPPORTED & CurrState == STATE_WRITEBACK & (CMOp[1] | CMOp[2]) & CacheBusAck); | ||||||
|   assign SelWay = (CurrState == STATE_WRITEBACK & ~CacheBusAck & ~(CMOp[1] | CMOp[2])) | |   assign SelWay = (CurrState == STATE_WRITEBACK & ((~CacheBusAck & ~(CMOp[1] | CMOp[2])) | (P.ZICBOZ_SUPPORTED & CacheBusAck & CMOp[3]))) | | ||||||
|                   (CurrState == STATE_READY & AnyMiss & LineDirty) |  |                   (CurrState == STATE_READY & ((AnyMiss & LineDirty) | (P.ZICBOZ_SUPPORTED & CMOZeroNoEviction & ~CacheHit))) |  | ||||||
|                   (CurrState == STATE_WRITE_LINE) | |                   (CurrState == STATE_WRITE_LINE); | ||||||
|                   // This is almost the same as setvalid, but on cachehit we don't want to select
 |  | ||||||
|                   // the nonhit way, but instead want to force this to zero
 |  | ||||||
|                   (P.ZICBOZ_SUPPORTED & CurrState == STATE_READY & CMOZeroNoEviction & ~CacheHit) | |  | ||||||
|                   (P.ZICBOZ_SUPPORTED & CurrState == STATE_WRITEBACK & CacheBusAck & CMOp[3]); |  | ||||||
|   assign ZeroCacheLine = P.ZICBOZ_SUPPORTED & ((CurrState == STATE_READY & CMOZeroNoEviction) |  |   assign ZeroCacheLine = P.ZICBOZ_SUPPORTED & ((CurrState == STATE_READY & CMOZeroNoEviction) |  | ||||||
|                                                (CurrState == STATE_WRITEBACK & (CMOp[3] & CacheBusAck)));   |                                                (CurrState == STATE_WRITEBACK & (CMOp[3] & CacheBusAck)));   | ||||||
|   assign SelWriteback = (CurrState == STATE_WRITEBACK & (CMOp[1] | CMOp[2] | ~CacheBusAck)) | |   assign SelWriteback = (CurrState == STATE_WRITEBACK & (CMOp[1] | CMOp[2] | ~CacheBusAck)) | | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user