5.8.6.18 4:2:2 To 4:2:0 Chrominance Vertical Subsampler (SUB420) Module

The chrominance subsampling divides the vertical chrominance sampling rate by two. A vertical low pass filter is applied to avoid aliasing effect. Two different filters are used when the source frame is interlaced, and the filter configuration depends on the field value (the field is propagated in the video pipeline).

Figure 5-108. SUB420 Block Diagram

The SUB420 module samples the sub422_data[39:0] 40-bit data when sub422_valid is asserted, then it performs a vertical subsampling and generates a valid sub420_data[39:0] 40-bit word and the corresponding sub420_valid signal.

ISC_CFA_CTRL.ENABLESUB420_DATA SliceValue
0sub420_data[39:0]sub422_data[39:0]
1sub420_data[39:30]Y1 = sub422_data[39:30]
sub420_data[29:20]Y0 = sub422_data[29:20]
sub420_data[19:10]Cb = filter_ver(sub422[19:10])
sub420_data[9:0]Cr = filter_ver(sub422[9:0])

The vertical filter is a two-tap filter; for progressive content the coefficient i {1, 1}. When an interlaced field is downsampled, the coefficients are different between the top and the bottom fields.

Figure 5-109. Vertical Chrominance Filter for Progressive Content (Cosited Chrominance Example)
Figure 5-110. Field-dependent Chrominance Filter for Interlaced Content (Cosited Chrominance Example)
Table 5-168. Filter Configuration
ISC_SUB420_CTRL.FILTERFieldFilter Configuration
0progressive{1, 1}
10 (TOP){3, 1}
1 (BOTTOM){1, 3}
Table 5-169. Output Line Length Configuration
SUB420 Input Number of RowsSUB420 Luminance RowsSUB420 Chrominance Rows
M rows, M oddM rows(M+1)/2 rows
M rows, M evenM rowsM/2 rows