rocket: move interrupt synchronizers to correct side of crossing
This commit is contained in:
		
				
					committed by
					
						 Henry Cook
						Henry Cook
					
				
			
			
				
	
			
			
			
						parent
						
							45d26ea130
						
					
				
				
					commit
					1fda05970a
				
			| @@ -84,7 +84,11 @@ trait HasRocketTiles extends HasSystemBus | ||||
|     lip.foreach { coreIntXbar.intnode := _ }                // lip | ||||
|     wrapper.coreIntNode   := coreIntXbar.intnode | ||||
|  | ||||
|     wrapper.intOutputNode.foreach { plic.intnode := _ } | ||||
|     wrapper.intOutputNode.foreach { case int => | ||||
|       val rocketIntXing = LazyModule(new IntXing(wrapper.outputInterruptXingLatency)) | ||||
|       rocketIntXing.intnode := int | ||||
|       plic.intnode := rocketIntXing.intnode | ||||
|     } | ||||
|  | ||||
|     wrapper | ||||
|   } | ||||
|   | ||||
| @@ -213,12 +213,6 @@ abstract class RocketTileWrapper(rtp: RocketTileParams, hartid: Int)(implicit p: | ||||
|  | ||||
|   def outputInterruptXingLatency: Int | ||||
|  | ||||
|   rocket.intOutputNode.foreach { rocketIntOutputNode => | ||||
|     val outXing = LazyModule(new IntXing(outputInterruptXingLatency)) | ||||
|     intOutputNode.get := outXing.intnode | ||||
|     outXing.intnode := rocketIntOutputNode | ||||
|   } | ||||
|  | ||||
|   lazy val module = new LazyModuleImp(this) { | ||||
|     val io = new CoreBundle | ||||
|         with HasExternallyDrivenTileConstants | ||||
|   | ||||
		Reference in New Issue
	
	Block a user