Refactor package hierarchy. (#25)
This commit is contained in:
parent
66b2fd11bd
commit
fb9dd31374
@ -2,10 +2,10 @@
|
|||||||
package sifive.blocks.devices.gpio
|
package sifive.blocks.devices.gpio
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Parameters
|
import freechips.rocketchip.config.Parameters
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
import util.{AsyncResetRegVec, GenericParameterizedBundle}
|
import freechips.rocketchip.util.{AsyncResetRegVec, GenericParameterizedBundle}
|
||||||
|
|
||||||
case class GPIOParams(address: BigInt, width: Int, includeIOF: Boolean = false)
|
case class GPIOParams(address: BigInt, width: Int, includeIOF: Boolean = false)
|
||||||
|
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
package sifive.blocks.devices.gpio
|
package sifive.blocks.devices.gpio
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Field
|
import freechips.rocketchip.config.Field
|
||||||
import diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
||||||
import rocketchip.HasSystemNetworks
|
import freechips.rocketchip.chip.HasSystemNetworks
|
||||||
import uncore.tilelink2.TLFragmenter
|
import freechips.rocketchip.tilelink.TLFragmenter
|
||||||
import util.HeterogeneousBag
|
import freechips.rocketchip.util.HeterogeneousBag
|
||||||
|
|
||||||
case object PeripheryGPIOKey extends Field[Seq[GPIOParams]]
|
case object PeripheryGPIOKey extends Field[Seq[GPIOParams]]
|
||||||
|
|
||||||
|
@ -10,8 +10,8 @@ import Chisel._
|
|||||||
// to put them otherwise.
|
// to put them otherwise.
|
||||||
// ------------------------------------------------------------
|
// ------------------------------------------------------------
|
||||||
|
|
||||||
import config._
|
import freechips.rocketchip.config._
|
||||||
import jtag.{JTAGIO}
|
import freechips.rocketchip.jtag.{JTAGIO}
|
||||||
|
|
||||||
class JTAGPinsIO(hasTRSTn: Boolean = true) extends Bundle {
|
class JTAGPinsIO(hasTRSTn: Boolean = true) extends Bundle {
|
||||||
|
|
||||||
|
@ -42,10 +42,10 @@
|
|||||||
package sifive.blocks.devices.i2c
|
package sifive.blocks.devices.i2c
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.config._
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
import util.{AsyncResetRegVec, Majority}
|
import freechips.rocketchip.util.{AsyncResetRegVec, Majority}
|
||||||
import sifive.blocks.devices.gpio.{GPIOPinCtrl}
|
import sifive.blocks.devices.gpio.{GPIOPinCtrl}
|
||||||
|
|
||||||
case class I2CParams(address: BigInt)
|
case class I2CParams(address: BigInt)
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
package sifive.blocks.devices.i2c
|
package sifive.blocks.devices.i2c
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Field
|
import freechips.rocketchip.config.Field
|
||||||
import diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
||||||
import rocketchip.{HasSystemNetworks}
|
import freechips.rocketchip.chip.{HasSystemNetworks}
|
||||||
import uncore.tilelink2.TLFragmenter
|
import freechips.rocketchip.tilelink.TLFragmenter
|
||||||
|
|
||||||
case object PeripheryI2CKey extends Field[Seq[I2CParams]]
|
case object PeripheryI2CKey extends Field[Seq[I2CParams]]
|
||||||
|
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
package sifive.blocks.devices.mockaon
|
package sifive.blocks.devices.mockaon
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.config.Parameters
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
|
|
||||||
import sifive.blocks.util.GenericTimer
|
import sifive.blocks.util.GenericTimer
|
||||||
|
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
package sifive.blocks.devices.mockaon
|
package sifive.blocks.devices.mockaon
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Field
|
import freechips.rocketchip.config.Field
|
||||||
import diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
||||||
import rocketchip.{HasSystemNetworks, HasCoreplexRISCVPlatform}
|
import freechips.rocketchip.chip.{HasSystemNetworks, HasCoreplexRISCVPlatform}
|
||||||
import uncore.tilelink2.{IntXing, TLAsyncCrossingSource, TLFragmenter}
|
import freechips.rocketchip.tilelink.{IntXing, TLAsyncCrossingSource, TLFragmenter}
|
||||||
import util.ResetCatchAndSync
|
import freechips.rocketchip.util.ResetCatchAndSync
|
||||||
|
|
||||||
case object PeripheryMockAONKey extends Field[MockAONParams]
|
case object PeripheryMockAONKey extends Field[MockAONParams]
|
||||||
|
|
||||||
|
@ -2,12 +2,13 @@
|
|||||||
package sifive.blocks.devices.mockaon
|
package sifive.blocks.devices.mockaon
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.config.Parameters
|
||||||
import diplomacy._
|
import freechips.rocketchip.diplomacy._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
|
import freechips.rocketchip.util._
|
||||||
import sifive.blocks.devices.gpio.{GPIOPin, GPIOOutputPinCtrl, GPIOInputPinCtrl}
|
import sifive.blocks.devices.gpio.{GPIOPin, GPIOOutputPinCtrl, GPIOInputPinCtrl}
|
||||||
import sifive.blocks.util.{DeglitchShiftRegister, ResetCatchAndSync}
|
import sifive.blocks.util.{DeglitchShiftRegister, ResetCatchAndSync}
|
||||||
import util._
|
|
||||||
/* The wrapper handles the Clock and Reset Generation for The AON block itself,
|
/* The wrapper handles the Clock and Reset Generation for The AON block itself,
|
||||||
and instantiates real pad controls (aka pull-ups)*/
|
and instantiates real pad controls (aka pull-ups)*/
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ package sifive.blocks.devices.mockaon
|
|||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import Chisel.ImplicitConversions._
|
import Chisel.ImplicitConversions._
|
||||||
import util._
|
import freechips.rocketchip.util._
|
||||||
import sifive.blocks.util.SRLatch
|
import sifive.blocks.util.SRLatch
|
||||||
|
|
||||||
import sifive.blocks.util.{SlaveRegIF}
|
import sifive.blocks.util.{SlaveRegIF}
|
||||||
|
@ -3,7 +3,7 @@ package sifive.blocks.devices.mockaon
|
|||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import Chisel.ImplicitConversions._
|
import Chisel.ImplicitConversions._
|
||||||
import util.AsyncResetReg
|
import freechips.rocketchip.util.AsyncResetReg
|
||||||
|
|
||||||
import sifive.blocks.util.{SlaveRegIF, GenericTimer}
|
import sifive.blocks.util.{SlaveRegIF, GenericTimer}
|
||||||
|
|
||||||
|
@ -3,11 +3,10 @@ package sifive.blocks.devices.pwm
|
|||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import Chisel.ImplicitConversions._
|
import Chisel.ImplicitConversions._
|
||||||
import config.Parameters
|
import freechips.rocketchip.config.Parameters
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
import util._
|
import freechips.rocketchip.util._
|
||||||
|
|
||||||
import sifive.blocks.util.GenericTimer
|
import sifive.blocks.util.GenericTimer
|
||||||
|
|
||||||
// Core PWM Functionality & Register Interface
|
// Core PWM Functionality & Register Interface
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
package sifive.blocks.devices.pwm
|
package sifive.blocks.devices.pwm
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Field
|
import freechips.rocketchip.config.Field
|
||||||
import diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
||||||
import rocketchip.HasSystemNetworks
|
import freechips.rocketchip.chip.HasSystemNetworks
|
||||||
import uncore.tilelink2.TLFragmenter
|
import freechips.rocketchip.tilelink.TLFragmenter
|
||||||
import util.HeterogeneousBag
|
import freechips.rocketchip.util.HeterogeneousBag
|
||||||
|
|
||||||
import sifive.blocks.devices.gpio._
|
import sifive.blocks.devices.gpio._
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
package sifive.blocks.devices.spi
|
package sifive.blocks.devices.spi
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import util.GenericParameterizedBundle
|
import freechips.rocketchip.util.GenericParameterizedBundle
|
||||||
|
|
||||||
abstract class SPIBundle(val c: SPIParamsBase) extends GenericParameterizedBundle(c) {
|
abstract class SPIBundle(val c: SPIParamsBase) extends GenericParameterizedBundle(c) {
|
||||||
override def cloneType: SPIBundle.this.type =
|
override def cloneType: SPIBundle.this.type =
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
package sifive.blocks.devices.spi
|
package sifive.blocks.devices.spi
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Field
|
import freechips.rocketchip.config.Field
|
||||||
import diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule,LazyMultiIOModuleImp}
|
||||||
import rocketchip.HasSystemNetworks
|
import freechips.rocketchip.chip.HasSystemNetworks
|
||||||
import uncore.tilelink2.{TLFragmenter,TLWidthWidget}
|
import freechips.rocketchip.tilelink.{TLFragmenter,TLWidthWidget}
|
||||||
import util.HeterogeneousBag
|
import freechips.rocketchip.util.HeterogeneousBag
|
||||||
|
|
||||||
case object PeripherySPIKey extends Field[Seq[SPIParams]]
|
case object PeripherySPIKey extends Field[Seq[SPIParams]]
|
||||||
|
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
package sifive.blocks.devices.spi
|
package sifive.blocks.devices.spi
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.config.Parameters
|
||||||
import diplomacy._
|
import freechips.rocketchip.diplomacy._
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
|
import freechips.rocketchip.util.HeterogeneousBag
|
||||||
import sifive.blocks.util.{NonBlockingEnqueue, NonBlockingDequeue}
|
import sifive.blocks.util.{NonBlockingEnqueue, NonBlockingDequeue}
|
||||||
|
|
||||||
trait SPIParamsBase {
|
trait SPIParamsBase {
|
||||||
@ -47,7 +47,7 @@ case class SPIParams(
|
|||||||
require(sampleDelay >= 0)
|
require(sampleDelay >= 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
class SPITopBundle(val i: util.HeterogeneousBag[Vec[Bool]], val r: util.HeterogeneousBag[TLBundle]) extends Bundle
|
class SPITopBundle(val i: HeterogeneousBag[Vec[Bool]], val r: HeterogeneousBag[TLBundle]) extends Bundle
|
||||||
|
|
||||||
class SPITopModule[B <: SPITopBundle](c: SPIParamsBase, bundle: => B, outer: TLSPIBase)
|
class SPITopModule[B <: SPITopBundle](c: SPIParamsBase, bundle: => B, outer: TLSPIBase)
|
||||||
extends LazyModuleImp(outer) {
|
extends LazyModuleImp(outer) {
|
||||||
|
@ -2,10 +2,11 @@
|
|||||||
package sifive.blocks.devices.spi
|
package sifive.blocks.devices.spi
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.config.Parameters
|
||||||
import diplomacy._
|
import freechips.rocketchip.diplomacy._
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
|
import freechips.rocketchip.util.HeterogeneousBag
|
||||||
|
|
||||||
trait SPIFlashParamsBase extends SPIParamsBase {
|
trait SPIFlashParamsBase extends SPIParamsBase {
|
||||||
val fAddress: BigInt
|
val fAddress: BigInt
|
||||||
@ -38,7 +39,7 @@ case class SPIFlashParams(
|
|||||||
require(sampleDelay >= 0)
|
require(sampleDelay >= 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
class SPIFlashTopBundle(i: util.HeterogeneousBag[Vec[Bool]], r: util.HeterogeneousBag[TLBundle], val f: util.HeterogeneousBag[TLBundle]) extends SPITopBundle(i, r)
|
class SPIFlashTopBundle(i: HeterogeneousBag[Vec[Bool]], r: HeterogeneousBag[TLBundle], val f: HeterogeneousBag[TLBundle]) extends SPITopBundle(i, r)
|
||||||
|
|
||||||
class SPIFlashTopModule[B <: SPIFlashTopBundle]
|
class SPIFlashTopModule[B <: SPIFlashTopBundle]
|
||||||
(c: SPIFlashParamsBase, bundle: => B, outer: TLSPIFlashBase)
|
(c: SPIFlashParamsBase, bundle: => B, outer: TLSPIFlashBase)
|
||||||
|
@ -2,10 +2,12 @@
|
|||||||
package sifive.blocks.devices.uart
|
package sifive.blocks.devices.uart
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.chip.RTCPeriod
|
||||||
import regmapper._
|
import freechips.rocketchip.config.Parameters
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.diplomacy.DTSTimebase
|
||||||
import util._
|
import freechips.rocketchip.regmapper._
|
||||||
|
import freechips.rocketchip.tilelink._
|
||||||
|
import freechips.rocketchip.util._
|
||||||
|
|
||||||
import sifive.blocks.util.{NonBlockingEnqueue, NonBlockingDequeue}
|
import sifive.blocks.util.{NonBlockingEnqueue, NonBlockingDequeue}
|
||||||
|
|
||||||
@ -203,7 +205,7 @@ trait HasUARTTopModuleContents extends Module with HasUARTParameters with HasReg
|
|||||||
val rxm = Module(new UARTRx(params))
|
val rxm = Module(new UARTRx(params))
|
||||||
val rxq = Module(new Queue(rxm.io.out.bits, uartNRxEntries))
|
val rxq = Module(new Queue(rxm.io.out.bits, uartNRxEntries))
|
||||||
|
|
||||||
val divinit = p(diplomacy.DTSTimebase) * p(rocketchip.RTCPeriod) / 115200
|
val divinit = p(DTSTimebase) * p(RTCPeriod) / 115200
|
||||||
val div = Reg(init = UInt(divinit, uartDivisorBits))
|
val div = Reg(init = UInt(divinit, uartDivisorBits))
|
||||||
|
|
||||||
private val stopCountBits = log2Up(uartStopBits)
|
private val stopCountBits = log2Up(uartStopBits)
|
||||||
|
@ -2,11 +2,10 @@
|
|||||||
package sifive.blocks.devices.uart
|
package sifive.blocks.devices.uart
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config.Field
|
import freechips.rocketchip.config.Field
|
||||||
import diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
||||||
import rocketchip.HasSystemNetworks
|
import freechips.rocketchip.chip.HasSystemNetworks
|
||||||
import uncore.tilelink2.TLFragmenter
|
import freechips.rocketchip.tilelink.TLFragmenter
|
||||||
|
|
||||||
import sifive.blocks.devices.gpio.{GPIOPin, GPIOOutputPinCtrl, GPIOInputPinCtrl}
|
import sifive.blocks.devices.gpio.{GPIOPin, GPIOOutputPinCtrl, GPIOInputPinCtrl}
|
||||||
import sifive.blocks.util.ShiftRegisterInit
|
import sifive.blocks.util.ShiftRegisterInit
|
||||||
|
|
||||||
|
@ -3,11 +3,12 @@ package sifive.blocks.devices.xilinxvc707mig
|
|||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import chisel3.experimental.{Analog,attach}
|
import chisel3.experimental.{Analog,attach}
|
||||||
import config._
|
import freechips.rocketchip.amba.axi4._
|
||||||
import diplomacy._
|
import freechips.rocketchip.chip._
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.config.Parameters
|
||||||
import uncore.axi4._
|
import freechips.rocketchip.coreplex.CacheBlockBytes
|
||||||
import rocketchip._
|
import freechips.rocketchip.diplomacy._
|
||||||
|
import freechips.rocketchip.tilelink._
|
||||||
import sifive.blocks.ip.xilinx.vc707mig.{VC707MIGIOClocksReset, VC707MIGIODDR, vc707mig}
|
import sifive.blocks.ip.xilinx.vc707mig.{VC707MIGIOClocksReset, VC707MIGIODDR, vc707mig}
|
||||||
|
|
||||||
trait HasXilinxVC707MIGParameters {
|
trait HasXilinxVC707MIGParameters {
|
||||||
@ -34,7 +35,7 @@ class XilinxVC707MIG(implicit p: Parameters) extends LazyModule with HasXilinxVC
|
|||||||
val xing = LazyModule(new TLAsyncCrossing)
|
val xing = LazyModule(new TLAsyncCrossing)
|
||||||
val toaxi4 = LazyModule(new TLToAXI4(beatBytes = 8, adapterName = Some("mem"), stripBits = 1))
|
val toaxi4 = LazyModule(new TLToAXI4(beatBytes = 8, adapterName = Some("mem"), stripBits = 1))
|
||||||
val indexer = LazyModule(new AXI4IdIndexer(idBits = 4))
|
val indexer = LazyModule(new AXI4IdIndexer(idBits = 4))
|
||||||
val deint = LazyModule(new AXI4Deinterleaver(p(coreplex.CacheBlockBytes)))
|
val deint = LazyModule(new AXI4Deinterleaver(p(CacheBlockBytes)))
|
||||||
val yank = LazyModule(new AXI4UserYanker)
|
val yank = LazyModule(new AXI4UserYanker)
|
||||||
val buffer = LazyModule(new AXI4Buffer)
|
val buffer = LazyModule(new AXI4Buffer)
|
||||||
|
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
package sifive.blocks.devices.xilinxvc707mig
|
package sifive.blocks.devices.xilinxvc707mig
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
||||||
import rocketchip.HasSystemNetworks
|
import freechips.rocketchip.chip.HasSystemNetworks
|
||||||
|
|
||||||
trait HasPeripheryXilinxVC707MIG extends HasSystemNetworks {
|
trait HasPeripheryXilinxVC707MIG extends HasSystemNetworks {
|
||||||
val module: HasPeripheryXilinxVC707MIGModuleImp
|
val module: HasPeripheryXilinxVC707MIGModuleImp
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
package sifive.blocks.devices.xilinxvc707pciex1
|
package sifive.blocks.devices.xilinxvc707pciex1
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.amba.axi4._
|
||||||
import diplomacy._
|
import freechips.rocketchip.coreplex.CacheBlockBytes
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.config.Parameters
|
||||||
import uncore.axi4._
|
import freechips.rocketchip.diplomacy._
|
||||||
import rocketchip._
|
import freechips.rocketchip.tilelink._
|
||||||
import sifive.blocks.ip.xilinx.vc707axi_to_pcie_x1.{VC707AXIToPCIeX1, VC707AXIToPCIeX1IOClocksReset, VC707AXIToPCIeX1IOSerial}
|
import sifive.blocks.ip.xilinx.vc707axi_to_pcie_x1.{VC707AXIToPCIeX1, VC707AXIToPCIeX1IOClocksReset, VC707AXIToPCIeX1IOSerial}
|
||||||
import sifive.blocks.ip.xilinx.ibufds_gte2.IBUFDS_GTE2
|
import sifive.blocks.ip.xilinx.ibufds_gte2.IBUFDS_GTE2
|
||||||
|
|
||||||
@ -30,7 +30,7 @@ class XilinxVC707PCIeX1(implicit p: Parameters) extends LazyModule {
|
|||||||
axi_to_pcie_x1.slave :=
|
axi_to_pcie_x1.slave :=
|
||||||
AXI4Buffer()(
|
AXI4Buffer()(
|
||||||
AXI4UserYanker()(
|
AXI4UserYanker()(
|
||||||
AXI4Deinterleaver(p(coreplex.CacheBlockBytes))(
|
AXI4Deinterleaver(p(CacheBlockBytes))(
|
||||||
AXI4IdIndexer(idBits=4)(
|
AXI4IdIndexer(idBits=4)(
|
||||||
TLToAXI4(beatBytes=8, adapterName = Some("pcie-slave"))(
|
TLToAXI4(beatBytes=8, adapterName = Some("pcie-slave"))(
|
||||||
TLAsyncCrossingSink()(
|
TLAsyncCrossingSink()(
|
||||||
@ -40,7 +40,7 @@ class XilinxVC707PCIeX1(implicit p: Parameters) extends LazyModule {
|
|||||||
AXI4Buffer()(
|
AXI4Buffer()(
|
||||||
AXI4UserYanker(capMaxFlight = Some(2))(
|
AXI4UserYanker(capMaxFlight = Some(2))(
|
||||||
TLToAXI4(beatBytes=4)(
|
TLToAXI4(beatBytes=4)(
|
||||||
TLFragmenter(4, p(coreplex.CacheBlockBytes))(
|
TLFragmenter(4, p(CacheBlockBytes))(
|
||||||
TLAsyncCrossingSink()(
|
TLAsyncCrossingSink()(
|
||||||
control)))))
|
control)))))
|
||||||
|
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
package sifive.blocks.devices.xilinxvc707pciex1
|
package sifive.blocks.devices.xilinxvc707pciex1
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
import freechips.rocketchip.diplomacy.{LazyModule, LazyMultiIOModuleImp}
|
||||||
import rocketchip.HasSystemNetworks
|
import freechips.rocketchip.chip.HasSystemNetworks
|
||||||
import uncore.tilelink2._
|
import freechips.rocketchip.tilelink._
|
||||||
|
|
||||||
trait HasPeripheryXilinxVC707PCIeX1 extends HasSystemNetworks {
|
trait HasPeripheryXilinxVC707PCIeX1 extends HasSystemNetworks {
|
||||||
val xilinxvc707pcie = LazyModule(new XilinxVC707PCIeX1)
|
val xilinxvc707pcie = LazyModule(new XilinxVC707PCIeX1)
|
||||||
|
@ -2,11 +2,10 @@
|
|||||||
package sifive.blocks.ip.xilinx.vc707axi_to_pcie_x1
|
package sifive.blocks.ip.xilinx.vc707axi_to_pcie_x1
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import config._
|
import freechips.rocketchip.config._
|
||||||
import diplomacy._
|
import freechips.rocketchip.diplomacy._
|
||||||
import uncore.axi4._
|
import freechips.rocketchip.amba.axi4._
|
||||||
import uncore.tilelink2.{IntSourceNode, IntSourcePortSimple}
|
import freechips.rocketchip.tilelink.{IntSourceNode, IntSourcePortSimple}
|
||||||
import junctions._
|
|
||||||
|
|
||||||
// IP VLNV: xilinx.com:customize_ip:vc707pcietoaxi:1.0
|
// IP VLNV: xilinx.com:customize_ip:vc707pcietoaxi:1.0
|
||||||
// Black Box
|
// Black Box
|
||||||
|
@ -3,8 +3,7 @@ package sifive.blocks.ip.xilinx.vc707mig
|
|||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import chisel3.experimental.{Analog,attach}
|
import chisel3.experimental.{Analog,attach}
|
||||||
import config._
|
import freechips.rocketchip.config._
|
||||||
import junctions._
|
|
||||||
|
|
||||||
// IP VLNV: xilinx.com:customize_ip:vc707mig:1.0
|
// IP VLNV: xilinx.com:customize_ip:vc707mig:1.0
|
||||||
// Black Box
|
// Black Box
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
package sifive.blocks.util
|
package sifive.blocks.util
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
|
|
||||||
// MSB indicates full status
|
// MSB indicates full status
|
||||||
object NonBlockingEnqueue {
|
object NonBlockingEnqueue {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
package sifive.blocks.util
|
package sifive.blocks.util
|
||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import util.AsyncResetRegVec
|
import freechips.rocketchip.util.AsyncResetRegVec
|
||||||
|
|
||||||
/** Reset: asynchronous assert,
|
/** Reset: asynchronous assert,
|
||||||
* synchronous de-assert
|
* synchronous de-assert
|
||||||
|
@ -3,8 +3,8 @@ package sifive.blocks.util
|
|||||||
|
|
||||||
import Chisel._
|
import Chisel._
|
||||||
import Chisel.ImplicitConversions._
|
import Chisel.ImplicitConversions._
|
||||||
import regmapper._
|
import freechips.rocketchip.regmapper._
|
||||||
import util.WideCounter
|
import freechips.rocketchip.util.WideCounter
|
||||||
|
|
||||||
class SlaveRegIF(w: Int) extends Bundle {
|
class SlaveRegIF(w: Int) extends Bundle {
|
||||||
val write = Valid(UInt(width = w)).flip
|
val write = Valid(UInt(width = w)).flip
|
||||||
|
Loading…
Reference in New Issue
Block a user