Main Content

Basic HDL Algorithms

Create simple HDL designs using basic Simulink® blocks

The HDL Coder block library contains many basic blocks that you can add to your Simulink modeling environment and develop your HDL algorithm. These blocks include input sources, output sinks, and blocks that perform basic to complex math and trigonometric operations.

To filter the Simulink Library Browser to show only HDL-supported blocks, enter hdllib. The blocks listed in this section include those blocks that are only available in the HDL Coder library. Blocks such as Add and Product are available in the Simulink library in the Library Browser.

For a filtered list of Simulink blocks supported for HDL code generation, see Simulink Block List (HDL Code Generation).


hdllibDisplay blocks that are compatible with HDL code generation


expand all

Bit ConcatConcatenates up to 128 input words into single output
Bit ReduceAND, OR, or XOR bit reduction on all input signal bits to single bit
Bit RotateRotate input signal by bit positions
Bit ShiftLogical or arithmetic shift of input signal
Bit SliceReturn field of consecutive bits from input signal
Bits to WordConvert vector of bits to integer
Word to BitsConverts real numbers to vector of bits
Sine HDL Optimized and Cosine HDL OptimizedImplement fixed-point sine and cosine wave by using lookup table approach optimized for HDL code generation
HDL CounterFree-running or count-limited hardware counter
Atan2Implement control signal based atan2 function
SinImplement control signal based sine function
CosImplement control signal based cosine function
Cos+jSinImplement control signal based Cos+jSin function
SinCosImplement control signal based sine and cosine function
rSqrtImplement control signal based reciprocal square-root function
SqrtImplement control signal based square root function
DivideImplement control signal based division operation
ReciprocalImplement control signal based reciprocal operation


Basic Modeling

Data Type Support