ADV7390/ADV7391/ADV7392/ADV7393
Data Sheet
Rev. G | Page 56 of 108
The SD CSC matrix scalar uses the following equations:
Y = (a1 × R) + (a2 × G) + (a3 × B) + a4
Pr = (b1 × R) + (b2 × G) + (b3 × B) + b4
Pb = (c1 × R) + (c2 × G) + (c3 × B) + c4
The coefficients and their default values are located in the
Table 47. SD Manual CSC Matrix Default Values
Coefficient
Subaddress
Default
a1
0xBD
0x42
a2
0xBE
0x81
a3
0xBF
0x19
a4
0xC0
0x10
b1
0xC1
0x70
b2
0xC2
0x5E
b3
0xC3
0x12
b4
0xC4
0x80
c1
0xC5
0x26
c2
0xC6
0x4A
c3
0xC7
0x70
c4
0xC8
0x80
ED/HD Manual CSC Matrix Adjust Feature
The ED/HD manual CSC matrix adjust feature provides custom
coefficient manipulation for color space conversions and is used
in ED and HD modes only. The ED/HD manual CSC matrix
adjust feature can be enabled using Subaddress 0x02, Bit 3.
Normally, there is no need to enable this feature because the CSC
matrix automatically performs the color space conversion based
on the input mode chosen (ED or HD) and the output color
manual CSC matrix adjust feature is disabled by default.
If RGB output is selected, the ED/HD CSC matrix scalar uses
the following equations:
R = GY × Y + RV × Pr
G = GY × Y (GU × Pb) (GV × Pr)
B = GY × Y + BU × Pb
Note that subtractions are implemented in the hardware.
If YPrPb output is selected, the following equations are used:
Y = GY × Y
Pr = RV × Pr
Pb = BU × Pb
where:
GY = Subaddress 0x05, Bits[7:0] and Subaddress 0x03, Bits[1:0].
GU = Subaddress 0x06, Bits[7:0] and Subaddress 0x04, Bits[7:6].
GV = Subaddress 0x07, Bits[7:0] and Subaddress 0x04, Bits[5:4].
BU = Subaddress 0x08, Bits[7:0] and Subaddress 0x04, Bits[3:2].
RV = Subaddress 0x09, Bits[7:0] and Subaddress 0x04, Bits[1:0].
On power-up, the CSC matrix is programmed with the default
Table 48. ED/HD Manual CSC Matrix Default Values
Subaddress
Default
0x03
0x04
0xF0
0x05
0x4E
0x06
0x0E
0x07
0x24
0x08
0x92
0x09
0x7C
When the ED/HD manual CSC matrix adjust feature is
enabled, the default coefficient values in Subaddress 0x03
to Subaddress 0x09 are correct for the HD color space only.
The color components are converted according to the following
1080i and 720p standards (SMPTE 274M, SMPTE 296M):
R = Y + 1.575Pr
G = Y 0.468Pr 0.187Pb
B = Y + 1.855Pb
The conversion coefficients should be multiplied by 315 before
being written to the ED/HD CSC matrix registers. This is
reflected in the default values for GY = 0x13B, GU = 0x03B,
GV = 0x093, BU = 0x248, and RV = 0x1F0.
If the ED/HD manual CSC matrix adjust feature is enabled and
another input standard (such as ED) 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 may use different scale values.
For example, SMPTE 293M uses the following conversion:
R = Y + 1.402Pr
G = Y 0.714Pr 0.344Pb
B = Y + 1.773Pb
The programmable CSC matrix is used for external ED/HD
pixel data and is not functional when internal test patterns are
enabled.
Programming the CSC Matrix
If custom manipulation of the ED/HD CSC matrix coefficients
is required for a YCrCb-to-RGB color space conversion, use the
following procedure:
1. Enable the ED/HD manual CSC matrix adjust feature
(Subaddress 0x02, Bit 3).
2. Set the output to RGB (Subaddress 0x02, Bit 5).
3. Disable sync on PrPb (Subaddress 0x35, Bit 2).
4. Enable sync on RGB (optional) (Subaddress 0x02, Bit 4).
The GY value controls the green signal output level, the BU
value controls the blue signal output level, and the RV value
controls the red signal output level.