PlusArgsRetBundle
Attributes
- Source
- PlusArgsValue.scala
- Graph
-
- Supertypes
-
class Bundleclass Recordtrait Selectabletrait Aggregateclass Datatrait InstanceIdclass Objecttrait Matchableclass AnyShow all
Members list
Grouped members
connection
The "strong connect" operator.
The "strong connect" operator.
For chisel3._, this operator is mono-directioned; all sub-elements of this will be driven by sub-elements of that.
- Equivalent to
this :#= that
For Chisel._, this operator connections bi-directionally via emitting the FIRRTL.<=
- Equivalent to
this :<>= that
Value parameters
- that
-
the Data to connect from
Attributes
- Inherited from:
- Data
- Source
- Data.scala
The "bulk connect operator", assigning elements in this Vec from elements in a Vec.
The "bulk connect operator", assigning elements in this Vec from elements in a Vec.
For chisel3._, uses the chisel3.internal.BiConnect algorithm; sub-elements of thatmay end up driving sub-elements ofthis`
- Complicated semantics, hard to write quickly, will likely be deprecated in the future
For Chisel._, emits the FIRRTL.<- operator
- Equivalent to
this :<>= thatwithout the restrictions that bundle field names and vector sizes must match
Value parameters
- that
-
the Data to connect from
Attributes
- Inherited from:
- Data
- Source
- Data.scala
Value members
Inherited methods
Implementation of cloneType that is [optionally for Record] overridden by the compiler plugin
Implementation of cloneType that is [optionally for Record] overridden by the compiler plugin
Attributes
- Note
-
This should never be overridden or called in user-code
- Inherited from:
- Record
- Source
- Aggregate.scala
This method is implemented by the compiler plugin
This method is implemented by the compiler plugin
Attributes
- Note
-
For some reason, the Scala compiler errors on child classes if this method is made virtual. It appears that the way the plugin implements this method is insufficient for implementing virtual methods. It is probably better kept concrete for future refactoring.
- Inherited from:
- Bundle
- Source
- Aggregate.scala
Return a value of this type from a UInt type. Internal implementation for asTypeOf.
Return a value of this type from a UInt type. Internal implementation for asTypeOf.
Protected so that it can be implemented by the external FixedPoint library
Attributes
- Definition Classes
- Inherited from:
- Aggregate
- Source
- Aggregate.scala
The list of parameter accessors used in the constructor of this chisel3.Record.
The list of parameter accessors used in the constructor of this chisel3.Record.
Attributes
- Note
-
This is automatically overridden via the compiler plugin for user-defined bundles that mix-in chisel3.experimental.HasAutoTypename, and is meant for internal Chisel use only. Can not be manually overridden by users, or else an error will be thrown.
This lives in Record rather than the chisel3.experimental.HasAutoTypename trait, due to compiler implementation details preventing us from overriding a definition within a trait via the compiler plugin
- Inherited from:
- Record
- Source
- Aggregate.scala
Indicates if a concrete Bundle class was compiled using the compiler plugin
Indicates if a concrete Bundle class was compiled using the compiler plugin
Used for optimizing Chisel's performance and testing Chisel itself
Attributes
- Note
-
This should not be used in user code!
- Inherited from:
- Bundle
- Source
- Aggregate.scala
Does a reinterpret cast of the bits in this node into the format that provides. Returns a new Wire of that type. Does not modify existing nodes.
Does a reinterpret cast of the bits in this node into the format that provides. Returns a new Wire of that type. Does not modify existing nodes.
x.asTypeOf(that) performs the inverse operation of x := that.toBits.
Attributes
- Note
-
bit widths are NOT checked, may pad or drop bits from input
that should have known widths
- Inherited from:
- DataIntf (hidden)
- Source
- DataIntf.scala
Reinterpret cast to UInt.
Reinterpret cast to UInt.
Attributes
- Note
-
value not guaranteed to be preserved: for example, a SInt of width 3 and value -1 (0b111) would become an UInt with value 7
Aggregates are recursively packed with the first element appearing in the least-significant bits of the result.
- Inherited from:
- DataIntf (hidden)
- Source
- DataIntf.scala
Takes the last seed suggested. Multiple calls to this function will take the last given seed, unless this HasId is a module port (see overridden method in Data.scala).
Takes the last seed suggested. Multiple calls to this function will take the last given seed, unless this HasId is a module port (see overridden method in Data.scala).
If the final computed name conflicts with the final name of another signal, the final name may get uniquified by appending a digit at the end of the name.
Is a lower priority than suggestName, in that regardless of whether autoSeed was called, suggestName will always take precedence if it was called.
Value parameters
- seed
-
Seed for the name of this component
Attributes
- Returns
-
this object
- Definition Classes
-
Data -> HasId
- Inherited from:
- Data
- Source
- Data.scala
Attributes
- Inherited from:
- Aggregate
- Source
- Aggregate.scala
Name for Pretty Printing
Name for Pretty Printing
Attributes
- Definition Classes
- Inherited from:
- Bundle
- Source
- Aggregate.scala
Internal API; Chisel users should look at chisel3.chiselTypeOf(...).
Internal API; Chisel users should look at chisel3.chiselTypeOf(...).
cloneType must be defined for any Chisel object extending Data. It is responsible for constructing a basic copy of the object being cloned.
Attributes
- Returns
-
a copy of the object.
- Definition Classes
- Inherited from:
- Record
- Source
- Aggregate.scala
Attributes
- Definition Classes
- Inherited from:
- Record
- Source
- Aggregate.scala
Compares the receiver object (this) with the argument object (that) for equivalence.
Compares the receiver object (this) with the argument object (that) for equivalence.
Any implementation of this method should be an equivalence relation:
- It is reflexive: for any instance
xof typeAny,x.equals(x)should returntrue. - It is symmetric: for any instances
xandyof typeAny,x.equals(y)should returntrueif and only ify.equals(x)returnstrue. - It is transitive: for any instances
x,y, andzof typeAnyifx.equals(y)returnstrueandy.equals(z)returnstrue, thenx.equals(z)should returntrue.
If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is usually necessary to override hashCode to ensure that objects which are "equal" (o1.equals(o2) returns true) hash to the same scala.Int. (o1.hashCode.equals(o2.hashCode)).
Value parameters
- that
-
the object to compare against this object for equality.
Attributes
- Returns
-
trueif the receiver object is equivalent to the argument;falseotherwise. - Definition Classes
-
HasId -> Any
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Returns a Seq of the immediate contents of this Aggregate, in order.
Returns a Seq of the immediate contents of this Aggregate, in order.
Attributes
- Definition Classes
- Inherited from:
- Record
- Source
- Aggregate.scala
Returns the width, in bits, if currently known.
Attributes
- Returns
-
Whether either autoName or suggestName has been called
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Calculates a hash code value for the object.
Calculates a hash code value for the object.
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.
Attributes
- Returns
-
the hash code value for this object.
- Definition Classes
-
HasId -> Any
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Overridden by IgnoreSeqInBundle to allow arbitrary Seqs of Chisel elements.
Overridden by IgnoreSeqInBundle to allow arbitrary Seqs of Chisel elements.
Attributes
- Inherited from:
- Bundle
- Source
- Aggregate.scala
Attributes
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Attributes
- Inherited from:
- Data
- Source
- Data.scala
Returns whether the width is currently known.
Return an Aggregate's literal value if it is a literal, None otherwise. If any element of the aggregate is not a literal (or DontCare), the result isn't a literal.
Return an Aggregate's literal value if it is a literal, None otherwise. If any element of the aggregate is not a literal (or DontCare), the result isn't a literal.
Attributes
- Returns
-
an Aggregate's literal value if it is a literal, None otherwise.
- Note
- Definition Classes
- Inherited from:
- Aggregate
- Source
- Aggregate.scala
Return an Aggregate's literal value if it is a literal, otherwise an exception is thrown. If any element of the aggregate is not a literal with a defined width, the result isn't a literal.
Return an Aggregate's literal value if it is a literal, otherwise an exception is thrown. If any element of the aggregate is not a literal with a defined width, the result isn't a literal.
Attributes
- Returns
-
an Aggregate's literal value if it is a literal, exception otherwise.
- Definition Classes
- Inherited from:
- Aggregate
- Source
- Aggregate.scala
Attributes
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Attributes
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Attributes
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Takes the first seed suggested. Multiple calls to this function will be ignored. If the final computed name conflicts with another name, it may get uniquified by appending a digit at the end.
Takes the first seed suggested. Multiple calls to this function will be ignored. If the final computed name conflicts with another name, it may get uniquified by appending a digit at the end.
Is a higher priority than autoSeed, in that regardless of whether autoSeed was called, suggestName will always take precedence.
Value parameters
- seed
-
The seed for the name of this component
Attributes
- Returns
-
this object
- Inherited from:
- HasId (hidden)
- Source
- Builder.scala
Returns a FIRRTL IsMember that refers to the absolute path to this object in the elaborated hardware graph
Returns a FIRRTL IsMember that refers to the absolute path to this object in the elaborated hardware graph
Attributes
- Inherited from:
- NamedComponent (hidden)
- Source
- Builder.scala
Returns a FIRRTL ComponentName that references this object
Returns a FIRRTL ComponentName that references this object
Attributes
- Note
-
Should not be called until circuit elaboration is complete
- Inherited from:
- NamedComponent (hidden)
- Source
- Builder.scala
Default "pretty-print" implementation Analogous to printing a Map Results in "Bundle(elt0.name -> elt0.value, ...)"
Default "pretty-print" implementation Analogous to printing a Map Results in "Bundle(elt0.name -> elt0.value, ...)"
Attributes
- Note
-
The order is reversed from the order of elements in order to print the fields in the order they were defined
- Definition Classes
- Inherited from:
- Bundle
- Source
- Aggregate.scala
Returns a FIRRTL ReferenceTarget that references this object, relative to an optional root.
Returns a FIRRTL ReferenceTarget that references this object, relative to an optional root.
If root is defined, the target is a hierarchical path starting from root.
If root is not defined, the target is a hierarchical path equivalent to toAbsoluteTarget.
Attributes
- Note
-
If
rootis defined, and has not finished elaboration, this must be called withinatModuleBodyEnd.The NamedComponent must be a descendant of
root, if it is defined.This doesn't have special handling for Views.
- Inherited from:
- NamedComponent (hidden)
- Source
- Builder.scala
Returns a FIRRTL ReferenceTarget that references this object, relative to an optional root.
Returns a FIRRTL ReferenceTarget that references this object, relative to an optional root.
If root is defined, the target is a hierarchical path starting from root.
If root is not defined, the target is a hierarchical path equivalent to toAbsoluteTarget.
Attributes
- Note
-
If
rootis defined, and has not finished elaboration, this must be called withinatModuleBodyEnd.The NamedComponent must be a descendant of
root, if it is defined.This doesn't have special handling for Views.
- Inherited from:
- NamedComponent (hidden)
- Source
- Builder.scala
The collection of chisel3.Data
The collection of chisel3.Data
This underlying datastructure is a ListMap because the elements must remain ordered for serialization/deserialization. Elements added later are higher order when serialized (this is similar to Vec). For example:
// Assume we have some type MyRecord that creates a Record from the ListMap
val record = MyRecord(ListMap("fizz" -> UInt(16.W), "buzz" -> UInt(16.W)))
// "buzz" is higher order because it was added later than "fizz"
record("fizz") := "hdead".U
record("buzz") := "hbeef".U
val uint = record.asUInt
assert(uint === "hbeefdead".U) // This will pass
Attributes
- Definition Classes
-
Record -> Any
- Inherited from:
- Record
- Source
- Aggregate.scala
Returns a FIRRTL ReferenceTarget that references this object
Returns a FIRRTL ReferenceTarget that references this object
Attributes
- Note
-
Should not be called until circuit elaboration is complete
- Inherited from:
- NamedComponent (hidden)
- Source
- Builder.scala
A non-ambiguous name of this Data for use in generated Verilog names
A non-ambiguous name of this Data for use in generated Verilog names
Attributes
- Inherited from:
- Data
- Source
- Data.scala
Returns Some(width) if the width is known, else None.
Returns Some(width) if the width is known, else None.
Attributes
- Inherited from:
- Data
- Source
- Data.scala
Inherited fields
The collection of Data
The collection of Data
Elements defined earlier in the Bundle are higher order upon serialization. For example:
Attributes
- Example
-
class MyBundle extends Bundle { val foo = UInt(16.W) val bar = UInt(16.W) } // Note that foo is higher order because its defined earlier in the Bundle val bundle = Wire(new MyBundle) bundle.foo := 0x1234.U bundle.bar := 0x5678.U val uint = bundle.asUInt assert(uint === "h12345678".U) // This will pass - Inherited from:
- Bundle
- Source
- Aggregate.scala