English
Language : 

MB87P2020 Datasheet, PDF (194/356 Pages) Fujitsu Component Limited. – Colour LCD/CRT/TV Controller
MB87J2120, MB87P2020-A Hardware Manual
4.2 Determination of Register Contents
4.2.1 Values Derived from Display Specs
Resolution and Formats
The display spec states the number of physically visible pixels in each direction. These numbers are the val-
ues used in DIR_PhSize, i.e. the number of visible pixels per line is the PX value, the number of lines the
PY value.
The code for physical color space is derived from the number of bits per pixel (color resolution). After phys-
ical color space is defined, intermediate color space has to be chosen from the legal mappings, given in table
2-2, section 2.4.
The number of pixels the display expects per pixel clock cycle (or the number of bits expected per pixel
clock in relation to the color resolution, as actually stated), together with the display interface type (digital
or analog) determine the bit stream format.
Once derived, the values for PX and bit stream format are used to determine the physical size in scan dots,
i.e. PXScanDots. This value is calculated this way: PXScanDots = -BP----iX--t--s-×-P----Be---r-i--St--s-c--P-a---e-n--r-C--P--l--i-o-x--c-e--k-l . That
means that the value of PXScanDots is rounded towards the nearest integer that is less than or equal to
the fractional value. This does not prevent a fractional number of pixels per scan clock being output as re-
quired by some displays.
Timing and Sync-Signals
After entry of resolution and formats timing is the next item to specify. This has to be done in accordance
to the pixel clock set up in the Clock Unit (CU).
As was elaborated in section 3.9, all timing is described in terms of the timing coordinate space. The first
task is therefore to establish its basic unit, i.e. the time needed per scan dot. This value can be obtained either
directly from the display’s spec sheet or need to be calculated from other values given there. Due to the fact
that only discrete pixel clock rates are possible, this unit time has to be rounded to the nearest value allowed
by the actual pixel clock. Hence, tScanDot ≈ 1 ⁄ PixelClock
Now the values for xstart and xstop (bits [30:16], 2’s complement, addresses 0x3010 and 0x3014) can
be calculated. The first of these contains the start time of a line in relation to the begin of active display (i.e.
the first visible pixel) expressed in timing coordinates, i.e. the number of pixel clock cycles. This time is
obtained from the display’s spec sheet either as time or number of clocks. If given as time, the value is de-
termined this way: xstart = (tLineStart – tActiveDisplay) ⁄ tScanDot . Please note that for leading blanking this
value is negative, so if the spec sheet gives the number of clock cycles directly, it has to be entered as neg-
ative number as well.
Depending on how the length of a line is stated in the display spec, the xstop value can be obtained in two
ways:
from a time value: xstop = xstart + (TimePerLine ⁄ tScanDot) – 1
from the number of clock cycles: xstop = xstart + CyclesPerLine – 1
The corresponding ystart and ystop values are calculated in a similar manner. If no TV-conform tim-
ing is needed then the respective “odd” values are sufficient (bits [14:0], 2’s complement, addresses 0x3010
and 0x3014). The value for ystart is basically the number of leading blanking lines entered as negative
value (cf. note for xstart). If only a period of time for leading blanking is given in the spec the value can
be calculated as follows:
ystart = VertLeadBlank ⁄ TimePerLine
= VertLeadBlank ⁄ ((xstop – xstart + 1) ⁄ PixelClock)
Depending on whether the global number of display lines (active and blanking) or the frame period is given
in the spec, the ystop value can be calculated these ways:
using a global number of lines: ystop = NumberOfLines + ystart – 1
using the frame period: ystop = (T Frame ⁄ TimePerLine) + ystart – 1
Page 194