dfhdl.compiler.stages
Members list
Type members
Classlikes
This stage adds clock and reset ports across the entire design. For each design, clock and reset ports are added once per unique domain configuration.
This stage adds clock and reset ports across the entire design. For each design, clock and reset ports are added once per unique domain configuration.
Attributes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
CompiledDesign.type
This connects clock and reset ports across the entire design
This connects clock and reset ports across the entire design
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ConnectClkRst.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
DFHDLUniqueNames.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass DropLocalDclsclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
DropCondDcls.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
DropDesignDefs.type
Attributes
- Companion
- object
- Supertypes
-
class Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object DropCondDclsobject DropLocalDcls
Attributes
- Companion
- class
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass DropLocalDclsclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
DropLocalDcls.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
DropUnreferencedVars.type
This stage converts a derived clock-reset configuration of RT designs/domains to explicit configurations.
This stage converts a derived clock-reset configuration of RT designs/domains to explicit configurations.
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ExplicitClkRstCfg.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ExplicitNamedVars.type
This stage propagates initialization values to the reg alias init value, and removes all declaration initializations.
This stage propagates initialization values to the reg alias init value, and removes all declaration initializations.
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ExplicitRegInits.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ExplicitState.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object given_HasDB_DB
This stage names register aliases (e.g., x.reg
) and replaces them with explicit register variables. The most complex mechanism about this stage is the naming conversion convention.
This stage names register aliases (e.g., x.reg
) and replaces them with explicit register variables. The most complex mechanism about this stage is the naming conversion convention.
- If
.reg
is applied on a named immutable valuex
or a mutated wire/port that is mutated only once, then that register variable will be namedx_reg
. If we have several register stages applied, then we create an enumeration. Sox.reg(2)
yieldsx_reg1
andx_reg2
. - If
.reg
is applied on a named mutable wirex
that is mutated more than once, then we treat every new.reg
application as a new version of x. In this case we get an enumeration of the version. E.g.:
val i = DFUInt(8) <> IN
val o = DFUInt(8) <> OUT
val x = DFUInt(8) <> VAR
x := i
o := x.reg //x_ver1_reg
x := i + 1
o := x.reg(2) //x_ver2_reg1, x_ver2_reg2
- If
.reg
is applied on an anonymous value, then extrapolate a name suggestion based on the destination variable. This is part of the destination, so it adds_part
suffix to the name of the destination. In case of several parts, we create an enumeration. E.g.:
val i = DFUInt(8) <> IN
val o = DFUInt(8) <> OUT
val z = DFUInt(8) <> OUT
o := (i + 1).reg //o_part_reg
z := ((i + 1).reg + 7).reg(2) //z_part1_reg, z_part2_reg1, z_part2_reg2
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
NameRegAliases.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
NamedAliases.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
NamedAnonMultiref.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
NamedSelection.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
OrderMembers.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
PrintCodeString.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
SanityCheck.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
SimpleOrderMembers.type
Attributes
- Supertypes
-
trait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
object VerilogBackendobject VHDLBackendobject AddClkRstobject ConnectClkRstobject DropBAssignFromSeqProcobject DropBindsobject DropDesignDefsclass DropLocalDclsobject DropCondDclsobject DropLocalDclsobject DropUnreferencedAnonsobject DropUnreferencedVarsobject ExplicitClkRstCfgobject ExplicitNamedVarsobject ExplicitRegInitsobject ExplicitStateobject NameRegAliasesobject PrintCodeStringobject SanityCheckobject ToEDobject ToRTobject UniqueDesignsobject VHDLProcToVerilogobject ViaConnectionShow all
Attributes
- Companion
- object
- Supertypes
-
trait LogSupporttrait LazyLoggertrait LoggingMethodstrait Serializableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
StageRunner.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
StagedDesign.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
UniqueDesigns.type
This stage transforms a sequential process from a VHDL style to Verilog style. E.g.,
This stage transforms a sequential process from a VHDL style to Verilog style. E.g.,
process(clk):
if (clk.rising)
....
is transformed into
process(clk.rising):
....
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
VHDLProcToVerilog.type
Attributes
- Supertypes
-
trait Singletontrait Producttrait Mirrorclass Stagetrait HasTypeNametrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
- Self type
-
ViaConnection.type