Packages

c

spinal.lib.bus.amba4.axilite.sim

AxiLite4Master

case class AxiLite4Master(axil: AxiLite4, clockDomain: ClockDomain) extends Product with Serializable

Simulation master for the AxiLite4 bus protocol spinal.lib.bus.amba4.axilite.AxiLite4.

axil

bus master to drive

clockDomain

clock domain to sample data on

Example:
  1. SimConfig.compile(new Component {
      val io = new Bundle {
        val axil = slave(AxiLite4(AxiLite4Config(addressWidth = 32, dataWidth = 32)))
      }
    }).doSim("sample") { dut =>
      val master = AxiLite4Master(dut.io.axil, dut.clockDomain)
      val data = master.read(0x1000, 4)
    }
Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AxiLite4Master
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AxiLite4Master(axil: AxiLite4, clockDomain: ClockDomain)

    create a new simulation master with the bus instance and clock domain.

    create a new simulation master with the bus instance and clock domain.

    axil

    bus master to drive

    clockDomain

    clock domain to sample data on

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val axil: AxiLite4
  6. val clockDomain: ClockDomain
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  10. def idle: Boolean
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  15. def read(address: BigInt, totalBytes: BigInt): List[Byte]

    Read synchronously multiple bytes from the specified address.

    Read synchronously multiple bytes from the specified address.

    address

    address to read from, does not need to be aligned (data will be truncated automatically)

    totalBytes

    total number of bytes in the result

    returns

    read data

    Note

    The bus master will automatically issue multiple transactions if more than one is needed, due to address alignment or length.

  16. def readCB(address: BigInt, totalBytes: BigInt)(callback: (List[Byte]) ⇒ Unit): Unit

    Read asynchronously multiple bytes.

    Read asynchronously multiple bytes. Same semantics as read, but result is delivered in the callback

  17. def readIdle: Boolean

    check if all read channels are idle

  18. def readSingle(address: BigInt)(callback: (List[Byte]) ⇒ Unit): Unit

    Read asynchronously one beat of bus data width.

    Read asynchronously one beat of bus data width. Address must be aligned

  19. def reset(): Unit

    Reset bus master and drop all pending transactions

  20. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  21. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  23. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. def write(addr: BigInt, data: List[Byte]): Unit

    Write synchronously multiple bytes to the specified address.

    Write synchronously multiple bytes to the specified address.

    addr

    address to write to; does not need to be aligned (data will be padded automatically)

    data

    list of bytes to write to the address. When longer than the bus width, multiple transactions will be issued

  25. def writeCB(addr: BigInt, data: List[Byte])(callback: ⇒ Unit): Unit

    Same as write, but asynchronously

  26. def writeIdle: Boolean

    check if all write channels are idle

  27. def writeSingle(addr: BigInt, data: List[Byte])(callback: ⇒ Unit): Unit

    Write a single transaction.

    Write a single transaction. Address must be aligned

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped