case class Wishbone(config: WishboneConfig) extends Bundle with IMasterSlave with Product with Serializable
This class rappresent a Wishbone bus
- config
an istance of WishboneConfig, it will be used to configurate the Wishbone Bus
- Alphabetic
- By Inheritance
- Wishbone
- Serializable
- Product
- Equals
- IMasterSlave
- Bundle
- ValCallbackRec
- ValCallback
- MultiData
- Data
- InComponent
- OverridedEqualsHashCode
- SpinalTagReady
- Assignable
- NameableByComponent
- Nameable
- OwnableRef
- ContextUser
- ScalaLocated
- GlobalDataUser
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Wishbone(config: WishboneConfig)
- config
an istance of WishboneConfig, it will be used to configurate the Wishbone Bus
Type Members
- abstract type RefOwnerType
- Definition Classes
- OwnableRef
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def ##(right: Data): Bits
- Definition Classes
- Data
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def <<(that: Wishbone): Unit
Connect common Wishbone signals
Connect common Wishbone signals
wishboneSlave << wishboneMaster
Example: - final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def >>(that: Wishbone): Unit
Connect common Wishbone signals this fuction will auto resize the slave address line only if slave.addressWidth <= master.addressWidth
Connect common Wishbone signals this fuction will auto resize the slave address line only if slave.addressWidth <= master.addressWidth
wishboneMaster >> wishboneSlave
Example: - val ACK: Bool
- val ADR: UInt
- val BTE: Bits
- val CTI: Bits
- val CYC: Bool
- val DAT_MISO: Bits
- val DAT_MOSI: Bits
- val ERR: Bool
- val LOCK: Bool
- val RTY: Bool
- val SEL: Bits
- val STALL: Bool
- val STB: Bool
- val TGA: Bits
- val TGC: Bits
- val TGD_MISO: Bits
- val TGD_MOSI: Bits
- val WE: Bool
- val _spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- def addAttribute(attribute: Attribute): Wishbone.this.type
- Definition Classes
- Data → SpinalTagReady
- def addAttribute(name: String, value: Int): Wishbone.this.type
- Definition Classes
- SpinalTagReady
- def addAttribute(name: String, value: String): Wishbone.this.type
- Definition Classes
- SpinalTagReady
- def addAttribute(name: String): Wishbone.this.type
- Definition Classes
- SpinalTagReady
- def addTag[T <: SpinalTag](spinalTag: T): Wishbone.this.type
- Definition Classes
- MultiData → SpinalTagReady
- def addTags[T <: SpinalTag](tags: Iterable[T]): Wishbone.this.type
- Definition Classes
- SpinalTagReady
- def allowDirectionLessIo: Wishbone.this.type
- Definition Classes
- Data
- def allowOverride: Wishbone.this.type
- Definition Classes
- Data
- def allowPartialyAssigned: Wishbone.this.type
- Definition Classes
- Data
- def allowPruning(): Wishbone.this.type
- Definition Classes
- Data
- def allowSimplifyIt(): Wishbone.this.type
- Definition Classes
- Data
- def allowUnsetRegToAvoidLatch: Wishbone.this.type
- Definition Classes
- Data
- def as[T <: Data](dataType: HardType[T]): T
- Definition Classes
- Data
- def asBits: Bits
- Definition Classes
- MultiData → Data
- def asData: Data
- Definition Classes
- Data
- def asInOut(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def asInput(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def asMaster(): Unit
- Definition Classes
- Wishbone → IMasterSlave
- def asOutput(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def asSlave(): Unit
- Definition Classes
- IMasterSlave
- def assignAllByName(that: Bundle): Unit
- Definition Classes
- Bundle
- def assignDontCare(): Wishbone.this.type
- Definition Classes
- Data
- def assignFormalRandom(kind: RandomExpKind): Unit
- Definition Classes
- MultiData → Data
- final def assignFrom(that: AnyRef, target: AnyRef): Unit
- Definition Classes
- Data
- def assignFromBits(bits: Bits, hi: Int, lo: Int): Unit
- Definition Classes
- MultiData → Data
- def assignFromBits(bits: Bits): Unit
- Definition Classes
- MultiData → Data
- def assignFromBits(bits: Bits, offset: Int, bitCount: BitCount): Unit
- Definition Classes
- Data
- def assignSomeByName(that: Bundle): Unit
- Definition Classes
- Bundle
- def assignUnassignedByName(that: MultiData): Unit
- Definition Classes
- MultiData
- def bundleAssign(that: Bundle)(f: (Data, Data) => Unit): Unit
- Definition Classes
- Bundle
- def clearAll(): Unit
Clear all the relevant signals in the wishbone bus
Clear all the relevant signals in the wishbone bus
val wishbone1 = master(Wishbone(WishboneConfig(8,8))) val wishbone2 = slave(Wishbone(WishboneConfig(8,8))) val wishbone2 = slave(Wishbone(WishboneConfig(8,8).withDataTag(8))) // this will clear only the following signals: CYC,ADR,DAT_MOSI,STB,WE wishbone1.clearAll() // this will clear only the following signals: DAT_MISO,ACK wishbone2.clearAll() // this will clear only the following signals: DAT_MISO,ACK,TGD_MISO wishbone3.clearAll()
Example: - def clone(): Bundle
- Definition Classes
- Bundle → Data → AnyRef
- def component: Component
- Definition Classes
- ContextUser
- final def compositAssignFrom(that: AnyRef, target: AnyRef, kind: AnyRef): Unit
- Definition Classes
- Assignable
- val compositeAssign: Assignable
- Definition Classes
- Assignable
- val config: WishboneConfig
- def connectTo(that: Wishbone, allowDataResize: Boolean = false, allowAddressResize: Boolean = false, allowTagResize: Boolean = false): Unit
Connect to a wishbone bus with optional resize.
Connect to a wishbone bus with optional resize. This will drop all the signals that are not in common
- that
the wishbone bus that i want to connect, must be a wishbone slave
- allowDataResize
allow the resize of the data lines, deafult to false
- allowAddressResize
allow the resize of the address line, deafult to false
- allowTagResize
allow the resize of the tag lines, deafult to false
- def copyDirectionOfImpl(that: Data): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def dirString(): String
- Definition Classes
- Data
- def doRead: Bool
- def doSend: Bool
- def doWrite: Bool
- def dontSimplifyIt(): Wishbone.this.type
- Definition Classes
- Data
- def elements: ArrayBuffer[(String, Data)]
- Definition Classes
- Bundle → MultiData
- def elementsString: String
- Definition Classes
- MultiData
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(obj: Any): Boolean
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- def existsTag(cond: (SpinalTag) => Boolean): Boolean
- Definition Classes
- SpinalTagReady
- def filterTag(cond: (SpinalTag) => Boolean): Iterable[SpinalTag]
- Definition Classes
- SpinalTagReady
- def find(name: String): Data
- Definition Classes
- MultiData
- def findTag(cond: (SpinalTag) => Boolean): Option[SpinalTag]
- Definition Classes
- SpinalTagReady
- def flatten: Seq[BaseType]
- Definition Classes
- MultiData → Data
- def flattenForeach(body: (BaseType) => Unit): Unit
- Definition Classes
- MultiData → Data
- def flattenLocalName: Seq[String]
- Definition Classes
- MultiData → Data
- def flip(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def foreachReflectableNameables(doThat: (Any) => Unit): Unit
- Definition Classes
- Nameable
- def foreachTag(body: (SpinalTag) => Unit): Unit
- Definition Classes
- SpinalTagReady
- def freeze(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def genIf(cond: Boolean): Wishbone.this.type
- Definition Classes
- Data
- def getAheadValue(): Wishbone.this.type
- Definition Classes
- Data
- def getBitsWidth: Int
- Definition Classes
- MultiData → Data
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def getComponent(): Component
- Definition Classes
- Data → InComponent → NameableByComponent
- def getComponents(): Seq[Component]
- Definition Classes
- InComponent
- def getDirection: IODirection
- Definition Classes
- Data
- def getDisplayName(): String
- Definition Classes
- Nameable
- def getInstanceCounter: Int
- Definition Classes
- ContextUser
- def getMode: Byte
- Attributes
- protected
- Definition Classes
- Nameable
- def getName(default: String): String
- Definition Classes
- NameableByComponent → Nameable
- def getName(): String
- Definition Classes
- NameableByComponent → Nameable
- def getPartialName(): String
- Definition Classes
- Nameable
- def getRealSource: Any
- Definition Classes
- Assignable
- def getRealSourceNoRec: Any
- Definition Classes
- Data → Assignable
- def getRefOwnersChain(): List[Any]
- Definition Classes
- OwnableRef
- def getRootParent: Data
- Definition Classes
- Data
- def getRtlPath(separator: String): String
- Definition Classes
- Data
- def getScalaLocationLong: String
- Definition Classes
- ScalaLocated
- def getScalaLocationShort: String
- Definition Classes
- ScalaLocated
- def getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
- def getTag[T <: SpinalTag](clazz: Class[T]): Option[T]
- Definition Classes
- SpinalTagReady
- def getTags(): LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- def getTypeString: String
- Definition Classes
- Bundle
- def getZero: Wishbone.this.type
- Definition Classes
- MultiData → Data
- val globalData: GlobalData
- Definition Classes
- GlobalDataUser
- var hardtype: HardType[_]
- Definition Classes
- Bundle
- def hasTag[T <: SpinalTag](clazz: Class[T]): Boolean
- Definition Classes
- SpinalTagReady
- def hasTag(spinalTag: SpinalTag): Boolean
- Definition Classes
- SpinalTagReady
- def hashCode(): Int
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
- final def initFrom(that: AnyRef, target: AnyRef): Unit
- Definition Classes
- Data
- def instanceAttributes(language: Language): Iterable[Attribute]
- Definition Classes
- SpinalTagReady
- def instanceAttributes: Iterable[Attribute]
- Definition Classes
- SpinalTagReady
- def isAck: Bool
- def isAnalog: Boolean
- Definition Classes
- Data
- def isComb: Boolean
- Definition Classes
- Data
- def isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
- def isCycle: Bool
- def isDirectionLess: Boolean
- Definition Classes
- Data
- def isEmptyOfTag: Boolean
- Definition Classes
- SpinalTagReady
- def isInOut: Boolean
- Definition Classes
- Data
- def isInput: Boolean
- Definition Classes
- Data
- def isInputOrInOut: Boolean
- Definition Classes
- Data
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val isMasterInterface: Boolean
- Definition Classes
- IMasterSlave
- def isNamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
- def isOutput: Boolean
- Definition Classes
- Data
- def isOutputOrInOut: Boolean
- Definition Classes
- Data
- def isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
- def isRead: Bool
- def isReg: Boolean
- Definition Classes
- Data
- def isStall: Bool
- def isTransfer: Bool
- def isUnnamed: Boolean
- Definition Classes
- Nameable
- def isWrite: Bool
- val name: String
- Definition Classes
- Nameable
- val nameableRef: Nameable
- Attributes
- protected
- Definition Classes
- Nameable
- Annotations
- @DontName()
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def noBackendCombMerge: Wishbone.this.type
- Definition Classes
- Data
- def noCombLoopCheck: Wishbone.this.type
- Definition Classes
- Data
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def onEachAttributes(doIt: (Attribute) => Unit): Unit
- Definition Classes
- SpinalTagReady
- def overrideLocalName(name: String): Wishbone.this.type
- Definition Classes
- Nameable
- val parent: Data
- Definition Classes
- Data
- val parentScope: ScopeStatement
- Definition Classes
- ContextUser
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def pull(propagateName: Boolean): Wishbone.this.type
- Definition Classes
- Data
- def pull(): Wishbone.this.type
- Definition Classes
- Data
- def purify(): Wishbone.this.type
- Definition Classes
- Data
- def randBoot(u: Unit): Wishbone.this.type
- Definition Classes
- Data
- val refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
- def reflectNames(): Unit
- Definition Classes
- Nameable
- def removeAssignments(): Wishbone.this.type
- Definition Classes
- Data
- def removeTag(spinalTag: SpinalTag): Wishbone.this.type
- Definition Classes
- SpinalTagReady
- def removeTags(tags: Iterable[SpinalTag]): Wishbone.this.type
- Definition Classes
- SpinalTagReady
- def resized: Wishbone.this.type
- Definition Classes
- Data
- val scalaTrace: Throwable
- Definition Classes
- ScalaLocated
- def setAsAnalog(): Wishbone.this.type
- Definition Classes
- Data
- def setAsComb(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def setAsDirectionLess(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def setAsReg(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): Wishbone.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): Wishbone.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, postfix: String): Wishbone.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, namePriority: Byte): Wishbone.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable, weak: Boolean): Wishbone.this.type
- Definition Classes
- Nameable
- def setCompositeName(nameable: Nameable): Wishbone.this.type
- Definition Classes
- Nameable
- def setName(name: String, namePriority: Byte): Wishbone.this.type
- Definition Classes
- Nameable
- def setName(name: String, weak: Boolean): Wishbone.this.type
- Definition Classes
- Nameable
- def setName(name: String): Wishbone.this.type
- Definition Classes
- Nameable
- def setNameAsWeak(): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, namePriority: Byte, owner: Any): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, namePriority: Byte): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String, weak: Boolean): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String, namePriority: Byte): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String, weak: Boolean): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(name: String): Wishbone.this.type
- Definition Classes
- Nameable
- def setPartialName(owner: Nameable, name: String): Wishbone.this.type
- Definition Classes
- Nameable
- def setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
- def setScalaLocated(source: ScalaLocated): Wishbone.this.type
- Definition Classes
- ScalaLocated
- def setWeakName(name: String): Wishbone.this.type
- Definition Classes
- Nameable
- def spinalTags: LinkedHashSet[SpinalTag]
- Definition Classes
- SpinalTagReady
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toIo(): Wishbone.this.type
- Definition Classes
- Data
- def toString(): String
- Definition Classes
- Bundle → Nameable → AnyRef → Any
- def unfreeze(): Wishbone.this.type
- Definition Classes
- MultiData → Data
- def unsetName(): Wishbone.this.type
- Definition Classes
- Nameable
- def valCallback[T](ref: T, name: String): T
- Definition Classes
- ValCallbackRec → ValCallback
- def valCallbackOn(ref: Any, name: String, refs: Set[Any]): Unit
- Definition Classes
- ValCallbackRec
- def valCallbackRec(ref: Any, name: String): Unit
- Definition Classes
- Bundle → ValCallbackRec
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def wrapNext(): Wishbone.this.type
- Definition Classes
- Data
- def zipByName(that: MultiData, rec: ArrayBuffer[(BaseType, BaseType)]): ArrayBuffer[(BaseType, BaseType)]
- Definition Classes
- MultiData