
17
Integrated JPEG CODEC
5.2 Slave Mode
In Slave mode, access to the internal code FIFO is accomplished
using the host interface, by reading or writing (depending on
compression or decompression mode respectively) to direct
access address zero (ADDR[1:0]=00b). The data bus width can
be 8 or 16 bits, depending on the Code16 parameter:
8-bit width (Code16 = 0). Only DATA[7:0] is used for the
code transfer.
16-bit width (Code16 = 1). CODE[7:0] is an extension of DA-
TA[7:0] to transfer 16-bit words. The byte ordering can be
exchanged using the Endian parameter.
Code Slave mode accesses are asynchronous (Figure 22). The
CS (Code Chip-Select) and ADDR[1:0] inputs can be deasserted
after every RD or WR cycle, or, in order to achieve the best per-
formance, left asserted for a burst of code transfer cycles.
The host must select one of three different methods to hand-
shake with the ZR36060 throughout the compression/
decompression process:
use of the CBUSY signal, or
use of the ACK signal, or
by polling the CFIFO level bits.
CBUSY is used as an indication of the empty/full status of the
internal code FIFO of the ZR36060. When CBUSY is active
(low), it means that the code FIFO is empty (during compression)
or full (during decompression). When the host uses this signal, it
must sample CBUSY prior to each code access, and hold off the
assertion of RD or WR until CBUSY is deasserted.
The ZR36060’s ACK signal indicates permission to a complete
the current cycle. Assertion of ACK indicates that the internal
code FIFO is not empty (during compression) or not full (during
Figure 20. Master Mode Operation of the Code Bus,
with CFIS=0b (1 VCLKx2 Per Transfer)
VCLKx2
CCS
COE
Code Read (Decompression)
5
6
7
1
2
3
4
8
9
10
11
12
CBUSY
CODE[7:0]
(input)
13
14
CCS
CWE
Code Write (Compression)
CBUSY
CODE[7:0]
(output)
Figure 21. Master Mode Operation of the Code Bus,
with CFIS=1b (2 VCLKx2 Per Transfer)
VCLKx2
CCS
COE
Code Read (Decompression)
5
6
7
1
2
3
4
8
9
10
11
12
CBUSY
CODE[7:0]
(input)
13
14
CCS
CWE
Code Write (Compression)
CBUSY
CODE[7:0]
(output)
CS can be pulsed, or maintained active for burst of read or write pulses.
ACK is not granted when CBUSY is active, in both compression and
decompression.
The top example (compression) shows a system using CBUSY to decide when to
perform the next RD strobe.
The bottom example (decompression) shows a system using ACK grant to decide
when to terminate the current strobe. Note the extension of the WR cycle when
the FIFO is full.
Notes: 1.
2.
3.
4.
Figure 22. Slave Mode Operation of the Code Bus
CS
ADDR[1:0]
Code Read (Compression)
RD
ACK
CBUSY
DATA[7:0]
(CODE[7:0])
00
00
CFIFO Empty
(Stall Access)
Cannot perform
a new strobe
00
CS
ADDR[1:0]
Code Write (Decompression)
WR
ACK
CBUSY
DATA[7:0]
(CODE[7:0])
00
00
CFIFO Empty
(Stall Access)
Strobe is held low
00