1
0

xilinx ip: adjust to new diplomacy API

This commit is contained in:
Wesley W. Terpstra 2017-01-30 11:33:30 -08:00
parent d61d86e084
commit 5b6760394d
2 changed files with 10 additions and 10 deletions

View File

@ -3,10 +3,10 @@ package sifive.blocks.devices.xilinxvc707pciex1
import Chisel._ import Chisel._
import diplomacy.LazyModule import diplomacy.LazyModule
import rocketchip.{L2Crossbar,L2CrossbarModule,L2CrossbarBundle} import rocketchip.{TopNetwork,TopNetworkModule,TopNetworkBundle}
import uncore.tilelink2.TLWidthWidget import uncore.tilelink2.TLWidthWidget
trait PeripheryXilinxVC707PCIeX1 extends L2Crossbar { trait PeripheryXilinxVC707PCIeX1 extends TopNetwork {
val xilinxvc707pcie = LazyModule(new XilinxVC707PCIeX1) val xilinxvc707pcie = LazyModule(new XilinxVC707PCIeX1)
l2.node := xilinxvc707pcie.master l2.node := xilinxvc707pcie.master
@ -15,11 +15,11 @@ trait PeripheryXilinxVC707PCIeX1 extends L2Crossbar {
intBus.intnode := xilinxvc707pcie.intnode intBus.intnode := xilinxvc707pcie.intnode
} }
trait PeripheryXilinxVC707PCIeX1Bundle extends L2CrossbarBundle { trait PeripheryXilinxVC707PCIeX1Bundle extends TopNetworkBundle {
val xilinxvc707pcie = new XilinxVC707PCIeX1IO val xilinxvc707pcie = new XilinxVC707PCIeX1IO
} }
trait PeripheryXilinxVC707PCIeX1Module extends L2CrossbarModule { trait PeripheryXilinxVC707PCIeX1Module extends TopNetworkModule {
val outer: PeripheryXilinxVC707PCIeX1 val outer: PeripheryXilinxVC707PCIeX1
val io: PeripheryXilinxVC707PCIeX1Bundle val io: PeripheryXilinxVC707PCIeX1Bundle

View File

@ -167,27 +167,27 @@ class vc707axi_to_pcie_x1() extends BlackBox
class VC707AXIToPCIeX1(implicit p:Parameters) extends LazyModule class VC707AXIToPCIeX1(implicit p:Parameters) extends LazyModule
{ {
val slave = AXI4SlaveNode(AXI4SlavePortParameters( val slave = AXI4SlaveNode(Seq(AXI4SlavePortParameters(
slaves = Seq(AXI4SlaveParameters( slaves = Seq(AXI4SlaveParameters(
address = List(AddressSet(0x60000000L, 0x1fffffffL)), address = List(AddressSet(0x60000000L, 0x1fffffffL)),
executable = true, executable = true,
supportsWrite = TransferSizes(1, 256), supportsWrite = TransferSizes(1, 256),
supportsRead = TransferSizes(1, 256), supportsRead = TransferSizes(1, 256),
interleavedId = Some(0))), // the Xilinx IP is friendly interleavedId = Some(0))), // the Xilinx IP is friendly
beatBytes = 8)) beatBytes = 8)))
val control = AXI4SlaveNode(AXI4SlavePortParameters( val control = AXI4SlaveNode(Seq(AXI4SlavePortParameters(
slaves = Seq(AXI4SlaveParameters( slaves = Seq(AXI4SlaveParameters(
address = List(AddressSet(0x50000000L, 0x03ffffffL)), address = List(AddressSet(0x50000000L, 0x03ffffffL)),
supportsWrite = TransferSizes(1, 4), supportsWrite = TransferSizes(1, 4),
supportsRead = TransferSizes(1, 4), supportsRead = TransferSizes(1, 4),
interleavedId = Some(0))), // no read interleaving b/c AXI-lite interleavedId = Some(0))), // no read interleaving b/c AXI-lite
beatBytes = 4)) beatBytes = 4)))
val master = AXI4MasterNode(AXI4MasterPortParameters( val master = AXI4MasterNode(Seq(AXI4MasterPortParameters(
masters = Seq(AXI4MasterParameters( masters = Seq(AXI4MasterParameters(
id = IdRange(0, 1), id = IdRange(0, 1),
aligned = false)))) aligned = false)))))
lazy val module = new LazyModuleImp(this) { lazy val module = new LazyModuleImp(this) {
// The master on the control port must be AXI-lite // The master on the control port must be AXI-lite