
23
Integrated JPEG CODEC
system stops the video using the PVALID input. This may be
useful, for example, when decompressing still pictures.
When the code interface operates in slave mode (see Figure 33)
the scenario is almost identical. The main difference is that
CBUSY is now an output of the ZR36060, and it is used to
indicate that the code FIFO is “nearly full”, thus the host must
momentarily stop writing code until CBUSY indicates that the
FIFO occupancy is below its threshold.
6.6 Compression and Decompression Modes
The ZR36060 has one decompression mode (called simply
decompression), and four compression modes:
Compression Pass
Statistical Compression Pass
Auto Two-Pass Compression
Tables-Only Compression Pass
The following sections describe these modes.
6.7 Compression Pass
When the ZR36060 is in the IDLE state, and after the correct ini-
tialization has been done by the host (loading parameters and/or
tables), it waits for a command (assertion of START) to start
compressing. RTBSY is not asserted at this time. Once the
ZR36060 senses an active (low) START, it checks the level of
FRAME, and then, if FRAME is active (Figure 34), the ZR36060
starts compressing the next odd field (i.e., at the next odd
VSYNC).
Note: If FRAME is maintained active, and consequently it will be
detected active every time START is sampled active, the
ZR36060 will compress only the odd fields. This is a convenient
method for implementing field decimation.
If FRAME is not active when START is sampled (Figure 35), the
ZR36060 always starts compressing the next field (i.e., at the
next VSYNC).
The VSYNC edge used by the ZR36060 to make the decision on
the ‘next’ field is configurable with the FIVedge parameter
(leading or trailing edge).
During IDLE, CBUSY (if it is configured as output, in code slave
mode) is active, preventing the host controller from reading
code, since the code FIFO buffer is empty. Once the compres-
sion process starts CBUSY is released and the host controller is
expected to read the code. If the ZR36060 is the master of the
code bus it drives out the code only after the compression
process starts (the active area begins).
When the compression of the field is not stopped because of an
interrupt request targeted to the host (JIRQ assertion), then upon
completion the ZR36060 asserts the END signal and returns to
the IDLE state, looking again at START and FRAME. Note that
it does not matter if the host controller continuously asserts
START (and/or FRAME) or if it only asserts START (and/or
FRAME) after the ZR36060 asserts END. The reason is that the
ZR36060 interrogates START only when it is in the IDLE state.
See Figure 36.
Figure 32. Data Flow in Decompression, Code Master
Video Bus
Strip Memory
JPEG Codec
CODE FIFO
CODE Bus
RTBSY
CBUSY CCS
Figure 33. Data Flow in Decompression, Code Slave
Video Bus
Strip Memory
JPEG Codec
CODE FIFO
CODE Bus
RTBSY
CBUSY WR
Figure 34. Compression with START and FRAME
continuously asserted
START
FRAME
state
VSYNC
IDLE
END
EVEN
ODD
EVEN
ODD
WAIT
ACTIVE
CMP
IDLE
WAIT
ACTIVE
CMP
IDLE
2 Processed Fields
Figure 35. Compression with continuous START asserted
and FRAME Deasserted
START
FRAME
state
VSYNC
IDLE
END
WAIT
ACTIVE
CMP
I
CMP
IDLE
3 Processed Fields
W
CMP
I
W