Csc Example - Analog Devices ADV7850 Hardware Manual

Fast switching 4:1 hdmi 1.4 receiver with 3d-comb decoder and digitizer
Table of Contents

Advertisement

3.
To support larger coefficients, the
4.
Determine the setting for
5.
Program the coefficient values. Convert the float point coefficients into 12-bit fixed decimal format. Convert into binary format,
using twos complement for negative values.
 Program A1 .. A3, B1 .. B3, C1 .. C3.
6.
Program the offset values. Depending on the type of CSC, offsets may have to be used.
 Program A4, B4, C4.

8.3.4.2 CSC Example

The following set of equations gives an example of a conversion from a gamma corrected RGB signal into a YCbCr color space signal.
A
[ 1
12
=
Out
_
A
In
_
A
4096
B
[ 1
12
=
Out
_
B
In
_
A
 
4096
C
[ 1
12
=
Out
_
C
In
_
A
 
4096
Note: The original equations give offset values of 128 for the Pr and Pb components. The value of 128 equates to half the range on an 8-bit
system. It must be noted that the CSC operates on a 12-bit range. The offsets, therefore, must be changed from 128 to half the range of a
12-bit system, which equates to 2048.
The maximum range for each equation, that is, each output data path, can only be [0 ... 1] or [-0.5 ... +0.5]. Equations with a larger gain
must be scaled back into range. The gain error can be compensated for in the gain stage of the follow on blocks.
The ranges of the three equations are:
Equation
Y
Pb
Pr
As can be seen from this table, the range for the Y component fits into the CSC operating range. However, the Pb and Pr ranges slightly
exceed the range. To bring all equations back into the supported range, they should be scaled back by 1/1.02.
If equations fall outside the supported range, overflow or underflow can occur and undesirable wrap around effects (large number
overflowing to small ones) can happen.
. 0
59
0
3 .
. 0
=
+
+
Y
G
R
. 1
02
. 1
02
. 1
. 0
34
. 0
17
=
+
Pb
G
. 1
02
. 1
02
. 0
43
. 0
51
=
+
+
Pr
G
R
. 1
02
. 1
02
Note: The scaling of the dynamic range does not affect the static offset.
Rev. A May 2012
csc_scale[1:0]
csc_scale[1:0]
and adjust coefficients, if necessary.
:
] 0
A
[ 2
12
:
] 0
+
+
In
_
B
4096
:
] 0
B
[ 2
12
:
] 0
+
+
In
_
B
4096
:
] 0
C
[ 2
12
:
] 0
+
+
In
_
B
4096
Minimum Value
0 + 0 + 0 = 0
(-0.34) + (-0.17) = -0.51
(-0.43) + (-0.08) = -0.51
11
=
+
B
. 0
58
G
. 0
29
R
02
. 0
51
+
+
=
R
B
2048
. 0
33
. 1
02
. 0
08
+
=
B
2048
. 0
42
. 1
02
function should be used.
A
[ 3
12
:
] 0
+
In
_
C
A
[ 4
12
4096
B
[ 3
12
:
] 0
+
In
_
C
B
[ 4
12
4096
C
[ 3
12
:
] 0
+
In
_
C
C
[ 4
12
4096
Maximum Value
0.59 + 0.3 + 0.11 = 1
0.51
0.51
+
. 0
11
B
+
+
G
. 0
17
R
0
5 .
B
2048
+
+
G
0
5 .
R
. 0
08
B
2048
237
CSC
_
scale
:
] 0
2
∗ 
CSC
_
scale
:
] 0
2
CSC
_
scale
:
] 0
2
 
Range
[0 ... 1] = 1
[-0.51 ... 0.51] = 1.02
[-0.51 ... 0.51] = 1.02
ADV7850

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ADV7850 and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Table of Contents