object Trace
The util that records the reference map from original Data/Module annotated in Chisel and final FIRRTL.
class Dut extends Module { val a = WireDefault(Bool()) Trace.traceName(a) } val annos = (new ChiselStage).execute(Seq(ChiselGeneratorAnnotation(() => new Dut))) val dut = annos.collectFirst { case DesignAnnotation(dut) => dut }.get.asInstanceOf[CollideModule] // get final reference of `a` Seq(ReferenceTarget("Dut", "Dut", Seq.empty, "a", Seq.empty)) val firrtlReferenceOfDutA = finalTarget(annos)(dut.a)
- Alphabetic
- By Inheritance
- Trace
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalTarget(annos: AnnotationSeq)(x: HasId): Seq[CompleteTarget]
Get
CompleteTarget
of the targetx
forannos
.Get
CompleteTarget
of the targetx
forannos
. This API can be used to find the final reference to a signal or module which is marked bytraceName
-
def
finalTargetMap(annos: AnnotationSeq): Map[CompleteTarget, Seq[CompleteTarget]]
Get all traced signal/module for
annos
This API can be used to gather all final reference to the signal or module which is marked bytraceName
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
traceName(x: Data): Unit
Trace a Data name.
Trace a Data name. This does NOT add "don't touch" semantics to the traced data. If you want this behavior, use an explicit chisel3.dontTouch.
-
def
traceName(x: RawModule): Unit
Trace a Instance name.
-
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
-
def
traceNameV2(x: Data): Unit
- Annotations
- @deprecated
- Deprecated
(Since version Chisel 3.6) switch to using 'traceName' as 'traceNameV2' has the same behavior of 'traceName' now
-
def
traceNameV2(x: RawModule): Unit
- Annotations
- @deprecated
- Deprecated
(Since version Chisel 3.6) switch to using 'traceName' as 'traceNameV2' has the same behavior of 'traceName' now