rocket: move interrupt synchronizers to correct side of crossing
This commit is contained in:
		| @@ -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 | ||||
|   } | ||||
|   | ||||
| @@ -211,12 +211,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 = IO(new CoreBundle | ||||
|         with HasExternallyDrivenTileConstants | ||||
|   | ||||
		Reference in New Issue
	
	Block a user