
2004 Apr 05
61
Philips Semiconductors
Product specification
XGA dual input flat panel controller
SAA6713H
7.11.3.5
How to use auto-adjustment
Table 38
Auto-adjustment steps
7.12
Decoupling FIFO
The decoupling FIFO allows an output line generation
independent of the input line timing. The FIFO holds
1280 pixels, and either buffers incoming data when the
vertical upscaling does not require any or holds back a line
to be able to provide a continuous data stream in case of
vertical downscaling.
The FIFO output is locked after every line if line_lock is set
to logic 1; otherwise after every frame and only released if
the FIFO level exceeds the threshold level, given by
fifo_threshold in units of 8 pixels.
7.13
Scaling
The SAA6713H features separate scaling engines for
upscalinganddownscaling,forbothhorizontalandvertical
processing. Two separate scaling units are implemented
to perform upscaling and downscaling.
7.13.1
D
OWNSCALING
The downscaling engine is used for reducing the incoming
RGB data stream, i.e. for displaying high resolution input
frames on panels with a smaller resolution. The scaling
ratiocanbeprogrammedindependentlyforbothhorizontal
and vertical downscaling units. The algorithm uses pixel
accumulation, achieving a minimum scaling factor of
1
64
.
If the downscaler is used, it must be enabled by setting
dsc_en to logic 1.
Setting-up the desired downscaling ratios is achieved by
programming the scaling increments dsc_v_incr,
dsc_v_incr_corr, dsc_h_incr and dsc_h_incr_corr. This
must be done for both vertical and horizontal scaling.
Where xx is equivalent to dsc_v_incr or dsc_h_incr and yy
is the fraction of the result in
1
100
.
This is the value for programming the increment correction
values dsc_v_incr_corr and dsc_h_incr_corr.
Example: from SXGA to XGA.
Horizontal:
This means dsc_h_incr = 51 and dsc_h_incr_corr = 20.
Vertical:
This means dsc_v_incr = 48 and dsc_v_incr_corr = 00.
7.13.2
U
PSCALING
The upscaling engine is used for enlarging the incoming
video frames. The magnification can be programmed
individually for horizontal and vertical scaling. The
maximum scaling factor for both directions is 64.
The implemented filter algorithm uses interpolation with
pixel enhancement, based on a free programmable
transition function. Therefore, it is possible to define the
transition between two calculated pixels to obtain different
sharpness characteristics. This transition function must be
defined in the 48
×
8 bits look-up table, with a number
ranging from 0 to 64. Different functions can be
programmed for horizontal and vertical scaling.
The upscaler must be activated by usc_en. To set up the
zoom factor, the scaling increments v_scale_incr,
v_scale_corr, h_scale_incr and h_scale_corr must be
programmed.
Where xx is equivalent to v_scale_incr or h_scale_incr
and yy is the fraction of the result in
1
100
.
This is the value for programming the increment correction
values v_scale_corr and h_scale_corr.
Example: from XGA to SXGA.
Horizontal:
This means h_scale_incr = 80 and h_scale_corr = 00.
Vertical:
This means v_scale_incr = 85 and v_scale_corr = 33.
Remark:
The last digit must be rounded up: 85.33 results
in 1023.96 lines, but the upscaler will display only
1023 lines.
STEP
ACTION
1
2
program position values according to mode
program mode, submode and cycle values to
start auto-adjustment
wait until interrupt appears
read the according values
3
4
incr
number_of_output_pixels
number_of_input_pixels
64
xx.yy
=
×
=
1280
1024
64
×
51.20
=
1024
768
64
×
48.00
=
incr
number_of_input_pixels
64
xx.yy
=
×
=
1024
64
×
80.00
=
768
64
×
85.33
=