CYPRESS CY7C68034

CY7C68033, CY7C68034
EZ-USB NX2LP-Flex™ Flexible USB
NAND Flash Controller
CY7C68033/CY7C68034 Silicon Features
■
12 Fully Programmable GPIO Pins
■
Certified Compliant for Bus- or Self-powered USB 2.0
Operation (TID# 40490118)
■
■
Single-Chip, Integrated USB 2.0 Transceiver and Smart SIE
■
Ultra Low Power – 43 mA Typical Current Draw in Any Mode
■
Enhanced 8051 Core
❐ Firmware runs from internal RAM, which is downloaded from
NAND flash at startup
❐ No external EEPROM required
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 Interrupts
■
Separate Data Buffers for the Setup and Data portions of a
CONTROL Transfer
■
15 KBytes of On-Chip Code/Data RAM
❐ Default NAND firmware ~8 kB
❐ Default free space ~7 kB
■
■
Four Programmable BULK/INTERRUPT/ISOCHRONOUS
Endpoints
❐ Buffering options: double, triple, and quad
■
Additional Programmable (BULK/INTERRUPT) 64-byte
Endpoint
■
SmartMedia Standard Hardware ECC Generation with 1-bit
Correction and 2-bit Detection
■
GPIF (General Programmable Interface)
❐ Enables direct connection to most parallel interfaces
❐ Programmable waveform descriptors and configuration
registers to define waveforms
❐ Supports multiple Ready (RDY) inputs and Control (CTL)
outputs
Logic Block Diagram
Integrated I2C Controller, Runs at 100 or 400 kHz
■
Four Integrated FIFOs
❐ Integrated glue logic and FIFOs 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 ICs
■
Available in Space Saving, 56-pin QFN Package
CY7C68034 Only Silicon Features:
■
Ideal for Battery Powered Applications
❐ Suspend current: 100 μA (typ)
CY7C68033 Only Silicon Features:
■
Ideal for Non-battery Powered Applications
❐ Suspend current: 300 μA (typ)
High-performance,
enhanced 8051 core
with low power options
24 MHz
Ext. Xtal
NX2LP-Flex
/0.5
/1.0
/2.0
8051 Core
12/24/48 MHz,
four clocks/cycle
VCC
Connected for
full speed USB
1.5k
D+
D–
USB
2.0
XCVR
Integrated full- and
high speed XCVR
NAND
Boot Logic
(ROM)
CY
Smart
USB
1.1/2.0
Engine
15 kB
RAM
I 2C
Master
Address (16)/Data Bus (8)
x20
PLL
Additional I/Os
GPIF
RDY (2)
CTL (3)
ECC
Up to 96 MB/s burst rate
4 kB
FIFO
Enhanced USB core
simplifies 8051 code
Cypress Semiconductor Corporation
Document #: 001-04247 Rev *F
•
General Programmable
I/F to ASIC/DSP or bus
standards such as 8-bit
NAND, EPP, and so on.
‘Soft Configuration’ enables
easy firmware changes
198 Champion Court
8/16
FIFO and USB endpoint memory
(master or slave modes)
•
San Jose, CA 95134-1709
•
408-943-2600
Revised June 03, 2009
[+] 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
■
12 Configurable General Purpose I/O (GPIO) Pins
❐ 2 dedicated chip enable (CE#) pins
❐ 6 configurable CE#/GPIO pins
• 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 enables 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 Storage Class
Bulk-Only Transport Specification. The USB port of the
NX2LP-Flex is connected to a host computer directly or through
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 pins enable 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 enable
quick configuration of some features to decrease design effort
and increase time-to-market advantages.
Document #: 001-04247 Rev *F
Overview
Cypress Semiconductor Corporation’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,
I2C, PCMCIA, and most DSP processors.
Applications
The NX2LP-Flex enables 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
Page 2 of 34
[+] Feedback
CY7C68033, CY7C68034
8051 Microprocessor
Figure 1. Example DVB Block Diagram
The 8051 microprocessor embedded in the NX2LP-Flex has 256
bytes of register RAM, an expanded interrupt system and three
timer/counters.
Buttons
8051 Clock Frequency
I/O
NAND-Based
DVB Unit
I/O
CTL
NX2LPFlex
D+/-
CE[7:0]
NAND Bank(s)
I/O
Audio / Video I/O
■
Parallel resonant
■
Fundamental mode
DVB
Decoder
■
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 2. Example GPS Block Diagram
Buttons
NAND-Based
GPS Unit
NX2LP-Flex has an on-chip oscillator circuit that uses an
external 24 MHz (±100 ppm) crystal with the following characteristics:
I/O
LCD
I/O
Figure 3. Crystal Configuration
LCD
C1
24 MHz
C2
CTL
NX2LPFlex
CE[7:0]
12 pf
NAND Bank(s)
12 pf
I/O
20 × PLL
I/O
D+/-
I/O
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.
Document #: 001-04247 Rev *F
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 on page 4. 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).
I2C Bus
NX2LP supports the I2C bus as a master only at 100/400 kHz.
SCL and SDA pins have open-drain outputs and hysteresis
inputs. These signals must be pulled up to 3.3V, even if no I2C
device is connected. The I2C bus is disabled at startup and only
available for use after the initial NAND access.
Page 3 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 1. Special Function Registers
x
8x
9x
Ax
Bx
Cx
Dx
Ex
Fx
0
IOA
IOB
IOC
IOD
SCON1
PSW
ACC
B
SBUF1
EICON
EIE
EIP
1
SP
EXIF
INT2CLR
IOE
2
DPL0
MPAGE
INT4CLR
OEA
3
DPH0
OEB
4
DPL1
OEC
5
DPH1
OED
6
DPS
OEE
7
PCON
8
TCON
9
TMOD
SBUF0
A
TL0
AUTOPTRH1
B
TL1
C
TH0
D
TH1
AUTOPTRH2
GPIFSGLDATH
E
CKCON
AUTOPTRL2
GPIFSGLDATLX
F
SCON0
IE
IP
T2CON
EP2468STAT
EP01STAT
RCAP2L
AUTOPTRL1
EP24FIFOFLGS
GPIFTRIG
RCAP2H
RESERVED
EP68FIFOFLGS
RESERVED
AUTOPTRSET-UP
TL2
TH2
GPIFSGLDATLNOX
Buses
The NX2LP-Flex features an 8- or 16-bit ‘FIFO’ bidirectional data bus, multiplexed on I/O ports 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 this 8-bit data bus.
Enumeration
During the startup 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 according 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 and Manufacturing Mode on page 5.
Document #: 001-04247 Rev *F
Page 4 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 4. NX2LP-Flex Enumeration Sequence
Start-up
Yes
NAND Flash
Present?
No
Default Silicon ID Values
To facilitate proper USB enumeration when no programmed
NAND Flash is present, the NX2LP-Flex has default silicon ID
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. Refer to the
documentation in the development kit for more information on
these topics.
NAND Flash
Programmed?
No
Table 2. Default Silicon ID Values
Default VID/PID/DID
Yes
Load Firmware
From NAND
Enumerate
According To
Firmware
Load Default
Descriptors and
Configuration Data
Enumerate As
Unprogrammed
NX2LP-Flex
Vendor ID
0x04B4 Cypress Semiconductor
Product ID
0x8613
Device release
0xAnnn Depends on chip revision
(nnn = chip revision, where first
silicon = 001)
EZ-USB® Default
ReNumeration™
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.
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.
Normal Operation
Mode
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, and so on). The
USB descriptors are returned according to the data 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 enables for first time
programming of the configuration data memory area, and board
level manufacturing tests.
Document #: 001-04247 Rev *F
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 routine.
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.
Page 5 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 3. INT2 USB Interrupts
USB INTERRUPT TABLE FOR INT2
Priority
INT2VEC Value
Source
Notes
1
0x500
SUDAV
Setup Data Available
2
0x504
SOF
Start of Frame (or microframe)
3
0x508
SUTOK
Setup Token Received
4
0x50C
SUSPEND
USB Suspend request
5
0x510
USB RESET
Bus reset
6
0x514
HISPEED
Entered high speed operation
7
0x518
EP0ACK
8
0x51C
9
0x520
EP0-IN
EP0-IN ready to be loaded with data
10
0x524
EP0-OUT
EP0-OUT has USB data
NX2LP ACK’d the CONTROL Handshake
Reserved
11
0x528
EP1-IN
EP1-IN ready to be loaded with data
12
0x52C
EP1-OUT
EP1-OUT has USB data
13
0x530
EP2
IN: buffer available. OUT: buffer has data
14
0x534
EP4
IN: buffer available. OUT: buffer has data
15
0x538
EP6
IN: buffer available. OUT: buffer has data
16
0x53C
EP8
IN: buffer available. OUT: buffer has data
17
0x540
IBN
18
0x544
IN-Bulk-NAK (any IN endpoint)
Reserved
19
0x548
EP0PING
EP0 OUT was Pinged and it NAK’d
20
0x54C
EP1PING
EP1 OUT was Pinged and it NAK’d
21
0x550
EP2PING
EP2 OUT was Pinged and it NAK’d
22
0x554
EP4PING
EP4 OUT was Pinged and it NAK’d
23
0x558
EP6PING
EP6 OUT was Pinged and it NAK’d
24
0x55C
EP8PING
EP8 OUT was Pinged and it NAK’d
25
0x560
ERRLIMIT
Bus errors exceeded the programmed limit
26
0x564
Reserved
27
0x568
Reserved
28
0x56C
Reserved
29
0x570
EP2ISOERR
ISO EP2 OUT PID sequence error
30
0x574
EP4ISOERR
ISO EP4 OUT PID sequence error
31
0x578
EP6ISOERR
ISO EP6 OUT PID sequence error
32
0x57C
EP8ISOERR
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 directs
the jump to the correct address out of the 27 addresses within the page.
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, such as the USB Interrupt, can employ autovectoring. Table 4 shows the priority and
INT4VEC values for the 14 FIFO/GPIF interrupt sources.
Document #: 001-04247 Rev *F
Page 6 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 4. Individual FIFO/GPIF Interrupt Sources
Priority
INT4VEC Value
Source
1
0x580
EP2PF
Notes
Endpoint 2 Programmable Flag
2
0x584
EP4PF
Endpoint 4 Programmable Flag
3
0x588
EP6PF
Endpoint 6 Programmable Flag
4
0x58C
EP8PF
Endpoint 8 Programmable Flag
5
0x590
EP2EF
Endpoint 2 Empty Flag
6
0x594
EP4EF
Endpoint 4 Empty Flag
7
0x598
EP6EF
Endpoint 6 Empty Flag
8
0x59C
EP8EF
Endpoint 8 Empty Flag
9
0x5A0
EP2FF
Endpoint 2 Full Flag
10
0x5A4
EP4FF
Endpoint 4 Full Flag
11
0x5A8
EP6FF
Endpoint 6 Full Flag
12
0x5AC
EP8FF
Endpoint 8 Full Flag
13
0x5B0
GPIFDONE
14
0x5B4
GPIFWF
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 directs 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#, resets 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 reset period
GPIF Operation Complete
GPIF Waveform
must enable the stabilization of the crystal and the PLL. This
reset period should 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[1]. Figure 5 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 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.
Figure 5. Reset Timing Plots
RESET#
VIL
RESET#
VIL
3.3V
3.0V
3.3V
VCC
VCC
0V
0V
TRESET
Power-on Reset
TRESET
Powered Reset
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 *F
Page 7 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 6. Internal Code Memory
Table 5. Reset Timing Values
Condition
TRESET
Power-on Reset with crystal
Power-on Reset with external
clock source
FFFF
5 ms
200 μs + Clock stability time
Powered Reset
E200
E1FF
200 μs
E000
7.5 kBytes
USB registers
and 4 kBytes
FIFO buffers
(RD#, WR#)
512 Bytes RAM Data
(RD#, WR#)*
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.
3FFF
15 kBytes RAM
Code and Data
(PSEN#, RD#,
WR#)*
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 NX2LP-Flex 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 I/O pin. This enables a simple external R-C
network to be used as a periodic wakeup source. Note that
WAKEUP is, by default, active LOW.
Program/Data RAM
0500
0000
*SUDPTR, USB download, NAND boot access
Register Addresses
Figure 7. Internal Register Addresses
FFFF
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 enable 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.
Only the internal and scratch pad RAM spaces have the following
access:
■
USB download (only supported by the Cypress Manufacturing
Tool)
■
Setup data pointer
■
NAND boot access.
1 kbyte ROM
4 KBytes EP2-EP8
buffers
(8 x 512)
F000
EFFF
2 KBytes RESERVED
E800
E7FF
E7C0
E7BF
E780
E77F
E740
E73F
E700
E6FF
E500
E4FF
E480
E47F
E400
E3FF
E200
E1FF
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
E000
Document #: 001-04247 Rev *F
8051 xdata RAM
Page 8 of 34
[+] Feedback
CY7C68033, CY7C68034
Endpoint RAM
Setup Data Buffer
Size
A separate 8-byte buffer at 0xE6B8-0xE6BF holds the setup data
from a CONTROL transfer.
■
3 × 64 bytes
(Endpoints 0 and 1)
■
8 × 512 bytes
(Endpoints 2, 4, 6, 8)
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:
Organization
■
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 either double, triple, or quad buffered.
For high speed endpoint configuration options, see Figure 8.
■
EP2–1024 double buffered; EP6–512 quad buffered (column 8
in Figure 8).
Figure 8. Endpoint Configuration
EP0 IN&OUT
64
64
64
64
64
64
64
64
64
64
64
64
EP1 IN
64
64
64
64
64
64
64
64
64
64
64
64
EP1 OUT
64
64
64
64
64
64
64
64
64
64
64
64
EP2
EP2
EP2
EP2
EP2
EP2
EP2
EP2
EP2
EP2
512
512
512
512
512
512
512
512
512
512
512
512
EP4
EP4
512
512
512
512
512
512
512
512
512
512
512
512
EP6
EP6
EP6
EP6
EP6
EP6
512
512
512
512
512
512
EP8
512
512
1024
512
512
512
1
2
1024
3
1024
1024
1024
1024
512
1024
512
512
512
512
4
5
1024
6
EP6
1024
512
EP6
EP6
512
512
512
512
EP6
512
1024
512
EP8
EP8
512
1024
1024
512
EP4
1024
1024
EP2 EP2
512
512
512
512
512
7
8
1024
9
1024
1024
EP8
EP8
512
512
512
512
10
11
1024
1024
1024
12
Default Full Speed Alternate Settings
Table 6. Default Full Speed Alternate Settings[2, 3]
Alternate Setting
ep0
ep1out
ep1in
ep2
ep4
ep6
ep8
0
64
0
0
0
0
0
0
1
64
64 bulk
64 bulk
64 bulk out (2×)
64 bulk out (2×)
64 bulk in (2×)
64 bulk in (2×)
2
64
64 int
64 int
64 int out (2×)
64 bulk out (2×)
64 int in (2×)
64 bulk in (2×)
3
64
64 int
64 int
64 iso out (2×)
64 bulk out (2×)
64 iso in (2×)
64 bulk in (2×)
Notes
2. ‘0’ means ‘not implemented.’
3. ‘2×’ means ‘double buffered.’
Document #: 001-04247 Rev *F
Page 9 of 34
[+] Feedback
CY7C68033, CY7C68034
Default High Speed Alternate Settings
Table 7. Default High Speed Alternate Settings[2, 3]
Alternate Setting
0
1
2
3
ep0
64
64
64
64
ep1out
0
512 bulk[4]
64 int
64 int
ep1in
0
512 bulk[4]
64 int
64 int
ep2
0
512 bulk out (2×)
512 int out (2×)
512 iso out (2×)
ep4
0
512 bulk out (2×)
512 bulk out (2×)
512 bulk out (2×)
ep6
0
512 bulk in (2×)
512 int in (2×)
512 iso in (2×)
ep8
0
512 bulk in (2×)
512 bulk in (2×)
512 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.
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 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 (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 FIFO 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, 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 inverts 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 enables 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
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
is 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).
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 *F
Page 10 of 34
[+] Feedback
CY7C68033, CY7C68034
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].
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.
Long Transfer Mode
ECCM = 1
In GPIF Master mode, the 8051 appropriately sets GPIF transaction count registers (GPIFTCB3, GPIFTCB2, GPIFTCB1, or
GPIFTCB0) for unattended transfers of up to 232 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.
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 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
ECC Generation[5]
Autopointer Access
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.
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.
The following two ECC configurations are selected by the ECCM
bit. The ECC can correct any one-bit error or detect any two-bit
error.
NX2LP has one I2C port that the 8051, once running uses to
control external I2C devices. The I2C port operates in master
mode only. The I2C post is disabled at startup and only available
for use after the initial NAND access.
Two Ready IN Signals
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 is calculated and stored in ECC1. The ECC
for the next 256 bytes of data is stored in ECC2. After the second
One 3-byte ECC calculated over a 512-byte block of data.
I2C Controller
I2C Port Pins
The I2C pins SCL and SDA must have external 2.2-kΩ pull-up
resistors even if no EEPROM is connected to the NX2LP.
I2C Interface General-Purpose Access
The 8051 can control peripherals connected to the I2C bus using
the I2CTL and I2DATA registers. NX2LP provides I2C master
control only and is never an I2C slave.
Note
5. To use the ECC logic, the GPIF or Slave FIFO interface must be configured for byte-wide operation.
Document #: 001-04247 Rev *F
Page 11 of 34
[+] Feedback
CY7C68033, CY7C68034
Pin Assignments
Figure 9 and Figure 10 on page 13 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 on page 13 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.
Figure 9. Port and Signal Mapping
Port
XTALIN
XTALOUT
RESET#
WAKEUP#
SCL
SDATA
DPLUS
DMINUS
GPIF Master
PD7
PD6
PD5
PD4
PD3
PD2
PD1
PD0
PB7
PB6
PB5
PB4
PB3
PB2
PB1
PB0
PA7
PA6
PA5
PA4
WU2/PA3
PA2
INT1#/PA1
INTO#/PA0
GPIO8
GPIO9
Document #: 001-04247 Rev *F
↔ FD[15]
↔ FD[14]
↔ FD[13]
↔ FD[12]
↔ FD[11]
↔ FD[10]
↔ FD[9]
↔ FD[8]
↔ FD[7]
↔ FD[6]
↔ FD[5]
↔ FD[4]
↔ FD[3]
↔ FD[2]
↔ FD[1]
↔ FD[0]
→ RDY0
→ RDY1
← CTL0
← CTL1
← CTL2
↔ PA7
↔ PA6
↔ PA5
↔ PA4
↔ PA3/WU2
↔ PA2
↔ PA1/INT1#
↔ PA0/INT0#
↔ GPIO8
← GPIO9
Slave FIFO
↔ FD[15]
↔ FD[14]
↔ FD[13]
↔ FD[12]
↔ FD[11]
↔ FD[10]
↔ FD[9]
↔ FD[8]
↔ FD[7]
↔ FD[6]
↔ FD[5]
↔ FD[4]
↔ FD[3]
↔ FD[2]
↔ FD[1]
↔ FD[0]
→ SLRD
→ SLWR
← FLAGA
← FLAGB
← FLAGC
↔ FLAGD/SLCS#/PA7
↔ PKTEND
← FIFOADR1
↔ FIFOADR0
← PA3/WU2
← SLOE
← PA1/INT1#
↔ PA0/INT0#
↔ GPIO8
← GPIO9
Default NAND
Firmware Use
↔ CE7#/GPIO7
↔ CE6#/GPIO6
↔ CE5#/GPIO5
↔ CE4#/GPIO4
↔ CE3#/GPIO3
↔ CE2#/GPIO2
↔ CE1#
↔ CE0#
↔ DD7
↔ DD6
↔ DD5
↔ DD4
↔ DD3
↔ DD2
↔ DD1
↔ DD0
→ R_B1#
→ R_B2#
← WE#
← RE0#
← RE1#
← GPIO1
← GPIO0
← WP_SW#
← WP_NF#
← LED2#
→ LED1#
↔ ALE
↔ CLE
↔ GPIO8
← GPIO9
Page 12 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 10. CY7C68033/CY7C68034 56-pin QFN Pin Assignment
GND
VCC
GPIO9
GND
PD7/FD15
PD6/FD14
PD5/FD13
PD4/FD12
PD3/FD11
PD2/FD10
PD1/FD9
PD0/FD8
*WAKEUP
VCC
56
55
54
53
52
51
50
49
48
47
46
45
44
43
RDY0/*SLRD
1
42
RESET#
RDY1/*SLWR
2
41
GND
AVCC
3
40
PA7/*FLAGD/SLCS#
XTALOUT
4
39
PA6/*PKTEND
XTALIN
5
38
PA5/FIFOADR1
AGND
6
37
PA4/FIFOADR0
AVCC
7
36
PA3/*WU2
DPLUS
8
35
PA2/*SLOE
DMINUS
9
34
PA1/INT1#
AGND 10
33
PA0/INT0#
VCC 11
32
VCC
GND 12
31
CTL2/*FLAGC
GPIO8 13
30
CTL1/*FLAGB
RESERVED# 14
29
CTL0/*FLAGA
15
16
17
18
19
20
21
22
23
24
25
26
27
28
SCL
SDATA
VCC
PB0/FD0
PB1/FD1
PB2/FD2
PB3/FD3
PB4/FD4
PB5/FD5
PB6/FD6
PB7/FD7
GND
VCC
GND
Document #: 001-04247 Rev *F
Page 13 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 8. NX2LP-Flex Pin Descriptions [6]
56 QFN Default Pin
Pin
Name
Number
NAND
Firmware
Usage
Pin
Type
Default
State
Description
9
DMINUS
N/A
I/O/Z
Z
USB D– Signal. Connect to the USB D– signal.
8
DPLUS
N/A
I/O/Z
Z
USB D+ Signal. Connect to the USB D+ signal.
42
RESET#
N/A
Input
N/A
Active LOW Reset. Resets the entire chip. See section ”Reset and
Wakeup” on page 7 for more details.
5
XTALIN
N/A
Input
N/A
Crystal 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.
4
XTALOUT
N/A
Output
N/A
Crystal 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.
54
GPIO9
GPIO9
O/Z
1
RDY0 or
SLRD
R_B1#
Input
N/A
Multiplexed 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.
2
RDY1 or
SLWR
R_B2#
Input
N/A
Multiplexed 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.
29
CTL0 or
FLAGA
WE#
O/Z
H
Multiplexed 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.
30
CTL1 or
FLAGB
RE0#
O/Z
H
Multiplexed 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.
31
CTL2 or
FLAGC
RE1#
O/Z
H
Multiplexed 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.
12 MHz GPIO9 is a bidirectional IO port pin.
Note
6. Unused inputs should 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-04247 Rev *F
Page 14 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 8. NX2LP-Flex Pin Descriptions (continued)[6]
56 QFN Default Pin
Pin
Name
Number
NAND
Firmware
Usage
Pin
Type
Default
State
GPIO8
I/O/Z
I
Description
13
GPIO8
GPIO8: is a bidirectional IO port pin.
14
Reserved#
N/A
Input
N/A
15
SCL
N/A
OD
Z
Clock for the I2C interface. Connect to VCC with a 2.2K resistor,
even if no I2C peripheral is attached.
16
SDATA
N/A
OD
Z
Data for the I2C interface. Connect to VCC with a 2.2K resistor, even
if no I2C peripheral is attached.
44
WAKEUP
Unused
Input
N/A
USB 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 EZ-USB chip from
suspending. This pin has programmable polarity, controlled by
WAKEUP[4].
Reserved. Connect to ground.
Port A
33
PA0 or
INT0#
CLE
I/O/Z
I
(PA0)
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.
34
PA1 or
INT1#
ALE
I/O/Z
I
(PA1)
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.
35
PA2 or
SLOE
LED1#
I/O/Z
I
(PA2)
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.
36
PA3 or
WU2
LED2#
I/O/Z
I
(PA3)
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.
37
PA4 or
FIFOADR0
WP_NF#
I/O/Z
I
(PA4)
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.
38
PA5 or
FIFOADR1
WP_SW#
I/O/Z
I
(PA5)
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.
Document #: 001-04247 Rev *F
Page 15 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 8. NX2LP-Flex Pin Descriptions (continued)[6]
56 QFN Default Pin
Pin
Name
Number
NAND
Firmware
Usage
Pin
Type
Default
State
Description
39
PA6 or
PKTEND
GPIO0
(Input)
I/O/Z
I
(PA6)
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.
40
PA7 or
FLAGD or
SLCS#
GPIO1
(Input)
I/O/Z
I
(PA7)
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.
Port B
18
PB0 or
FD[0]
DD0
I/O/Z
I
(PB0)
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.
19
PB1 or
FD[1]
DD1
I/O/Z
I
(PB1)
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.
20
PB2 or
FD[2]
DD2
I/O/Z
I
(PB2)
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.
21
PB3 or
FD[3]
DD3
I/O/Z
I
(PB3)
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.
22
PB4 or
FD[4]
DD4
I/O/Z
I
(PB4)
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.
23
PB5 or
FD[5]
DD5
I/O/Z
I
(PB5)
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.
24
PB6 or
FD[6]
DD6
I/O/Z
I
(PB6)
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.
25
PB7 or
FD[7]
DD7
I/O/Z
I
(PB7)
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.
PD0 or
FD[8]
CE0#
I/O/Z
I
(PD0)
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.
PORT D
45
Document #: 001-04247 Rev *F
Page 16 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 8. NX2LP-Flex Pin Descriptions (continued)[6]
56 QFN Default Pin
Pin
Name
Number
NAND
Firmware
Usage
Pin
Type
Default
State
Description
46
PD1 or
FD[9]
CE1#
I/O/Z
I
(PD1)
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.
47
PD2 or
FD[10]
CE2# or GPIO2
I/O/Z
I
(PD2)
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.
CE2# is a NAND chip enable output signal.
GPIO2 is a general purpose I/O signal.
48
PD3 or
FD[11]
CE3# or GPIO3
I/O/Z
I
(PD3)
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.
49
PD4 or
FD[12]
CE4# or GPIO4
I/O/Z
I
(PD4)
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.
CE4# is a NAND chip enable output signal.
GPIO4 is a general purpose I/O signal.
50
PD5 or
FD[13]
CE5# or GPIO5
I/O/Z
I
(PD5)
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.
CE5# is a NAND chip enable output signal.
GPIO5 is a general purpose I/O signal.
51
PD6 or
FD[14]
CE6# or GPIO6
I/O/Z
I
(PD6)
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.
CE6# is a NAND chip enable output signal.
GPIO6 is a general purpose I/O signal.
52
PD7 or
FD[15]
CE7# or GPIO7
I/O/Z
I
(PD7)
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.
CE7# is a NAND chip enable output signal.
GPIO7 is a general purpose I/O signal.
Power and Ground
3
7
AVCC
N/A
Power
N/A
Analog VCC. Connect this pin to 3.3V power source. This signal
provides power to the analog section of the chip.
6
10
AGND
N/A
Ground
N/A
Analog Ground. Connect to ground with as short a path as
possible.
11
17
27
32
43
55
VCC
N/A
Power
N/A
VCC. Connect to 3.3V power source.
12
26
28
41
53
56
GND
N/A
Ground
N/A
Ground.
Document #: 001-04247 Rev *F
Page 17 of 34
[+] 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.
Table 9. NX2LP-Flex Register Summary
Hex Size Name
Description
b7
E60A 1
GPIF Waveform Memories
WAVEDATA
GPIF Waveform
D7
Descriptor 0, 1, 2, 3 data
reserved
GENERAL CONFIGURATION
GPCR2
General Purpose Configu- reserved
ration Register 2
CPUCS
CPU Control & Status
0
IFCONFIG
Interface Configuration
1
(Ports, GPIF, slave FIFOs)
[7]
PINFLAGSAB
Slave FIFO FLAGA and FLAGB3
FLAGB Pin Configuration
[7]
PINFLAGSCD
Slave FIFO FLAGC and FLAGD3
FLAGD Pin Configuration
FIFORESET[7]
Restore FIFOS to default NAKALL
state
BREAKPT
Breakpoint Control
0
BPADDRH
Breakpoint Address H
A15
BPADDRL
Breakpoint Address L
A7
UART230
230 Kbaud internally
0
generated ref. clock
FIFOPINPOLAR[7] Slave FIFO Interface pins 0
polarity
REVID
Chip Revision
rv7
E60B 1
REVCTL[7]
E400 128
E480 128
E50D
E600 1
E601 1
E602 1
E603 1
E604 1
E605
E606
E607
E608
1
1
1
1
E609 1
E60C 1
3
E610 1
E611 1
E612
E613
E614
E615
1
1
1
1
2
E618 1
E619 1
E61A 1
E61B 1
E61C 4
E620 1
E621 1
E622 1
E623 1
E624 1
E625 1
E626 1
E627 1
E628 1
Chip Revision Control
UDMA
GPIFHOLDAMOUNT MSTB Hold Time
(for UDMA)
reserved
ENDPOINT CONFIGURATION
EP1OUTCFG
Endpoint 1-OUT
Configuration
EP1INCFG
Endpoint 1-IN
Configuration
EP2CFG
Endpoint 2 Configuration
EP4CFG
Endpoint 4 Configuration
EP6CFG
Endpoint 6 Configuration
EP8CFG
Endpoint 8 Configuration
reserved
EP2FIFOCFG[7]
Endpoint 2/slave FIFO
configuration
EP4FIFOCFG[7]
Endpoint 4/slave FIFO
configuration
[7]
EP6FIFOCFG
Endpoint 6/slave FIFO
configuration
[7]
EP8FIFOCFG
Endpoint 8/slave FIFO
configuration
reserved
EP2AUTOINLENH[7 Endpoint 2 AUTOIN
Packet Length H
EP2AUTOINLENL[7] Endpoint 2 AUTOIN
Packet Length L
EP4AUTOINLENH[7] Endpoint 4 AUTOIN
Packet Length H
EP4AUTOINLENL[7] Endpoint 4 AUTOIN
Packet Length L
EP6AUTOINLENH[7] Endpoint 6 AUTOIN
Packet Length H
EP6AUTOINLENL[7] Endpoint 6 AUTOIN
Packet Length L
EP8AUTOINLENH[7] Endpoint 8 AUTOIN
Packet Length H
EP8AUTOINLENL[7] Endpoint 8 AUTOIN
Packet Length L
ECCCFG
ECC Configuration
b6
b5
D6
D5
reserved
reserved
b4
D4
b3
D3
b2
b1
b0
Default Access
D2
D1
D0
xxxxxxxx
RW
reserved
reserved
reserved
00000000 R
0
3048MHZ
FULL_SPEE reserved
D_ONLY
PORTCSTB CLKSPD1 CLKSPD0
0
IFCLKPOL ASYNC
CLKINV
GSTATE
CLKOE
IFCFG1
8051RES
IFCFG0
00000010 rrbbbbbr
10000000 RW
FLAGB2
FLAGB1
FLAGB0
FLAGA3
FLAGA2
FLAGA1
FLAGA0
00000000 RW
FLAGD2
FLAGD1
FLAGD0
FLAGC3
FLAGC2
FLAGC1
FLAGC0
00000000 RW
0
0
0
EP3
EP2
EP1
EP0
xxxxxxxx
W
0
A14
A6
0
0
A13
A5
0
0
A12
A4
0
BREAK
A11
A3
0
BPPULSE
A10
A2
0
BPEN
A9
A1
230UART1
0
A8
A0
230UART0
00000000
xxxxxxxx
xxxxxxxx
00000000
rrrrbbbr
RW
RW
rrrrrrbb
0
PKTEND
SLOE
SLRD
SLWR
EF
FF
00000000 rrbbbbbb
rv6
rv5
rv4
rv3
rv2
rv1
rv0
0
0
0
0
0
0
dyn_out
enh_pkt
RevA
R
00000001
00000000 rrrrrrbb
0
0
0
0
0
0
HOLDTIME1 HOLDTIME0 00000000 rrrrrrbb
VALID
0
TYPE1
TYPE0
0
0
0
0
10100000 brbbrrrr
VALID
0
TYPE1
TYPE0
0
0
0
0
10100000 brbbrrrr
VALID
VALID
VALID
VALID
DIR
DIR
DIR
DIR
TYPE1
TYPE1
TYPE1
TYPE1
TYPE0
TYPE0
TYPE0
TYPE0
SIZE
0
SIZE
0
0
0
0
0
BUF1
0
BUF1
0
BUF0
0
BUF0
0
10100010
10100000
11100010
11100000
0
INFM1
OEP1
AUTOOUT
AUTOIN
ZEROLENIN 0
WORDWIDE 00000101 rbbbbbrb
0
INFM1
OEP1
AUTOOUT
AUTOIN
ZEROLENIN 0
WORDWIDE 00000101 rbbbbbrb
0
INFM1
OEP1
AUTOOUT
AUTOIN
ZEROLENIN 0
WORDWIDE 00000101 rbbbbbrb
0
INFM1
OEP1
AUTOOUT
AUTOIN
ZEROLENIN 0
WORDWIDE 00000101 rbbbbbrb
0
0
0
0
0
PL10
PL9
PL8
00000010 rrrrrbbb
PL7
PL6
PL5
PL4
PL3
PL2
PL1
PL0
00000000 RW
0
0
0
0
0
0
PL9
PL8
00000010 rrrrrrbb
PL7
PL6
PL5
PL4
PL3
PL2
PL1
PL0
00000000 RW
0
0
0
0
0
PL10
PL9
PL8
00000010 rrrrrbbb
PL7
PL6
PL5
PL4
PL3
PL2
PL1
PL0
00000000 RW
0
0
0
0
0
0
PL9
PL8
00000010 rrrrrrbb
PL7
PL6
PL5
PL4
PL3
PL2
PL1
PL0
00000000 RW
0
0
0
0
0
0
0
ECCM
00000000 rrrrrrrb
bbbbbrbb
bbbbrrrr
bbbbbrbb
bbbbrrrr
Note
7. Read and writes to these registers may require synchronization delay, see the Technical Reference Manual for “Synchronization Delay.”
Document #: 001-04247 Rev *F
Page 18 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
E629
E62A
E62B
E62C
E62D
E62E
E62F
E630
H.S.
E630
F.S.
E631
H.S.
E631
F.S
E632
H.S.
E632
F.S
E633
H.S.
E633
F.S
E634
H.S.
E634
F.S
E635
H.S.
E635
F.S
E636
H.S.
E636
F.S
E637
H.S.
E637
F.S
Description
1
1
1
1
1
1
1
1
ECCRESET
ECC1B0
ECC1B1
ECC1B2
ECC2B0
ECC2B1
ECC2B2
EP2FIFOPFH[7]
1
EP2FIFOPFH[7]
1
EP2FIFOPFL[7]
1
[7]
EP2FIFOPFL
1
EP4FIFOPFH[7]
1
EP4FIFOPFH[7]
1
[7]
EP4FIFOPFL
1
EP4FIFOPFL[7]
1
EP6FIFOPFH[7]
1
[7]
EP6FIFOPFH
1
EP6FIFOPFL[7]
1
EP6FIFOPFL[7]
1
EP8FIFOPFH[7]
1
EP8FIFOPFH[7]
1
EP8FIFOPFL[7]
1
EP8FIFOPFL[7]
8
E640 1
reserved
EP2ISOINPKTS
E641 1
EP4ISOINPKTS
E642 1
EP6ISOINPKTS
E643 1
EP8ISOINPKTS
E644 4
E648 1
E649 7
E650 1
reserved
INPKTEND[7]
OUTPKTEND[7]
INTERRUPTS
EP2FIFOIE[7]
E651 1
EP2FIFOIRQ[7,8]
[7]
E652 1
EP4FIFOIE
E653 1
EP4FIFOIRQ[7,8]
E654 1
EP6FIFOIE[7]
E655 1
EP6FIFOIRQ[7,8]
[7]
E656 1
EP8FIFOIE
E657 1
EP8FIFOIRQ[7,8]
E658 1
IBNIE
E659 1
IBNIRQ[8]
E65A 1
NAKIE
b7
b6
ECC Reset
ECC1 Byte 0 Address
ECC1 Byte 1 Address
ECC1 Byte 2 Address
ECC2 Byte 0 Address
ECC2 Byte 1 Address
ECC2 Byte 2 Address
Endpoint 2/slave FIFO
Programmable Flag H
Endpoint 2/slave FIFO
Programmable Flag H
Endpoint 2/slave FIFO
Programmable Flag L
Endpoint 2/slave FIFO
Programmable Flag L
Endpoint 4/slave FIFO
Programmable Flag H
Endpoint 4/slave FIFO
Programmable Flag H
Endpoint 4/slave FIFO
Programmable Flag L
Endpoint 4/slave FIFO
Programmable Flag L
Endpoint 6/slave FIFO
Programmable Flag H
Endpoint 6/slave FIFO
Programmable Flag H
Endpoint 6/slave FIFO
Programmable Flag L
Endpoint 6/slave FIFO
Programmable Flag L
Endpoint 8/slave FIFO
Programmable Flag H
Endpoint 8/slave FIFO
Programmable Flag H
Endpoint 8/slave FIFO
Programmable Flag L
Endpoint 8/slave FIFO
Programmable Flag L
x
LINE15
LINE7
COL5
LINE15
LINE7
COL5
DECIS
x
LINE14
LINE6
COL4
LINE14
LINE6
COL4
PKTSTAT
DECIS
b5
b4
b3
b2
b1
b0
Default Access
x
LINE12
LINE4
COL2
LINE12
LINE4
COL2
IN:PKTS[1]
OUT:PFC11
OUT:PFC11
x
x
LINE11
LINE10
LINE3
LINE2
COL1
COL0
LINE11
LINE10
LINE3
LINE2
COL1
COL0
IN:PKTS[0] 0
OUT:PFC10
OUT:PFC10 0
x
LINE9
LINE1
LINE17
LINE9
LINE1
0
PFC9
x
LINE8
LINE0
LINE16
LINE8
LINE0
0
PFC8
00000000
00000000
00000000
00000000
00000000
00000000
00000000
10001000
PKTSTAT
x
LINE13
LINE5
COL3
LINE13
LINE5
COL3
IN:PKTS[2]
OUT:PFC12
OUT:PFC12
W
R
R
R
R
R
R
bbbbbrbb
PFC9
10001000 bbbbbrbb
PFC7
PFC6
PFC5
PFC4
PFC3
PFC2
PFC1
IN:PKTS[2]
OUT:PFC8
PFC0
IN:PKTS[1]
OUT:PFC7
DECIS
IN:PKTS[0]
OUT:PFC6
PKTSTAT
PFC5
PFC4
PFC3
PFC2
PFC1
PFC0
00000000 RW
0
0
PFC8
10001000 bbrbbrrb
DECIS
PKTSTAT
0
IN: PKTS[1] IN: PKTS[0] 0
OUT:PFC10 OUT:PFC9
OUT:PFC10 OUT:PFC9 0
0
PFC8
10001000 bbrbbrrb
PFC7
PFC6
PFC5
00000000 RW
PFC4
PFC3
PFC2
PFC1
PFC0
00000000 RW
IN: PKTS[1] IN: PKTS[0] PFC5
OUT:PFC7 OUT:PFC6
DECIS
PKTSTAT
IN:PKTS[2]
OUT:PFC12
DECIS
PKTSTAT
OUT:PFC12
PFC4
PFC3
PFC2
PFC1
PFC0
00000000 RW
IN:PKTS[1] IN:PKTS[0] 0
OUT:PFC11 OUT:PFC10
OUT:PFC11 OUT:PFC10 0
PFC9
PFC8
00001000 bbbbbrbb
PFC9
PFC6
PFC5
PFC4
PFC3
PFC2
PFC1
IN:PKTS[2]
OUT:PFC8
PFC0
00001000 bbbbbrbb
PFC7
IN:PKTS[1]
OUT:PFC7
DECIS
IN:PKTS[0]
OUT:PFC6
PKTSTAT
PFC5
PFC4
PFC3
PFC2
PFC1
PFC0
00000000 RW
0
0
PFC8
00001000 bbrbbrrb
DECIS
PKTSTAT
0
IN: PKTS[1] IN: PKTS[0] 0
OUT:PFC10 OUT:PFC9
OUT:PFC10 OUT:PFC9 0
0
PFC8
00001000 bbrbbrrb
PFC7
PFC6
PFC5
PFC4
PFC3
PFC2
PFC1
PFC0
00000000 RW
IN: PKTS[1] IN: PKTS[0] PFC5
OUT:PFC7 OUT:PFC6
PFC4
PFC3
PFC2
PFC1
PFC0
00000000 RW
EP2 (if ISO) IN Packets
per frame (1-3)
EP4 (if ISO) IN Packets
per frame (1-3)
EP6 (if ISO) IN Packets
per frame (1-3)
EP8 (if ISO) IN Packets
per frame (1-3)
AADJ
0
0
0
0
0
INPPF1
INPPF0
00000001 brrrrrbb
AADJ
0
0
0
0
0
INPPF1
INPPF0
00000001 brrrrrrr
AADJ
0
0
0
0
0
INPPF1
INPPF0
00000001 brrrrrbb
AADJ
0
0
0
0
0
INPPF1
INPPF0
00000001 brrrrrrr
Force IN Packet End
Force OUT Packet End
Skip
Skip
0
0
0
0
0
0
EP3
EP3
EP2
EP2
EP1
EP1
EP0
EP0
xxxxxxxx
xxxxxxxx
Endpoint 2 slave FIFO
Flag Interrupt Enable
Endpoint 2 slave FIFO
Flag Interrupt Request
Endpoint 4 slave FIFO
Flag Interrupt Enable
Endpoint 4 slave FIFO
Flag Interrupt Request
Endpoint 6 slave FIFO
Flag Interrupt Enable
Endpoint 6 slave FIFO
Flag Interrupt Request
Endpoint 8 slave FIFO
Flag Interrupt Enable
Endpoint 8 slave FIFO
Flag Interrupt Request
IN-BULK-NAK Interrupt
Enable
IN-BULK-NAK interrupt
Request
Endpoint Ping-NAK/IBN
Interrupt Enable
0
0
0
0
EDGEPF
PF
EF
FF
00000000 RW
0
0
0
0
0
PF
EF
FF
00000000 rrrrrbbb
0
0
0
0
EDGEPF
PF
EF
FF
00000000 RW
0
0
0
0
0
PF
EF
FF
00000000 rrrrrbbb
0
0
0
0
EDGEPF
PF
EF
FF
00000000 RW
0
0
0
0
0
PF
EF
FF
00000000 rrrrrbbb
0
0
0
0
EDGEPF
PF
EF
FF
00000000 RW
0
0
0
0
0
PF
EF
FF
00000000 rrrrrbbb
0
0
EP8
EP6
EP4
EP2
EP1
EP0
00000000 RW
0
0
EP8
EP6
EP4
EP2
EP1
EP0
00xxxxxx rrbbbbbb
EP8
EP6
EP4
EP2
EP1
EP0
0
IBN
00000000 RW
00000000 RW
W
W
Note
8. The register can only be reset, it cannot be set.
Document #: 001-04247 Rev *F
Page 19 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
E65B 1
NAKIRQ[8]
E65C 1
E65D 1
E65E 1
USBIE
USBIRQ[8]
EPIE
E65F 1
EPIRQ[8]
E660 1
E661 1
E662 1
[7]
GPIFIE
GPIFIRQ[7]
USBERRIE
E663 1
USBERRIRQ[8]
E664 1
ERRCNTLIM
E665 1
E666 1
CLRERRCNT
INT2IVEC
E667 1
INT4IVEC
E668 1
E669 7
E670 1
INTSET-UP
reserved
INPUT/OUTPUT
PORTACFG
E671 1
PORTCCFG
E672 1
PORTECFG
E673
E677
E678
E679
E67A
E67B
4
1
1
1
1
1
XTALINSRC
reserved
I2CS
I2DAT
I2CTL
XAUTODAT1
E67C 1
XAUTODAT2
E680
E681
E682
E683
E684
E685
E686
E687
E688
1
1
1
1
1
1
1
1
2
UDMA CRC
UDMACRCH[7]
UDMACRCL[7]
UDMACRCQUALIFIER
USB CONTROL
USBCS
SUSPEND
WAKEUPCS
TOGCTL
USBFRAMEH
USBFRAMEL
MICROFRAME
FNADDR
reserved
E68A
E68B
E68C
E68D
1
1
1
1
ENDPOINTS
EP0BCH[7]
EP0BCL[7]
reserved
EP1OUTBC
E68E
E68F
E690
E691
E692
E694
E695
E696
E698
E699
E69A
E69C
E69D
1
1
1
1
2
1
1
2
1
1
2
1
1
reserved
EP1INBC
EP2BCH[7]
EP2BCL[7]
reserved
EP4BCH[7]
EP4BCL[7]
reserved
EP6BCH[7]
EP6BCL[7]
reserved
EP8BCH[7]
EP8BCL[7]
E67D 1
E67E 1
E67F 1
b6
b5
b4
b3
b2
Endpoint Ping-NAK/IBN EP8
Interrupt Request
USB Int Enables
0
USB Interrupt Requests 0
Endpoint Interrupt
EP8
Enables
Endpoint Interrupt
EP8
Requests
GPIF Interrupt Enable
0
GPIF Interrupt Request 0
USB Error Interrupt
ISOEP8
Enables
USB Error Interrupt
ISOEP8
Requests
USB Error counter and
EC3
limit
Clear Error Counter EC3:0 x
Interrupt 2 (USB)
0
Autovector
Interrupt 4 (slave FIFO & 1
GPIF) Autovector
Interrupt 2&4 setup
0
Description
EP6
EP4
EP2
EP1
EP0
0
IBN
xxxxxx0x bbbbbbrb
EP0ACK
EP0ACK
EP6
HSGRANT
HSGRANT
EP4
URES
URES
EP2
SUSP
SUSP
EP1OUT
SUTOK
SUTOK
EP1IN
SOF
SOF
EP0OUT
SUDAV
SUDAV
EP0IN
00000000 RW
0xxxxxxx rbbbbbbb
00000000 RW
EP6
EP4
EP2
EP1OUT
EP1IN
EP0OUT
EP0IN
0
0
0
ISOEP6
0
0
ISOEP4
0
0
ISOEP2
0
0
0
0
0
0
GPIFWF
GPIFWF
0
GPIFDONE 00000000 RW
GPIFDONE 000000xx RW
ERRLIMIT 00000000 RW
ISOEP6
ISOEP4
ISOEP2
0
0
0
ERRLIMIT
0000000x bbbbrrrb
EC2
EC1
EC0
LIMIT3
LIMIT2
LIMIT1
LIMIT0
xxxx0100 rrrrbbbb
x
I2V4
x
I2V3
x
I2V2
x
I2V1
x
I2V0
x
0
x
0
xxxxxxxx W
00000000 R
0
I4V3
I4V2
I4V1
I4V0
0
0
10000000 R
0
0
0
AV2EN
0
INT4SRC
AV4EN
00000000 RW
I/O PORTA Alternate
Configuration
I/O PORTC Alternate
Configuration
I/O PORTE Alternate
Configuration
XTALIN Clock Source
FLAGD
SLCS
0
0
0
0
INT1
INT0
00000000 RW
GPIFA7
GPIFA6
GPIFA5
GPIFA4
GPIFA3
GPIFA2
GPIFA1
GPIFA0
00000000 RW
GPIFA8
T2EX
INT6
RXD1OUT
RXD0OUT T2OUT
T1OUT
T0OUT
00000000 RW
0
0
0
0
0
0
0
EXTCLK
00000000 rrrrrrrb
I2C Bus Control & Status
I2C Bus Data
I2C Bus Control
Autoptr1 MOVX access,
when APTREN=1
Autoptr2 MOVX access,
when APTREN=1
START
d7
0
D7
STOP
d6
0
D6
LASTRD
d5
0
D5
ID1
d4
0
D4
ID0
d3
0
D3
BERR
d2
0
D2
ACK
d1
STOPIE
D1
DONE
d0
400kHz
D0
000xx000
xxxxxxxx
00000000
xxxxxxxx
bbbrrrrr
RW
RW
RW
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
UDMA CRC MSB
UDMA CRC LSB
UDMA CRC Qualifier
CRC15
CRC7
QENABLE
CRC14
CRC6
0
CRC13
CRC5
0
CRC12
CRC4
0
CRC11
CRC3
QSTATE
CRC10
CRC2
QSIGNAL2
CRC9
CRC8
CRC1
CRC0
QSIGNAL1 QSIGNAL0
01001010 RW
10111010 RW
00000000 brrrbbbb
USB Control & Status
Put chip into suspend
Wakeup Control & Status
Toggle Control
USB Frame count H
USB Frame count L
Microframe count, 0-7
USB Function address
HSM
x
WU2
Q
0
FC7
0
0
0
x
WU
S
0
FC6
0
FA6
0
x
WU2POL
R
0
FC5
0
FA5
0
x
WUPOL
IO
0
FC4
0
FA4
DISCON
x
0
EP3
0
FC3
0
FA3
NOSYNSOF
x
DPEN
EP2
FC10
FC2
MF2
FA2
RENUM
x
WU2EN
EP1
FC9
FC1
MF1
FA1
SIGRSUME
x
WUEN
EP0
FC8
FC0
MF0
FA0
x0000000
xxxxxxxx
xx000101
x0000000
00000xxx
xxxxxxxx
00000xxx
0xxxxxxx
rrrrbbbb
W
bbbbrbbb
rrrbbbbb
R
R
R
R
Endpoint 0 Byte Count H (BC15)
Endpoint 0 Byte Count L (BC7)
(BC14)
BC6
(BC13)
BC5
(BC12)
BC4
(BC11)
BC3
(BC10)
BC2
(BC9)
BC1
(BC8)
BC0
xxxxxxxx
xxxxxxxx
RW
RW
Endpoint 1 OUT Byte
Count
BC6
BC5
BC4
BC3
BC2
BC1
BC0
0xxxxxxx RW
Endpoint 1 IN Byte Count 0
Endpoint 2 Byte Count H 0
Endpoint 2 Byte Count L BC7/SKIP
BC6
0
BC6
BC5
0
BC5
BC4
0
BC4
BC3
0
BC3
BC2
BC10
BC2
BC1
BC9
BC1
BC0
BC8
BC0
0xxxxxxx RW
00000xxx RW
xxxxxxxx RW
Endpoint 4 Byte Count H 0
Endpoint 4 Byte Count L BC7/SKIP
0
BC6
0
BC5
0
BC4
0
BC3
0
BC2
BC9
BC1
BC8
BC0
000000xx RW
xxxxxxxx RW
Endpoint 6 Byte Count H 0
Endpoint 6 Byte Count L BC7/SKIP
0
BC6
0
BC5
0
BC4
0
BC3
BC10
BC2
BC9
BC1
BC8
BC0
00000xxx RW
xxxxxxxx RW
Endpoint 8 Byte Count H 0
Endpoint 8 Byte Count L BC7/SKIP
0
BC6
0
BC5
0
BC4
0
BC3
0
BC2
BC9
BC1
BC8
BC0
000000xx RW
xxxxxxxx RW
Document #: 001-04247 Rev *F
b7
0
b1
b0
Default Access
RW
Page 20 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
E69E 2
E6A0 1
reserved
EP0CS
E6A1 1
EP1OUTCS
E6A2 1
EP1INCS
E6A3 1
EP2CS
E6A4 1
EP4CS
E6A5 1
EP6CS
E6A6 1
EP8CS
E6A7 1
EP2FIFOFLGS
E6A8 1
EP4FIFOFLGS
E6A9 1
EP6FIFOFLGS
E6AA 1
EP8FIFOFLGS
E6AB 1
EP2FIFOBCH
E6AC 1
EP2FIFOBCL
E6AD 1
EP4FIFOBCH
E6AE 1
EP4FIFOBCL
E6AF 1
EP6FIFOBCH
E6B0 1
EP6FIFOBCL
E6B1 1
EP8FIFOBCH
E6B2 1
EP8FIFOBCL
E6B3 1
SUDPTRH
E6B4 1
SUDPTRL
E6B5 1
SUDPTRCTL
2
E6B8 8
reserved
SET-UPDAT
E6C0 1
E6C1 1
GPIF
GPIFWFSELECT
GPIFIDLECS
E6C2
E6C3
E6C4
E6C5
1
1
1
1
E6C6 1
GPIFIDLECTL
GPIFCTLCFG
GPIFADRH[7]
GPIFADRL[7]
FLOWSTATE
FLOWSTATE
E6C7 1
E6C8 1
FLOWLOGIC
FLOWEQ0CTL
E6C9 1
FLOWEQ1CTL
E6CA 1
FLOWHOLDOFF
E6CB 1
FLOWSTB
E6CC 1
FLOWSTBEDGE
Description
b7
b6
b5
b4
b3
b2
b1
b0
Default Access
Endpoint 0 Control and HSNAK
Status
Endpoint 1 OUT Control 0
and Status
Endpoint 1 IN Control and 0
Status
Endpoint 2 Control and 0
Status
Endpoint 4 Control and 0
Status
Endpoint 6 Control and 0
Status
Endpoint 8 Control and 0
Status
Endpoint 2 slave FIFO
0
Flags
Endpoint 4 slave FIFO
0
Flags
Endpoint 6 slave FIFO
0
Flags
Endpoint 8 slave FIFO
0
Flags
Endpoint 2 slave FIFO
0
total byte count H
Endpoint 2 slave FIFO
BC7
total byte count L
Endpoint 4 slave FIFO
0
total byte count H
Endpoint 4 slave FIFO
BC7
total byte count L
Endpoint 6 slave FIFO
0
total byte count H
Endpoint 6 slave FIFO
BC7
total byte count L
Endpoint 8 slave FIFO
0
total byte count H
Endpoint 8 slave FIFO
BC7
total byte count L
Setup Data Pointer high A15
address byte
Setup Data Pointer low ad- A7
dress byte
Setup Data Pointer Auto 0
Mode
0
0
0
0
0
BUSY
STALL
10000000 bbbbbbrb
0
0
0
0
0
BUSY
STALL
00000000 bbbbbbrb
0
0
0
0
0
BUSY
STALL
00000000 bbbbbbrb
NPAK2
NPAK1
NPAK0
FULL
EMPTY
0
STALL
00101000 rrrrrrrb
0
NPAK1
NPAK0
FULL
EMPTY
0
STALL
00101000 rrrrrrrb
NPAK2
NPAK1
NPAK0
FULL
EMPTY
0
STALL
00000100 rrrrrrrb
0
NPAK1
NPAK0
FULL
EMPTY
0
STALL
00000100 rrrrrrrb
0
0
0
0
PF
EF
FF
00000010 R
0
0
0
0
PF
EF
FF
00000010 R
0
0
0
0
PF
EF
FF
00000110 R
0
0
0
0
PF
EF
FF
00000110 R
0
0
BC12
BC11
BC10
BC9
BC8
00000000 R
BC6
BC5
BC4
BC3
BC2
BC1
BC0
00000000 R
0
0
0
0
BC10
BC9
BC8
00000000 R
BC6
BC5
BC4
BC3
BC2
BC1
BC0
00000000 R
0
0
0
BC11
BC10
BC9
BC8
00000000 R
BC6
BC5
BC4
BC3
BC2
BC1
BC0
00000000 R
0
0
0
0
BC10
BC9
BC8
00000000 R
BC6
BC5
BC4
BC3
BC2
BC1
BC0
00000000 R
A14
A13
A12
A11
A10
A9
A8
xxxxxxxx
A6
A5
A4
A3
A2
A1
0
xxxxxxx0 bbbbbbbr
0
0
0
0
0
0
SDPAUTO
00000001 RW
8 bytes of setup data
D7
SET-UPDAT[0] =
bmRequestType
SET-UPDAT[1] =
bmRequest
SET-UPDAT[2:3] = wValue
SET-UPDAT[4:5] = wIndex
SET-UPDAT[6:7] =
wLength
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
R
Waveform Selector
GPIF Done, GPIF IDLE
drive mode
Inactive Bus, CTL states
CTL Drive Type
GPIF Address H
GPIF Address L
SINGLEWR1 SINGLEWR0 SINGLERD1 SINGLERD0 FIFOWR1
DONE
0
0
0
0
FIFOWR0
0
FIFORD1
0
FIFORD0
IDLEDRV
11100100 RW
10000000 RW
0
TRICTL
0
GPIFA7
CTL2
CTL2
0
GPIFA2
CTL1
CTL1
0
GPIFA1
CTL0
CTL0
GPIFA8
GPIFA0
11111111
00000000
00000000
00000000
Flowstate Enable and
Selector
Flowstate Logic
CTL-Pin States in
Flowstate
(when Logic = 0)
CTL-Pin States in Flowstate (when Logic = 1)
Holdoff Configuration
FSE
0
0
0
0
FS2
FS1
FS0
00000000 brrrrbbb
LFUNC1
CTL0E3
LFUNC0
CTL0E2
TERMA2
CTL0E1/
CTL5
TERMA1
CTL0E0/
CTL4
TERMA0
CTL3
TERMB2
CTL2
TERMB1
CTL1
TERMB0
CTL0
00000000 RW
00000000 RW
CTL0E2
CTL0E1/
CTL0E0/
CTL3
CTL5
CTL4
HOPERIOD3 HOPERIOD2 HOPERIOD1 HOPERIOD HOSTATE
0
SLAVE
RDYASYNC CTLTOGL
SUSTAIN
0
CTL2
CTL1
CTL0
00000000 RW
HOCTL2
HOCTL1
HOCTL0
00010010 RW
MSTB2
MSTB1
MSTB0
00100000 RW
0
0
FALLING
RISING
00000001 rrrrrrbb
Flowstate Strobe
Configuration
Flowstate Rising/Falling
Edge Configuration
Document #: 001-04247 Rev *F
0
0
0
GPIFA6
CTL5
CTL5
0
GPIFA5
CTL4
CTL4
0
GPIFA4
CTL3
CTL3
0
GPIFA3
CTL0E3
0
0
0
0
RW
RW
RW
RW
Page 21 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
E6CD 1
E6CE 1
FLOWSTBPERIOD
GPIFTCB3[7]
E6CF 1
GPIFTCB2[7]
E6D0 1
GPIFTCB1[7]
E6D1 1
GPIFTCB0[7]
2
E6D2 1
E6D3 1
E6D4 1
3
E6DA 1
E6DB 1
E6DC 1
3
E6E2 1
E6E3 1
E6E4 1
3
E6EA 1
E6EB 1
E6EC 1
3
E6F0 1
E6F1 1
E6F2 1
E6F3 1
E6F4 1
E6F5 1
E6F6 2
Description
EP2GPIFFLGSEL[7] Endpoint 2 GPIF Flag
select
EP2GPIFPFSTOP Endpoint 2 GPIF stop
transaction on prog. flag
EP2GPIFTRIG[7]
Endpoint 2 GPIF Trigger
reserved
reserved
reserved
EP4GPIFFLGSEL[7] Endpoint 4 GPIF Flag
select
EP4GPIFPFSTOP Endpoint 4 GPIF stop
transaction on GPIF Flag
EP4GPIFTRIG[7]
Endpoint 4 GPIF Trigger
reserved
reserved
reserved
EP6GPIFFLGSEL[7] Endpoint 6 GPIF Flag
select
EP6GPIFPFSTOP Endpoint 6 GPIF stop
transaction on prog. flag
EP6GPIFTRIG[7]
Endpoint 6 GPIF Trigger
reserved
reserved
reserved
EP8GPIFFLGSEL[7] Endpoint 8 GPIF Flag
select
EP8GPIFPFSTOP Endpoint 8 GPIF stop
transaction on prog. flag
EP8GPIFTRIG[7]
Endpoint 8 GPIF Trigger
reserved
XGPIFSGLDATH
GPIF Data H
(16-bit mode only)
XGPIFSGLDATLX
Read/Write GPIF Data L &
trigger transaction
XGPIFSGLDATLRead GPIF Data L, no
NOX
transaction trigger
GPIFREADYCFG
Internal RDY, Sync/Async,
RDY pin states
FE00 512
xxxx
80
81
82
Special Function Registers (SFRs)
IOA[9]
Port A (bit addressable)
SP
Stack Pointer
DPL0
Data Pointer 0 L
F400 512
F600 512
F800 1024
FC00 512
1
1
1
b6
b5
b4
b3
b2
b1
b0
D6
TC30
D5
TC29
D4
TC28
D3
TC27
D2
TC26
D1
TC25
D0
TC24
00000010 RW
00000000 RW
TC22
TC21
TC20
TC19
TC18
TC17
TC16
00000000 RW
TC14
TC13
TC12
TC11
TC10
TC9
TC8
00000000 RW
TC6
TC5
TC4
TC3
TC2
TC1
TC0
00000001 RW
reserved
reserved
reserved
GPIFREADYSTAT GPIF Ready Status
GPIFABORT
Abort GPIF Waveforms
reserved
ENDPOINT BUFFERS
EP0BUF
EP0-IN/-OUT buffer
EP10UTBUF
EP1-OUT buffer
EP1INBUF
EP1-IN buffer
reserved
EP2FIFOBUF
512/1024-byte EP 2/slave
FIFO buffer (IN or OUT)
EP4FIFOBUF
512 byte EP 4/slave FIFO
buffer (IN or OUT)
reserved
EP6FIFOBUF
512/1024-byte EP 6/slave
FIFO buffer (IN or OUT)
EP8FIFOBUF
512 byte EP 8/slave FIFO
buffer (IN or OUT)
reserved
I²C Configuration Byte
E740 64
E780 64
E7C0 64
2048
F000 1024
b7
Master-Strobe Half-Period D7
GPIF Transaction Count TC31
Byte 3
GPIF Transaction Count TC23
Byte 2
GPIF Transaction Count TC15
Byte 1
GPIF Transaction Count TC7
Byte 0
Document #: 001-04247 Rev *F
Default Access
00000000 RW
1
0
0
0
0
0
0
FS1
FS0
00000000 RW
0
0
0
0
0
0
0
FIFO2FLAG 00000000 RW
x
x
x
x
x
x
x
x
xxxxxxxx
0
0
0
0
0
0
FS1
FS0
00000000 RW
0
0
0
0
0
0
0
FIFO4FLAG 00000000 RW
x
x
x
x
x
x
x
x
xxxxxxxx
0
0
0
0
0
0
FS1
FS0
00000000 RW
0
0
0
0
0
0
0
FIFO6FLAG 00000000 RW
x
x
x
x
x
x
x
x
xxxxxxxx
0
0
0
0
0
0
FS1
FS0
00000000 RW
0
0
0
0
0
0
0
FIFO8FLAG 00000000 RW
x
x
x
x
x
x
x
x
xxxxxxxx
W
D15
D14
D13
D12
D11
D10
D9
D8
xxxxxxxx
RW
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
R
INTRDY
SAS
TCXRDY5
0
0
0
0
0
00000000 bbbrrrrr
0
x
0
x
RDY5
x
RDY4
x
RDY3
x
RDY2
x
RDY1
x
RDY0
x
00xxxxxx R
xxxxxxxx W
D7
D7
D7
D6
D6
D6
D5
D5
D5
D4
D4
D4
D3
D3
D3
D2
D2
D2
D1
D1
D1
D0
D0
D0
xxxxxxxx
xxxxxxxx
xxxxxxxx
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
RW
RW
RW
RW
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
0
DISCON
0
0
0
0
0
400KHZ
xxxxxxxx
n/a
D7
D7
A7
D6
D6
A6
D5
D5
A5
D4
D4
A4
D3
D3
A3
D2
D2
A2
D1
D1
A1
D0
D0
A0
xxxxxxxx RW
00000111 RW
00000000 RW
[10]
W
W
W
Page 22 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
Description
b6
b5
b4
A15
A7
A15
0
SMOD0
TF1
A14
A6
A14
0
x
TR1
A13
A5
A13
0
1
TF0
A12
A4
A12
0
1
TR0
A11
A3
A11
0
x
IE1
A10
A2
A10
0
x
IT1
A9
A1
A9
0
x
IE0
A8
A0
A8
SEL
IDLE
IT0
00000000
00000000
00000000
00000000
00110000
00000000
GATE
CT
M1
M0
GATE
CT
M1
M0
00000000 RW
D7
D7
D15
D15
x
D6
D6
D14
D14
x
D5
D5
D13
D13
T2M
D4
D4
D12
D12
T1M
D3
D3
D11
D11
T0M
D2
D2
D10
D10
MD2
D1
D1
D9
D9
MD1
D0
D0
D8
D8
MD0
00000000
00000000
00000000
00000000
00000001
Port B (bit addressable) D7
External Interrupt Flag(s) IE5
Upper Addr Byte of MOVX A15
using @R0/@R1
D6
IE4
A14
D5
I²CINT
A13
D4
USBNT
A12
D3
1
A11
D2
0
A10
D1
0
A9
D0
0
A8
xxxxxxxx RW
00001000 RW
00000000 RW
Serial Port 0 Control
(bit addressable)
Serial Port 0 Data Buffer
Autopointer 1 Address H
Autopointer 1 Address L
SM0_0
SM1_0
SM2_0
REN_0
TB8_0
RB8_0
TI_0
RI_0
00000000 RW
D7
A15
A7
D6
A14
A6
D5
A13
A5
D4
A12
A4
D3
A11
A3
D2
A10
A2
D1
A9
A1
D0
A8
A0
00000000 RW
00000000 RW
00000000 RW
Autopointer 2 Address H A15
Autopointer 2 Address L A7
A14
A6
A13
A5
A12
A4
A11
A3
A10
A2
A9
A1
A8
A0
00000000 RW
00000000 RW
Port C (bit addressable)
Interrupt 2 clear
Interrupt 4 clear
D7
x
x
D6
x
x
D5
x
x
D4
x
x
D3
x
x
D2
x
x
D1
x
x
D0
x
x
xxxxxxxx
xxxxxxxx
xxxxxxxx
Interrupt Enable
(bit addressable)
EA
ES1
ET2
ES0
ET1
EX1
ET0
EX0
00000000 RW
EP8E
EP6F
EP6E
EP4F
EP4E
EP2F
EP2E
01011010 R
EP4PF
EP4EF
EP4FF
0
EP2PF
EP2EF
EP2FF
00100010 R
EP8PF
EP8EF
EP8FF
0
EP6PF
EP6EF
EP6FF
01100110 R
0
D7
D7
0
D6
D6
0
D5
D5
0
D4
D4
0
D3
D3
APTR2INC
D2
D2
APTR1INC
D1
D1
APTREN
D0
D0
00000110 RW
xxxxxxxx RW
xxxxxxxx RW
D7
D7
D7
D7
D7
D6
D6
D6
D6
D6
D5
D5
D5
D5
D5
D4
D4
D4
D4
D4
D3
D3
D3
D3
D3
D2
D2
D2
D2
D2
D1
D1
D1
D1
D1
D0
D0
D0
D0
D0
00000000
00000000
00000000
00000000
00000000
1
PS1
PT2
PS0
PT1
PX1
PT0
PX0
10000000 RW
0
0
0
0
0
EP1INBSY
00000000 R
DONE
0
0
0
0
RW
EP1OUTBS EP0BSY
Y
EP1
EP0
D14
D13
D12
D11
D10
D9
D8
xxxxxxxx
RW
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
RW
83
84
85
86
87
88
1
1
1
1
1
1
DPH0
DPL1[9]
DPH1[9]
DPS[9]
PCON
TCON
Data Pointer 0 H
Data Pointer 1 L
Data Pointer 1 H
Data Pointer 0/1 select
Power Control
Timer/Counter Control
(bit addressable)
Timer/Counter Mode
Control
Timer 0 reload L
Timer 1 reload L
Timer 0 reload H
Timer 1 reload H
Clock Control
89
1
TMOD
8A
8B
8C
8D
8E
8F
90
91
92
1
1
1
1
1
1
1
1
1
TL0
TL1
TH0
TH1
CKCON[9]
reserved
IOB[9]
EXIF[9]
MPAGE[9]
93
98
5
1
reserved
SCON0
99
9A
9B
9C
9D
9E
9F
A0
A1
A2
A3
A8
1
1
1
1
1
1
1
1
1
1
5
1
SBUF0
AUTOPTRH1[9]
AUTOPTRL1[9]
reserved
AUTOPTRH2[9]
AUTOPTRL2[9]
reserved
IOC[9]
INT2CLR[9]
INT4CLR[9]
reserved
IE
A9
AA
1
1
reserved
EP2468STAT[9]
AB
1
EP24FIFOFLGS
AC
1
EP68FIFOFLGS
AD
AF
B0
B1
2
1
1
1
B2
B3
B4
B5
B6
B7
B8
1
1
1
1
1
1
1
B9
BA
1
1
reserved
AUTOPTRSET-UP[9] Autopointer 1&2 setup
IOD[9]
Port D (bit addressable)
IOE[9]
Port E
(NOT bit addressable)
OEA[9]
Port A Output Enable
OEB[9]
Port B Output Enable
OEC[9]
Port C Output Enable
OED[9]
Port D Output Enable
[9]
OEE
Port E Output Enable
reserved
IP
Interrupt Priority (bit addressable)
reserved
EP01STAT[9]
Endpoint 0&1 Status
[9]
[9]
[9, 7]
BB
1
GPIFTRIG
BC
BD
1
1
reserved
GPIFSGLDATH[9]
1
GPIFSGLDATLX[9]
BE
b7
Endpoint 2,4,6,8 status
EP8F
flags
Endpoint 2,4 slave FIFO 0
status flags
Endpoint 6,8 slave FIFO 0
status flags
Endpoint 2,4,6,8 GPIF
slave FIFO Trigger
GPIF Data H (16-bit mode D15
only)
GPIF Data L w/Trigger
D7
b3
b2
b1
b0
Default Access
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
W
W
RW
RW
RW
RW
RW
10000xxx brrrrbbb
Notes
9. SFRs not part of the standard 8051 architecture.
10. If no NAND is detected by the SIE then the default is 00000000.
Document #: 001-04247 Rev *F
Page 23 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
BF
1
C0
1
GPIFSGLDAT
LNOX[9]
SCON1[9]
C1
C2
C8
1
6
1
SBUF1[9]
reserved
T2CON
C9
CA
1
1
reserved
RCAP2L
CB
1
RCAP2H
CC
CD
CE
D0
1
1
2
1
TL2
TH2
reserved
PSW
D1
D8
D9
E0
7
1
7
1
reserved
EICON[9]
reserved
ACC
E1
E8
7
1
reserved
EIE[9]
E9
F0
F1
F8
7
1
7
1
reserved
B
reserved
EIP[9]
F9
7
reserved
Description
b7
b6
b5
b4
b3
b2
b1
b0
Default Access
GPIF Data L w/No Trigger D7
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
Serial Port 1 Control (bit SM0_1
addressable)
Serial Port 1 Data Buffer D7
SM1_1
SM2_1
REN_1
TB8_1
RB8_1
TI_1
RI_1
00000000 RW
D6
D5
D4
D3
D2
D1
D0
00000000 RW
Timer/Counter 2 Control
(bit addressable)
TF2
EXF2
RCLK
TCLK
EXEN2
TR2
CT2
CPRL2
00000000 RW
Capture for Timer 2, auto-reload, up-counter
Capture for Timer 2, auto-reload, up-counter
Timer 2 reload L
Timer 2 reload H
D7
D6
D5
D4
D3
D2
D1
D0
00000000 RW
D7
D6
D5
D4
D3
D2
D1
D0
00000000 RW
D7
D15
D6
D14
D5
D13
D4
D12
D3
D11
D2
D10
D1
D9
D0
D8
00000000 RW
00000000 RW
Program Status Word (bit CY
addressable)
AC
F0
RS1
RS0
OV
F1
P
00000000 RW
External Interrupt Control SMOD1
1
ERESI
RESI
INT6
0
0
0
01000000 RW
Accumulator (bit address- D7
able)
D6
D5
D4
D3
D2
D1
D0
00000000 RW
External Interrupt Enable(s)
1
1
1
EX6
EX5
EX4
EI²C
EUSB
11100000 RW
B (bit addressable)
D7
D6
D5
D4
D3
D2
D1
D0
00000000 RW
1
1
PX6
PX5
PX4
PI²C
PUSB
11100000 RW
External Interrupt Priority 1
Control
R
R = all bits read-only
W = all bits write-only
r = read-only bit
w = write-only bit
b = both read/write bit
Document #: 001-04247 Rev *F
Page 24 of 34
[+] Feedback
CY7C68033, CY7C68034
Absolute Maximum Ratings
Exceeding maximum ratings may impair the useful life of the
device. These user guidelines are not tested.
Static Discharge Voltage........................................... > 2000V
Max Output Current, per I/O port................................. 10 mA
Storage Temperature .................................. –65°C to +150°C
Operating Conditions
Ambient Temperature with Power Supplied...... 0°C to +70°C
Supply Voltage to Ground Potential................–0.5V to +4.0V
TA (Ambient Temperature Under Bias) ............. 0°C to +70°C
DC Input Voltage to Any Input Pin ........................ +5.25V[12]
Supply Voltage............................................+3.00V to +3.60V
DC Voltage Applied to
Outputs in High Z State ........................ –0.5V to VCC + 0.5V
Ground Voltage.................................................................. 0V
FOSC (Oscillator or Crystal Frequency).... 24 MHz ± 100 ppm
(Parallel Resonant)
Power Dissipation..................................................... 300 mW
DC Characteristics
Table 10. DC Characteristics
Parameter
VCC
Description
Conditions
Supply Voltage
VCC Ramp Up 0 to 3.3V
Min
Typ
Max
Unit
3.00
3.3
3.60
V
μs
200
VIH
Input HIGH Voltage
2
VIL
Input LOW Voltage
VIH_X
Crystal Input HIGH Voltage
VIL_X
Crystal Input LOW Voltage
II
Input Leakage Current
0< VIN < VCC
5.25
V
–0.5
0.8
V
2
5.25
V
–0.5
0.8
V
±10
μA
0.4
V
VOH
Output Voltage HIGH
IOUT = 4 mA
VOL
Output LOW Voltage
IOUT = –4 mA
IOH
Output Current HIGH
4
mA
IOL
Output Current LOW
4
mA
CIN
Input Pin Capacitance
Except D+/D–
10
pF
D+/D–
15
pF
μA
ISUSP
ICC
2.4
V
Suspend Current
Connected
300
380[12]
CY7C68034
Disconnected
100
150[12]
μA
mA
mA
Suspend Current
Connected
0.5
1.2[12]
CY7C68033
Disconnected
0.3
1.0[12]
Supply Current
8051 running, connected to USB HS
43
mA
8051 running, connected to USB FS
35
mA
43
mA
IUNCONFIG
Unconfigured Current
Before bMaxPower granted by host
TRESET
Reset Time After Valid Power
VCC min = 3.0V
Pin Reset After powered on
5.0
ms
200
μs
USB Transceiver
USB 2.0-compliant in full and high speed modes.
AC Electrical Characteristics
USB Transceiver
USB 2.0-compliant in full- and high speed modes.
Notes
11. Applying power to I/O pins when the chip is not powered is not recommended
12. .Measured at Max VCC, 25°C.
Document #: 001-04247 Rev *F
Page 25 of 34
[+] Feedback
CY7C68033, CY7C68034
Slave FIFO Asynchronous Read
Figure 11. Slave FIFO Asynchronous Read Timing Diagram[13]
tRDpwh
SLRD
tRDpwl
FLAGS
tXFD
tXFLG
DATA
N+1
N
tOEon
SLOE
tOEoff
Table 11. Slave FIFO Asynchronous Read Parameters[15]
Parameter
Description
Min
Max
Unit
tRDpwl
SLRD Pulse Width LOW
50
ns
tRDpwh
SLRD Pulse Width HIGH
50
ns
tXFLG
SLRD to FLAGS Output Propagation Delay
70
ns
tXFD
SLRD to FIFO Data Output Propagation Delay
15
ns
tOEon
SLOE Turn on to FIFO Data Valid
10.5
ns
tOEoff
SLOE Turn off to FIFO Data Hold
10.5
ns
Slave FIFO Asynchronous Write
Figure 12. Slave FIFO Asynchronous Write Timing Diagram[13]
tWRpwh
SLWR/SLCS#
tWRpwl
tSFD
tFDH
DATA
tXFD
FLAGS
Table 12. Slave FIFO Asynchronous Write Parameters with Internally Sourced IFCLK [15]
Parameter
Description
Min
Max
Unit
tWRpwl
SLWR Pulse LOW
50
ns
tWRpwh
SLWR Pulse HIGH
70
ns
tSFD
SLWR to FIFO DATA Setup Time
10
ns
tFDH
FIFO DATA to SLWR Hold Time
10
tXFD
SLWR to FLAGS Output Propagation Delay
ns
70
ns
Notes
13. Dashed lines denote signals with programmable polarity.
14. GPIF asynchronous RDYx signals have a minimum setup time of 50 ns when using internal 48 MHz IFCLK.
15. Slave FIFO asynchronous parameter values use internal IFCLK setting at 48 MHz.
Document #: 001-04247 Rev *F
Page 26 of 34
[+] Feedback
CY7C68033, CY7C68034
Slave FIFO Asynchronous Packet End Strobe
Figure 13. Slave FIFO Asynchronous Packet End Strobe Timing Diagram[9]
tPEpwh
PKTEND
tPEpwl
FLAGS
tXFLG
Table 13. Slave FIFO Asynchronous Packet End Strobe Parameters[15]
Parameter
Description
Min
Max
Unit
tPEpwl
PKTEND Pulse Width LOW
50
ns
tPWpwh
PKTEND Pulse Width HIGH
50
ns
tXFLG
PKTEND to FLAGS Output Propagation Delay
115
ns
Slave FIFO Output Enable
Figure 14. Slave FIFO Output Enable Timing Diagram[13]
SLOE
tOEoff
tOEon
DATA
Table 14. Slave FIFO Output Enable Parameters
Max
Unit
tOEon
Parameter
SLOE Assert to FIFO DATA Output
Description
Min
10.5
ns
tOEoff
SLOE Deassert to FIFO DATA Hold
10.5
ns
Slave FIFO Address to Flags/Data
Figure 15. Slave FIFO Address to Flags/Data Timing Diagram[13]
FIFOADR [1.0]
tXFLG
FLAGS
tXFD
DATA
N
N+1
Table 15. Slave FIFO Address to Flags/Data Parameters
Parameter
Description
Min
Max
Unit
tXFLG
FIFOADR[1:0] to FLAGS Output Propagation Delay
10.7
ns
tXFD
FIFOADR[1:0] to FIFODATA Output Propagation Delay
14.3
ns
Document #: 001-04247 Rev *F
Page 27 of 34
[+] Feedback
CY7C68033, CY7C68034
Slave FIFO Asynchronous Address
Figure 16. Slave FIFO Asynchronous Address Timing Diagram[13]
SLCS/FIFOADR [1:0]
tFAH
tSFA
SLRD/SLWR/PKTEND
Table 16. Slave FIFO Asynchronous Address Parameters[15]
Parameter
Description
Min
Max
Unit
tSFA
FIFOADR[1:0] to SLRD/SLWR/PKTEND Setup Time
10
ns
tFAH
RD/WR/PKTEND to FIFOADR[1:0] Hold Time
10
ns
Sequence Diagram
Sequence Diagram of a Single and Burst Asynchronous Read
Figure 17. Slave FIFO Asynchronous Read Sequence and Timing Diagram[13]
tSFA
tFAH
tSFA
tFAH
FIFOADR
t=0
tRDpwl
tRDpwh
tRDpwl
T=0
tRDpwl
tRDpwh
tRDpwl
tRDpwh
tRDpwh
SLRD
t=3
t=2
T=3
T=2
T=5
T=4
T=6
SLCS
tXFLG
tXFLG
FLAGS
tXFD
Data (X)
Driven
DATA
tXFD
tXFD
N
N
N+1
N+3
N+2
tOEon
tOEoff
tOEon
tXFD
tOEoff
SLOE
t=4
t=1
T=7
T=1
Figure 18. Slave FIFO Asynchronous Read Sequence of Events Diagram
SLOE
FIFO POINTER
SLRD
FIFO DATA BUS Not Driven
SLRD
SLOE
SLOE
SLRD
SLRD
SLRD
SLRD
SLOE
N
N
N+1
N+1
N+1
N+1
N+2
N+2
N+3
N+3
Driven: X
N
N
Not Driven
N
N+1
N+1
N+2
N+2
Not Driven
N
Document #: 001-04247 Rev *F
Page 28 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 17 on page 28 shows 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 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 tRDpwl and minimum de-active pulse width of
tRDpwh. If SLCS is used then, SLCS must be in asserted with
SLRD or before SLRD is asserted (that is the SLCS and SLRD
signals must both be asserted to start a valid read condition).
■
The data that is driven, after asserting SLRD, is the updated
data from the FIFO. This data is valid after a propagation delay
of tXFD from the activating edge of SLRD. In Figure 17, data N
is the first valid data read from the FIFO. 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.
Sequence Diagram of a Single and Burst Asynchronous Write
Figure 19. Slave FIFO Asynchronous Write Sequence and Timing Diagram[13]
tSFA
tFAH
tSFA
tFAH
FIFOADR
t=0
tWRpwl
tWRpwh
T=0
tWRpwl
tWRpwl
tWRpwh
tWRpwl
tWRpwh
tWRpwh
SLWR
t=3
t =1
T=1
T=3
T=4
T=6
T=7
T=9
SLCS
tXFLG
tXFLG
FLAGS
tSFD tFDH
tSFD tFDH
tSFD tFDH
tSFD tFDH
N+1
N+2
N+3
N
DATA
t=2
T=2
T=5
T=8
tPEpwl
tPEpwh
PKTEND
Figure 19 shows 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 tSFA. If SLCS is used, it must also be asserted
(SLCS may be tied low in some applications).
■
At t = 1 SLWR is asserted. SLWR must meet the minimum
active pulse of tWRpwl and minimum de-active pulse width of
tWRpwh. If the SLCS is used, it must be in asserted with SLWR
or before SLWR is asserted.
■
At t = 2, data must be present on the bus tSFD before the
deasserting edge of SLWR.
At t = 3, deasserting SLWR causes the data to be written from
the data bus to the FIFO and then increments the FIFO pointer.
Document #: 001-04247 Rev *F
The FIFO flag is also updated after tXFLG from the deasserting
edge of SLWR.
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.
Page 29 of 34
[+] Feedback
CY7C68033, CY7C68034
Ordering Information
Ordering Code
Description
Silicon for battery-powered applications
CY7C68034-56LFXC
8 x 8 mm, 56 QFN – Pb-free
CY7C68034-56LTXC
8 X 8 mm, 56 QFN (Sawn)
Silicon for non-battery-powered applications
CY7C68033-56LFXC
8 x 8 mm, 56 QFN – Pb-free
CY7C68033-56LTXC
8 X 8 mm, 56 QFN (Sawn)
Development Kit
CY3686
EZ-USB NX2LP-Flex Development Kit
Package Diagram
Figure 20. 56-Pin QFN 8 x 8 mm LF56A
51-85144 *G
Document #: 001-04247 Rev *F
Page 30 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 21. 56-Pin QFN (8 X 8 X 0.9 MM) - Sawn
001-53450 **
Document #: 001-04247 Rev *F
Page 31 of 34
[+] Feedback
CY7C68033, CY7C68034
PCB Layout Recommendations[16]
The following recommendations should be followed to ensure
reliable high performance operation:
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
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 through 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.
■
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.
For further information on this package design please refer to the
application note Surface Mount Assembly of AMKOR’s
MicroLeadFrame (MLF) Technology. This application note can
be downloaded from AMKOR’s website from the following URL:
■
No vias should be placed on the DPLUS or DMINUS trace
routing unless absolutely necessary.
http://www.amkor.com/products/notes_papers/
MLF_AppNote_0902.pdf.
■
Isolate the DPLUS and DMINUS traces from all other signal
traces as much as possible.
The application note provides detailed information on board
mounting guidelines, soldering flow, rework process, and so on.
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.
Document #: 001-04247 Rev *F
Page 32 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 22 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 enable 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 23 is a plot of the solder mask pattern and Figure 24 displays an X-Ray image of the assembly (darker areas indicate solder).
Figure 22. Cross-section of the Area Underneath the QFN Package.
0.017” dia
Solder Mask
Cu Fill
Cu Fill
PCB Material
Via hole for thermally connecting the
QFN to the circuit board ground plane.
0.013” dia
PCB Material
This figure only shows the top three layers of the
circuit board: Top Solder, PCB Dielectric, and the Ground Plane.
Figure 23. Plot of the Solder Mask (White Area)
Figure 24. X-ray Image of the Assembly
Document #: 001-04247 Rev *F
Page 33 of 34
[+] Feedback
CY7C68033, CY7C68034
Document History Page
Document Title: CY7C68033/CY7C68034 EZ-USB NX2LP-Flex™ Flexible USB NAND Flash Controller
Document #: 001-04247 Rev *F
REV.
ECN NO. Submission
Date
Orig. of
Change
Description of Change
**
388499
See ECN
GIR
Preliminary draft
*A
394699
See ECN
XUT
Minor Change: Upload data sheet to external website. Publicly announcing the
parts. No physical changes to document were made
*B
400518
See ECN
GIR
Took ‘Preliminary’ off the top of all pages. Corrected the first bulleted item. Corrected
Figure 3-2 caption. Added new logo
*C
433952
See ECN
RGL
Added I2C functionality
*D
498295
See ECN
KKU
Updated Data sheet format
Changed In/Output reference from I/O to IO
Changed set-up to setup
Changed IFCLK and CLKOUT pins to GPIO8 and GPIO9. Removed external IFCLK
*E
2717536
06/11/2009
DPT
Added 56 QFN (8 X 8 mm) package diagram and added CY7C68033-56LTXC and
CY7C68034-56LTXC part information in the Ordering Information table
*F
2728424
07/02/2009
GNKK
Updated revision in the footer
Sales, Solutions, and Legal Information
Worldwide Sales and Design Support
Cypress maintains a worldwide network of offices, solution centers, manufacturer’s representatives, and distributors. To find the office
closest to you, visit us at cypress.com/sales.
Products
PSoC
Clocks & Buffers
psoc.cypress.com
clocks.cypress.com
Wireless
wireless.cypress.com
Memories
memory.cypress.com
Image Sensors
image.cypress.com
© Cypress Semiconductor Corporation, 2005-2009. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use of
any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for
medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as
critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress 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.
Any Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign),
United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of,
and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress
integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code except as specified above is prohibited without
the express written permission of Cypress.
Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not
assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical components in life-support systems where
a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer
assumes all risk of such use and in doing so indemnifies Cypress against all charges.
Use may be limited by and subject to the applicable Cypress software license agreement.
Document #: 001-04247 Rev *F
Revised June 03, 2009
All products and company names mentioned in this document may be the trademarks of their respective holders.
Page 34 of 34
[+] Feedback