ADV7324
When the manual RGB matrix adjust feature is enabled, the
default values in Registers 0x05 to 0x09 are correct for HDTV
color space only. The color components are converted
according to the 1080i and 720p standards (SMPTE 274M,
SMPTE 296M):
Rev. 0 | Page 50 of 92
R
=
Y
+ 1.575
Pr
G
=
Y
0.468
Pr
0.187
Pb
B
=
Y
+ 1.855
Pb
This is reflected in the preprogrammed values GY = 0x13B,
GU = 0x3B, GV = 0x93, BU = 0x248, and RV = 0x1F0.
If the RGB matrix is enabled and another input standard (such
as SD or PS) is used, the scale values for GY, GU, GV, BU, and
RV must be adjusted according to this input standard color
space. The user should consider that the color component
conversion might use different scale values. For example,
SMPTE 293M uses the following equations for conversion:
R
=
Y
+ 1.402
Pr
G
=
Y
– 0.714
Pr
– 0.344
Pb
B
=
Y
+ 1.773
Pb
The manual RGB matrix adjust feature can be used to control
the HD output levels in cases where the video output does not
conform to the standard due to altering the DAC output stages
such as termination resistors. The programmable RGB matrix is
used for external HD/PS data and is not functional when internal
test patterns are enabled. To adjust Registers 0x05 to 0x09, the
manual RGB matrix adjust must be enabled [Register 0x02,
Bit 3 = 1].
Programming the RGB Matrix
If custom manipulation of coefficients is required, enable the
RGB matrix in Address 0x02, Bit 3, set the output to RGB
[Address 0x02, Bit 5], and disable sync on PrPb (default)
[Address 0x15, Bit 2]. Enabling sync on RGB is optional
[Address 0x02, Bit 4].
GY at Address 0x03 and Address 0x05 controls the green signal
output levels. BU at Address 0x04 and Address 0x08 controls
the blue signal output levels, and RV at Address 0x04 and
Address 0x09 controls the red signal output levels. To control
YPrPb output levels, enable the YUV output [Address 0x02, Bit 5].
In this case, GY [Address 0x05; Address 0x03, Bit 0 and Bit 1] is
used for the Y output, RV [Address 0x09; Address 0x04, Bit 0
and Bit 1] is used for the Pr output, and BU [Address 0x08;
Address 0x04, Bit 2 and Bit 3] is used for the Pb output.
If RGB output is selected, the RGB matrix scaler uses the
following equations:
G
=
GY
×
Y
+
GU
×
Pb
+
GV
×
Pr
B
=
GY
×
Y
+
BU
×
Pb
R
=
GY
×
Y
+
RV
×
Pr
If YPrPb output is selected, the following equations are used:
Y
=
GY
×
Y
U
=
BU
×
Pb
V
=
RV
×
Pr
Upon power-up, the RGB matrix is programmed with the
default values listed in Table 31.
Table 31. RGB Matrix Default Values
Address
0x03
0x04
0x05
0x06
0x07
0x08
0x09
Default
0x03
0xF0
0x4E
0x0E
0x24
0x92
0x7C
When the manual RGB matrix adjust feature is not enabled, the
ADV7324 automatically scales YCrCb inputs to all standards
supported by this part, as selected by the input mode,
Register 0x01 [6:4].
SD Luma and Color Control
[Subaddresses 0x5C, 0x5D, 0x5E, 0x5F]
SD Y Scale, SD Cr Scale, and SD Cb Scale are three 10-bit-wide
control registers that scale the Y, Cb, and Cr output levels.
Each of these registers represents the value required to scale the
Cb or Cr level from 0.0 to 2.0 and the Y level from 0.0 to 1.5 of
its initial level. The value of these 10 bits is calculated using the
following equation:
Y, Cr, or Cb Scalar Value
=
Scale Factor
× 512
For example,
Scale Factor
= 1.18
Y, Cb, or Cr Scale Value
= 1.18 × 512 = 665.6
Y, Cb, or Cr Scale Value
= 665
(
rounded to the nearest
integer
)
Y, Cb, or Cr Scale Value
= 1010 0110 01b