class CtrlLink extends Link with CtrlApi
A kind of special Link that connects two nodes with optional flow control / bypass logic.
Its API should be flexible enough to implement a CPU stage with it.
- See also
- Alphabetic
- By Inheritance
- CtrlLink
- CtrlApi
- Link
- Area
- OverridedEqualsHashCode
- ValCallbackRec
- ValCallback
- NameableByComponent
- Nameable
- ContextUser
- ScalaLocated
- GlobalDataUser
- OwnableRef
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
class
BundlePimper[T <: Bundle] extends AnyRef
- Definition Classes
- CtrlApi
- class Area extends core.Area with CtrlApi
-
abstract
type
RefOwnerType
- Definition Classes
- OwnableRef
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
_context: Capture
- Definition Classes
- Area
-
def
apply(subKeys: Seq[Any]): OffsetApi
- Definition Classes
- CtrlApi
-
def
apply[T <: Data](that: Payload[T], subKey: Any): T
Same as
Link.down(Payload, subKey)
Same as
Link.down(Payload, subKey)
- Definition Classes
- CtrlApi
-
def
apply[T <: Data](that: Payload[T]): T
Same as
Link.down(Payload)
Same as
Link.down(Payload)
- Definition Classes
- CtrlApi
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def build(): Unit
-
implicit
def
bundlePimper[T <: Bundle](stageable: Payload[T]): BundlePimper[T]
- Definition Classes
- CtrlApi
-
def
bypass[T <: Data](that: NamedTypeKey): Data
- Definition Classes
- CtrlApi
-
def
bypass[T <: Data](that: Payload[T], subKey: Any): T
Allows to conditionally override a (Payload, subKey) value between
link.up
->link.down
. -
def
bypass[T <: Data](that: Payload[T]): T
Allows to conditionally override a Payload value between
link.up
->link.down
. - val bypasses: LinkedHashMap[NamedTypeKey, Data]
-
def
childNamePriority: Byte
- Definition Classes
- Area
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @IntrinsicCandidate()
-
def
component: Component
- Definition Classes
- ContextUser
-
def
defaultKey: Any
- Definition Classes
- CtrlApi
- val down: Node
- def downs: Seq[Node]
-
def
duplicateIt()(implicit loc: Location): Unit
Same as duplicateWhen() but for use in
when
blockSame as duplicateWhen() but for use in
when
block- Definition Classes
- CtrlApi
-
def
duplicateWhen(cond: Bool)(implicit loc: Location): Bool
Duplicate the current transaction when
True
(clearup.ready
)Duplicate the current transaction when
True
(clearup.ready
)- Definition Classes
- CtrlApi
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(obj: Any): Boolean
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
-
def
foreachReflectableNameables(doThat: (Any) ⇒ Unit): Unit
- Definition Classes
- Nameable
-
def
forgetOneNow()(implicit loc: Location): Unit
Same as forgetOneWhen() but for use in
when
blockSame as forgetOneWhen() but for use in
when
block- Definition Classes
- CtrlApi
-
def
forgetOneWhen(cond: Bool)(implicit loc: Location): Bool
Request the upstream to forget its current transaction when
True
(but doesn’t clear thedown.valid
)Request the upstream to forget its current transaction when
True
(but doesn’t clear thedown.valid
)- Definition Classes
- CtrlApi
-
def
forkStream[T <: Data](forceSpawn: Option[Bool] = Option.empty[Bool]): Stream[NoData]
- Definition Classes
- CtrlApi
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def getCtrl: CtrlLink
-
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
getPath(from: Component, to: Component): Seq[Component]
- Definition Classes
- NameableByComponent
-
def
getRefOwnersChain(): List[Any]
- Definition Classes
- OwnableRef
-
def
getScalaLocationLong: String
- Definition Classes
- ScalaLocated
-
def
getScalaLocationShort: String
- Definition Classes
- ScalaLocated
-
def
getScalaTrace(): Throwable
- Definition Classes
- ScalaLocated
-
val
globalData: GlobalData
- Definition Classes
- GlobalDataUser
-
def
haltIt()(implicit loc: Location): Unit
Same as haltWhen() but for use in
when
blockSame as haltWhen() but for use in
when
block- Definition Classes
- CtrlApi
-
def
haltWhen(cond: Bool)(implicit loc: Location): Bool
Block the current transaction when
True
(clearup.ready
anddown.valid
)Block the current transaction when
True
(clearup.ready
anddown.valid
)- Definition Classes
- CtrlApi
-
def
hashCode(): Int
- Definition Classes
- OverridedEqualsHashCode → AnyRef → Any
-
def
ignoreReadyNow()(implicit loc: Location): Unit
Same as ignoreReadyWhen() but for use in
when
blockSame as ignoreReadyWhen() but for use in
when
block- Definition Classes
- CtrlApi
-
def
ignoreReadyWhen(cond: Bool)(implicit loc: Location): Bool
Ignore the downstream ready when
True
(setup.ready
)Ignore the downstream ready when
True
(setup.ready
)- Definition Classes
- CtrlApi
-
def
insert[T <: Data](that: T): Payload[T]
Same as
Link.down.insert(Data)
Same as
Link.down.insert(Data)
- Definition Classes
- CtrlApi
-
def
isCompletelyUnnamed: Boolean
- Definition Classes
- Nameable
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
isNamed: Boolean
- Definition Classes
- Nameable
-
def
isPriorityApplicable(namePriority: Byte): Boolean
- Definition Classes
- Nameable
-
def
isReady: Bool
- Definition Classes
- CtrlApi
-
def
isUnnamed: Boolean
- Definition Classes
- NameableByComponent → Nameable
-
def
isValid: Bool
- Definition Classes
- CtrlApi
-
val
name: String
- Definition Classes
- Nameable
- def nameFromLocation[T <: Data](that: T, prefix: String)(implicit loc: Location): T
- val nameableRef: Nameable
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
nodeSetup(): Unit
- Definition Classes
- Link
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def or(a: Option[Bool], b: Seq[Bool]): Option[Bool]
-
def
overrideLocalName(name: String): CtrlLink.this.type
- Definition Classes
- Nameable
-
val
parentScope: ScopeStatement
- Definition Classes
- ContextUser
- def propagateDown(): Unit
-
def
propagateDownAll(): Unit
- Definition Classes
- Link
- def propagateUp(): Unit
-
def
propagateUpAll(): Unit
- Definition Classes
- Link
-
val
refOwner: RefOwnerType
- Definition Classes
- OwnableRef
- Annotations
- @DontName()
-
def
reflectNames(): Unit
- Definition Classes
- Nameable
- val requests: AnyRef { ... /* 8 definitions in type refinement */ }
-
def
rework[T](body: ⇒ T): T
- Definition Classes
- Area
-
val
scalaTrace: Throwable
- Definition Classes
- ScalaLocated
-
def
setCompositeName(nameable: Nameable, postfix: String, namePriority: Byte): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String, weak: Boolean): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, postfix: String): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, namePriority: Byte): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable, weak: Boolean): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setCompositeName(nameable: Nameable): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setLambdaName(isNameBody: ⇒ Boolean)(nameGen: ⇒ String): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, namePriority: Byte): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setName(name: String, weak: Boolean): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setName(name: String): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setNameAsWeak(): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte, owner: Any): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, namePriority: Byte): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String, weak: Boolean): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, namePriority: Byte): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String, weak: Boolean): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(name: String): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable, name: String): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setPartialName(owner: Nameable): CtrlLink.this.type
- Definition Classes
- Nameable
-
def
setRefOwner(that: Any): Unit
- Definition Classes
- OwnableRef
-
def
setScalaLocated(source: ScalaLocated): CtrlLink.this.type
- Definition Classes
- ScalaLocated
-
def
setWeakName(name: String): CtrlLink.this.type
- Definition Classes
- Nameable
-
implicit
def
stageablePiped2[T <: Data](stageable: Payload[T]): T
- Definition Classes
- CtrlApi
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
terminateIt()(implicit loc: Location): Unit
Same as terminateWhen() but for use in
when
blockSame as terminateWhen() but for use in
when
block- Definition Classes
- CtrlApi
-
def
terminateWhen(cond: Bool)(implicit loc: Location): Bool
Hide the current transaction from downstream when
True
(cleardown.valid
)Hide the current transaction from downstream when
True
(cleardown.valid
)- Definition Classes
- CtrlApi
-
def
throwIt(usingReady: Boolean = false)(implicit loc: Location): Unit
Same as throwWhen() but for use in
when
blockSame as throwWhen() but for use in
when
block- Definition Classes
- CtrlApi
-
def
throwWhen(cond: Bool, usingReady: Boolean = false)(implicit loc: Location): Unit
Cancel the current transaction from the pipeline when
True
.Cancel the current transaction from the pipeline when
True
.It clear
down.valid
and make the transaction driver forget its current state.- Definition Classes
- CtrlApi
- def toString(): String
-
def
unsetName(): CtrlLink.this.type
- Definition Classes
- Nameable
- val up: Node
- def ups: Seq[Node]
-
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(obj: Any, name: String): Unit
- Definition Classes
- Area → ValCallbackRec
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated