Datasheet

ADV7342/ADV7343 Data Sheet
Rev. | Page 62 of 108
SD gamma correction is enabled using Subaddress 0x88, Bit 6.
SD Gamma Correction Curve A is programmed at Subaddress
0xA6 to Subaddress 0xAF, and SD Gamma Correction Curve B
is programmed at Subaddress 0xB0 to Subaddress 0xB9.
Gamma correction is performed on the luma data only. The
user can choose one of two correction curves, Curve A or
Curve B. Only one of these curves can be used at a time. For
ED/HD gamma correction, curve selection is controlled using
Subaddress 0x35, Bit 4. For SD gamma correction, curve
selection is controlled using Subaddress 0x88, Bit 7.
The shape of the gamma correction curve is controlled by
defining the curve response at 10 different locations along the
curve. By altering the response at these locations, the shape of
the gamma correction curve can be modified. Between these
points, linear interpolation is used to generate intermediate
values. Considering that the curve has a total length of 256
points, the 10 programmable locations are at the following
points: 24, 32, 48, 64, 80, 96, 128, 160, 192, and 224. The
following locations are fixed and cannot be changed: 0, 16, 240,
and 255.
From the curve locations, 16 to 240, the values at the
programmable locations and, therefore, the response of the
gamma correction curve, should be calculated to produce the
following result:
x
DESIRED
= (x
INPUT
)
γ
where:
x
DESIRED
is the desired gamma corrected output.
x
INPUT
is the linear input signal.
γ is the gamma correction factor.
To program the gamma correction registers, calculate the
10 programmable curve values using the following formula:
16)16240
(
16240
16
+
×
=γ
γ
n
n
where:
γ
n
is the value to be written into the gamma correction register
for point n on the gamma correction curve.
n = 24, 32, 48, 64, 80, 96, 128, 160, 192, or 224.
γ is the gamma correction factor.
For example, setting γ = 0.5 for all programmable curve data
points results in the following y
n
values:
y
24
= [(8/224)
0.5
× 224] + 16 = 58
y
32
= [(16/224)
0.5
× 224] + 16 = 76
y
48
= [(32/224)
0.5
× 224] + 16 = 101
y
64
= [(48/224)
0.5
× 224] + 16 = 120
y
80
= [(64/224)
0.5
× 224] + 16 = 136
y
96
= [(80/224)
0.5
× 224] + 16 = 150
y
128
= [(112/224)
0.5
× 224] + 16 = 174
y
160
= [(144/224)
0.5
× 224] + 16 = 195
y
192
= [(176/224)
0.5
× 224] + 16 = 214
y
224
= [(208/224)
0.5
× 224] + 16 = 232
where the sum of each equation is rounded to the nearest integer.
The gamma curves in Figure 67 and Figure 68 are examples only;
any user-defined curve in the range from 16 to 240 is acceptable.
LOCATION
0
0
50
100
150
200
250
300
50 100 150 200 250
0.5
SIGNAL INPUT
GAMMA CORRECTED AMPLITUDE
SIGNAL OUTPUT
GAMMA CORRECTION BLOCK OUTPUT TO A RAMP INPUT
06399-071
Figure 67. Signal Input (Ramp) and Signal Output for Gamma 0.5
LOCATION
0
0
50
100
150
200
250
300
50 100 150 200 250
GAMMA CORRECTED AMPLITUDE
GAMMA CORRECTION BLOCK TO A RAMP INPUT FOR
VARIOUS GAMMA VALUES
0.3
0.5
1.5
1.8
SIGNAL INPUT
06399-072
Figure 68. Signal Input (Ramp) and Selectable Output Curves
D