Py4Hw User Guide> 8.1 Currently supported Blocks¶

The following table is a list of the currently supported blocks. All blocks are implemented as classes. We add the file where the block is implemented

Block Source Type Description
Add logic/arithmetic Combinational Integer Add
And logic/bitwise Combinational And with arbitrary number of inputs
And2 logic/bitwise Combinational And with 2 inputs
AnyEqual logic/relational Combinational Active when there is any equal value among the inputs
BinaryToBCD logic/arithmetic Combinational Converts a binary number into BCD
Bit logic/bitwise Combinational Obtain a specific bit from a wire
BitsLSBF logic/bitwise Combinational Obtain the list of all bits from a wire in least significant bit first order
BitsMSBF logic/bitwise Combinational Obtain the list of all bits from a wire in most significant bit first order
Buf logic/bitwise Combinational Buffer (input=output)
ClockDivider logic/clock Sequential Generates a clock with a lower frequency that is a fraction of the frequency of the current clock
Comparator logic/relational Combinational Compares 2 inputs, detects gt, eq, lt
ConcatenateLSBF logic/bitwise Combinational Concatenates wires in least significant bit first order
ConcatenateMSBF logic/bitwise Combinational Concatenates wires in most significant bit first order
Constant logic/bitwise Combinational Constant value
Counter logic/arithmetic Sequential Counter with reset and enable
Decoder logic/bitwise Combinational Decoder. It converts a (n-bits) value to its one-hot encoding (2^n bits)
Demux logic/bitwise Combinational Demux. It routes an input value depending on a n-bit selector to one of the 2^n outputs
Digit7Segment logic/bitwise Combinational Converts an hexadecimal digit (4 bits) into a 7 segment display control
EqualConstant logic/relational Combinational Equal to a constant
Equal logic/relational Combinational Equal between 2 inputs
FPAdder_SP logic/arithmetic_fp Combinational Floating point (single precission) adder
FPComparator_SP logic/relational Combinational Floating point (single precission) comparator
FPMult_SP logic/arithmetic_fp Combinational Floating point (single precission) multiplier
FPtoInt_SP logic/arithmetic_fp Combinational Convert a floating point number to integer
GatedClock logic/clock Sequential Gated clock circuit
InttoFP_SP logit/arithmetic_fp Combinational Convert an integer to floating point
ModuloCounter logic/arithmetic Sequential Module counter with reset and enable
Max2 logic/relational Combinational Returns the maximum between 2 inputs
Minterm logic/bitwise Combinational Output is active when the list of input wires equal a constant
Mul logic/arithmetic Combinational Integer Multiply
Mux logic/bitwise Combinational Mux with with arbitrary number of inputs (must be power of 2)
Mux2 logic/bitwise Combinational Mux with two inputs
Nand2 logic/bitwise Combinational Nand with 2 inputs
Neg logic/arithmetic Combinational Negate a value (0-x)
Nor logic/bitwise Combinational Nor with arbitrary number of inputs
Nor2 logic/bitwise Combinational Nor with 2 inputs
Not logic/bitwise Combinational Inverter
OneHotDemux logic/bitwise Combinational Demultiplexer with a selection signal using one-hot encoding
OneHotMux logic/bitwise Combinational Multiplexer with a selection signal using one-hot encoding
Or logic/bitwise Combinational Or with arbitrary number of inputs
OrBits logic/bitwise Combinational Ors all the bits of a wire
Or2 logic/bitwise Combinational Or with 2 inputs
Range logic/bitwise Combinational Obtains a subset of bits from a wire
Reg logic/storage Sequential Register
Repeat logic/bitwise Combinational Duplicates a wire a number of times
RotateLeft logic/arithmetic Combinational Rotate Left
RotateLeftConstant logic/bitwise Combinational Rotate Left by a constant value
RotateRight logic/arithmetic Combinational Rotate Right
RotateRightConstant logic/bitwise Combinational Rotate Right by a constant value
ShiftLeft logic/arithmetic Combinational Shift Left
ShiftLeftConstant logic/bitwise Combinational Shift Left by a constant value
ShiftRight logic/arithmetic Combinational Shift Right
ShiftRightConstant logic/bitwise Combinational Shift Right by a constant value
Select logic/bitwise Combinational Selects from a number of inputs based on a one hot selection signal (equal to OneHotMux)
SelectDefault logic/bitwise Combinational Selects from a number of inputs based on a one hot selection signal, with a default entry
Sequence logic/simulation Sequential Generates sequence of values as stimuli for simulation
Sign logic/arithmetic Combinational Gets the sign bit (MSB)
SignedDiv logic/arithmetic Combinational Divides signed values
SignedMul logic/arithmetic Combinational Multiplies signed values
SignedSub logic/arithmetic Combinational Subtract signed values
SignExtend logic/arithmetic Combinational Sign extends
Sub logic/arithmetic Combinational Integer Subtract
SumOfMinterms logic/bitwise Combinational Sum of minterms
TReg logic/storage Sequential Toggle register
Waveform logic/simulation Sequential Collects wire info to create waveforms
Xor2 logic/bitwise Combinational Xor with 2 inputs
Xor logic/bitwise Combinational Xor with arbitrary number of inputs
ZeroExtend logic/arithmetic Combinational Zero extends
Scope logic/simulation Sequential Collects wire info to show values
In [ ]: