— Allows direct connection to most parallel interface
— Programmable waveform descriptors and configuration
registers to define waveforms
— Supports multiple Ready (RDY) inputs and Control (CTL)
outputs
CY7C68053
• Integrated, industry standard enhanced 8051
— 48 MHz, 24 MHz, or 12 MHz CPU operation
— Four clocks per instruction cycle
— Three counter/timers
— Expanded interrupt system
— Two data pointers
• 1.8V core operation
• 1.8V - 3.3V IO operation
• Vectored USB interrupts and GPIF/FIFO interrupts
• Separate data buffers for the Set-up and Data portions of a
CONTROL transfer
• Integrated I
• Four integrated FIFO’s
— Integrated glue logic and FIFO’s lower system cost
— Automatic conversion to and from 16-bit buses
— Master or slave operation
— Uses external clock or asynchronous strobes
— Easy interface to ASIC and DSP IC’s
• Available in Industrial temperature grade
• Available in one lead-free package with up to 24 GPIO’s
— 56-pin VFBGA (24 GPIO’s)
2
C™ controller, runs at 100 or 400 kHz
Block Diagram
24 MHz
Ext. XTAL
High-performance micro
using standard tools
with lower-power options
MoBL-USB FX2LP18
2
I
C
Master
Additional I/Os (24)
GPIF
4 KB
FIFO
RDY (2)
CTL (3)
8/16
Abundant I/O
General
Programmable I/F
To Baseband processors/
Application processors/
ASICS/DSPs
Up to 96 MBytes/sec
Burst Rate
Integrated
Full- and High-speed
XCVR
D+
D–
VCC
1.5K
Connected for
Full-Speed
USB
XCVR
Enhanced USB Core
Simplifies 8051 Code
2.0
x20
PLL
/0.5
/1.0
/2.0
CY
Smart
USB
1.1/2.0
Engine
8051 Core
12/24/48 MHz,
Four Clocks/Cycle
16 KB
RAM
“Soft Configuration”
Easy Firmware Changes
ECC
Address (16)/ Data Bus(8)
FIFO and Endpoint Memory
(master or slave operation)
Cypress Semiconductor Corporation•198 Champion Court•San Jose, CA 95134-1709•408-943-2600
Document # 001-06120 Rev *FRevised September 9th 2006
[+] Feedback
CY7C68053
Cypress Semiconductor Corporation’s MoBL-USB FX2LP18
(CY7C68053) is a low-voltage (1.8 volt) version of the EZ-
®
USB
FX2LP (CY7C68013A), which is a highly integrated,
low-power USB 2.0 microcontroller. By integrating the USB 2.0
transceiver, serial interface engine (SIE), enhanced 8051
microcontroller, and a programmable peripheral interface in a
single chip, Cypress has created a very cost-effective solution
that provides superior time-to-market advantages with low
power to enable bus powered applications.
The ingenious architecture of MoBL-USB FX2LP18 results in
data transfer rates of over 53 Mbytes per second, the
maximum allowable USB 2.0 bandwidth, while still using a lowcost 8051 microcontroller in a package as small as a 56
VFBGA (5 mm x 5 mm). Because it incorporates the USB 2.0
transceiver, the MoBL-USB FX2LP18 is more economical,
providing a smaller footprint solution than USB 2.0 SIE or
external transceiver implementations. With MoBL-USB
FX2LP18, the Cypress Smart SIE handles most of the USB 1.1
and 2.0 protocol in hardware, freeing the embedded microcontroller for application-specific functions and decreasing development time to ensure USB compatibility.
The General Programmable Interface (GPIF) and
Master/Slave Endpoint FIFO (8- or 16-bit data bus) provide an
easy and glueless interface to popular interfaces such as
UTOPIA, EPP, PCMCIA, and most DSP/processors.
The 56VFBGA package is defined for the family.
The MoBL-USB FX2LP18 is also referred to as FX2LP18 in
this document.
ATA,
2.0 Applications
There are a wide variety of applications for the MoBL-USB
FX2LP18. It is used in cell phone, smart phones, PDAs, and
MP3 players, to name a few.
The ‘Reference Designs’ section of the Cypress web site
provides additional tools for typical USB 2.0 applications. Each
reference design comes complete with firmware source and
object code, schematics, and documentation. For more information, visit http://www.cypress.com.
3.0 Functional Overview
The functionality of this chip is described in the sections below.
3.1USB Signaling Speed
FX2LP18 operates at two of the three rates defined in the USB
Specification Revision 2.0, dated April 27, 2000.
• Full-speed, with a signaling bit rate of 12 Mbps
• High-speed, with a signaling bit rate of 480 Mbps.
FX2LP18 does not support the low-speed signaling mode of
1.5 Mbps.
3.28051 Microprocessor
The 8051 microprocessor embedded in the FX2LP18 family
has 256 bytes of register RAM, an expanded interrupt system,
and three timer/counters.
3.2.18051 Clock Frequency
FX2LP18 has an on-chip oscillator circuit that uses an external
24 MHz (±100-ppm) crystal with the following characteristics:
• Parallel resonant
• Fundamental mode
• 500 µW drive level
• 12 pF (5% tolerance) load capacitors
An on-chip PLL multiplies the 24 MHz oscillator up to 480 MHz,
as required by the transceiver/PHY; internal counters divide it
down for use as the 8051 clock. The default 8051 clock
frequency is 12 MHz. The clock frequency of the 8051 can be
changed by the 8051 through the CPUCS register, dynamically.
Figure 3-1. Crystal Configuration
24 MHz
C1
12 pf
20 × PLL
12 pF capacitor values assumes a trace capacitance
of 3 pF per side on a four-layer FR4 PCA
The CLKOUT pin, which can be tri-stated and inverted using
internal control bits, outputs the 50% duty cycle 8051 clock, at
the selected 8051 clock frequency — 48, 24, or 12 MHz.
3.2.2Special Function Registers
Certain 8051 Special Function Register (SFR) addresses are
populated to provide fast access to critical FX2LP18 functions.
These SFR additions are shown in Ta bl e 3- 1. Bold type
indicates non-standard, enhanced 8051 registers. The two
SFR rows that end with ‘0’ and ‘8’ contain bit-addressable
registers. The four IO ports A – D use the SFR addresses used
in the standard 8051 for ports 0 – 3, which are not implemented
in FX2LP18. Because of the faster and more efficient SFR
addressing, the FX2LP18 IO ports are not addressable in
external RAM space (using the MOVX instruction).
C2
12 pf
Document # 001-06120 Rev *FPage 2 of 39
[+] Feedback
CY7C68053
Table 3-1. Special Function Registers
x8x9xAxBxCxDxExFx
0
1SP EXIF
2DPL0 MPAGEOEA
3DPH0
4DPL1
5DPH1OED
6DPS
7PCON
8TCONSCON0IEIPT2CONEICONEIEEIP
9TMOD SBUF0
ATL0AUTOPTRH1EP2468STATEP01STATRCAP2L
BTL1AUTOPTRL1EP24FIFOFLGSGPIFTRIGRCAP2H
CTH0ReservedEP68FIFOFLGSTL2
DTH1AUTOPTRH2GPIFSGLDATHTH2
ECKCONAUTOPTRL2GPIFSGLDATLX
FReservedAUTOPTRSET-UPGPIFSGLDATLNOX
IOAIOBIOCIODSCON1PSWACCB
INT2CLRIOESBUF1
OEB
OEC
OEE
3.3I2C™ Bus
FX2LP18 supports the I2C bus as a master only at 100-/400KHz. SCL and SDA pins have open-drain outputs and
hysteresis inputs. These signals must be pulled up to either
V
CC
to V
or V
CC_IO
, even if no I2C device is connected.(Connecting
CC_IO
may be more convenient.)
3.4Buses
This 56-pin package has an 8- or 16-bit ‘FIFO’ bidirectional
data bus, multiplexed on IO ports B and D.
3.5USB Boot Methods
During the power-up sequence, internal logic checks the I2C
port for the connection of an EEPROM whose first byte is
0xC2. If found, it boot-loads the EEPROM contents into
internal RAM (0xC2 load). If no EEPROM is present, an
external processor must emulate an I
2
C slave. The FX2LP18
does not enumerate using internally stored descriptors (for
example, Cypress’ VID/PID/DID is not used for enumer-
[1]
ation).
3.6ReNumeration™
Because the FX2LP18’s configuration is soft, one chip can
take on the identities of multiple distinct USB devices.
When first plugged into USB, the FX2LP18 enumerates
automatically and downloads firmware and USB descriptor
tables over the USB cable. Next, the FX2LP18 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
Note
1. The I
2
C bus SCL and SDA pins must be pulled up, even if an EEPROM is not connected. Otherwise this detection method does not work properly.
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
RENUM. To simulate a USB disconnect, the firmware sets
DISCON to 1. To reconnect, the firmware clears DISCON to 0.
Before reconnecting, the firmware sets or clears the RENUM
bit to indicate whether the firmware or the Default USB Device
handles device requests over endpoint zero: if RENUM = 0,
the Default USB Device handles device requests; if
RENUM = 1, the firmware does.
3.7Bus-powered Applications
The FX2LP18 fully supports bus-powered designs by enumerating with less than 100 mA as required by the USB 2.0 specification.
3.8Interrupt System
The FX2LP18 interrupts are described in this section.
3.8.1INT2 Interrupt Request and Enable Registers
FX2LP18 implements an autovector feature for INT2. There
are 27 INT2 (USB) vectors. See the MoBL-USB™ Technical
Reference Manual (TRM) for more details.
3.8.2USB Interrupt Autovectors
The main USB interrupt is shared by 27 interrupt sources. To
save the code and processing time that is normally required to
identify the individual USB interrupt source, the FX2LP18
provides a second level of interrupt vectoring, called ‘Autovectoring.’ When a USB interrupt is asserted, the FX2LP18
Document # 001-06120 Rev *FPage 3 of 39
[+] Feedback
CY7C68053
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.
The FX2LP18 jump instruction is encoded as shown in
Tab le 3- 2.
Table 3-2. INT2 USB Interrupts
USB INTERRUPT TABLE FOR INT2
PriorityINT2VEC ValueSource Notes
1 00SUDAV Set-up Data Available
2 04 SOF Start of Frame (or microframe)
3 08SUTOK Set-up Token Received
4 0CSUSPEND USB Suspend request
5 10USB RESETBus reset
6 14HISPEED Entered high-speed operation
7 18 EP0ACK FX2LP18 ACK’d the CONTROL Handshake
8 1C Reserved
9 20 EP0-IN EP0-IN ready to be loaded with data
10 24 EP0-OUT EP0-OUT has USB data
11 28 EP1-IN EP1-IN ready to be loaded with data
12 2C EP1-OUT EP1-OUT has USB data
13 30 EP2 IN: buffer available. OUT: buffer has data
14 34 EP4 IN: buffer available. OUT: buffer has data
15 38 EP6 IN: buffer available. OUT: buffer has data
16 3C EP8 IN: buffer available. OUT: buffer has data
17 40 IBN IN-Bulk-NAK (any IN endpoint)
18 44Reserved
19 48 EP0PINGEP0 OUT was Pinged and it NAK’d
20 4C EP1PING EP1 OUT was Pinged and it NAK’d
21 50 EP2PING EP2 OUT was Pinged and it NAK’d
22 54 EP4PING EP4 OUT was Pinged and it NAK’d
23 58 EP6PING EP6 OUT was Pinged and it NAK’d
24 5C EP8PING EP8 OUT was Pinged and it NAK’d
25 60 ERRLIMITBus errors exceeded the programmed limit
26 64
27 68 Reserved
28 6C Reserved
29 70 EP2ISOERR ISO EP2 OUT PID sequence error
30 74 EP4ISOERR ISO EP4 OUT PID sequence error
31 78 EP6ISOERR ISO EP6 OUT PID sequence error
32 7C EP8ISOERR ISO EP8 OUT PID sequence error
If Autovectoring is enabled (AV2EN = 1 in the INTSET-UP
register), the FX2LP18 substitutes its INT2VEC byte.
Therefore, if the high byte (‘page’) of a jump-table address is
preloaded at location 0x0044, the automatically-inserted
INT2VEC byte at 0x0045 directs the jump to the correct
address out of the 27 addresses within the page.
Document # 001-06120 Rev *FPage 4 of 39
[+] Feedback
Figure 3-2. Reset Timing Plots
CY7C68053
RESET#
V
IL
1.8V
1.62V
V
CC
0V
T
RESET
Power on Reset
3.9Reset and Wakeup
The reset and wakeup pins are described in detail in this
section.
3.9.1Reset Pin
The input pin, RESET#, resets the FX2LP18 when asserted.
This pin has hysteresis and is active LOW. When a crystal is
used with the CY7C68053, the reset period must allow for the
stabilization of the crystal and the PLL. This reset period must
be approximately 5 ms after VCC has reached 3.0V. If the
crystal input pin is driven by a clock signal the internal PLL
stabilizes in 200 µs after VCC has reached 3.0V
shows a power on reset condition and a reset applied during
operation. A power on reset is defined as the time reset is
asserted while power is being applied to the circuit. A powered
reset is defined to be when the FX2LP18 has previously been
powered on and operating and the RESET# pin is asserted.
Cypress provides an application note which describes and
recommends power on reset implementation and can be found
on the Cypress web site. For more information on reset implementation for the MoBL-USB™ family of products, visit the
Cypress web site at http://www.cypress.com.
Table 3-3. Reset Timing Values
ConditionT
Power on Reset with crystal5 ms
Power on Reset with external
200 µs + Clock stability time
clock
Powered Reset200 µs
3.9.2Wakeup Pins
The 8051 puts itself and the rest of the chip into a power-down
mode by setting PCON.0 = 1. This stops the oscillator and PLL.
When WAKEUP is asserted by external logic, the oscillator
restarts, after the PLL stabilizes, and then the 8051 receives a
wakeup interrupt. This applies whether or not FX2LP18 is
connected to the USB.
[2]
RESET
. Figure 3-2
RESET#
V
IL
1.8V
V
CC
0V
T
RESET
Powered Reset
The FX2LP18 exits the power-down (USB suspend) state
using one of the following methods:
• USB bus activity (if D+/D– lines are left floating, noise on
these lines may indicate activity to the FX2LP18 and initiate
a wakeup)
• External logic asserts the WAKEUP pin
• External logic asserts the PA3/WU2 pin
The second wakeup pin, WU2, can also be configured as a
general purpose IO pin. This allows a simple external R-C
network to be used as a periodic wakeup source. Note that
WAKEUP is by default active LOW.
3.9.3Lowering Suspend Current
Good design practices for CMOS circuits dictate that any
unused input pins must not be floating between V
Floating input pins will not damage the chip, but can substan-
and VIH.
IL
tially increase suspend current. To achieve the lowest suspend
current, any unused port pins must be configured as outputs.
Any unused input pins must be tied to ground. Some examples
of pins that need attention during suspend are:
• Port pins. For Port A, B, D pins, extra care must be taken in
shared bus situations.
— Completely unused pins must be pulled to V
GND.
CC_IO
or
— In a single-master system, the firmware must output en-
able all the port pins and drive them high or low, before
FX2LP18 enters the suspend state.
— In a multi-master system (FX2LP18 and another proces-
sor sharing a common data bus), when FX2LP18 is suspended, the external master must drive the pins high or
low. The external master may not let the pins float.
• CLKOUT. If CLKOUT is not used, it must be tri-stated during
normal operation, but driven during suspend.
• IFCLK, RDY0, RDY1. These pins must be pulled to V
or GND or driven by another chip.
CC_IO
• CTL0-2. If tri-stated via GPIFIDLECTL, these pins must be
pulled to V
• RESET#, WAKEUP#. These pins must be pulled to V
or GND or driven by another chip during suspend.
or GND or driven by another chip.
CC_IO
CC_IO
Note
2. If the external clock is powered at the same time as the CY7C680xx and has a stabilization wait period, it must be added to the 200 µs.
Document # 001-06120 Rev *FPage 5 of 39
[+] Feedback
CY7C68053
Figure 3-3. FX2LP18 Internal Code Memory
FFFF
7.5 kBytes
USB regs and
4K FIFO buffers
E200
E1FF
0.5 kBytes RAM
Data
E000
.
.
.
3FFF
16 kBytes RAM
Code and Data
0000
3.10Program/Data RAM
This section describes the FX2LP18 RAM.
3.10.1Size
The FX2LP18 has 16 kBytes of internal program/data RAM.
No USB control registers appear in this space.
Memory maps are shown in Figure 3-3 and Figure 3-4.
3.10.2Internal Code Memory
This mode implements the internal 16-kByte block of RAM
(starting at 0) as combined code and data memory. Only the
internal 16 kBytes and scratch pad 0.5 kBytes RAM spaces
have the following access:
• USB download
• USB upload
• Set-up data pointer
2
•I
C interface boot load
3.11Register Addresses
Figure 3-4. Register Address Memory
FFFF
F000
EFFF
E800
E7FF
E7C0
E7BF
E780
E77F
E740
E73F
E700
E6FF
E500
E4FF
E480
E47F
E400
E3FF
E200
E1FF
E000
4 kBytes EP2-EP8
buffers
(8 x 512)
2 kBytes RESERVED
64 Bytes EP1IN
64 Bytes EP1OUT
64 Bytes EP0 IN/OUT
64 Bytes RESERVED
8051 Addressable Registers
(512)
Reserved (128)
128 Bytes GPIF Waveforms
Reserved (512)
512 Bytes
8051 xdata RAM
3.12Endpoint RAM
This section describes the FX2LP18 Endpoint RAM.
3.12.1Size
• 3 × 64 bytes(Endpoints 0, 1)
• 8 × 512 bytes (Endpoints 2, 4, 6, 8)
3.12.2Organization
• EP0
• Bidirectional endpoint zero, 64-byte buffer
• EP1IN, EP1OUT
• 64-byte buffers: bulk or interrupt
• EP2, 4, 6, 8
• Eight 512-byte buffers: bulk, interrupt, or isochronous. EP4
and EP8 can be double buffered, while EP2 and 6 can be
double, triple, or quad buffered. For high-speed endpoint
configuration options, see Figure 3-5.
Document # 001-06120 Rev *FPage 6 of 39
3.12.3Set-up Data Buffer
A separate 8-byte buffer at 0xE6B8-0xE6BF holds the set-up
data from a CONTROL transfer.
3.12.4Endpoint Configurations (High-speed Mode)
Endpoints 0 and 1 are the same for every configuration.
Endpoint 0 is the only CONTROL endpoint, and endpoint 1 can
be either BULK or INTERRUPT. The endpoint buffers can be
configured in any one of the 12 configurations shown in the
[+] Feedback
CY7C68053
vertical columns of Figure 3-5. When operating in full-speed
BULK mode only the first 64 bytes of each buffer are used. For
example, in high-speed the maximum packet size is 512 bytes,
but in full-speed it is 64 bytes. Even though a buffer is
configured to be a 512 byte buffer, in full-speed only the first
Figure 3-5. Endpoint Configuration
EP0 IN&OUT
EP1 IN
EP1 OUT
64
64
64
EP2
512
512
EP4
512
512
EP6
512
512
EP8
512
512
1
64
64
64
EP2
512
512
EP4
512
512
EP6
512
512
512
512
2
64
64
64
EP2
512
512
EP4
512
512
EP6
1024
1024
3
EP2
512
512
512
512
EP6
512
EP8
512
512
64
64
64
512
4
64
64
64
EP2
512
512
512
512
EP6
512
512
512
512
5
64 bytes are used. The unused endpoint buffer space is not
available for other operations. An example endpoint configuration is:
ep2064 bulk out (2×)64 int out (2×)64 iso out (2×)
ep4064 bulk out (2×)64 bulk out (2×)64 bulk out (2×)
ep6064 bulk in (2×)64 int in (2×)64 iso in (2×)
ep8064 bulk in (2×)64 bulk in (2×)64 bulk in (2×)
Notes
3. ‘0’ means ‘not implemented.’
4. ‘2×’ means ‘double buffered.’
Document # 001-06120 Rev *FPage 7 of 39
[+] Feedback
3.12.6Default High-Speed Alternate Settings
CY7C68053
Table 3-5. Default High-Speed Alternate Settings
[3, 4]
Alternate Setting0123
ep064646464
ep1out0512 bulk
ep1in0512 bulk
[5]
[5]
64 int64 int
64 int64 int
ep20512 bulk out (2×)512 int out (2×)512 iso out (2×)
ep40512 bulk out (2×)512 bulk out (2×)512 bulk out (2×)
ep60512 bulk in (2×)512 int in (2×)512 iso in (2×)
ep80512 bulk in (2×)512 bulk in (2×)512 bulk in (2×)
3.13External FIFO Interface
The architecture, control signals, and clock rates are
presented in this section.
3.13.1Architecture
The FX2LP18 slave FIFO architecture has eight 512-byte
blocks in the endpoint RAM that directly serve as FIFO
memories and are controlled by FIFO control signals (such as
IFCLK, SLCS#, SLRD, SLWR, SLOE, PKTEND, and flags).
In operation, some of the eight RAM blocks fill or empty from
the SIE while the others are connected to the IO transfer logic.
The transfer logic takes two forms: the GPIF for internally
generated control signals or the slave FIFO interface for externally controlled transfers.
In Slave (S) mode, the FX2LP18 accepts either an internally
derived clock or externally supplied clock (IFCLK, maximum
frequency 48 MHz) and SLCS#, SLRD, SLWR, SLOE,
PKTEND signals from external logic. When using an external
IFCLK, the external clock must be present before switching to
the external clock with the IFCLKSRC bit. Each endpoint can
individually be selected for byte or word operation by an
internal configuration bit, and a Slave FIFO Output Enable
signal (SLOE) enables data of the selected width. External
logic must insure that the output enable signal is inactive when
writing data to a slave FIFO. The slave interface can also
operate asynchronously, where the SLRD and SLWR signals
act directly as strobes, rather than a clock qualifier as in
synchronous mode. The signals SLRD, SLWR, SLOE and
PKTEND are gated by the signal SLCS#.
3.13.2Master/Slave Control Signals
The FX2LP18 endpoint FIFO’s are implemented as eight
physically distinct 256x16 RAM blocks. The 8051/SIE can
switch any of the RAM blocks between two domains, the USB
(SIE) domain and the 8051-IO Unit domain. This switching is
instantaneous, giving zero transfer time between ‘USB FIFO’s’
and ‘Slave FIFO’s.’ Since they are physically the same
memory, no bytes are actually transferred between buffers.
At any given time, some RAM blocks are filling and emptying
with USB data under SIE control, while other RAM blocks are
available to the 8051 and/or the IO control unit. The RAM
blocks operate as single port in the USB domain, and dual port
in the 8051-IO domain. The blocks can be configured as
single, double, triple, or quad buffered as previously shown.
The IO control unit implements either an internal master (M for
master) or external master (S for Slave) interface.
In Master (M) mode, the GPIF internally controls
FIFOADR[1:0] to select a FIFO. The two RDY pins can be
used as flag inputs from an external FIFO or other logic. The
GPIF can be run from either an internally derived clock or
externally supplied clock (IFCLK), at a rate that transfers data
up to 96 Megabytes/s (48 MHz IFCLK with 16-bit interface).
3.13.3GPIF and FIFO Clock Rates
An 8051 register bit selects one of two frequencies for the internally supplied interface clock: 30 MHz and 48 MHz. Alternatively, an externally supplied clock of 5 MHz – 48 MHz feeding
the IFCLK pin can be used as the interface clock. IFCLK can
be configured to function as an output clock when the GPIF
and FIFO’s are internally clocked. An output enable bit in the
IFCONFIG register turns this clock output off. Another bit
within the IFCONFIG register will invert the IFCLK signal
whether internally or externally sourced.
3.14GPIF
The GPIF is a flexible 8- or 16-bit parallel interface driven by a
user programmable finite state machine. It allows the
CY7C68053 to perform local bus mastering, and can
implement a wide variety of protocols such as ATA interface,
parallel printer port, and Utopia.
The GPIF has three programmable control outputs (CTL), and
two general purpose ready inputs (RDY). The data bus width
can be 8 or 16 bits. Each GPIF vector defines the state of the
control outputs, and determines what state a ready input (or
multiple inputs) must be before proceeding. The GPIF vector
can be programmed to advance a FIFO to the next data value,
advance an address, and so on. A sequence of the GPIF
vectors make up a single waveform that is executed to perform
the desired data move between the FX2LP18 and the external
device.
Notes
5. Even though these buffers are 64 bytes, they are reported as 512 for USB 2.0 compliance. The user must never transfer packets larger than 64 bytes to EP1.
Document # 001-06120 Rev *FPage 8 of 39
[+] Feedback
CY7C68053
3.14.1Three Control OUT Signals
The 56-pin package brings out three of these signals,
CTL0–CTL2. The 8051 programs the GPIF unit to define the
CTL waveforms. CTLx waveform edges can be programmed
to make transitions as fast as once per clock cycle (20.8 ns
using a 48 MHz clock).
3.14.2Two Ready IN Signals
The FX2LP18 package brings out all two Ready inputs
(RDY0–RDY1). The 8051 programs the GPIF unit to test the
RDY pins for GPIF branching.
3.14.3Long Transfer Mode
In master mode, the 8051 appropriately sets GPIF transaction
count registers (GPIFTCB3, GPIFTCB2, GPIFTCB1, or
GPIFTCB0) for unattended transfers of up to 2
32
transactions.
The GPIF automatically throttles data flow to prevent under or
overflow until the full number of requested transactions
complete. The GPIF decrements the value in these registers
to represent the current status of the transaction.
3.15ECC Generation
[6]
The MoBL-USB can calculate Error Correcting Codes (ECC’s)
on data that passes across its GPIF or Slave FIFO interfaces.
There are two ECC configurations: two ECC’s, each calculated
over 256 bytes (SmartMedia Standard) and one ECC calculated over 512 bytes.
The ECC can correct any 1-bit error or detect any 2-bit error.
3.15.1ECC Implementation
The two ECC configurations are selected by the ECCM bit.
3.15.1.1 ECCM = 0
Two 3-byte ECC’s are each calculated over a 256-byte block
of data. This configuration conforms to the SmartMedia
Standard.
This configuration writes any value to ECCRESET, then
passes data across the GPIF or Slave FIFO interface. The
ECC for the first 256 bytes of data is calculated and stored in
ECC1. The ECC for the next 256 bytes is stored in ECC2. After
the second ECC is calculated, the values in the ECCx registers
do not change until ECCRESET is written again, even if more
data is subsequently passed across the interface.
3.15.1.2 ECCM = 1
One 3-byte ECC is calculated over a 512-byte block of data.
This configuration writes any value to ECCRESET then
passes data across the GPIF or Slave FIFO interface. The
ECC for the first 512 bytes of data is calculated and stored in
ECC1; ECC2 is unused. After the ECC is calculated, the value
in ECC1 does not change until ECCRESET is written again,
even if more data is subsequently passed across the interface.
3.16USB Uploads and Downloads
The core has the ability to directly edit the data contents of the
internal 16-kByte RAM and of the internal 512-byte scratch
pad RAM via a vendor-specific command. This capability is
normally used when ‘soft’ downloading user code and is
available only to and from internal RAM, only when the 8051
is held in reset. The available RAM spaces are 16 kBytes from
0x0000–0x3FFF (code/data) and 512 bytes from
0xE000–0xE1FF (scratch pad data RAM).
[7]
3.17Autopointer Access
FX2LP18 provides two identical autopointers. They are similar
to the internal 8051 data pointers, but with an additional
feature: they can optionally increment after every memory
access.The autopointers are available in external FX2LP18
registers, under control of a mode bit (AUTOPTRSET-UP.0).
Using the external FX2LP18 autopointer access (at 0xE67B –
0xE67C) allows the autopointer to access all RAM. Also, the
autopointers can point to any FX2LP18 register or endpoint
buffer space.
3.18I2C Controller
FX2LP18 has one I2C port that is driven by two internal
controllers. One automatically operates at boot time to load the
VID/PID/DID, configuration byte, and firmware and a second
controller that the 8051, once running, uses to control external
2
I
C devices. The I2C port operates in master mode only.
2
3.18.1I
The I
up resistors even if no EEPROM is connected to the FX2LP18.
The value of the pull up resistors required may vary, depending
on the combination of V
EEPROM. The pull up resistors used must be such that when
the EEPROM pulls SDA low, the voltage level meets the V
specification of the FX2LP18. For example, if the EEPROM
runs off a 3.3V supply and V
recommended are 10K ohm. This requirement may also vary
depending on the devices being run on the I2C pins. Refer to
the I
External EEPROM device address pins must be configured
properly. See Tab le 3- 6 for configuring the device address
pins.
If no EEPROM is connected to the I
emulation is required by an external processor.This is because
the FX2LP18 comes out of reset with the DISCON bit set, so
the device will not enumerate without an EEPROM (C2 load)
or EEPROM emulation.
C Port Pins
2
C pins SCL and SDA must have external 2.2K ohm pull
and the supply used for the
CC_IO
is 1.8V, the pull up resistors
CC_IO
2
C specifications for details.
2
C port, EEPROM
IL
Notes
6. To use the ECC logic, the GPIF or Slave FIFO interface must be configured for byte-wide operation.
7. After the data has been downloaded from the host, a ‘loader’ can execute from internal RAM in order to transfer downloaded data to external memory.
Document # 001-06120 Rev *FPage 9 of 39
[+] Feedback
CY7C68053
Table 3-6. Strap Boot EEPROM Address Lines to These
Val ues
BytesExample EEPROMA2A1A0
1624AA00
[8]
N/AN/AN/A
12824AA01000
25624AA02000
4K24AA32001
8K24AA64001
16K24AA128001
3.18.2I2C Interface Boot Load Access
At power on reset the I2C interface boot loader loads the
VID/PID/DID and configuration bytes and up to 16 kBytes of
program/data. The available RAM spaces are 16 kBytes from
Figure 4-1. Signals
PortGPIF MasterSlave FIFO
PD7
PD6
PD5
PD4
PD3
PD2
PD1
PD0
PB7
PB6
XTALIN
XTALOUT
RESET#
WAKEUP#
SCL
SDA
IFCLK
CLKOUT
DPLUS
DMINUS
PB5
PB4
PB3
PB2
PB1
PB0
INT0#/PA0
INT1#/PA1
PA2
WU2/PA3
PA4
PA5
PA6
PA7
0x0000–0x3FFF and 512 bytes from 0xE000–0xE1FF. The
8051 is reset. I
2
C interface boot loads only occur after power
on reset.
3.18.3I
The 8051 can control peripherals connected to the I2C bus
using the I2CTL and I2DAT registers. FX2LP18 provides I
master control only, it is never an I
2
C Interface General Purpose Access
2
C slave.
2
4.0 Pin Assignments
Figure 4-1 identifies all signals for the package. It is followed
by the pin diagram.Three modes are available: Port, GPIF
master, and Slave FIFO. These modes define the signals on
the right edge of the diagram. The 8051 selects the interface
mode using the IFCONFIG[1:0] register bits. Port mode is the
power on default configuration.
Figure 4-2. CY7C68053 56-pin VFBGA Pin Assignment - Top view
12345678
CY7C68053
A
B
C
D
E
F
G
H
1A2A3A4A5A6A7A8A
1B2B3B4B5B6B7B8B
1C2C3C4C5C6C7C8C
1D2D7D8D
1E2E7E8E
1F2F3F4F5F6F7F8F
1G2G3G4G5G6G7G8G
1H2H3H4H5H6H7H8H
Document # 001-06120 Rev *FPage 11 of 39
[+] Feedback
CY7C68053
4.1CY7C68053 Pin Descriptions
Table 4-1. FX2LP18 Pin Descriptions
56 VFBGANameTypeDefaultDescription
2DAV
1DAV
CC
CC
PowerN/AAnalog VCC. Connect this pin to 3.3V power source. This signal provides
PowerN/AAnalog VCC. Connect this pin to 3.3V power source. This signal provides
2FAGNDGroundN/AAnalog Ground. Connect this pin to ground with as short a path as
1FAGNDGroundN/AAnalog Ground. Connect to this pin ground with as short a path as
1EDMINUSI/O/ZZUSB D– Signal. Connect this pin to the USB D– signal.
2EDPLUSI/O/ZZUSB D+ Signal. Connect this pin to the USB D+ signal.
8BRESET#InputN/AActive LOW Reset. This pin resets the entire chip. See Section 3.9 ”Reset
1CXTALINInputN/ACrystal Input. Connect this signal to a 24 MHz parallel resonant, funda-
2CXTALOUTOutputN/ACrystal Output. Connect this signal to a 24 MHz parallel resonant, funda-
2BCLKOUTO/Z12 MHzCLKOUT. 12-, 24- or 48-MHz clock, phase locked to the 24 MHz input
Port A
8GPA0 or
I/O/ZI
INT0#
6GPA1 or
I/O/ZI
INT1#
8FPA2 or
I/O/ZI
SLOE
7FPA3 or
I/O/ZI
WU2
[9]
power to the analog section of the chip.
Appropriate bulk/bypass capacitance should be provided for this
supply rail.
power to the analog section of the chip.
possible.
possible.
and Wakeup” on page 5 for more details.
mental mode crystal and load capacitor to GND.
It is also correct to drive XTALIN with an external 24-MHz square wave
derived from another clock source.
mental mode crystal and load capacitor to GND.
If an external clock is used to drive XTALIN, leave this pin open.
clock. The 8051 defaults to 12 MHz operation. The 8051 may tri-state this
output by setting CPUCS.1 = 1.
(PA0)
(PA1)
(PA2)
(PA3)
Multiplexed pin whose function is selected by PORTACFG.0
PA0 is a bidirectional IO port pin.
INT0# is the active LOW 8051 INT0 interrupt input signal, which is either
Multiplexed pin whose function is selected by two bits:
IFCONFIG[1:0].
PA2 is a bidirectional IO port pin.
SLOE is an input-only output enable with programmable polarity
(FIFOPINPOLAR.4) for the slave FIFO’s connected to FD[7:0] or FD[15:0].
Multiplexed pin whose function is selected by:
WAKEUP.7 and OEA.3
PA3 is a bidirectional IO port pin.
WU2 is an alternate source for USB Wakeup, enabled by WU2EN bit
(WAKEUP.1) and polarity set by WU2POL (WAKEUP.4). If the 8051 is in
suspend and WU2EN = 1, a transition on this pin starts up the oscillator
and interrupts the 8051 to allow it to exit the suspend mode. Asserting this
pin inhibits the chip from suspending, if WU2EN = 1.
Note
9. Unused inputs must not be left floating. Tie either HIGH or LOW as appropriate. Outputs should only be pulled up or down to ensure signals at power up and
in standby. Note also that no pins should be driven while the device is powered down
Document # 001-06120 Rev *FPage 12 of 39
[+] Feedback
CY7C68053
(PA4)
(PA5)
(PA6)
(PA7)
(PB0)
(PB1)
(PB2)
(PB3)
(PB4)
(PB5)
(PB6)
(PB7)
[9]
Multiplexed pin whose function is selected by:
IFCONFIG[1:0].
PA4 is a bidirectional IO port pin.
FIFOADR0 is an input-only address select for the slave FIFO’s connected
to FD[7:0] or FD[15:0].
Multiplexed pin whose function is selected by:
IFCONFIG[1:0].
PA5 is a bidirectional IO port pin.
FIFOADR1 is an input-only address select for the slave FIFO’s connected
to FD[7:0] or FD[15:0].
Multiplexed pin whose function is selected by the IFCONFIG[1:0] bits.
PA6 is a bidirectional IO port pin.
PKTEND is an input used to commit the FIFO packet data to the endpoint
and whose polarity is programmable using FIFOPINPOLAR.5.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
PORTACFG.7 bits.
PA7 is a bidirectional IO port pin.
FLAGD is a programmable slave FIFO output status flag signal.
SLCS# gates all other slave FIFO enable/strobes
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB0 is a bidirectional IO port pin.
FD[0] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB1 is a bidirectional IO port pin.
FD[1] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB2 is a bidirectional IO port pin.
FD[2] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB3 is a bidirectional IO port pin.
FD[3] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB4 is a bidirectional IO port pin.
FD[4] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB5 is a bidirectional IO port pin.
FD[5] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB6 is a bidirectional IO port pin.
FD[6] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
PB7 is a bidirectional IO port pin.
FD[7] is the bidirectional FIFO/GPIF data bus.
Table 4-1. FX2LP18 Pin Descriptions (continued)
56 VFBGANameTypeDefaultDescription
6FPA4 or
FIFOADR0
8CPA5 or
FIFOADR1
7CPA6 or
PKTEND
6CPA7 or
FLAGD or
SLCS#
Port B
3HPB0 or
FD[0]
4FPB1 or
FD[1]
4HPB2 or
FD[2]
4GPB3 or
FD[3]
5HPB4 or
FD[4]
5GPB5 or
FD[5]
5FPB6 or
FD[6]
6HPB7 or
FD[7]
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
Document # 001-06120 Rev *FPage 13 of 39
[+] Feedback
CY7C68053
(PD0)
(PD1)
(PD2)
(PD3)
(PD4)
(PD5)
(PD6)
(PD7)
[9]
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[8] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[9] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[10] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[11] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[12] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[13] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[14] is the bidirectional FIFO/GPIF data bus.
Multiplexed pin whose function is selected by the IFCONFIG[1:0] and
EPxFIFOCFG.0 (wordwide) bits.
FD[15] is the bidirectional FIFO/GPIF data bus.
Table 4-1. FX2LP18 Pin Descriptions (continued)
56 VFBGANameTypeDefaultDescription
PORT D
8APD0 or
FD[8]
7APD1 or
FD[9]
6BPD2 or
FD[10]
6APD3 or
FD[11]
3BPD4 or
FD[12]
3APD5 or
FD[13]
3CPD6 or
FD[14]
2APD7 or
FD[15]
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
I/O/ZI
1ARDY0 or
SLRD
1BRDY1 or
SLWR
7HCTL0 or
FLAGA
7GCTL1 or
FLAGB
8HCTL2 or
FLAGC
InputN/AMultiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
RDY0 is a GPIF input signal.
SLRD is the input only read strobe with programmable polarity (FIFOPIN-
POLAR.3) for the slave FIFO’s connected to FD[7:0] or FD[15:0].
InputN/AMultiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
RDY1 is a GPIF input signal.
SLWR is the input only write strobe with programmable polarity (FIFOPIN-
POLAR.2) for the slave FIFO’s connected to FD[7:0] or FD[15:0].
O/ZHMultiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
CTL0 is a GPIF control output.
FLAGA is a programmable slave FIFO output status flag signal.
Defaults to programmable for the FIFO selected by the FIFOADR[1:0] pins.
O/ZHMultiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
CTL1 is a GPIF control output.
FLAGB is a programmable slave FIFO output status flag signal.
Defaults to FULL for the FIFO selected by the FIFOADR[1:0] pins.
O/ZHMultiplexed pin whose function is selected by the following bits:
IFCONFIG[1:0].
CTL2 is a GPIF control output.
FLAGC is a programmable slave FIFO output status flag signal.
Defaults to EMPTY for the FIFO selected by the FIFOADR[1:0] pins.
Document # 001-06120 Rev *FPage 14 of 39
[+] Feedback
CY7C68053
Table 4-1. FX2LP18 Pin Descriptions (continued)
[9]
56 VFBGANameTypeDefaultDescription
2GIFCLK I/O/ZZInterface Clock, used for synchronously clocking data into or out of the
slave FIFO’s. IFCLK also serves as a timing reference for all slave FIFO
control signals and GPIF. When internal clocking is used (IFCONFIG.7 = 1)
the IFCLK pin can be configured to output 30/48 MHz by bits IFCONFIG.5
and IFCONFIG.6. IFCLK may be inverted, whether internally or externally
sourced, by setting the bit IFCONFIG.4 =1.
7BWAKEUPInputN/AUSB Wakeup. If the 8051 is in suspend, asserting this pin starts up the
oscillator and interrupts the 8051 to allow it to exit the suspend mode.
Holding WAKEUP asserted inhibits the MoBL-USB
chip from
suspending. This pin has programmable polarity (WAKEUP.4).
3FSCLODZClock for the I
pull up resistor. (An I
3GSDAODZData for the I
up resistor. (An I
5AV
CC_IO
PowerN/AVCC. Connect this pin to 1.8V to 3.3V power source.
2
C interface. Connect to V
2
C peripheral is required).
2
C interface. Connect to V
2
C peripheral is required).
or VCC with a 2.2K - 10K
CC_IO
or VCC with a 2.2K - 10K pull
CC_IO
Appropriate bulk/bypass capacitance should be provided for this
supply rail.
5BV
7EV
8EV
5CV
CC_IO
CC_IO
CC_IO
CC_D
PowerN/AVCC. Connect this pin to 1.8V to 3.3V power source
PowerN/AVCC. Connect this pin to 1.8V to 3.3V power source.
PowerN/AVCC. Connect this pin to 1.8V to 3.3V power source.
PowerN/AVCC. Connect this pin to 1.8V power source.(Supplies power to internal
digital 1.8V circuits)
Appropriate bulk/bypass capacitance should be provided for this
supply rail.
1GV
CC_A
PowerN/AVCC. Connect this pin to 1.8V power source.(Supplies power to internal
analog 1.8V circuits)
1HGNDGroundN/AGround.
2HGNDGroundN/AGround.
4AGNDGroundN/AGround.
4BGNDGroundN/AGround.
4CGNDGroundN/AGround.
7DGNDGroundN/AGround.
8DGNDGroundN/AGround.
Document # 001-06120 Rev *FPage 15 of 39
[+] Feedback
CY7C68053
5.0 Register Summary
FX2LP18 register bit definitions are described in the MoBL-USB TRM in greater detail.
Ledgend
R = all bits read-only
W = all bits write-only
r = read-only bit
w = write-only bit
b = both read/write bit
D7D6D5D4D3D2D1D000000000 RW
D7D6D5D4D3D2D1D000000000 RW
CYACF0RS1RS0OVF1P00000000 RW
D7D6D5D4D3D2D1D000000000 RW
111EX6EX5EX4EI²CEUSB11100000 RW
111PX6PX5PX4PI²CPUSB11100000 RW
Document # 001-06120 Rev *FPage 22 of 39
[+] Feedback
CY7C68053
6.0 Absolute Maximum Ratings
Storage Temperature ...........................................................................................................................................– 65°C to +150°C
Ambient Temperature with Power Supplied
Industrial ................................................................................................................................................................– 40°C to +85°C
Supply Voltage to Ground Potential
For 3.3V Power domain ..........................................................................................................................................– 0.5V to +4.0V
For 1.8V Power domain ..........................................................................................................................................– 0.5V to +2.0V
DC Input Voltage to Any Input Pin
For pins under 3.3V Power Domain.................................................................................................................................... 3.6V
For pins under 1.8V - 3.3V Power Domain (GPIO’s) ............................................................................................1.89V to 3.6V
(The GPIO’s are not over voltage tolerant, except the SCL and SDA pins, which are 3.3V tolerant)
DC Voltage Applied to Outputs in High Z State............................................................................................ – 0.5V to VCC + 0.5V
Maximum Power Dissipation
From AVcc Supply ............................................................................................................................................................... 90 mW
From IO Supply....................................................................................................................................................................36 mW
From Core Supply................................................................................................................................................................ 95 mW
Static Discharge Voltage .................................................................................................................................................... > 2000V
(I2C SCL and SDA pins only ... >1500V)
Maximum Output Current, per I/O port .................................................................................................................................10 mA
[14]
[14]
7.0 Operating Conditions
TA (Ambient Temperature Under Bias)
Industrial ............................................................................................................................................................... – 40°C to +85°C
Supply Voltage
3.3V Power Supply ......................................................................................................................................................3.0V to 3.6V
1.8V Power Supply ...................................................................................................................................................1.71V to1.89V
Ground Voltage ........................................................................................................................................................................... 0V
F
(Oscillator or Crystal Frequency) ............................................................................................................. 24 MHz ± 100 ppm
Figure 9-6. Slave FIFO Synchronous Packet End Strobe Timing Diagram
[17]
IFCLK
t
PEH
PKTEND
FLAGS
Table 9-9. Slave FIFO Synchronous Packet End Strobe Parameters with Internally Sourced IFCLK
t
SPE
t
XFLG
[10]
ParameterDescriptionMin.Max.Unit
t
IFCLK
t
SPE
t
PEH
t
XFLG
Table 9-10. Slave FIFO Synchronous Packet End Strobe Parameters with Externally Sourced IFCLK
IFCLK Period20.83ns
PKTEND to Clock Set-up Time14.6ns
Clock to PKTEND Hold Time0ns
Clock to FLAGS Output Propagation Delay9.5ns
[10]
ParameterDescriptionMin.Max.Unit
t
IFCLK
t
SPE
t
PEH
t
XFLG
IFCLK Period20.83200ns
PKTEND to Clock Set-up Time8.6ns
Clock to PKTEND Hold Time3.04ns
Clock to FLAGS Output Propagation Delay13.5ns
Document # 001-06120 Rev *FPage 29 of 39
[+] Feedback
CY7C68053
There is no specific timing requirement that needs to be met
for asserting the PKTEND pin with regards to asserting SLWR.
PKTEND can be asserted with the last data value clocked into
the FIFO’s or thereafter. The only consideration is that the setup time t
and the hold time t
SPE
must be met.
PEH
Although there are no specific timing requirements for the
PKTEND assertion, there is a specific corner case condition
that needs attention while using the PKTEND to commit a one
byte/word packet. There is an additional timing requirement
that needs to be met when the FIFO is configured to operate
in auto mode and you want to send two packets back to back:
a full packet (full defined as the number of bytes in the FIFO
meeting the level set in AUTOINLEN register) committed
automatically followed by a short one byte/word packet
committed manually using the PKTEND pin. In this particular
scenario, the user must make sure to assert PKTEND at least
Figure 9-7. Slave FIFO Synchronous Write Sequence and Timing Diagram
t
IFCLK
IFCLK
t
SFA
FIFOADR
>= t
SWR
SLWR
one clock cycle after the rising edge that caused the last
byte/word to be clocked into the previous auto committed
packet. Figure 9-7 shows this scenario. X is the value the
AUTOINLEN register is set to when the IN endpoint is
configured to be in auto mode.
Figure 9-7 shows a scenario where two packets are being
committed. The first packet gets committed automatically
when the number of bytes in the FIFO reaches X (value set in
AUTOINLEN register) and the second one byte/word short
packet is committed manually using PKTEND. Note that there
is at least one IFCLK cycle timing between the assertion of
PKTEND and clocking of the last byte of the previous packet
(causing the packet to be committed automatically). Failing to
adhere to this timing, results in the FX2LP18 failing to send the
one byte/word short packet.
[17]
t
FAH
>= t
WRH
t
t
FDH
SFD
X-2
t
SFD
X-1
t
FDH
t
t
SFD
FDH
X
At least one IFCLK cycle
t
t
FDH
SFD
1
DATA
PKTEND
t
t
SFD
X-4
FDH
t
SFD
X-3
t
FDH
9.8Slave FIFO Asynchronous Packet End Strobe
Figure 9-8. Slave FIFO Asynchronous Packet End Strobe Timing Diagram
t
PEpwh
PKTEND
FLAGS
Table 9-11. Slave FIFO Asynchronous Packet End Strobe Parameters
Various sequence diagrams and examples are presented in this section.
9.13.1Single and Burst Synchronous Read Example
Figure 9-13. Slave FIFO Synchronous Read Sequence and Timing Diagram
t
IFCLK
IFCLK
t
T=0
SFA
T=2
FIFOADR
SLRD
SLCS
FLAGS
t
SFA
t=0
t
SRD
t=2
t
FAH
t
RDH
t=3
t
XFLG
>= t
SRD
CY7C68053
[17]
t
FAH
>= t
RDH
T=3
t
XFD
DATA
SLOE
t
OEon
t=1
Data Driven: N
t
OEoff
N+1
t=4
Figure 9-14. Slave FIFO Synchronous Sequence of Events Diagram
FIFO POINTER
FIFO DATA BUS
IFCLK
NN
SLOESLRD
Not DrivenDriven: N
IFCLKIFCLK
IFCLK
N+1N+2
SLOE
SLRD
N+1N+2
IFCLK
Not Driven
Figure 9-13 shows the timing relationship of the SLAVE FIFO
signals during a synchronous FIFO read using IFCLK as the
synchronizing clock. The diagram illustrates a single read
followed by a burst read.
• At t = 0 the FIFO address is stable and the signal SLCS is
asserted (SLCS may be tied low in some applications).
Note t
IFCLK is running at 48 MHz, the FIFO address set-up time
has a minimum of 25 ns. This means that when
SFA
is more than one IFCLK cycle.
• At t = 1, SLOE is asserted. SLOE is an output enable only
whose sole function is to drive the data bus. The data that
is driven on the bus is the data that the internal FIFO pointer
is currently pointing to. In this example it is the first data
value in the FIFO. Note The data is pre-fetched and is driven
on the bus when SLOE is asserted.
• At t = 2, SLRD is asserted. SLRD must meet the set-up
time of t
rising edge of the IFCLK) and maintain a minimum hold time
of t
RDH
SLRD signal). If the SLCS signal is used, it must be asserted
(time from asserting the SLRD signal to the
SRD
(time from the IFCLK edge to the deassertion of the
N+1
t
OEon
SLOE
T=1
N+1
N+1
N+1
t
XFD
SLRD
t
XFD
N+2
IFCLKIFCLK
N+3
N+3
IFCLK
N+4
N+4
N+3
SLRD
t
XFD
N+4
t
OEoff
T=4
IFCLKIFCLK
N+4
SLOE
N+4
with SLRD, or before SLRD is asserted (for example, the
SLCS and SLRD signals must both be asserted to start a
valid read condition).
• The FIFO pointer is updated on the rising edge of the IFCLK
while SLRD is asserted. This starts the propagation of data
from the newly addressed location to the data bus. After a
propagation delay of t
of IFCLK) the new data value is present. N is the first data
(measured from the rising edge
XFD
value read from the FIFO. In order to have data on the FIFO
data bus, SLOE MUST also be asserted.
The same sequence of events is shown for a burst read and is
marked with the time indicators of T = 0 through 5. Note For
the burst mode, the SLRD and SLOE are left asserted during
the entire duration of the read. In the burst read mode, when
SLOE is asserted, data indexed by the FIFO pointer is on the
data bus. During the first read cycle on the rising edge of the
clock, the FIFO pointer is updated and increments to point to
address N+1. For each subsequent rising edge of IFCLK while
the SLRD is asserted, the FIFO pointer is incremented and the
next data value is placed on the data bus.
N+4
Not Driven
Document # 001-06120 Rev *FPage 33 of 39
[+] Feedback
9.13.2Single and Burst Synchronous Write
CY7C68053
Figure 9-15. Slave FIFO Synchronous Write Sequence and Timing Diagram
t
IFCLK
IFCLK
t
FIFOADR
SLWR
SLCS
FLAGS
DATA
PKTEND
SFA
t=0
t
SWR
t=2
t=3
t
t
FDH
SFD
N
t=1
t
WRH
t
XFLG
t
FAH
T=0
Figure 9-15 shows the timing relationship of the SLAVE FIFO
signals during a synchronous write using IFCLK as the
synchronizing clock. The diagram illustrates a single write
followed by burst write of 3 bytes and committing all 4 bytes as
a short packet using the PKTEND pin.
• At t = 0 the FIFO address is stable and the signal SLCS is
asserted. (SLCS may be tied low in some applications)
Note t
IFCLK is running at 48 MHz, the FIFO address set-up time
has a minimum of 25 ns. This means that when
SFA
is more than one IFCLK cycle.
• At t = 1, the external master/peripheral must output the data
value onto the data bus with a minimum set-up time of t
before the rising edge of IFCLK.
SFD
• At t = 2, SLWR is asserted. The SLWR must meet the setup time of t
rising edge of IFCLK) and maintain a minimum hold time of
t
(time from the IFCLK edge to the deassertion of the
WRH
SLWR signal). If the SLCS signal is used, it must be asserted
(time from asserting the SLWR signal to the
SWR
with SLWR or before SLWR is asserted. (for example, the
SLCS and SLWR signals must both be asserted to start a
valid write condition).
• While the SLWR is asserted, data is written to the FIFO and
on the rising edge of the IFCLK, the FIFO pointer is incremented. The FIFO flag is also updated after a delay of t
from the rising edge of the clock.
XFLG
The same sequence of events is also shown for a burst write
and is marked with the time indicators of T = 0 through 5.
Note For the burst mode, SLWR and SLCS are left asserted
for the entire duration of writing all the required data values. In
this burst write mode, once the SLWR is asserted, the data on
the FIFO data bus is written to the FIFO on every rising edge
[17]
t
SFA
>= t
t
XFLG
t
t
FDH
SFD
N+3
t
SPE
T=1
T=2
>= t
t
SFD
SWR
N+1
t
FDH
T=3
t
t
SFD
FDH
N+2
T=4
T=5
t
WRH
PEH
t
FAH
of IFCLK. The FIFO pointer is updated on each rising edge of
IFCLK. In Figure 9-15, once the four bytes are written to the
FIFO, SLWR is deasserted. The short 4-byte packet can be
committed to the host by asserting the PKTEND signal.
There is no specific timing requirement that needs to be met
for asserting the PKTEND signal with regards to asserting the
SLWR signal. PKTEND can be asserted with the last data
value or thereafter. The only requirement is that the set-up time
t
and the hold time t
SPE
Figure 9-15, the number of data values committed includes the
must be met. In the scenario of
PEH
last value written to the FIFO. In this example, both the data
value and the PKTEND signal are clocked on the same rising
edge of IFCLK. PKTEND can also be asserted in subsequent
clock cycles. The FIFOADDR lines must be held constant
during the PKTEND assertion.
Although there are no specific timing requirements for the
PKTEND assertion, there is a specific corner case condition
that needs attention while using the PKTEND to commit a one
byte/word packet. Additional timing requirements exist when
the FIFO is configured to operate in auto mode and you want
to send two packets: a full packet (full defined as the number
of bytes in the FIFO meeting the level set in AUTOINLEN
register) committed automatically followed by a short one
byte/word packet committed manually using the PKTEND pin.
In this case, the external master must make sure to assert the
PKTEND pin at least one clock cycle after the rising edge that
caused the last byte/word to be clocked into the previous auto
committed packet (the packet with the number of bytes equal
to what is set in the AUTOINLEN register). Refer to Figure 9-7
for further details on this timing.
Document # 001-06120 Rev *FPage 34 of 39
[+] Feedback
9.13.3Sequence Diagram of a Single and Burst Asynchronous Read
CY7C68053
FIFOADR
SLRD
SLCS
FLAGS
DATA
SLOE
Figure 9-16. Slave FIFO Asynchronous Read Sequence and Timing Diagram
T=0
T=1
t
t
SFA
OEon
t
t
RDpwl
RDpwh
T=3
T=2
t
XFD
N
N+1
T=4
t
RDpwl
t
RDpwh
T=5
t
XFD
T=6
N+2
t
SFA
t=0
t=1
t=2
Data (X)
Driven
t
OEon
t
RDpwl
t
FAH
t
RDpwh
t=3
t
XFLG
t
XFD
N
t
OEoff
t=4
Figure 9-17. Slave FIFO Asynchronous Read Sequence of Events Diagram
t
RDpwl
[17]
t
FAH
t
RDpwh
t
XFLG
t
XFD
N+3
t
OEoff
T=7
SLOESLRD
FIFO POINTER
NN
FIFO DATA BUS Not DrivenDriven: X
SLRD
N
N Not Driven
N+1
N
SLOE
Not Driven
Figure 9-16 illustrates the timing relationship of the SLAVE
FIFO signals during an asynchronous FIFO read. It shows a
single read followed by a burst read.
• At t = 0, the FIFO address is stable and the SLCS signal is
asserted.
• At t = 1, SLOE is asserted. This results in the data bus being
driven. The data that is driven on to the bus is previous data;
it is data that was in the FIFO from a prior read cycle.
• At t = 2, SLRD is asserted. The SLRD must meet the minimum active pulse of t
width of t
serted with SLRD or before SLRD is asserted (for example,
. If SLCS is used then, SLCS must be as-
RDpwh
and minimum de-active pulse
RDpwl
the SLCS and SLRD signals must both be asserted to start
a valid read condition).
SLOE
N+2
N+1
SLOE
N+1
N
SLRD
N+1
N+1
SLRD
N+2
N+1
SLRD
N+2
N+2
SLRD
N+3
• The data that is driven, after asserting SLRD, is the updated
data from the FIFO. This data is valid after a propagation
delay of t
16, data N is the first valid data read from the FIFO. For data
from the activating edge of SLRD. In Figure 9-
XFD
to appear on the data bus during the read cycle (for example,
SLRD is asserted), SLOE MUST be in an asserted state.
SLRD and SLOE can also be tied together.
The same sequence of events is also shown for a burst read
marked with T = 0 through 5. Note In burst read mode, during
SLOE assertion, the data bus is in a driven state and outputs
the previous data. Once SLRD is asserted, the data from the
FIFO is driven on the data bus (SLOE must also be asserted)
and then the FIFO pointer is incremented.
N+3
Document # 001-06120 Rev *FPage 35 of 39
[+] Feedback
9.13.4Sequence Diagram of a Single and Burst Asynchronous Write
CY7C68053
Figure 9-18. Slave FIFO Asynchronous Write Sequence and Timing Diagram
T=0
t
SFA
t
t
WRpwl
WRpwh
T=1
T=3
t
t
SFD
FDH
N+1
T=2
FIFOADR
SLWR
SLCS
FLAGS
DATA
PKTEND
t
SFA
t=0
t =1
t
WRpwl
t=2
t
SFD
t=3
t
WRpwh
t
FDH
N
t
FAH
t
XFLG
Figure 9-18 illustrates the timing relationship of the SLAVE
FIFO write in an asynchronous mode. The diagram shows a
single write followed by a burst write of 3 bytes and committing
the 4-byte-short packet using PKTEND.
• At t = 0 the FIFO address is applied, ensuring that it meets
the set-up time of t
asserted (SLCS may be tied low in some applications).
. If SLCS is used, it must also be
SFA
• At t = 1 SLWR is asserted. SLWR must meet the minimum
active pulse of t
of t
SLWR or before SLWR is asserted.
. If the SLCS is used, it must be asserted with
WRpwh
• At t = 2, data must be present on the bus t
deasserting edge of SLWR.
and minimum de-active pulse width
WRpwl
SFD
before the
• At t = 3, deasserting SLWR causes the data to be written
from the data bus to the FIFO and then the FIFO pointer is
[17]
t
FAH
t
t
t
WRpwl
WRpwh
T=4
T=5
t
T=6
SFD
t
FDH
N+2
T=7
incremented. The FIFO flag is also updated after t
the deasserting edge of SLWR.
WRpwl
T=8
t
WRpwh
T=9
t
XFLG
t
t
SFD
FDH
N+3
t
t
PEpwl
PEpwh
XFLG
The same sequence of events is shown for a burst write and
is indicated by the timing marks of T = 0 through 5. Note In the
burst write mode, once SLWR is deasserted, the data is written
to the FIFO and then the FIFO pointer is incremented to the
next byte in the FIFO. The FIFO pointer is post incremented.
In Figure 9-18 once the four bytes are written to the FIFO and
SLWR is deasserted, the short 4-byte packet can be
committed to the host using the PKTEND. The external device
must be designed to not assert SLWR and the PKTEND signal
at the same time. It must be designed to assert the PKTEND
after SLWR is deasserted and meet the minimum deasserted
pulse width. The FIFOADDR lines are to be held constant
during the PKTEND assertion.
from
Document # 001-06120 Rev *FPage 36 of 39
[+] Feedback
CY7C68053
10.0 Ordering Information
Table 10-1. Ordering Information
8051
Ordering CodePackage TypeRAM Size# Prog I/Os
CY7C68053-56BAXI56 VFBGA– Lead-Free16K24–
Development Tool Kit
CY3687MoBL-USB FX2LP18 Development Kit
11.0 Package Diagram
The FX2LP18 is available in a 56-pin VFBGA package.
Figure 11-1. 56 VFBGA (5 x 5 x 1.0 mm) 0.50 Pitch, 0.30 Ball BZ56
Address/Data
Busses
5.00±0.10
0.45
PIN A1 CORNER
13265486
A
B
C
D
E
F
G
H
SEATING PLANE
-C-
TOP VIEW
5.00±0.10
SIDE VIEW
BOTTOM VIEW
Ø0.05 M C
Ø0.15 M C A B
Ø0.30±0.05(56X)
78562341
0.50
3.50
5.00±0.10
-B-
-A-
0.10(4X)
0.10 C
0.080 C
REFERENCE JEDEC: MO-195C
PACKAGE WEIGHT: 0.02 grams
0.50
3.50
5.00±0.10
A1 CORNER
A
B
C
D
E
F
G
H
0.21
Document # 001-06120 Rev *FPage 37 of 39
0.160 ~0.260
1.0 max
001-03901-*B
[+] Feedback
CY7C68053
12.0 PCB Layout Recommendations
The following recommendations must be followed to ensure
reliable high-performance operation.
• At least a four-layer impedance controlled board is required
to maintain signal quality.
• Specify impedance targets (ask your board vendor what
they can achieve).
• To control impedance, maintain trace widths and trace spacing to within specifications.
• Minimize stubs to minimize reflected signals.
• Connections between the USB connector shell and signal
• Bypass/flyback caps on VBus, near connector, are recommended.
• DPLUS and DMINUS trace lengths must be kept to within
2 mm of each other in length, with preferred length of
20–30 mm.
• Maintain a solid ground plane under the DPLUS and
DMINUS traces. Do not allow the plane to be split under
these traces.
• It is preferable to have no vias placed on the DPLUS or
DMINUS trace routing.
• Isolate the DPLUS and DMINUS traces from all other signal
traces by no less than 10 mm.
ground must be done near the USB connector.
2
Purchase of I
2
C Patent Rights to use these components in an I2C system, provided that the system conforms to the I2C Standard Specification
I
C components from Cypress, or one of its sublicensed Associated Companies, conveys a license under the Philips
as defined by Philips. MoBL-USB FX2LP18, EZ-USB FX2LP and ReNumeration are trademarks, and MoBL-USB is a registered
trademark, of Cypress Semiconductor Corporation. All product and company names mentioned in this document are the trademarks of their respective holders.
products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges.
[+] Feedback
CY7C68053
Document History Page
Document Title: CY7C68053 MoBL-USB FX2LP18 USB Microcontroller
Document Number: 001-06120
REV.ECN NO. Issue Date
**43044903/03/06OSGNew data sheet
*A43475403/24/06OSGIn Section 3.3, stated that SCL and SDA pins can be connected to V
*B465471See ECNOSGChanged the recommendation for the pull up resistors on I2C
*C484726See ECNARIRemoved all references the part number CY7C68055. Corrected the bullet in
*D492009See ECNOSGAdded Icc data in DC Characteristics and Maximum Power dissipation
*E500408See ECNOSGChanged ESD spec to 1500V
*F502115See ECNOSGChanged ESD spec to 2000V and 1500V only for SCL and SDA pins.
Orig. of
ChangeDescription of Change
V
CC_IO
Changed sections 3.5, 3.18.1 and pin descriptions of SCL, SDA to indicate that
since DISCON=1 after reset, an EEPROM or EEPROM emulation is required
on the I2C interface
In pin description table, renamed pin 2H (Reserved) to Ground
In Section 6, added statement “The GPIO’s are not over voltage tolerant,
except the SCL and SDA pins, which are 3.3V tolerant“
In Section 8,added a footnote to the DC char table stating that AVcc can be
floated in low power mode
In Section 8, changed V
max in DC char table from 3.6V to V
IH
Split Icc into 4 different values, corresponding to the different voltage supplies
Changed Isus typical to 20uA and 220uA
Added section 3.9.3 on suspend current considerations
Features to state that 24 GPIO’s are available. Added the Test ID (TID#) to the
Features on the front page. Made changes to the block diagram on the first
page (this is now a Visio drawing instead of a Framemaker drawing). Corrected
the Ambient Temperature with Power Supplied. Moved figure titles to meet the
new template. Checked grammar. Took out 9-bit address bus from the block
diagram on the first page. Corrected Figure 4.1
Added min spec for t
Changed Icc and power dissipation numbers
OEoff
CC_IO
or
CC
+ 10%
Document # 001-06120 Rev *FPage 39 of 39
[+] Feedback
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.