Intel PXA26X Laptop User Manual


 
Intel® PXA26x Processor Family Developer’s Manual 7-7
Liquid Crystal Display Controller
Figure 7-2. Temporal Dithering Concept - Single Color
This dithering concept is applied separately to each color displayed. Each color has zeros added to
make the data for each color 8 bits. If a monochrome display is used, only a single matrix (blue) is
used.
The LCD controller implements this algorithm, which is used by TMED to determine an upper and
lower boundary:
LowerBoundary = [(PixelValue * FrameNumber) mod 256] + Offset
UpperBoundary = [(PixelValue + LowerBoundary) mod 256]
A 16x16 matrix uses the row (line), column (pixel number), and frame number (which wraps back
to 0 from 255) to select a matrix value. When the matrix value is between the lower and upper
boundaries from the algorithm, the LCD controller sends a “1” to the LCD panel. The boundaries
created by the algorithm are circular, wrapping from 255 back to 0, as shown in Figure 7-3.
Figure 7-3. Compare Range for TMED
Either of two matrices may be used for each color, chosen by bits 0, 1, and 14 of the TMED
Control Register (TCR) (refer to Section 7.6.10). Offsets may be selected for the shading of each
color to avoid gray color problems. Although these offset values are panel dependent, the
recommended values are listed in Section 7.6.9, “TMED RGB Seed Register”. The blue data path
is used for monochrome modes. Offsets may also be chosen in the TMED Control Register for
shifting the row value (horizontal), line value (vertical), and frame number.
Figure 7-4 shows the block diagram for TMED. Pixel data (up to 8 bits) enters the module and is
sent through the color value (CV) generator. Depending on the value of the TCR[TSCS] field, the
CV generator rounds off between 0 and 3 of the least-significant bits, creating a new CV. If the
original pixel value is 254 or 255, the final data output is set to one. Otherwise, this occurs:
EYE
Color
Code
Tem poral
Modulator
Low
Pass
Filter
(Panel)
1 bit
8 bits
Y
X
position
position
Time
(frame #)
0255
128
192
64
Compare
Range
(LB+PV) mod 256
LB=(PixelValue * Frame#) mod 256 + Offset