package ahblite

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. case class AhbLite3(config: AhbLite3Config) extends Bundle with IMasterSlave with Product with Serializable

    AHB lite interface

  2. case class AhbLite3Arbiter(ahbLite3Config: AhbLite3Config, inputsCount: Int, roundRobinArbiter: Boolean = true) extends Component with Product with Serializable

    AHB Lite arbiter

    AHB Lite arbiter

    ahbLite3Config

    : Ahb bus configuration

    inputsCount

    : Number of inputs for the arbiter

  3. case class AhbLite3Config(addressWidth: Int, dataWidth: Int) extends Product with Serializable
  4. case class AhbLite3CrossbarFactory(ahbLite3Config: AhbLite3Config) extends Product with Serializable

    AhbLite3 Crossbar Factory

    AhbLite3 Crossbar Factory

    Example:
    1. class TopLevel extends Component {
          val ahbConfig = AhbLite3Config(addressWidth = 16, dataWidth = 32)
      
          val io = new Bundle{
              val ahbMasters = Vec(slave(AhbLite3Master(ahbConfig)), 3)
              val ahbSlaves  = Vec(master(AhbLite3(ahbConfig)), 4)
          }
      
          val crossbar = AhbLite3CrossbarFactory(ahbConfig)
              .addSlaves(
                  io.ahbSlaves(0) -> (0x1000,0x1000),
                  io.ahbSlaves(1) -> (0x3000,0x1000),
                  io.ahbSlaves(2) -> (0x4000,0x1000),
                  io.ahbSlaves(3) -> (0x5000,0x1000)
               )
               .addConnections(
                  io.ahbMasters(0).toAhbLite3() -> List(io.ahbSlaves(0), io.ahbSlaves(1)),
                  io.ahbMasters(1).toAhbLite3() -> List(io.ahbSlaves(1), io.ahbSlaves(2), io.ahbSlaves(3)),
                  io.ahbMasters(2).toAhbLite3() -> List(io.ahbSlaves(0), io.ahbSlaves(3))
               )
               // ** OPTIONAL **
               //.addGlobalDefaultSlave(io.defaultSalve)
               //.addDefaultSalves(
               //   io.ahbMaster(0) -> io.defaultSlaveM0,
               //   io.ahbMaster(1) -> io.defaultSalveM1
               //)
               .build()
              }
  5. case class AhbLite3CrossbarSlaveConfig(mapping: SizeMapping, index: Int) extends Product with Serializable
  6. case class AhbLite3CrossbarSlaveConnection(master: AhbLite3) extends Product with Serializable
  7. class AhbLite3Decoder extends Component

    AHB lite decoder

  8. case class AhbLite3Master(config: AhbLite3Config) extends Bundle with IMasterSlave with Product with Serializable

    AHB lite Master interface

  9. case class AhbLite3OnChipRam(AhbLite3Config: AhbLite3Config, byteCount: BigInt) extends Component with Product with Serializable

    AHB on chip RAM

    AHB on chip RAM

    AhbLite3Config

    : Ahb bus configuration

    byteCount

    : Size of the RAM

  10. case class AhbLite3OnChipRamMultiPort(portCount: Int, AhbLite3Config: AhbLite3Config, byteCount: BigInt) extends Component with Product with Serializable
  11. class AhbLite3OnChipRom extends Component

    AHB on chip ROM

  12. class AhbLite3SlaveFactory extends BusSlaveFactoryDelayed
  13. case class AhbLite3ToApb3Bridge(ahbConfig: AhbLite3Config, apbConfig: Apb3Config) extends Component with Product with Serializable
  14. class DefaultAhbLite3Slave extends Component

    Default Slave Return an error when an operation occurs

Value Members

  1. object AhbLite3 extends Serializable
  2. object AhbLite3Decoder
  3. object AhbLite3SlaveFactory
  4. object AhbLite3ToApb3BridgePhase extends SpinalEnum

Ungrouped