User Guide

1. Hardware Implementation
This section describes the different internal modules of the H.264 Encoder. Data input to the H.264 Encoder must
be in the form of a raster scan image in the YCbCr 422 format. H.264 Encoder uses 422 formats as input and
implements compression in 420 formats.
The following figure shows the H.264 Encoder block diagram.
Figure 1-1. H.264 Encoder - Modules
1.1 Intra Prediction
H.264 uses various intra-prediction modes to reduce the information in a 4 x 4 block. The intra-prediction block in the
IP uses only DC prediction on 4 x 4 matrix size. The DC component is computed from the adjacent top and left 4 x 4
blocks.
1.2 Integer Transform
H.264 uses integer discrete cosine transform where the coefficients are distributed across the integer transform
matrix and the quantization matrix such that there are no multiplications or divisions in the integer transform. The
integer transform stage implements the transformation using shift and add operations.
1.3 Quantization
The quantization multiplies each output of integer transform with a predetermined quantization value defined by the
QP user input value. The range of QP value is from 0 to 51. Any value more than 51 is clamped to 51. A lower QP
value denotes lower compression and higher quality and vice versa.
1.4 Motion Estimation
The Motion Estimation searches 8 x 8 block of the current frame in the 16 x 16 block of the previous frame and
generates motion vectors.
Hardware Implementation
© 2022 Microchip Technology Inc.
and its subsidiaries
User Guide
DS50003366B-page 5