SPRUI30H November 2015 – May 2024 DRA745 , DRA746 , DRA750 , DRA756
Figure 30-10 shows how the FIFO is used in either a double or quad buffering scheme. The VCP modules generate a VCPXEVT synchronization event each time the nx1/4 of the buffer is empty, where (n =1, 2, 3, 4) or (n = 2, 4) depending on the value of VCP_VCPIC5[19:16] SYMX. The VCP_VCPIC5[19:16] SYMX bits define the buffer length as well as the VCPnXEVT event rate. The maximum allocatable size for the buffer in the input FIFO is 16 or 64-bit words. VCP_VCPIC5[19:16] SYMX defines the branch metric buffer length (minus one) to be transmitted to the VCP for each VCPnXEVT. Table 30-9 has the valid values for SYMX, along with the corresponding number of 64-bit transfers. If the number of 64 bit transfers is 16, then the double buffering scheme is used and VCPnXEVTs will be generated when half the FIFO is empty (either top or bottom half). If the number of 64-bit transfers is 8, then a quad buffering scheme is used and VCPnXEVTs will be generated as each quarter of the FIFO is emptied. The VCP version 2 only generates as many VCPXEVTs as needed to produce all the BMs required based on the SYMX value, Frame Length, and Rate. In other words, no potential excess VCPnXEVTs will be generated based on the FIFO being partially empty at the end of processing.
Code Rate | SYMX | Number of 64-bit Transfer |
---|---|---|
1/4 | 3 | 16 |
1/4 | 1 | 8 |
1/3 | 7 | 16 |
1/3 | 3 | 8 |
1/2 | 15 | 16 |
1/2 | 7 | 8 |