prga.netlist.net.common module¶
Common enums and abstract base class for nets.
-
class
prga.netlist.net.common.AbstractNet¶ Bases:
prga.util.Object,collections.abc.SequenceAbstract class for all nets and net references.
-
_auto_index(index)¶
-
is_clock¶ Test if this net is part of a clock network.
Type: bool
-
-
class
prga.netlist.net.common.AbstractNonReferenceNet¶ Bases:
prga.netlist.net.common.AbstractNetAbstract class for all non-reference nets.
-
is_sink¶ Test if this net can be driven by other nets.
Type: bool
-
is_source¶ Test if this net can be used as drivers of other nets.
Type: bool
-
-
class
prga.netlist.net.common.Concat(items)¶ Bases:
prga.netlist.net.common.AbstractNetA concatenation of slices and/or buses.
Parameters: items ( Sequence[AbstractNet]) – Items to be contenated togetherDirect instantiation of this class is not recommended. Use
NetUtils.concatinstead.-
is_clock¶ Test if this net is part of a clock network.
Type: bool
-
items¶
-
-
class
prga.netlist.net.common.Const(value=None, width=None)¶ Bases:
prga.netlist.net.common.AbstractNonReferenceNetConstant-value nets used as tie-high/low or unconnected status marker for sinks.
Parameters: - value (
int) – Value of this constant. UseNoneto represent “unconnected” - width (
int) – Number of bits in this net
-
_Const__singletons= {}¶
-
_value¶
-
_width¶
-
is_clock¶ Test if this net is part of a clock network.
Type: bool
-
is_sink¶ Test if this net can be driven by other nets.
Type: bool
-
is_source¶ Test if this net can be used as drivers of other nets.
Type: bool
-
value¶ Value of this constant net.
Type: int
- value (
-
class
prga.netlist.net.common.NetType¶ Bases:
prga.util.EnumEnum type for nets and net references.
-
bit= 3¶ one single bit in a bus
-
concat= 6¶ concatenations of buses and/or subsets
-
const= 0¶ constant-value nets
-
hierarchical= 4¶ hierarchical pin buses
-
is_reference¶ Test if this type is a reference.
Type: bool
-
pin= 2¶ pin (input/output of an instance in a module) buses
-
port= 1¶ port (input/output of a module) buses
-
slice_= 5¶ consecutive subsets (slices) of a bus
-
-
class
prga.netlist.net.common.PortDirection¶ Bases:
prga.util.EnumEnum type for port/pin directions.
-
input_= 0¶ input direction
-
opposite¶ The opposite of the this direction.
Returns: the enum value of the opposite direction. Return type: PortDirection
-
output= 1¶ output direction
-
-
class
prga.netlist.net.common.Slice(bus, range_)¶ Bases:
prga.netlist.net.common.AbstractNetReference to a consecutive subset of a bus.
Parameters: - bus (
AbstractNet) – The referenced bus - range (
slice) – Range of the bit(s) in the bus.
Do not directly instantiate this class. Index into the bus instead, e.g.
module.ports[0:4]-
bus¶
-
index¶ Index of the bit in the bus. Only valid when this object is a bit reference, i.e. length equals to 1.
Type: int
-
is_clock¶ Test if this net is part of a clock network.
Type: bool
-
range_¶
- bus (
-
class
prga.netlist.net.common.TimingArcType¶ Bases:
prga.util.EnumTiming arc types.
-
comb_bitwise= 0¶ combinational propagation delay of a bitwise timing arc
-
comb_matrix= 1¶ combinational propagation delay of an all-to-all timing arc
-
seq_end= 3¶ clock -> sequential endpoint(s), i.e., setup & hold
-
seq_start= 2¶ clock -> sequential startpoint(s), i.e., clk2q
-