The active FEC code-rate and frame-size are defined by the mod_cod and type parameters associated with each TS packet (or input-frame) and are controlled through the external mode control ports, or optionally from a control register for CCM applications. The design has been optimized to provide excellent performance in FPGA devices. A description of the processing steps follows: TS Processing. The TS processing block performs rate adaptation functions in CCM Broadcast applications to ensure that variable transmission delays do not result in disturbances of time-critical services such as audio and video. Null packet deletion. The Null packet deletion block removes null TS packets from the input stream to maximize the capacity available for information services in VCM and ACM modes. The mechanism defined by DVB-S2 allows for complete restoration of the input stream when null packets are necessary to maintain a constant delay. CRC-8 Encoding. An 8-bit CRC is added to each outgoing TS packet and serves to allow packet-level error detection at the receiver. Slicer. The slicer block assembles each output BBFRAME from an integer number of TS packets. Padding may be used at the end of the BBFRAME if the number of bits is not exactly an integer number of TS packets. In VCM/ACM applications a new BBFRAME is initiated whenever the MOD COD or TYPE is modified. If this occurs before the end of an outgoing BBFRAME then the outgoing frame is padded. Baseband Signalling. The baseband signaling block inserts a fixed-length Baseband Header at the start of each BBFRAME. The structure of the Baseband Header is as described in EN 302 307. Baseband Scrambler. The baseband scrambler block performs the energy dispersal and transport multiplex adaptation using the DVB randomization polynomial 1+x14+x15. BCH, LDPC Encoders. These blocks systematically encode each frame and apply error correction. Bit Interleaver, Mapping. The bit interleaver block applies a block-based bit interleaving to the coded frame prior to symbol mapping. PL Framing. This block constructs the physical layer framing around the encoded frame data together with the physical-layer header. The PL Framing block is also responsible for intra-pilot insertion together with dummy-frame generation A(PSK) Modulation. This block generates the complex constellation points from the mapped symbol data. Rate Conversion. This block re-samples the complex samples output from the A(PSK) Modulation block at symbol-rate into complex samples at the core clock frequency. This provides an ultra-flexible clocking strategy allowing the core to operate from low symbol-rates up to a maximum of half the core clock frequency.