4G Turbo-V Intel® FPGA IP User Guide

ID 683882
Date 4/01/2024
Public
Document Table of Contents

4.2.3. Latency Calculations

The overall latency of the uplink accelerator is the sum of the latency of the subblock deinterleaver, the turbo decoder and the output. The IP reads and stores the input data into decoder’s input buffer, with de-interleaved memory write address.

The latency of the subblock deinterleaver is

L(subblock-deinterleaver) = Kπ+14.

Where this latency is measured from sink_sop to the time of the decoder starts to decode, when the IP was idle. The latency of turbo decoder depends on the block size (K), the number of full decoding iterations (I) to perform as follows

L(decoder) = 26 + (2 × f(K,Ndec) + 14) × 2 × I, when f(K, Ndec) <= 32

26 + (f(K, Ndec) + 46) × 2 × I, when f(K, Ndec) > 32

Where: I is the number of full decoding iterations and K is the block size.

f(K, Ndec) = K/4, if K <= 128;

K/8, if 128 < K <= 512;

K/16, otherwise.

L(output) = ceil(K/16) + 3

Example 1: K = 6144, I = 8, Kπ= 6176

L(deinterleaver) = 6176+14 = 6190 cycles

L(decoder) = 26 + (6144/16 + 46) × 2 × 8 = 6906 cycles

L(output) = ceil(6144/16)+3 = 387 cycles

L(uplink) = 6190 + 6906 + 387 = 13483 cycles

Example 2: K = 40, I = 8, Kπ= 64

L(deinterleaver) = 64+14 = 78 cycles

L(decoder) = 26 + (2*40/4 + 14) × 2 × 8 = 570 cycles

L(output) = ceil(40/16)+3 = 6 cycles

L(uplink) = 78 + 570 + 6 = 654 cycles