CY7C68013A/CY7C68014A
CY7C68015A/CY7C68016A
Table 3-1. Special Function Registers
x
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
8x
IOA
9x
IOB
Ax
Bx
Cx
Dx
Ex
Fx
IOC
IOD
SCON1
SBUF1
PSW
ACC
B
SP
EXIF
INT2CLR
INT4CLR
IOE
DPL0
DPH0
DPL1
DPH1
DPS
MPAGE
OEA
OEB
OEC
OED
OEE
PCON
TCON
TMOD
TL0
SCON0
SBUF0
IE
IP
T2CON
EICON
EIE
EIP
AUTOPTRH1
AUTOPTRL1
reserved
EP2468STAT
EP24FIFOFLGS
EP68FIFOFLGS
EP01STAT
GPIFTRIG
RCAP2L
RCAP2H
TL2
TL1
TH0
TH1
AUTOPTRH2
AUTOPTRL2
reserved
GPIFSGLDATH
GPIFSGLDATLX
TH2
CKCON
AUTOPTRSET-UP GPIFSGLDATLNOX
RENUM. To simulate a USB disconnect, the firmware sets
DISCON to 1. To reconnect, the firmware clears DISCON to 0.
3.5
USB Boot Methods
2
During the power-up sequence, internal logic checks the I C
port for the connection of an EEPROM whose first byte is
either 0xC0 or 0xC2. If found, it uses the VID/PID/DID values
in the EEPROM in place of the internally stored values (0xC0),
or it boot-loads the EEPROM contents into internal RAM
(0xC2). If no EEPROM is detected, FX2LP enumerates using
internally stored descriptors. The default ID values for FX2LP
are VID/PID/DID (0x04B4, 0x8613, 0xAxxx where xxx = Chip
Before reconnecting, the firmware sets or clears the RENUM
bit to indicate whether the firmware or the Default USB Device
will handle device requests over endpoint zero: if RENUM = 0,
the Default USB Device will handle device requests; if RENUM
= 1, the firmware will.
3.7
Bus-powered Applications
[2]
revision).
The FX2LP fully supports bus-powered designs by enumer-
ating with less than 100 mA as required by the USB 2.0 speci-
fication.
Table 3-2. Default ID Values for FX2LP
Default VID/PID/DID
Vendor ID
Product ID
0x04B4 Cypress Semiconductor
0x8613 EZ-USB FX2LP
3.8
Interrupt System
Device release 0xAnnn Depends chip revision
(nnn = chip revision where first
silicon = 001)
3.8.1
INT2 Interrupt Request and Enable Registers
FX2LP implements an autovector feature for INT2 and INT4.
There are 27 INT2 (USB) vectors, and 14 INT4 (FIFO/GPIF)
vectors. See EZUSB Technical Reference Manual (TRM) for
more details.
3.6
ReNumeration™
Because the FX2LP’s configuration is soft, one chip can take
on the identities of multiple distinct USB devices.
3.8.2
USB-Interrupt Autovectors
The main USB interrupt is shared by 27 interrupt sources. To
save the code and processing time that normally would be
required to identify the individual USB interrupt source, the
FX2LP provides a second level of interrupt vectoring, called
Autovectoring. When a USB interrupt is asserted, the FX2LP
pushes the program counter onto its stack then jumps to
address 0x0043, where it expects to find a “jump” instruction
to the USB Interrupt service routine.
When first plugged into USB, the FX2LP enumerates automat-
ically and downloads firmware and USB descriptor tables over
the USB cable. Next, the FX2LP enumerates again, this time
as a device defined by the downloaded information. This
patented two-step process, called ReNumeration, happens
instantly when the device is plugged in, with no hint that the
initial download step has occurred.
Two control bits in the USBCS (USB Control and Status)
register control the ReNumeration process: DISCON and
Note:
2. The I2C bus SCL and SDA pins must be pulled up, even if an EEPROM is not connected. Otherwise this detection method does not work properly.
Document #: 38-08032 Rev. *G
Page 4 of 55