• SmartMedia Standard Hardware ECC generation with 1-bit
correction and 2-bit detection
• GPIF (General Programmable Interface)
— Allows direct connection to most parallel interfaces
— Programmable waveform descriptors and configuration
registers to define waveforms
— Supports multiple Ready (RDY) inputs and Control (CTL)
outputs
• 12 fully-programmable GPIO pins
• 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
• 3.3V operation with 5V tolerant inputs
• Vectored USB interrupts and GPIF/FIFO interrupt s
• Separate data buffers for the Set-up and Data portions of a
CONTROL transfer
2
• Integrated I
C™ controller, runs at 100 or 400 kHz
• Four integrated FIFOs
— Integrated glue logic and FIFOs lower system cost
— Automatic conversi on to and from 16-bit buses
— Master or slave operation
— Uses external clock or asynchronous strobes
— Easy interface to ASIC and DSP ICs
Cypress Semiconductor Corporation•198 Champion Court•San Jose, CA 95134-1709•408-943-2600
Document #: 001-04247 Rev. *D Revised September 21, 2006
8051 Core
12/24/48 MHz,
four clocks/cycle
NAND
Boot Logic
(ROM)
15 kB
RAM
‘Soft Configuration’ enables
easy firmware changes
I2C
Master
Additional I/Os
GPIF
ECC
Address (16)/Data Bus (8)
4 kB
FIFO
FIFO and USB endpoint memory
(master or slave modes)
RDY (2)
CTL (3)
8/16
General Programmable
I/F to ASIC/DSP or bus
standards such as 8-bit
NAND, EPP, etc.
Up to 96 MB/s burst rate
[+] Feedback
CY7C68033/CY7C68034
Default NAND Firmware Features
Because the NX2LP-Flex™ is intended for NAND
Flash-based USB mass storage applications, a default
firmware image is included in the development kit with the
following features:
• High (480-Mbps) or full (12-Mbps) speed USB support
• Both common NAND page sizes supported
— 512 bytes for up to 1 Gb capacity
— 2K bytes for up to 8 Gb capacity
• Up to 8 NAND Flash single-device (single-die) chips are
supported
• Up to 4 NAND Flash dual-device (dual-die) chips are
supported
• Compile option allows unused CE# pins to be configured as GPIOs
— 4 dedicated GPIO pins
• Industry standard ECC NAND Flash correction
— 1-bit per 256-bit correction
— 2-bit error detection
• Industry standard (SmartMedia) page management for
wear leveling algorithm, bad block handling, and Physical
to Logical management.
• 8-bit NAND Flash interface support
• Support for 30-ns, 50-ns, and 100-ns NAND Flash timing
• Complies with the USB Mass Storage Class Specification
revision 1.0
The default firmware image implements a USB 2.0 NAND
Flash controller. This controller adheres to the Mass StorageClass Bulk-Only Transport Specification. The USB port of the
NX2LP-Flex is connected to a host computer directly or via the
downstream port of a USB hub. Host software issues
commands and data to the NX2LP-Flex and receives status
and data from the NX2LP-Flex using standard USB protocol.
The default firmware image supports industry leading 8-bit
NAND Flash interfaces and both common NAND page sizes
of 512 and 2k bytes. Up to eight chip enable p ins allow the
NX2LP-Flex to be connected to up to eight single- or four
dual-die NAND Flash chips.
Complete source code and documentation for the default
firmware image are included in the NX2LP-Flex development
kit to enable customization for meeting design requirements.
Additionally, compile options for the default firmware allow for
quick configuration of some features to decrease design effort
and increase time-to-market advantages.
Overview
Cypress Semiconductor Corporation’s (Cypress’s) EZ-USB
NX2LP-Flex (CY7C68033/CY7C68034) is a firmware-based,
programmable version of the EZ-USB NX2LP™
(CY7C68023/CY7C68024), which is a fixed-function,
low-power USB 2.0 NAND Flash controller. 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 enables feature-rich NAND
Flash-based applications.
The ingenious architecture of NX2LP-Flex results in USB data
transfer rates of over 53 Mbytes per second, the
maximum-allowable USB 2.0 bandwidth, while still using a
low-cost 8051 microcontroller in a small 56-pin QFN package.
Because it incorporates the USB 2.0 transceiver, the
NX2LP-Flex is more economical, providing a smaller footprint
solution than external USB 2.0 SIE or transceiver implementations. With EZ-USB NX2LP-Flex, the Cypress Smart SIE
handles most of the USB 1.1 and 2.0 protocol, freeing the
embedded microcontroller for application-specific functions
and decreasing development time while ensuring 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, I
2
C, PCMCIA, and most DSP processors.
Applications
The NX2LP-Flex allows designers to add extra functionality to
basic NAND Flash mass storage designs, or to interface them
with other peripheral devices. Applications may include:
• NAND Flash-based GPS devices
• NAND Flash-based DVB video capture devices
• Wireless pointer/presenter tools with NAND Flash storage
• NAND Flash-based MPEG/TV conversion devices
• Legacy conversion devices with NAND Flash storage
• NAND Flash-based cameras
• NAND Flash mass storage device with biometric (e.g.,
fingerprint) security
• Home PNA devices with NAND Flash storage
• Wireless LAN with NAND Flash storage
• NAND Flash-based MP3 players
• LAN networking with NAND Flash storage
Document #: 001-04247 Rev. *DPage 2 of 33
[+] Feedback
CY7C68033/CY7C68034
Figure 1. Example DVB Block Diagram
NAND-Based
DVB Unit
LCD
D+/-
Audio / Video I/O
Buttons
I/O
NX2LP-
Flex
DVB
Decoder
CTL
CE[7:0]
I/OI/O
NAND Bank(s)
I/O
Figure 2. Example GPS Block Diagram
NAND-Based
GPS Unit
LCD
D+/-
Buttons
I/O
NX2LP-
Flex
CTL
CE[7:0]
I/OI/O
NAND Bank(s)
I/O
8051 Microprocessor
The 8051 microprocessor embedded in the NX2LP-Flex has
256 bytes of register RAM, an expanded interrupt system and
three timer/counters.
8051 Clock Frequency
NX2LP-Flex 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, and 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. Crystal Configuration.
24 MHz
C1
12 pf
C2
12 pf
20 × PLL
GPS
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. Please visit
http://www.cypress.com for more information.
Functional Overview
USB Signaling Speed
NX2LP-Flex 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.
NX2LP-Flex does not support the low-speed signaling mode
of 1.5 Mbps.
12-pF capacitor values assumes a trace capacitance
of 3 pF per side on a four-layer FR4 PCA
Special Function Registers
Certain 8051 SFR addresses are populated to provide fast
access to critical NX2LP-Flex functions. These SFR additions
are shown in Table 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 I/O ports
A–D use the SFR addresses used in the standard 8051 for
ports 0–3, which are not implemented in NX2LP-Flex.
Because of the faster and more efficient SFR addressing, the
NX2LP-Flex I/O ports are not addressable in external RAM
space (using the MOVX instruction).
2
I
C Bus
2
NX2LP supports the I
SCL and SDA pins have open-drain outputs and hysteresis
inputs. These signals must be pulled up to 3.3V , even if no I
device is connected. The I
C bus as a master only at 100-/400-kHz.
2
2
C bus is disabled at startup and
only available for use after the initial NAND access.
The NX2LP-Flex features an 8- or 16-bit ‘FIFO’ bidirectional
data bus, multiplexed on I/O port s B and D.
The default firmware image implements an 8-bit data bus in
GPIF Master mode. It is recommended that additional interfaces added to the default firmware image use thi s 8-bit data
bus.
Enumeration
During the start-up sequence, internal logic checks for the
presence of NAND Flash with valid firmware. If valid firmware
is found, the NX2LP-Flex loads it and operates accord ing to
the firmware. If no NAND Flash is detected, or if no valid
firmware is found, the NX2LP-Flex uses the default values
from internal ROM space for manufacturing mode operation.
The two modes of operation are described in the section
”Normal Operation Mode” on page 5 and ”Manufacturing
Mode” on page 5.
Document #: 001-04247 Rev. *DPage 4 of 33
[+] Feedback
CY7C68033/CY7C68034
Figure 4. NX2LP-Flex Enumeration Sequence
Start-up
YesNo
NAND Flash
Programmed?
Yes
Load Firmware
From NAND
NAND Flash
Present?
No
Load Default
Descriptors and
Configuration Data
values stored in ROM space. The default silicon ID values
should only be used for development purposes. Cypress
requires designers to use their own Vendor ID for final
products. A Vendor ID is obtained through registration with the
USB Implementor’s Forum (USB-IF). Also, if the NX2LP-Flex
is used as a mass storage class device, a unique USB serial
number is required for each device in order to comply with the
USB Mass Storage class specification.
Cypress provides all the software tools and drivers necessary
for properly programming and testing the NX2LP-Flex. Please
refer to the documentation in the development kit for more
information on these topics.
Cypress’s ReNumeration™ feature is used in conjunction with
the NX2LP-Flex manufacturing software tools to enable
first-time NAND programming. It is only available when used
in conjunction with the NX2LP-Flex Manufacturing tools, and
is not enabled during normal operation.
Enumerate
According To
Firmware
Normal Operation
Mode
Enumerate As
Unprogrammed
NX2LP-Flex
Manufacturing
Mode
Normal Operation Mode
In Normal Operation Mode, the NX2LP-Flex behaves as a
USB 2.0 Mass Storage Class NAND Flash controller. This
includes all typical USB device states (powered, configured,
etc.). The USB descriptors are returned accordi n g to th e d ata
stored in the configuration data memory area. Normal read
and write access to the NAND Flash is available in this mode.
Manufacturing Mode
In Manufacturing Mode, the NX2LP-Flex enumerates using
the default descriptors and configuration data that are stored
in internal ROM space. This mode allows for first-time
programming of the configuration data memory area, as well
as board-level manufacturing tests.
Default Silicon ID Values
To facilitate proper USB enumeration when no programmed
NAND Flash is present, the NX2LP-Flex has default silicon ID
Bus-powered Applications
The NX2LP-Flex fully supports bus-powered designs by
enumerating with less than 100 mA, as required by the USB
2.0 specification.
Interrupt System
INT2 Interrupt Request and Enable Registers
NX2LP-Flex implements an autovector feature for INT2 and
INT4. There are 27 INT2 (USB) vectors, and 14 INT4
(FIFO/GPIF) vectors. See the EZ-USB Technical Reference
Manual (TRM) for more details.
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
NX2LP-Flex provides a second level of interrupt vectoring,
called Autovectoring. When a USB interrupt is asserted, the
NX2LP-Flex pushes the program counter onto its stack then
jumps to address 0x0500, where it expects to find a ‘jump’
instruction to the USB Interrupt service routin e .
Developers familiar with Cypress’s programmable USB
devices should note that these interrupt vector values differ
from those used in other EZ-USB microcontrollers. This is due
to the additional NAND boot logic that is present in the
NX2LP-Flex ROM space. Also, these values are fixed and
cannot be changed in the firmware.
Document #: 001-04247 Rev. *DPage 5 of 33
[+] Feedback
CY7C68033/CY7C68034
Table 3. INT2 USB Interrupts
USB INTERRUPT TABLE FOR INT2
PriorityINT2VEC ValueSource Notes
10x500SUDAV Setup Data Available
20x504SOF Start of Frame (or microframe)
30x508SUTOK Setup Token Received
40x50CSUSPEND USB Suspend request
50x510USB RESETBus reset
6 0x514HISPEED Entered high speed operation
7 0x518EP0ACK NX2LP ACK’d the CONTROL Handshake
8 0x51CReserved
9 0x520EP0-IN EP0-IN ready to be loaded with data
10 0x524EP0-OUT EP0-OUT has USB data
11 0x528EP1-IN EP1-IN ready to be loaded with data
12 0x52CEP1-OUT EP1-OUT has USB data
13 0x530EP2 IN: buffer available. OUT: buffer has data
14 0x534EP4 IN: buffer available. OUT: buffer has data
15 0x538EP6 IN: buffer available. OUT: buffer has data
16 0x53CEP8 IN: buffer available. OUT: buffer has data
17 0x540IBN IN-Bulk-NAK (any IN endpoint)
18 0x544Reserved
19 0x548EP0PINGEP0 OUT was Pinged and it NAK’d
20 0x54CEP1PING EP1 OUT was Pinged and it NAK’d
21 0x550EP2PING EP2 OUT was Pinged and it NAK’d
22 0x554EP4PING EP4 OUT was Pinged and it NAK’d
23 0x558EP6PING EP6 OUT was Pinged and it NAK’d
24 0x55CEP8PING EP8 OUT was Pinged and it NAK’d
25 0x560ERRLIMITBus errors exceeded the programmed limit
26 0x564Reserved
27 0x568Reserved
28 0x56CReserved
29 0x570EP2ISOERR ISO EP2 OUT PID sequence error
30 0x574EP4ISOERR ISO EP4 OUT PID sequence error
31 0x578EP6ISOERR ISO EP6 OUT PID sequence error
32 0x57CEP8ISOERR ISO EP8 OUT PID sequence error
If Autovectoring is enabled (AV2EN = 1 in the INTSET-UP
register), the NX2LP-Flex substitutes its INT2VEC byte.
Therefore, if the high byte (‘page’) of a jump-table address is
preloaded at location 0x544, the automatically-inserted
INT2VEC byte at 0x545 will direct the jump to the correct
address out of the 27 addresses within the page.
Document #: 001-04247 Rev. *DPage 6 of 33
FIFO/GPIF Interrupt (INT4)
Just as the USB Interrupt is shared among 27 individual
USB-interrupt sources, the FIFO/GPIF interrupt is shared
among 14 individual FIFO/GPIF sources. The FIFO/GPIF
Interrupt, like the USB Interrupt, can employ autovectoring.
Table 4 shows the priority and INT4VEC values for the 14
FIFO/GPIF interrupt sources.
[+] Feedback
CY7C68033/CY7C68034
Ta bl e 4. Individual FIFO/GPIF Interrupt Sources
PriorityINT4VEC ValueSource Notes
10x580EP2PFEndpoint 2 Programmable Flag
2 0x584 EP4PFEndpoint 4 Programmable Flag
30x588EP6PFEndpoint 6 Programmable Flag
40x58CEP8PFEndpoint 8 Programmable Flag
50x590EP2EFEndpoint 2 Empty Flag
60x594EP4EFEndpoint 4 Empty Flag
70x598EP6EFEndpoint 6 Empty Flag
80x59CEP8EFEndpoint 8 Empty Flag
90x5A0 EP2FFEndpoint 2 Full Flag
100x5A4EP4FFEndpoint 4 Full Flag
110x5A8EP6FFEndpoint 6 Full Flag
120x5AC EP8FFEndpoint 8 Full Flag
13 0x5B0GPIFDONEGPIF Operation Complete
14 0x5B4GPIFWFGPIF Waveform
If Autovectoring is enabled (AV4EN = 1 in the INTSET-UP
register), the NX2LP-Flex substitutes its INT4VEC byte.
Therefore, if the high byte (‘page’) of a jump-table address is
preloaded at location 0x554, the automatically-inserted
INT4VEC byte at 0x555 will direct the jump to the correct
address out of the 14 addresses within the page. When the
ISR occurs, the NX2LP-Flex pushes the program counter onto
its stack then jumps to address 0x553, where it expects to find
a ‘jump’ instruction to the ISR Interrupt service routine.
Reset and Wakeup
Reset Pin
The input pin RESET#, will reset the NX2LP-Flex when
asserted. This pin has hysteresis and is active LOW. When a
crystal is used as the clock source for the NX2LP-Flex, the
Figure 5. Reset Timing Plots
RESET#
V
IL
3.3V
3.0V
V
CC
0V
T
RESET
Power-on Reset
reset period must allow for the stabilization of the crystal and
the PLL. This reset period should be approximately 5 ms after
V
has reached 3.0V. If the crystal input pin is driven by a
CC
clock signal, the internal PLL stabilizes in 200 μs after V
reached 3.0V
[1]
. Figure 5 shows a power-on reset condition
CC
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 NX2LP-Flex 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 EZ-USB family of products visit the
http://www.cypress.com website.
RESET#
V
IL
3.3V
V
CC
0V
T
RESET
Powered Reset
has
Note
1. If the external clock is powered at the same time as the CY7C68033/CY7C68034 and has a stabilization wait period, it must be added to the 200 μs.
Document #: 001-04247 Rev. *DPage 7 of 33
[+] Feedback
CY7C68033/CY7C68034
Table 5. Reset Timing Values
ConditionT
RESET
Power-on Reset with crystal5 ms
Power-on Reset with external
200 μs + Clock stability time
clock source
Powered Reset200 μs
Wakeup 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
NX2LP-Flex is connected to the USB.
The NX2LP-Flex 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 NX 2L P-F l ex an d
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 I/O 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.
Figure 6. Internal Code Memory
FFFF
E200
E1FF
E000
*SUDPTR, USB download, NAND boot access
Register Addresses
Figure 7. Internal Register Addresses
7.5 kBytes
USB registers
and 4 kBytes
FIFO buffers
(RD#, WR#)
512 Bytes RAM Data
(RD#, WR#)*
3FFF
15 kBytes RAM
Code and Data
(PSEN#, RD#,
0500
1 kbyte ROM
0000
WR#)*
Program/Data RAM
Internal ROM/RAM Size
The NX2LP-Flex has 1 kBytes ROM and 15 kBytes of internal
program/data RAM, where PSEN#/RD# signals are internally
ORed to allow the 8051 to access it as both program and data
memory. No USB control registers appear in this space.
Internal Code Memory
This mode implements the internal block of RAM (starting at
0x0500) as combined code and data memory, as shown in
Figure 6, below.
Only the internal and scratch pad RAM spaces have the
following access:
• USB download (only supported by the Cypress Manufacturing Tool)
• 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 either double, triple, or quad buffered.
For high-speed endpoint configuration options, see Figure 8.
Figure 8. 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
512
EP8
512
512
64
64
64
64
64
64
EP2
512
512
512
512
EP6
512
512
512
512
4
5
Setup Data Buffer
A separate 8-byte buffer at 0xE6B8-0xE6BF holds the setup
data from a CONTROL transfer.
Endpoint 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 1 of the 12 configurations shown in the
vertical columns. When operating in full-speed BULK mode,
only the first 64 bytes of each buffer are used. For example, in
high-speed the max 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 64 bytes are used. The
unused endpoint buffer space is not available for other operations. An example endpoint configuration would be:
ep064646464
ep1out064 bulk64 int64 int
ep1in064 bulk64 int64 int
ep2064 bulk out (2×)64 int out (2×)64 iso out (2×)
Notes
2. ‘0’ means ‘not implemented.’
3. ‘2×’ means ‘double buffered.’
Document #: 001-04247 Rev. *DPage 9 of 33
[+] Feedback
CY7C68033/CY7C68034
Table 6. Default Full-Speed Alternate Settings
[2, 3]
(continued)
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×)
Default High-Speed Alternate Settings
Table 7. Default High-Speed Alternate Settings
[2, 3]
Alternate Setting0123
ep064646464
ep1out0512 bulk
ep1in0512 bulk
[4]
[4]
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×)5 12 bulk in (2×)
External FIFO Interface
Architecture
The NX2LP-Flex 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
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 I/O transfer
logic. The transfer logic takes two forms, the GPIF for internally
generated control signals, or the slave FIFO interface for
externally controlled transfers.
(IFCLK), at a rate that transfers data up to 96 Megabytes/s
(48-MHz IFCLK with 16-bit interface).
In Slave (S) mode, the NX2LP-Flex accepts an internally
derived clock (IFCLK, max. frequency 48 MHz) and SLCS#,
SLRD, SLWR, SLOE, PKTEND signals from external logic.
Each endpoint can individually be selected for byte or word
operation by an internal configuration bit, and a Slave F IFO
Output Enable signal SLOE enables data of the selected
width. External logic must ensure that the output enable signal
is inactive when writing data to a slave FIFO. The slave
interface must operate asynchronously, where the SLRD and
SLWR signals act directly as strobes, rather than a clock
qualifier as in a synchronous mode. The signals SLRD, SLWR,
Master/Slave Control Signals
The NX2LP-Flex endpoint FIFOS 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-I/O Unit domain. This switching is
done virtually instantaneously, giving essentially zero transfer
time between ‘USB FIFOS’ and ‘Slave FIFOS.’ Since they are
physically the same memory, no bytes are actually transferred
between buffers.
At any given time, some RAM blocks are filling/emptying with
USB data under SIE control, while other RAM blocks are
available to the 8051 and/or the I/O control unit. The RAM
blocks operate as single-port in the USB domain, and
dual-port in the 8051-I/O domain. The blocks can be
configured as single, double, triple, or quad buffered as previously shown.
The I/O 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 if
desired. The GPIF can be run from an internally derived clock
SLOE and PKTEND are gated by the signal SLCS#.
GPIF and FIFO Clock Rates
An 8051 register bit selects one of two frequencies for the
internally supplied interface clock: 30 MHz and 48 MHz. A bit
within the IFCONFIG register will invert the IFCLK signal.
The default NAND firmware image implements a 48-MHz
internally supplied interface clock. The NAND boot logic uses
the same configuration to implement 100-ns timing on the
NAND bus to support proper detection of all NAND Flash
types.
GPIF
The GPIF is a flexible 8- or 16-bit parallel interface driven by a
user-programmable finite state machine. It allows the
NX2LP-Flex to perform local bus mastering, and can
implement a wide variety of protocols such as 8-bit NAND
interface, printer parallel port, and Utopia. The default NAND
firmware and boot logic utilizes GPIF functionality to interface
with NAND Flash.
The GPIF on the NX2LP-Flex features three programmable
control outputs (CTL) and two general-purpose ready inputs
(RDY). The GPIF data bus width can be 8 or 16 bits. Because
Note
4. 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-04247 Rev. *DPage 10 of 33
[+] Feedback
CY7C68033/CY7C68034
the default NAND firmware image implements an 8-bit data
bus and up to 8 chip enable pins on the GPIF ports, it is recommended that designs based upon the default firmware image
use an 8-bit data bus as well.
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,
etc. A sequence of the GPIF vectors make up a single
waveform that will be executed to perform the desired data
move between the NX2LP-Flex and the external device.
Three Control OUT Signals
The NX2LP-Flex exposes three control signals, CTL[2:0].
CTLx waveform edges can be programmed to make transitions as fast as once per clock (20.8 ns using a 48-MHz clock).
Two Ready IN Signals
The 8051 programs the GPIF unit to test the RDY pins for
GPIF branching. The 56-pin package brings out two signals,
RDY[1:0].
Long Transfer Mode
In GPIF 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
over-flow until the full number of requested transactions
complete. The GPIF decrements the value in these registers
to represent the current status of the transaction.
ECC Generation
[5]
The NX2LP-Flex can calculate ECCs (Error-Correcting
Codes) on data that passes across its GPIF or Slave FIFO
interfaces. There are two ECC configurations:
• Two ECCs, each calculated over 256 bytes (SmartMedia
Standard)
• One ECC calculated over 512 bytes.
The two ECC configurations described below are selected by
the ECCM bit. The ECC can correct any one-bit error or detect
any two-bit error.
ECCM = 0
Two 3-byte ECCs, each calculated over a 256-byte block of
data. This configuration conforms to the SmartMedia Standard
and is used by both the NAND boot logic and default NAND
firmware image.
When any value is written to ECCRESET and data is then
passed across the GPIF or Slave FIFO interface, the ECC for
the first 256 bytes of data will be calculated and stored in
ECC1. The ECC for the next 256 bytes of data will be stored
in ECC2. After the second ECC is calculated, the values in the
ECCx registers will not change until ECCRESET is written
again, even if more data is subsequently passed across the
interface.
ECCM = 1
One 3-byte ECC calculated over a 512-byte block of data.
When any value is written to ECCRESET and data is then
passed across the GPIF or Slave FIFO interface, the ECC for
the first 512 bytes of data will be calculated and stored in
ECC1; ECC2 is unused. After the ECC is calculated, the value
in ECC1 will not change until ECCRESET is written again,
even if more data is subsequently passed across the interface
Autopointer Access
NX2LP-Flex 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. Also, the autopointers can point to any NX2LP-Flex
register or endpoint buffer space.
2
I
C Controller
NX2LP has one I2C port that the 8051, once running uses to
control external I
mode only. The I
2
C devices. The I2C port operates in master
2
C post is disabled at startup and only
available for use after the initial NAND access.
2
I
C Port Pins
2
The I
C pins SCL and SDA must have external 2.2-kΩ pull-up
resistors even if no EEPROM is connected to the NX2LP.
2
I
C Interface General-Purpose Access
The 8051 can control peripherals connected to the I
using the I
master control only and is never an I
2
CTL and I2DATA registers. NX2LP provides I2C
2
C slave.
2
C bus
Note
5. T o use the ECC logic, the GPIF or Slave FIFO interface must be configured for byte-wide operation.
Document #: 001-04247 Rev. *DPage 11 of 33
[+] Feedback
CY7C68033/CY7C68034
Pin Assignments
Figure 9 and Figure 10 identify all signals for the 56-pin
NX2LP-Flex package.
Three modes of operation are available for the NX2LP-Flex:
Port mode, GPIF Master mode, and Slave FIFO mode. These
modes define the signals on the right edge of each column in
Figure 9. The right-most column details the signal functionality
from the default NAND firmware image, which actually utilizes
GPIF Master mode. The signals on the left edge of the ‘Port’
column are common to all modes of the NX2LP-Flex. The
8051 selects the interface mode using the IFCONFIG[1:0]
register bits. Port mode is the power-on default configuration.
Figure 10 details the pinout of the 56-pin package and lists pin
names for all modes of operation. Pin names with an asterisk
(*) feature programmable polarity.
9DMINUSN/AI/O/ZZUSB D– Signal. Connect to the USB D– signal.
8DPLUSN/AI/O/ZZUSB D+ Signal. Connect to the USB D+ signal.
42RESET#N/AInputN/AActive LOW Reset. Resets the entire chip. See section ”Reset and
Wakeup” on page 7 for more details.
5XTALINN/AInputN/ACrystal Input. Connect this signal to a 24-MHz parallel-resonant,
fundamental 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. When driving from an
external source, the driving signal should be a 3.3V square wave.
4XT ALOUTN/AOutputN/ACrystal Output. Connect this signal to a 24-MHz parallel-resonant,
fundamental mode crystal and load capacitor to GND.
If an external clock is used to drive XTALIN, leave this pin open.
54GPIO9GPIO9O/Z12 MHz GPIO9 is a bidirectional IO port pin.
1RDY0 or
SLRD
R_B1#InputN/AMultiplexed pin whose function is selected by IFCONFIG[1:0].
RDY0 is a GPIF input signal.
SLRD is the input-only read strobe with programmable polarity
(FIFOPINPOLAR[3]) for the slave FIFOs connected to FD[7:0] or
FD[15:0].
R_B1# is a NAND Ready/Busy input signal.
2RDY1 or
SLWR
R_B2#InputN/AMultiplexed pin whose function is selected by IFCONFIG[1:0].
RDY1 is a GPIF input signal.
SLWR is the input-only write strobe with programmable polarity
(FIFOPINPOLAR[2]) for the slave FIFOs connected to FD[7:0] or
FD[15:0].
R_B2# is a NAND Ready/Busy input signal.
29CTL0 or
FLAGA
WE#O/ZHMultiplexed pin whose function is selected by 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.
WE# is the NAND write enable output signal.
30CTL1 or
FLAGB
RE0#O/ZHMultiplexed pin whose function is selected by 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.
RE0# is a NAND read enable output signal.
31CTL2 or
FLAGC
RE1#O/ZHMultiplexed pin whose function is selected by 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.
RE1# is a NAND read enable output signal.
Note
6. Unused inputs should not be left floating. Tie ei ther HIGH or LOW as app ropriate . Outp ut s should only be pull ed up or down to ensure signals at power-up and i
standby. Note also that no pins should be driven while the device is powered down.
Document #: 001-04247 Rev. *DPage 14 of 33
[+] Feedback
CY7C68033/CY7C68034
Table 8. NX2LP-Flex Pin Descriptions (continued)
56 QFN
Number
Port A
Default Pin
Pin
13GPIO8GPIO8I/O/ZIGPIO8: is a bidirectional IO port pin.
14Reserved#N/AInputN/AReserved. Connect to ground.
15SCLN/AODZClock for the I
16SDA TAN/AODZData for the I2C interface. Connect to VCC with a 2.2K resistor, even
44WAKEUPUnusedInputN/AUSB Wakeup. If the 8051 is in suspend, asserting this pin starts up
33PA0 or
34PA1 or
35PA2 or
36PA3 or
37PA4 or
38PA5 or
Name
INT0#
INT1#
SLOE
WU2
FIFOADR0
FIFOADR1
NAND
Firmware
Usage
CLEI/O/ZI
ALEI/O/ZI
LED1#I/O/ZI
LED2#I/O/ZI
WP_NF#I/O/ZI
WP_SW#I/O/ZI
Pin
Type
[6]
Default
State
(PA0)
(PA1)
(PA2)
(PA3)
(PA4)
(PA5)
Description
2
C interface. Connect to VCC with a 2.2K resistor,
2
even if no I
if no I
the oscillator and interrupts the 8051 to allow it to exit the suspend
mode. Holding WAKEUP asserted inhibits the EZ-USB chip from
suspending. This pin has programmable polarity, controlled by
WAKEUP[4].
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 edge triggered (IT0 = 1) or level triggered (IT0 = 0).
CLE is the NAND Command Latch Enable signal.
Multiplexed pin whose function is selected by PORTACFG[1]
PA1 is a bidirectional IO port pin.
INT1# is the active-LOW 8051 INT1 interrupt input signal, which is
either edge triggered (IT1 = 1) or level triggered (IT1 = 0).
ALE is the NAND Address Latch Enable signal.
Multiplexed pin whose function is selected by 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 FIFOs connected to FD[7:0] or
FD[15:0].
LED1# is the data activity indicator LED sink pin.
Multiplexed pin whose function is selected by WAKEUP[7] and
OEA[3]
PA3 is a bidirectional I/O 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.
LED2# is the chip activity indicator LED sink pin.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PA4 is a bidirectional I/O port pin.
FIFOADR0 is an input-only address select for the slave FIFOs
connected to FD[7:0] or FD[15:0].
WP_NF# is the NAND write-protect control output signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PA5 is a bidirectional I/O port pin.
FIFOADR1 is an input-only address select for the slave FIFOs
connected to FD[7:0] or FD[15:0].
WP_SW# is the NAND write-protect switch input signal.
C peripheral is attached.
2
C peripheral is attached.
Document #: 001-04247 Rev. *DPage 15 of 33
[+] Feedback
CY7C68033/CY7C68034
Table 8. NX2LP-Flex Pin Descriptions (continued)
56 QFN
Pin
Number
39PA6 or
40PA7 or
Port B
18PB0 or
19PB1 or
20PB2 or
21PB3 or
22PB4 or
23PB5 or
24PB6 or
25PB7 or
PORT D
45PD0 or
Default Pin
Name
PKTEND
FLAGD or
SLCS#
FD[0]
FD[1]
FD[2]
FD[3]
FD[4]
FD[5]
FD[6]
FD[7]
FD[8]
NAND
Firmware
Usage
GPIO0
(Input)
GPIO1
(Input)
DD0I/O/ZI
DD1I/O/ZI
DD2I/O/ZI
DD3I/O/ZI
DD4I/O/ZI
DD5I/O/ZI
DD6I/O/ZI
DD7I/O/ZI
CE0#I/O/ZI
Pin
Type
I/O/ZI
I/O/ZI
[6]
Default
State
(PA6)
(PA7)
(PB0)
(PB1)
(PB2)
(PB3)
(PB4)
(PB5)
(PB6)
(PB7)
(PD0)
Description
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
bits.
PA6 is a bidirectional I/O port pin.
PKTEND is an input used to commit the FIFO packet data to the
endpoint and whose polarity is programmable via FIFOPINPOLAR[5].
GPIO1 is a general purpose I/O signal.
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
and PORTACFG[7] bits.
PA7 is a bidirectional I/O port pin.
FLAGD is a programmable slave-FIFO output status flag signal.
SLCS# gates all other slave FIFO enable/strobes
GPIO0 is a general purpose I/O signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB0 is a bidirectional I/O port pin.
FD[0] is the bidirectional FIFO/GPIF data bus.
DD0 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB1 is a bidirectional I/O port pin.
FD[1] is the bidirectional FIFO/GPIF data bus.
DD1 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB2 is a bidirectional I/O port pin.
FD[2] is the bidirectional FIFO/GPIF data bus.
DD2 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB3 is a bidirectional I/O port pin.
FD[3] is the bidirectional FIFO/GPIF data bus.
DD3 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB4 is a bidirectional I/O port pin.
FD[4] is the bidirectional FIFO/GPIF data bus.
DD4 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB5 is a bidirectional I/O port pin.
FD[5] is the bidirectional FIFO/GPIF data bus.
DD5 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB6 is a bidirectional I/O port pin.
FD[6] is the bidirectional FIFO/GPIF data bus.
DD6 is a bidirectional NAND data bus signal.
Multiplexed pin whose function is selected by IFCONFIG[1:0].
PB7 is a bidirectional I/O port pin.
FD[7] is the bidirectional FIFO/GPIF data bus.
DD7 is a bidirectional NAND data bus signal.
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.
CE0# is a NAND chip enable output signal.
Document #: 001-04247 Rev. *DPage 16 of 33
[+] Feedback
CY7C68033/CY7C68034
Table 8. NX2LP-Flex Pin Descriptions (continued)
56 QFN
Number
Power and Ground
Default Pin
Pin
46PD1 or
47PD2 or
48PD3 or
49PD4 or
50PD5 or
51PD6 or
52PD7 or
3
7
6
10
11
17
27
32
43
55
12
26
28
41
53
56
Name
FD[9]
FD[10]
FD[11]
FD[12]
FD[13]
FD[14]
FD[15]
AVCCN/APowerN/AAnalog V
AGNDN/AGroundN/AAnalog Ground. Connect to ground with as short a path as
VCCN/APowerN/AV
GNDN/AGroundN/AGround.
NAND
Firmware
Usage
CE1#I/O/ZI
CE2# or GPIO2I/O/ZI
CE3# or GPIO3I/O/ZI
CE4# or GPIO4I/O/ZI
CE5# or GPIO5I/O/ZI
CE6# or GPIO6I/O/ZI
CE7# or GPIO7I/O/ZI
Pin
Type
[6]
Default
State
(PD1)
(PD2)
(PD3)
(PD4)
(PD5)
(PD6)
(PD7)
Description
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.
CE1# is a NAND chip enable output signal.
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
and EPxFIFOCFG.0 (wordwide) bits.
FD[10] is the bidirectional FIFO/GPIF dat a bus.
CE2# is a NAND chip enable output signal.
GPIO2 is a general purpose I/O signal.
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.
CE3# is a NAND chip enable output signal.
GPIO3 is a general purpose I/O signal.
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
and EPxFIFOCFG.0 (wordwide) bits.
FD[12] is the bidirectional FIFO/GPIF dat a bus.
CE4# is a NAND chip enable output signal.
GPIO4 is a general purpose I/O signal.
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
and EPxFIFOCFG.0 (wordwide) bits.
FD[13] is the bidirectional FIFO/GPIF dat a bus.
CE5# is a NAND chip enable output signal.
GPIO5 is a general purpose I/O signal.
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
and EPxFIFOCFG.0 (wordwide) bits.
FD[14] is the bidirectional FIFO/GPIF dat a bus.
CE6# is a NAND chip enable output signal.
GPIO6 is a general purpose I/O signal.
Multiplexed pin whose function is selected by the IFCONFIG[1:0]
and EPxFIFOCFG.0 (wordwide) bits.
FD[15] is the bidirectional FIFO/GPIF dat a bus.
CE7# is a NAND chip enable output signal.
GPIO7 is a general purpose I/O signal.
. Connect this pin to 3.3V power source. This signal
provides power to the analog section of the chip.
possible.
CC
CC
. Connect to 3.3V power source.
Document #: 001-04247 Rev. *DPage 17 of 33
[+] Feedback
CY7C68033/CY7C68034
Register Summary
NX2LP-Flex register bit definitions are described in the EZ-USB TRM in greater detail. Some registers that are listed here and in
the TRM do not apply to the NX2LP-Flex. They are kept here for consistency reasons only. Registers that do not apply to the
NX2LP-Flex should be left at their default power-up values.
0EP4PFEP4EFEP4FF0EP2PFEP2EFEP2FF00100010 R
0EP8PFEP8EFEP8FF0EP6PFEP6EFEP6FF01100110 R
Port D (bit addressable) D7D6D5D4D3D2D1D0xxxxxxxx RW
Port E
(NOT bit addressable)
D7D6D5D4D3D2D1D0xxxxxxxx RW
Port A Output EnableD7D6D5D4D3D2D1D000000000 RW
Port B Output EnableD7D6D5D4D3D2D1D000000000 RW
Port C Output EnableD7D6D5D4D3D2D1D000000000 RW
Port D Output EnableD7D6D5D4D3D2D1D000000000 RW
Port E Output EnableD7D6D5D4D3D2D1D000000000 RW
dressable)
[9]
Endpoint 0&1 Status00000EP1INBSY EP1OUTBSYEP0BSY00000000 R
[9, 7]
Endpoint 2,4,6,8 GPIF
slave FIFO Trigger
[9]
GPIF Data H (16-bit mode
only)
[9]
GPIF Data L w/Trigger D7D6D5D4D3D2D1D0xxxxxxxx RW
1PS1PT2PS0PT1PX1PT0PX010000000 RW
DONE0000RWEP1EP010000xxx brrrrbbb
D15D14D13D12D11D10D9D8xxxxxxxx RW
Notes
9. SFRs not part of the standard 8051 architecture.
10.If no NAND is detected by the SIE then the default is 00000000.
C1 1SBUF1
C2 6reserved
C8 1T2CONTimer/Counter 2 Control
C9 1reserved
CA 1RCAP2LCapture for Timer 2, au-
CB 1RCAP2HCapture for Timer 2, au-
CC 1TL2Timer 2 reload LD7D6D5D4D3D2D1D000000000 RW
CD 1TH2Timer 2 reload HD15D14D13D12D11D10D9D800000000 RW
CE 2reserved
D0 1PSWProgram Status Word (bit
(Oscillator or Crystal Frequency)....24 MHz ± 100 ppm
OSC
(Parallel Resonant)
Document #: 001-04247 Rev. *DPage 24 of 33
[+] Feedback
CY7C68033/CY7C68034
DC Characteristics
Table 10.DC Characteristics
ParameterDescriptionConditionsMin.Typ.Max.Unit
V
CC
VCC Ramp Up 0 to 3.3V 200μs
V
IH
V
IL
V
IH_X
V
IL_X
I
I
V
OH
V
OL
I
OH
I
OL
C
IN
I
SUSP
I
CC
I
UNCONFIG
T
RESET
Supply Voltage3.003.33.60V
Input HIGH Voltage25.25V
Input LOW Voltage–0.50.8V
Crystal Input HIGH Voltage25.25V
Crystal Input LOW Voltage–0.50.8V
Input Leakage Current0< VIN < V
Output Voltage HIGHI
Output LOW VoltageI
= 4 mA2.4V
OUT
= –4 mA0.4V
OUT
CC
±10μA
Output Current HIGH4mA
Output Current LOW4mA
Input Pin CapacitanceExcept D+/D–10pF
D+/D–15pF
Suspend Current Connected300380
CY7C68034Disconnected100150
Suspend Current Connected0.51.2
CY7C68033Disconnected0.31.0
[12]
[12]
[12]
[12]
mA
mA
Supply Current8051 running, connected to USB HS43mA
8051 running, connected to USB FS35mA
Unconfigured CurrentBefore bMaxPower granted by host43mA
Reset Time After Valid PowerVCC min = 3.0V5.0ms
Pin Reset After powered on200μs
SLRD Pulse Width LOW50ns
SLRD Pulse Width HIGH50ns
SLRD to FLAGS Output Propagation Delay70ns
SLRD to FIFO Data Output Propagation Delay15ns
SLOE Turn-on to FIFO Data Valid10.5ns
SLOE Turn-off to FIFO Data Hold10.5ns
FIFOADR[1:0] to SLRD/SLWR/PKTEND Setup Time10ns
RD/WR/PKTEND to FIFOADR[1:0] Hold Time10ns
Sequence Diagram
Sequence Diagram of a Single and Burst Asynchronous Read
XFD
N+3
t
FAH
t
RDpwh
T=7
[13]
t
OEoff
t
XFLG
FIFOADR
SLRD
SLCS
FLAGS
DATA
SLOE
Figure 17. Slave FIFO Asynchronous Read Sequence and Timing Diagram
T=0
T=1
t
t
SFA
N
OEon
T=2
t
RDpwl
t
t
RDpwh
T=3
t
XFD
T=4
N+1
RDpwl
t
XFD
T=5
t
RDpwh
N+2
t
SFA
t=0
t=1
t=2
Data (X)
Driven
t
OEon
t
RDpwl
t
t=3
XFD
N
t
t=4
t
FAH
RDpwh
t
t
OEoff
XFLG
T=6
t
RDpwl
t
Figure 18. Slave FIFO Asynchronous Read Sequence of Events Diagram
SLOESLRD
FIFO POINTER
NN
FIFO DATA BUS Not DrivenDriven: X
SLRD
N
N Not Driven
N+1
N
SLOE
N+1
Not Driven
SLOE
N+1
N
SLRD
N+1
N+1
SLRD
SLRD
N+2
N+1
N+2
N+2
SLRD
N+3
SLOE
N+3
N+2
Document #: 001-04247 Rev. *DPage 28 of 33
[+] Feedback
CY7C68033/CY7C68034
Figure 17 diagrams 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 dat a bus being
driven. The data that is driven on to the bus is previous data,
it 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
pulse width of t
in asserted with SLRD or before SLRD is asserted (that is
. If SLCS is used then, SLCS must be
RDpwh
and minimum de-active
RDpwl
the SLCS and SLRD signals must both be asserted to start
a valid read condition).
Sequence Diagram of a Single and Burst Asynchronous Write
Figure 19. Slave FIFO Asynchronous Write Sequence and Timing Diagram
T=0
t
SFA
t
t
WRpwl
WRpwh
T=1
T=3
FIFOADR
SLWR
SLCS
t
SFA
t=0
t =1
t
WRpwl
t=3
t
WRpwh
t
FAH
• The data that will be driven, after asserting SLRD, is the
updated data from the FIFO. This data is valid after a propagation delay of t
Figure 17, data N is the first valid data read from the FIFO.
from the activating edge of SLRD. In
XFD
For data to appear on the data bus during the read cycle
(that is 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 is 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.
[13]
t
FAH
t
WRpwl
T=9
t
WRpwh
T=4
t
WRpwl
T=6
t
WRpwh
T=7
t
XFLG
FLAGS
t
DATA
PKTEND
t
SFD
FDH
N
t=2
T=2
t
t
SFD
FDH
N+1
Figure 19 diagrams 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, insuring that it meets
the setup 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 in 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 will cause the data to be written
from the data bus to the FIFO and then increments the FIFO
t
XFLG
t
t
SFD
FDH
N+2
T=5
pointer. The FIFO flag is also updated after t
deasserting edge of SLWR.
T=8
t
t
SFD
FDH
N+3
t
t
PEpwl
PEpwh
from the
XFLG
The same sequence of events are 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 19 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
should be designed to not assert SLWR and the PKTEND
signal at the same time. It should be designed to assert the
PKTEND after SLWR is deasserted and met the minimum
de-asserted pulse width. The FIFOADDR lines are to be held
constant during the PKTEND assertion.
Document #: 001-04247 Rev. *DPage 29 of 33
[+] Feedback
DIMENSIONS INMM[INCHES] MIN.
CY7C68033/CY7C68034
Ordering Information
Table 17.Ordering Information
Ordering CodeDescription
Silicon for battery-powered applications
CY7C68034-56LFXC8x8 mm, 56 QFN – Lead-free
Silicon for non-battery-powered applications
CY7C68033-56LFXC8x8 mm, 56 QFN – Lead-free
Development Kit
CY3686EZ-USB NX2LP-Flex Development Kit
Package Diagram
Figure 20. 56-Lead QFN 8 x 8 mm LF56A
REFERENCE JEDEC MO-220
TOP VIEW
7.90[0.311]
8.10[0.319]
7.70[0.303]
N
7.80[0.307]
0.80[0.031]
A
1
2
DIA.
OPTION FOR CML - BOTTOM VIEW
N
E-PAD
(PAD SIZE VARY
BY DEVICE TYPE)
NOTE:
DIMENSIONS ARE SAME WITH STD DWG ON UPPER RIGHT EXCEPT
FOR THE U-GROOVE ON THE PADDLE
MAX.
SIDE VIEW
1.00[0.039] MAX.
0.80[0.031] MAX.
7.80[0.307]
7.70[0.303]
8.10[0.319]
7.90[0.311]
0°-12°
.240TYP
.680
.000
1
1.925
2
.000
.680
2.175
2.275
R.400
R.100
R.600R.500
R.400R.300
R.200PIN #1 ID
R.300
R.100
R.200
0.08[0.003]
C
0.05[0.002] MAX.
0.20[0.008] REF.
0.30[0.012]
0.50[0.020]
C
SEATING PLANE
2.325
2.225
2.125
2.375
R.250
(3X)
1.975
2.075
BOTTOM VIEW
E-PAD
(PAD SIZE VARY
BY DEVICE TYPE)
6.45[0.254]
6.55[0.258]
0.18[0.007]
0.28[0.011]
0.50[0.020]
PIN1 ID
N
0.20[0.008] R.
1
2
0.45[0.018]
6.55[0.258]
6.45[0.254]
0.24[0.009]
(4X)
0.60[0.024]
U-GROOVE DIMENSION
51-85144*E
Document #: 001-04247 Rev. *DPage 30 of 33
[+] Feedback
CY7C68033/CY7C68034
PCB Layout Recommendations
[16]
The following recommendations should be followed to ensure
reliable high-performance operation:
• At least a four-layer impedance controlled boards is recommended to maintain signal quality.
• Specify impedance targets (ask your board vendor what
they can achieve) to meet USB specifications.
• To control impedance, maintain trace widths and trace
spacing.
• Minimize any stubs to avoid reflected signals.
• Connections between the USB connector shell and signal
ground must be done near the USB connector.
• Bypass/flyback caps on VBUS, near connector, are recommended.
• DPLUS and DMINUS trace lengths should 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.
• No vias should be placed on the DPLUS or DMINUS trace
routing unless absolutely necessary.
• Isolate the DPLUS and DMINUS traces from all other signal
traces as much as possible.
Quad Flat Package No Leads (QFN) Package
Design Notes
Electrical contact of the part to the Printed Circuit Board (PCB)
is made by soldering the leads on the bottom surface of the
package to the PCB. Hence, special attention is required to the
Figure 21. Cross-section of the Area Underneath the QFN Package.
Solder Mask
Cu Fill
heat transfer area below the package to provide a good
thermal bond to the circuit board. A Copper (Cu) fill is to be
designed into the PCB as a thermal pad under the package.
Heat is transferred from the NX2LP-Flex to the PCB th rough
the device’s metal paddle on the bottom side of the package.
It is then conducted from the PCB’s thermal pad to the inner
ground plane by a 5 x 5 array of vias. A via is a plated through
hole in the PCB with a finished diameter of 13 mil. The QFN’s
metal die paddle must be soldered to the PCB’s thermal pad.
Solder mask is placed on the board top side over each via to
resist solder flow into the via. The mask on the top side also
minimizes outgassing during the solder reflow process.
For further information on this package design please refer to
the application note Surface Mount Assembly of AMKOR’sMicroLeadFrame (MLF) Technology. This application note can
be downloaded from AMKOR’s website from the following
URL:
The application note provides detailed information on board
mounting guidelines, soldering flow, rework process, etc.
Figure 21 below displays a cross-sectional area underneath
the package. The cross section is of only one via. The solder
paste template needs to be designed to allow at least 50%
solder coverage. The thickness of the solder paste template
should be 5 mil. It is recommended that ‘No Clean’ type 3
solder paste is used for mounting the part. Nitrogen purge is
recommended during reflow.
Figure 22 is a plot of the solder mask pattern and Figure 23
displays an X-Ray image of the assembly (darker areas
indicate solder)
0.017” dia
Cu Fill
PCB Material
Via hole for thermally connecting the
QFN to the circuit board ground plane.
Note
16.Source for recommendations: EZ-USB FX2™PCB Design Recommendations, http://www.cypress.com/cfuploads/support/app_notes/FX2_PCB.pdf and High
Speed USB Platform Design Guidelines, http://www.usb.org/developers/docs/hs_usb_pdg_r1_0.pdf.
0.013” dia
This figure only shows the top three layers of the
circuit board: Top Solder, PCB Dielectric, and the Ground Plane.
PCB Material
Document #: 001-04247 Rev. *DPage 31 of 33
[+] Feedback
Figure 22. Plot of the Solder Mask (White Area)
Figure 23. X-ray Image of the Assembly
CY7C68033/CY7C68034
2
Purchase of I
2
C Patent Rights to us e these component s in an I2C system, provided that the system conforms to the I2C Standard S pecification
I
C components from Cypress, or one of its sublicensed Associated Companies, conveys a license under the Philips
as defined by Philips. EZ-USB FX2LP, EZ-USB FX2 and ReNumeration are trademarks, and EZ-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.