Packages

package misc

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. trait AddressMapping extends AnyRef
  2. trait AddressTransformer extends AnyRef

    Model a transformation on a address, typicaly, an address decoder may apply an offset to each of its outputs

  3. trait BusSlaveFactory extends Area

    Bus slave factory is a tool that provide an abstract and smooth way to define register bank

  4. class BusSlaveFactoryAddressWrapper extends BusSlaveFactory
  5. case class BusSlaveFactoryConfig(wordEndianness: Endianness = LITTLE) extends Product with Serializable

    Configuration of the bus Slave Factory

    Configuration of the bus Slave Factory

    wordEndianness

    Endianness for the multiWrite or multiRead operations

  6. trait BusSlaveFactoryDelayed extends BusSlaveFactory

    BusSlaveFactoryDelayed captures each primitives (BusSlaveFactoryElement) into a data-model

    BusSlaveFactoryDelayed captures each primitives (BusSlaveFactoryElement) into a data-model

    Example:
    1. class Apb3SlaveFactory(bus : Apb3) extends BusSlaveFactoryDelayed{
          override def build(): Unit = { ... }
          override def busDataWidth: Int = bus.config.dataWidth
       }
  7. trait BusSlaveFactoryElement extends AnyRef

    Base element

  8. case class BusSlaveFactoryNonStopWrite(that: Data, bitOffset: Int, documentation: String) extends BusSlaveFactoryElement with Product with Serializable

    Ask to constantly drive that with the data bus bitOffset specify where that get bits from the request

  9. case class BusSlaveFactoryOnReadAtAddress(address: AddressMapping, haltSensitive: Boolean, documentation: String, doThat: () ⇒ Unit) extends BusSlaveFactoryElement with Product with Serializable

    Ask to execute doThat when a read access is done on address

  10. case class BusSlaveFactoryOnWriteAtAddress(address: AddressMapping, haltSensitive: Boolean, documentation: String, doThat: () ⇒ Unit) extends BusSlaveFactoryElement with Product with Serializable

    Ask to execute doThat when a write access is done on address

  11. case class BusSlaveFactoryRead(that: Data, address: AddressMapping, bitOffset: Int, documentation: String) extends BusSlaveFactoryElement with Product with Serializable

    Ask to make that readable when an access is done on address bitOffset specify where that is placed on the answer

  12. case class BusSlaveFactoryWrite(that: Data, address: AddressMapping, bitOffset: Int, documentation: String) extends BusSlaveFactoryElement with Product with Serializable

    Ask to make that writable when a access is done on address.

    Ask to make that writable when a access is done on address. bitOffset specify where that get bits from the request

  13. case class InterleavedMapping(mapping: AddressMapping, blockSize: Int, ratio: Int, sel: Int) extends AddressMapping with Product with Serializable
  14. case class InterleaverTransformer(blockSize: Int, ratio: Int, sel: Int) extends AddressTransformer with Product with Serializable
  15. case class InvertMapping(inv: AddressMapping) extends AddressMapping with Product with Serializable
  16. case class MaskMapping(base: BigInt, mask: BigInt) extends AddressMapping with Product with Serializable

    Creates an address mapping using a bit mask.

    Creates an address mapping using a bit mask.

    MaskMapping(0x0000, 0x8000) => matches 0x0000-0x8000 MaskMapping(0x40, 0xF0) => matches 0x40 - 0x4F

    base

    Address offset to use. Must be inside the mask

    mask

    Bit mask applied to the address before the check

  17. case class OffsetTransformer(offset: BigInt) extends AddressTransformer with Product with Serializable

    offset

    For instance, if a slave is mapped at address 0x100 of a master => offset = 0x100

  18. case class OrMapping(conds: Seq[AddressMapping]) extends AddressMapping with Product with Serializable
  19. case class SingleMapping(address: BigInt) extends AddressMapping with Product with Serializable
  20. case class SizeMapping(base: BigInt, size: BigInt) extends AddressMapping with Product with Serializable
  21. case class SizeMappingInterleaved(base: BigInt, size: BigInt, blockSize: Int, pattern: Seq[Boolean]) extends AddressMapping with Product with Serializable
  22. case class UnmaskMapping(base: BigInt, mask: BigInt) extends AddressMapping with Product with Serializable

Value Members

  1. object AddressMapping
  2. object AllMapping extends AddressMapping
  3. object DefaultMapping extends AddressMapping
  4. object NeverMapping extends AddressMapping
  5. object SizeMapping extends Serializable

Ungrouped