times 19 cycles, or 2,432 cycles. The 1,024 byte transfer would take 403 µs, less than
half of the 1-ms USB frame time.
If still faster time is required, the routine can be modified to put more of the MOVX
instructions in-line. For example, with 16 in-line MOVX instructions, the transfer time
for 1,024 bytes would be 35 cycles times 64 loops or 2,240 cycles, or 371 µs, an 8% speed
improvement over the eight instruction loop.
8.9
Other Isochronous Registers
Two additional registers, ISOCTL and ZBCOUT, provide additional isochronous endpoint
features.
8.9.1 Disable ISO
ISOCTL
Isochronous Control
7FA1
b7
b6
b5
b4
b3
b2
b1
b0
ISODISAB
-
-
-
-
PPSTAT
MBZ
MBZ
Figure 8-14. ISOCTL Register
Bit zero of the ISOCTL register is called ISODISAB. When the 8051 sets ISODISAB=1,
all sixteen of EZ-USB endpoints are disabled. If ISODISAB=1, EP8IN=EP15IN and
EP8OUT-EP15OUT should not be used. ISODISAB is cleared at power-on.
When ISODISAB=1, the 2,048 bytes of RAM normally used for isochronous buffers is
available to the 8051 as XDATA RAM (not program memory), from 0x2000 to 0x27FF in
internal memory. When ISODISAB=1, the behavior of the RD# and WR# strobe signals
changes to reflect the additional 2 KB of memory inside the EZ-USB chip. This is shown
in Table 8-2.
Table 8-2. Addresses for RD# and WR# vs. ISODISAB bit
ISODISAB
RD#, WR#
0
2000-7B40,
(default) 8000-FFFF
1
2800-7B40,
8000-FFFF
EZ-USB TRM v1.9
Chapter 8. EZ-USB CPU
Page 8-15