HighThroughput HDL Algorithms
DSP HDL Toolbox™ provides algorithms to implement highbandwidth applications such as radar, SIGINT, and 5G FR2 wireless. To meet their bandwidth requirements, these applications need to process incoming data as multiple samples in parallel, or framebased processing. Framebased processing increases throughput by implementing the algorithm in parallel on each sample in the input vector. These implementations increase data throughput but use more hardware resources. The algorithms that support framebased processing accept and return column vector signals. Each element of the vector represents a sample in time. These algorithms use vector input and parallel operations to achieve gigasamplespersecond (GSPS) data rates, also called super sample rates.
This table also shows algorithms from Wireless HDL Toolbox™ that support framebased input and hardwareoptimized implementations.
Note
The table refers to ports and parameters of Simulink^{®} blocks. The DSP HDL Toolbox algorithms in this table are also available in the DSP HDL IP Designer app. In
the app, specify framebased input as a 3D matrix, like testbench.data =
reshape(dataIn,4,1,[])
. This matrix describes an input frame size of four
samples.
Blocks that Support FrameBased Input
Supported Block  Parameters to Enable Frame Input  Limitations 

FFT and IFFT  Connect a column vector to the input data port. The vector size must be a power of 2 between 1 and 64 and cannot be greater than the FFT length.  Framebased input is supported only when
Architecture is set to Streaming
Radix 2^2 . 
Channelizer and Channel Synthesizer  Connect a column vector to the input data port. The vector size must be a power of 2 between 1 and 64 and cannot be greater than the FFT length.  
Discrete FIR Filter  Connect a column vector to the input data port. The vector size must be less than or equal to 64.  You cannot use framebased input with the partly serial architecture, or with multichannel filters. 
Biquad Filter  Connect a column vector to the input data port. The input vector size can be up to 64 samples, but large vector sizes can make the calculation of internal datatypes challenging. Vector sizes of up to 16 samples are practical for hardware implementation.  Vector input is supported only when you set Filter
structure to Pipelined feedback
form . 
FIR Decimator  Connect a column vector to the input data port. The vector size must be less than or equal to 64 samples. 

FIR Interpolator  Connect a column vector to the input data port. The vector size must be less than or equal to 64 samples.  You cannot use framebased input with Minimum number of cycles between valid input samples greater than 1. 
CIC Decimator  Connect a column vector to the input data port. The input vector size can be up to 64 samples.  Vector input is not supported with programmable decimation rate. 
CIC Interpolator  Connect a column vector to the input data port. The input vector size can be up to 64 samples.  Vector input is not supported with programmable interpolation rate. 
NCO  Set the Samples per frame parameter to the desired output vector size.  
Complex to MagnitudeAngle  Connect a column vector to the input data port. The input vector size can be up to 64 samples.  
Upsampler  Connect a column vector to the input data port. The input vector size can be up to 64 samples.  
Downsampler  Connect a column vector to the input data port. The input vector size can be up to 64 samples.  
LMS Filter  Connect a column vector to the input data port. The vector size must be between 1 and 64 and must be less than the Filter length parameter value.  
Delay 
 
NR LDPC Encoder (Wireless HDL Toolbox)  Connect a column vector of 64 samples to the input data port. The pattern of input bits in the vector depends on the liftingSize, see Specifying Vector Input (Wireless HDL Toolbox).  
NR LDPC Decoder (Wireless HDL Toolbox)  Connect a column vector of 64 samples to the input data port. The pattern of input bits in the vector depends on the liftingSize, see Specifying Vector Input (Wireless HDL Toolbox).  
WLAN LDPC Decoder (Wireless HDL Toolbox)  Connect a column vector of 8 samples to the input data port.  
Puncturer (Wireless HDL Toolbox)  Connect a column vector of 2 to 7 samples to the input data port. If input is a vector, the size of the vector must match the Encoder rate parameter value.  
OFDM Modulator (Wireless HDL Toolbox)  Connect a column vector to the input data port. The vector size must be a power of 2 in the range from 1 to 64, and less than or equal to the FFT length. For more information on how to specify vector inputs, see Specifying Vector Input (Wireless HDL Toolbox).  
OFDM Demodulator (Wireless HDL Toolbox)  Connect a column vector to the input data port. The vector size must be a power of 2 in the range from 1 to 64, and less than or equal to the FFT length.  
LDPC Decoder (Wireless HDL Toolbox)  Connect a column vector to the input data port. The vector size must be factor of Block size parameter value.  
CCSDS LDPC Decoder (Wireless HDL Toolbox)  Connect an eightelement row vector to the input data port.  
APP Decoder (Wireless HDL Toolbox)  Connect a realvalued column vector to the input LLRc port. The vector size is the decoding rate in the range from 2 to 7. The input vector size depends on the code rate of the block, which is derived from the Code generator parameter value.  
LTE Convolutional Decoder (Wireless HDL Toolbox)  Connect a threeelement column vector to the input data port.  
LTE Turbo Decoder (Wireless HDL Toolbox)  Connect a threeelement integer vector to the input data port.  
Viterbi Decoder (Wireless HDL Toolbox)  Connect a column vector to the input data port. The vector size must be equal to the length of the generator polynomial.  
LTE CRC Encoder (Wireless HDL Toolbox)  Connect a binary row vector to the input data port. The vector size must be less than or equal to the length of the CRC polynomial and a factor of the CRC polynomial length.  
LTE CRC Decoder (Wireless HDL Toolbox)  Connect a binary row vector to the input data port. The vector size must be less than or equal to the length of the CRC polynomial and a factor of the CRC polynomial length.  
NR CRC Encoder (Wireless HDL Toolbox)  Connect a binary row vector to the input data port. The vector size must be less than or equal to the length of the CRC polynomial and a factor of the CRC polynomial length.  
NR CRC Decoder (Wireless HDL Toolbox)  Connect a binary row vector to the input data port. The vector size must be less than or equal to the length of the CRC polynomial and a factor of the CRC polynomial length. 