CY7C68033, CY7C68034
EZ-USB NX2LP-Flex™ Flexible USB NAND Flash Controller
CY7C68033/CY7C68034 Silicon Features
■ ■ ■ ■ ■ ■
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 Interrupts Separate Data Buffers for the Setup and Data portions of a CONTROL Transfer 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 Ideal for Battery Powered Applications ❐ Suspend current: 100 μA (typ) Ideal for Non-battery Powered Applications ❐ Suspend current: 300 μA (typ)
High-performance, enhanced 8051 core with low power options
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 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
■ ■ ■ ■ ■
■
■
■ ■ ■
■
CY7C68034 Only Silicon Features:
■
CY7C68033 Only Silicon Features:
■
Logic Block Diagram
24 MHz Ext. Xtal
NX2LP-Flex
x20 PLL VCC /0.5 /1.0 /2.0 8051 Core 12/24/48 MHz, four clocks/cycle
I 2C Master
Additional I/Os
NAND Boot Logic (ROM)
Address (16)/Data Bus (8)
Connected for full speed USB
1.5k
GPIF ECC
RDY (2) CTL (3)
General Programmable I/F to ASIC/DSP or bus standards such as 8-bit NAND, EPP, and so on.
D+ D–
USB 2.0 XCVR
Integrated full- and high speed XCVR
CY Smart USB 1.1/2.0 Engine
15 kB RAM
Up to 96 MB/s burst rate 4 kB FIFO
8/16
Enhanced USB core simplifies 8051 code
‘Soft Configuration’ enables easy firmware changes
FIFO and USB endpoint memory (master or slave modes)
Cypress Semiconductor Corporation Document #: 001-04247 Rev *F
•
198 Champion Court
•
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:
■ ■
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.
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
■
■
■
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
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
Page 2 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 1. Example DVB Block Diagram
NAND-Based DVB Unit
Buttons
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:
■ ■ ■ ■
LCD
D+/-
I/O
I/O
CTL
NX2LPFlex
CE[7:0] I/O
NAND Bank(s)
Parallel resonant Fundamental mode 500 μW drive level 12 pF (5% tolerance) load capacitors.
Audio / Video I/O
DVB Decoder
I/O
Figure 2. Example GPS Block Diagram
NAND-Based GPS Unit
Buttons
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
I/O
C1
CTL CE[7:0] I/O
24 MHz
C2 12 pf
LCD
D+/-
I/O
NX2LPFlex
NAND Bank(s)
12 pf
20 × PLL
12-pF capacitor values assumes a trace capacitance of 3 pF per side on a four-layer FR4 PCA
GPS
I/O
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.
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).
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.
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.
NX2LP-Flex does not support the low-speed signaling mode of 1.5 Mbps.
Document #: 001-04247 Rev *F
Page 3 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 1. Special Function Registers x 0 1 2 3 4 5 6 7 8 9 A B C D E F 8x IOA SP DPL0 DPH0 DPL1 DPH1 DPS PCON TCON TMOD TL0 TL1 TH0 TH1 CKCON SCON0 SBUF0 AUTOPTRH1 AUTOPTRL1 RESERVED AUTOPTRH2 AUTOPTRL2 RESERVED AUTOPTRSET-UP EP2468STAT EP24FIFOFLGS EP68FIFOFLGS GPIFSGLDATH GPIFSGLDATLX GPIFSGLDATLNOX EP01STAT GPIFTRIG RCAP2L RCAP2H TL2 TH2 IE IP T2CON EICON EIE EIP 9x IOB EXIF MPAGE Ax IOC INT2CLR INT4CLR Bx IOD IOE OEA OEB OEC OED OEE Cx SCON1 SBUF1 Dx PSW Ex ACC Fx B
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
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.
Yes
NAND Flash Present?
No
NAND Flash Programmed?
No
Table 2. Default Silicon ID Values Default VID/PID/DID Vendor ID Product ID Device release
Load Default Descriptors and Configuration Data
Yes
0x04B4 Cypress Semiconductor 0x8613 EZ-USB® Default 0xAnnn Depends on chip revision (nnn = chip revision, where first silicon = 001)
Load Firmware From NAND
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.
Enumerate According To Firmware
Enumerate As Unprogrammed NX2LP-Flex
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
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
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
[+] Feedback
CY7C68033, CY7C68034
Table 3. INT2 USB Interrupts USB INTERRUPT TABLE FOR INT2 Priority 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 INT2VEC Value 0x500 0x504 0x508 0x50C 0x510 0x514 0x518 0x51C 0x520 0x524 0x528 0x52C 0x530 0x534 0x538 0x53C 0x540 0x544 0x548 0x54C 0x550 0x554 0x558 0x55C 0x560 0x564 0x568 0x56C 0x570 0x574 0x578 0x57C EP2ISOERR EP4ISOERR EP6ISOERR EP8ISOERR EP0PING EP1PING EP2PING EP4PING EP6PING EP8PING ERRLIMIT EP0-IN EP0-OUT EP1-IN EP1-OUT EP2 EP4 EP6 EP8 IBN SUDAV SOF SUTOK SUSPEND USB RESET HISPEED EP0ACK Source Setup Data Available Start of Frame (or microframe) Setup Token Received USB Suspend request Bus reset Entered high speed operation NX2LP ACK’d the CONTROL Handshake Reserved EP0-IN ready to be loaded with data EP0-OUT has USB data EP1-IN ready to be loaded with data EP1-OUT has USB data IN: buffer available. OUT: buffer has data IN: buffer available. OUT: buffer has data IN: buffer available. OUT: buffer has data IN: buffer available. OUT: buffer has data IN-Bulk-NAK (any IN endpoint) Reserved EP0 OUT was Pinged and it NAK’d EP1 OUT was Pinged and it NAK’d EP2 OUT was Pinged and it NAK’d EP4 OUT was Pinged and it NAK’d EP6 OUT was Pinged and it NAK’d EP8 OUT was Pinged and it NAK’d Bus errors exceeded the programmed limit Reserved Reserved Reserved ISO EP2 OUT PID sequence error ISO EP4 OUT PID sequence error ISO EP6 OUT PID sequence error ISO EP8 OUT PID sequence error Notes
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 1 2 3 4 5 6 7 8 9 10 11 12 13 14 INT4VEC Value 0x580 0x584 0x588 0x58C 0x590 0x594 0x598 0x59C 0x5A0 0x5A4 0x5A8 0x5AC 0x5B0 0x5B4 Source EP2PF EP4PF EP6PF EP8PF EP2EF EP4EF EP6EF EP8EF EP2FF EP4FF EP6FF EP8FF GPIFDONE GPIFWF Notes Endpoint 2 Programmable Flag Endpoint 4 Programmable Flag Endpoint 6 Programmable Flag Endpoint 8 Programmable Flag Endpoint 2 Empty Flag Endpoint 4 Empty Flag Endpoint 6 Empty Flag Endpoint 8 Empty Flag Endpoint 2 Full Flag Endpoint 4 Full Flag Endpoint 6 Full Flag Endpoint 8 Full Flag 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.
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
Figure 5. Reset Timing Plots
RESET#
VIL 3.3V 3.0V VCC 0V TRESET
Power-on Reset
RESET#
VIL 3.3V VCC 0V 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
Table 5. Reset Timing Values Condition Power-on Reset with crystal Power-on Reset with external clock source Powered Reset 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:
■
Figure 6. Internal Code Memory TRESET 5 ms 200 μs + Clock stability time 200 μs
E200 E1FF E000 FFFF 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#, WR#)* 0500 0000 1 kbyte ROM
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.
*SUDPTR, USB download, NAND boot access
■ ■
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.
Register Addresses
Figure 7. Internal Register Addresses
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 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:
■ ■ ■
FFFF
4 KBytes EP2-EP8 buffers (8 x 512)
F000 EFFF 2 KBytes RESERVED E800 E7FF E7C0 E7BF E780 E77F E740 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 8051 xdata RAM
USB download (only supported by the Cypress Manufacturing Tool) Setup data pointer NAND boot access.
E73F E700 E6FF
E500 E4FF E480 E47F
E400 E3FF E200 E1FF
Document #: 001-04247 Rev *F
Page 8 of 34
[+] Feedback
CY7C68033, CY7C68034
Endpoint RAM
Size
■ ■
Setup Data Buffer (Endpoints 0 and 1) (Endpoints 2, 4, 6, 8) 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: EP2–1024 double buffered; EP6–512 quad buffered (column 8 in Figure 8).
3 × 64 bytes 8 × 512 bytes
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.
■
Figure 8. Endpoint Configuration
EP0 IN&OUT EP1 IN EP1 OUT 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64
EP2
512 512
EP2
512 512
EP2
512 512
EP2
512 512
EP2
512 512
EP2
512 512
EP2
1024
EP2
1024
EP2
1024
EP2
512
EP2 EP2
1024 1024
512
512
EP4
512 512
EP4
512 512
EP4
512 512 512 512 512 512 512 512 1024 1024 1024
EP6
512
1024
1024
EP6
512 512
EP6
512 512
EP6
1024
EP6
512 512
EP6
512 512
EP6
1024
EP6
512 512
EP6
512 512
EP6
1024
512 512
1024 1024
1024
EP8
512 512 512 512 1024
EP8
512 512 512 512 1024
EP8
512 512 512 512 1024
EP8
512 512
EP8
512 512 1024
1
2
3
4
5
6
7
8
9
10
11
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 ep0 ep1out ep1in ep2 ep4 ep6 ep8 64 0 0 0 0 0 0 0 64 512 bulk[4] 512 bulk[4] 512 bulk out (2×) 512 bulk out (2×) 512 bulk in (2×) 512 bulk in (2×) 1 64 64 int 64 int 512 int out (2×) 512 bulk out (2×) 512 int in (2×) 512 bulk in (2×) 2 64 64 int 64 int 512 iso out (2×) 512 bulk out (2×) 512 iso in (2×) 512 bulk in (2×) 3
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
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 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.
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. 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 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]
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 following two ECC configurations 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 is calculated and stored in ECC1. The ECC for the next 256 bytes of data is stored in ECC2. After the second
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.
I2C Controller
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. 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
PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0
GPIF Master
XTALIN XTALOUT RESET# WAKEUP# SCL SDATA
DPLUS DMINUS
PA7 PA6 PA5 PA4 WU2/PA3 PA2 INT1#/PA1 INTO#/PA0 GPIO8 GPIO9
↔ 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
↔ 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
Slave FIFO
↔ 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
Default NAND Firmware Use
Document #: 001-04247 Rev *F
Page 12 of 34
[+] Feedback
CY7C68033, CY7C68034
Figure 10. CY7C68033/CY7C68034 56-pin QFN Pin Assignment
*WAKEUP
PD7/FD15
PD6/FD14
PD5/FD13
PD4/FD12
PD3/FD11
PD2/FD10
PD1/FD9
PD0/FD8
GPIO9
GND
56
GND
VCC
55
VCC
54
53
52
51
50
49
48
47
46
45
44
43
RDY0/*SLRD RDY1/*SLWR AVCC XTALOUT XTALIN AGND AVCC DPLUS DMINUS
1 2 3 4 5 6 7 8 9
42 41 40 39 38 37 36 35 34 33 32 31 30 29 15 16 17 18 19 20 21 22 23 24 25 26 27 28
RESET# GND PA7/*FLAGD/SLCS# PA6/*PKTEND PA5/FIFOADR1 PA4/FIFOADR0 PA3/*WU2 PA2/*SLOE PA1/INT1# PA0/INT0# VCC CTL2/*FLAGC CTL1/*FLAGB CTL0/*FLAGA
AGND 10 VCC 11 GND 12 GPIO8 13 RESERVED# 14
Document #: 001-04247 Rev *F
SCL
SDATA
VCC
PB0/FD0
PB1/FD1
PB2/FD2
PB3/FD3
PB4/FD4
PB5/FD5
PB6/FD6
PB7/FD7
GND
VCC
GND
Page 13 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 8. NX2LP-Flex Pin Descriptions [6] 56 QFN Default Pin Pin Name Number 9 8 42 5 DMINUS DPLUS RESET# XTALIN NAND Firmware Usage N/A N/A N/A N/A Pin Type I/O/Z I/O/Z Input Input Default State Z Z N/A N/A Description USB D– Signal. Connect to the USB D– signal. USB D+ Signal. Connect to the USB D+ signal. Active LOW Reset. Resets the entire chip. See section ”Reset and Wakeup” on page 7 for more details. 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. 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. 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. 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. 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. 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. 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.
4
XTALOUT
N/A
Output
N/A
54 1
GPIO9 RDY0 or SLRD
GPIO9 R_B1#
O/Z Input
12 MHz GPIO9 is a bidirectional IO port pin. N/A
2
RDY1 or SLWR
R_B2#
Input
N/A
29
CTL0 or FLAGA
WE#
O/Z
H
30
CTL1 or FLAGB
RE0#
O/Z
H
31
CTL2 or FLAGC
RE1#
O/Z
H
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 13 14 15 16 44 GPIO8 Reserved# SCL SDATA WAKEUP NAND Firmware Usage GPIO8 N/A N/A N/A Unused Pin Type I/O/Z Input OD OD Input Default State I N/A Z Z N/A Description GPIO8: is a bidirectional IO port pin. Reserved. Connect to ground. Clock for the I2C interface. Connect to VCC with a 2.2K resistor, even if no I2C peripheral is attached. Data for the I2C interface. Connect to VCC with a 2.2K resistor, even if no I2C peripheral is attached. 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]. 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.
Port A 33 PA0 or INT0# CLE I/O/Z I (PA0)
34
PA1 or INT1#
ALE
I/O/Z
I (PA1)
35
PA2 or SLOE
LED1#
I/O/Z
I (PA2)
36
PA3 or WU2
LED2#
I/O/Z
I (PA3)
37
PA4 or FIFOADR0
WP_NF#
I/O/Z
I (PA4)
38
PA5 or FIFOADR1
WP_SW#
I/O/Z
I (PA5)
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 39 PA6 or PKTEND NAND Firmware Usage GPIO0 (Input) Pin Type I/O/Z Default State I (PA6) 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.
40
PA7 or FLAGD or SLCS#
GPIO1 (Input)
I/O/Z
I (PA7)
Port B 18 PB0 or FD[0] DD0 I/O/Z I (PB0)
19
PB1 or FD[1]
DD1
I/O/Z
I (PB1)
20
PB2 or FD[2]
DD2
I/O/Z
I (PB2)
21
PB3 or FD[3]
DD3
I/O/Z
I (PB3)
22
PB4 or FD[4]
DD4
I/O/Z
I (PB4)
23
PB5 or FD[5]
DD5
I/O/Z
I (PB5)
24
PB6 or FD[6]
DD6
I/O/Z
I (PB6)
25
PB7 or FD[7]
DD7
I/O/Z
I (PB7)
PORT D 45 PD0 or FD[8] CE0# I/O/Z I (PD0)
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 46 PD1 or FD[9] NAND Firmware Usage CE1# Pin Type I/O/Z Default State I (PD1) 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 data 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 data 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 data 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 data 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 data bus. CE7# is a NAND chip enable output signal. GPIO7 is a general purpose I/O signal. Analog VCC. Connect this pin to 3.3V power source. This signal provides power to the analog section of the chip. Analog Ground. Connect to ground with as short a path as possible. VCC. Connect to 3.3V power source.
47
PD2 or FD[10]
CE2# or GPIO2
I/O/Z
I (PD2)
48
PD3 or FD[11]
CE3# or GPIO3
I/O/Z
I (PD3)
49
PD4 or FD[12]
CE4# or GPIO4
I/O/Z
I (PD4)
50
PD5 or FD[13]
CE5# or GPIO5
I/O/Z
I (PD5)
51
PD6 or FD[14]
CE6# or GPIO6
I/O/Z
I (PD6)
52
PD7 or FD[15]
CE7# or GPIO7
I/O/Z
I (PD7)
Power and Ground 3 7 6 10 11 17 27 32 43 55 12 26 28 41 53 56 AVCC AGND VCC N/A N/A N/A Power Ground Power N/A N/A N/A
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
E400 128 E480 128 E50D E600 1 E601 1 E602 1 E603 1 E604 1 E605 E606 E607 E608 1 1 1 1
Description
b7
b6
D6
b5
D5
b4
D4
b3
D3
b2
D2
b1
D1
b0
D0
Default Access
xxxxxxxx RW
E609 1 E60A 1 E60B 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
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 REVCTL[7] 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 0 0
reserved 0 3048MHZ FLAGB2 FLAGD2 0 0 A14 A6 0 0 rv6 0 0
reserved
FULL_SPEE reserved D_ONLY PORTCSTB CLKSPD1 CLKSPD0 0 IFCLKPOL ASYNC FLAGB1 FLAGD1 0 0 A13 A5 0 PKTEND rv5 0 0 FLAGB0 FLAGD0 0 0 A12 A4 0 SLOE rv4 0 0 FLAGA3 FLAGC3 EP3 BREAK A11 A3 0 SLRD rv3 0 0
reserved CLKINV GSTATE FLAGA2 FLAGC2 EP2 BPPULSE A10 A2 0 SLWR rv2 0 0
reserved CLKOE IFCFG1 FLAGA1 FLAGC1 EP1 BPEN A9 A1 230UART1 EF rv1 dyn_out
reserved 8051RES IFCFG0 FLAGA0 FLAGC0 EP0 0 A8 A0 230UART0 FF rv0 enh_pkt
00000000 R 00000010 rrbbbbbr 10000000 RW 00000000 RW 00000000 RW xxxxxxxx 00000000 xxxxxxxx xxxxxxxx 00000000 W rrrrbbbr RW RW rrrrrrbb
00000000 rrbbbbbb RevA R 00000001 00000000 rrrrrrbb
HOLDTIME1 HOLDTIME0 00000000 rrrrrrbb
VALID VALID VALID VALID VALID VALID 0 0 0 0
0 0 DIR DIR DIR DIR INFM1 INFM1 INFM1 INFM1
TYPE1 TYPE1 TYPE1 TYPE1 TYPE1 TYPE1 OEP1 OEP1 OEP1 OEP1
TYPE0 TYPE0 TYPE0 TYPE0 TYPE0 TYPE0 AUTOOUT AUTOOUT AUTOOUT AUTOOUT
0 0 SIZE 0 SIZE 0 AUTOIN AUTOIN AUTOIN AUTOIN
0 0 0 0 0 0
0 0 BUF1 0 BUF1 0
0 0 BUF0 0 BUF0 0
10100000 brbbrrrr 10100000 brbbrrrr 10100010 10100000 11100010 11100000 bbbbbrbb bbbbrrrr bbbbbrbb bbbbrrrr
ZEROLENIN 0 ZEROLENIN 0 ZEROLENIN 0 ZEROLENIN 0
WORDWIDE 00000101 rbbbbbrb WORDWIDE 00000101 rbbbbbrb WORDWIDE 00000101 rbbbbbrb WORDWIDE 00000101 rbbbbbrb
0 PL7 0 PL7 0 PL7 0 PL7 0
0 PL6 0 PL6 0 PL6 0 PL6 0
0 PL5 0 PL5 0 PL5 0 PL5 0
0 PL4 0 PL4 0 PL4 0 PL4 0
0 PL3 0 PL3 0 PL3 0 PL3 0
PL10 PL2 0 PL2 PL10 PL2 0 PL2 0
PL9 PL1 PL9 PL1 PL9 PL1 PL9 PL1 0
PL8 PL0 PL8 PL0 PL8 PL0 PL8 PL0 ECCM
00000010 rrrrrbbb 00000000 RW 00000010 rrrrrrbb 00000000 RW 00000010 rrrrrbbb 00000000 RW 00000010 rrrrrrbb 00000000 RW 00000000 rrrrrrrb
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 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ECCRESET ECC1B0 ECC1B1 ECC1B2 ECC2B0 ECC2B1 ECC2B2 EP2FIFOPFH[7] EP2FIFOPFH[7] EP2FIFOPFL[7] EP2FIFOPFL
[7]
Description
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 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) Force IN Packet End Force OUT Packet End 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
b7
x LINE15 LINE7 COL5 LINE15 LINE7 COL5 DECIS DECIS PFC7 IN:PKTS[1] OUT:PFC7 DECIS DECIS PFC7
b6
x LINE14 LINE6 COL4 LINE14 LINE6 COL4 PKTSTAT PKTSTAT PFC6 IN:PKTS[0] OUT:PFC6 PKTSTAT PKTSTAT PFC6
b5
x LINE13 LINE5 COL3 LINE13 LINE5 COL3 IN:PKTS[2] OUT:PFC12 OUT:PFC12 PFC5 PFC5 0 0 PFC5
b4
x LINE12 LINE4 COL2 LINE12 LINE4 COL2 IN:PKTS[1] OUT:PFC11 OUT:PFC11 PFC4 PFC4
b3
b2
b1
x LINE9 LINE1 LINE17 LINE9 LINE1 0 PFC9 PFC9 PFC1 PFC1 0 0 PFC1 PFC1 PFC9 PFC9 PFC1 PFC1 0 0 PFC1 PFC1
b0
x LINE8 LINE0 LINE16 LINE8 LINE0 0 PFC8 IN:PKTS[2] OUT:PFC8 PFC0 PFC0 PFC8 PFC8 PFC0 PFC0 PFC8 IN:PKTS[2] OUT:PFC8 PFC0 PFC0 PFC8 PFC8 PFC0 PFC0
Default Access
00000000 00000000 00000000 00000000 00000000 00000000 00000000 10001000 W R R R R R R bbbbbrbb
x x LINE11 LINE10 LINE3 LINE2 COL1 COL0 LINE11 LINE10 LINE3 LINE2 COL1 COL0 IN:PKTS[0] 0 OUT:PFC10 OUT:PFC10 0 PFC3 PFC3 PFC2 PFC2
10001000 bbbbbrbb 00000000 RW 00000000 RW 10001000 bbrbbrrb 10001000 bbrbbrrb 00000000 RW 00000000 RW 00001000 bbbbbrbb 00001000 bbbbbrbb 00000000 RW 00000000 RW 00001000 bbrbbrrb 00001000 bbrbbrrb 00000000 RW 00000000 RW
EP4FIFOPFH[7] EP4FIFOPFH[7] EP4FIFOPFL
[7]
IN: PKTS[1] IN: PKTS[0] 0 OUT:PFC10 OUT:PFC9 OUT:PFC10 OUT:PFC9 0 PFC4 PFC4 PFC3 PFC3 PFC2 PFC2
EP4FIFOPFL[7] EP6FIFOPFH[7] EP6FIFOPFH
[7]
IN: PKTS[1] IN: PKTS[0] PFC5 OUT:PFC7 OUT:PFC6 DECIS PKTSTAT IN:PKTS[2] OUT:PFC12 DECIS PKTSTAT OUT:PFC12 PFC7 IN:PKTS[1] OUT:PFC7 DECIS DECIS PFC7 PFC6 IN:PKTS[0] OUT:PFC6 PKTSTAT PKTSTAT PFC6 PFC5 PFC5 0 0 PFC5
IN:PKTS[1] IN:PKTS[0] 0 OUT:PFC11 OUT:PFC10 OUT:PFC11 OUT:PFC10 0 PFC4 PFC4 PFC3 PFC3 PFC2 PFC2
EP6FIFOPFL[7] EP6FIFOPFL[7] EP8FIFOPFH[7] EP8FIFOPFH[7] EP8FIFOPFL[7] EP8FIFOPFL[7] reserved EP2ISOINPKTS EP4ISOINPKTS EP6ISOINPKTS EP8ISOINPKTS reserved INPKTEND[7] OUTPKTEND[7] INTERRUPTS EP2FIFOIE[7] EP2FIFOIRQ[7,8] EP4FIFOIE
[7]
IN: PKTS[1] IN: PKTS[0] 0 OUT:PFC10 OUT:PFC9 OUT:PFC10 OUT:PFC9 0 PFC4 PFC4 PFC3 PFC3 PFC2 PFC2
IN: PKTS[1] IN: PKTS[0] PFC5 OUT:PFC7 OUT:PFC6 AADJ AADJ AADJ AADJ 0 0 0 0 0 0 0 0
8 E640 1 E641 1 E642 1 E643 1 E644 4 E648 1 E649 7 E650 1 E651 1 E652 1 E653 1 E654 1 E655 1 E656 1 E657 1 E658 1 E659 1 E65A 1
0 0 0 0
0 0 0 0
0 0 0 0
INPPF1 INPPF1 INPPF1 INPPF1
INPPF0 INPPF0 INPPF0 INPPF0
00000001 brrrrrbb 00000001 brrrrrrr 00000001 brrrrrbb 00000001 brrrrrrr
Skip Skip 0 0 0 0 0 0 0 0 0 0 EP8
0 0 0 0 0 0 0 0 0 0 0 0 EP6
0 0 0 0 0 0 0 0 0 0 EP8 EP8 EP4
0 0 0 0 0 0 0 0 0 0 EP6 EP6 EP2
EP3 EP3 EDGEPF 0 EDGEPF 0 EDGEPF 0 EDGEPF 0 EP4 EP4 EP1
EP2 EP2 PF PF PF PF PF PF PF PF EP2 EP2 EP0
EP1 EP1 EF EF EF EF EF EF EF EF EP1 EP1 0
EP0 EP0 FF FF FF FF FF FF FF FF EP0 EP0 IBN
xxxxxxxx xxxxxxxx
W W
00000000 RW 00000000 rrrrrbbb 00000000 RW 00000000 rrrrrbbb 00000000 RW 00000000 rrrrrbbb 00000000 RW 00000000 rrrrrbbb 00000000 RW 00xxxxxx rrbbbbbb 00000000 RW
EP4FIFOIRQ[7,8] EP6FIFOIE[7] EP6FIFOIRQ[7,8] EP8FIFOIE
[7]
EP8FIFOIRQ[7,8] IBNIE IBNIRQ[8] NAKIE
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 E65C 1 E65D 1 E65E 1 E65F 1 E660 1 E661 1 E662 1 E663 1 E664 1 E665 1 E666 1 E667 1 E668 1 E669 7 E670 1 E671 1 E672 1 E673 E677 E678 E679 E67A E67B 4 1 1 1 1 1 NAKIRQ[8] USBIE USBIRQ[8] EPIE EPIRQ[8] GPIFIE GPIFIRQ[7] USBERRIE USBERRIRQ[8] ERRCNTLIM CLRERRCNT INT2IVEC INT4IVEC INTSET-UP reserved INPUT/OUTPUT PORTACFG PORTCCFG PORTECFG XTALINSRC reserved I2CS I2DAT I2CTL XAUTODAT1 XAUTODAT2 UDMA CRC UDMACRCH[7] UDMACRCL[7] UDMACRCQUALIFIER USB CONTROL USBCS SUSPEND WAKEUPCS TOGCTL USBFRAMEH USBFRAMEL MICROFRAME FNADDR reserved ENDPOINTS EP0BCH[7] EP0BCL[7] reserved EP1OUTBC reserved EP1INBC EP2BCH[7] EP2BCL[7] reserved EP4BCH[7] EP4BCL[7] reserved EP6BCH[7] EP6BCL[7] reserved EP8BCH[7] EP8BCL[7]
[7]
Description
b7
b6
EP6 EP0ACK EP0ACK EP6 EP6 0 0 ISOEP6 ISOEP6 EC2 x I2V4 0 0
b5
EP4 HSGRANT HSGRANT EP4 EP4 0 0 ISOEP4 ISOEP4 EC1 x I2V3 I4V3 0
b4
EP2 URES URES EP2 EP2 0 0 ISOEP2 ISOEP2 EC0 x I2V2 I4V2 0
b3
EP1 SUSP SUSP EP1OUT EP1OUT 0 0 0 0 LIMIT3 x I2V1 I4V1 AV2EN
b2
EP0 SUTOK SUTOK EP1IN EP1IN 0 0 0 0 LIMIT2 x I2V0 I4V0 0 0
b1
SOF SOF EP0OUT EP0OUT GPIFWF GPIFWF 0 0 LIMIT1 x 0 0 INT4SRC
b0
IBN SUDAV SUDAV EP0IN EP0IN
Default Access
xxxxxx0x bbbbbbrb 00000000 RW 0xxxxxxx rbbbbbbb 00000000 RW 0 RW
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
GPIFDONE 00000000 RW GPIFDONE 000000xx RW ERRLIMIT 00000000 RW ERRLIMIT LIMIT0 x 0 0 AV4EN 0000000x bbbbrrrb xxxx0100 rrrrbbbb xxxxxxxx W 00000000 R 10000000 R 00000000 RW
I/O PORTA Alternate Configuration I/O PORTC Alternate Configuration I/O PORTE Alternate Configuration XTALIN Clock Source I2C Bus Control & Status I2C Bus Data I2C Bus Control Autoptr1 MOVX access, when APTREN=1 Autoptr2 MOVX access, when APTREN=1 UDMA CRC MSB UDMA CRC LSB UDMA CRC Qualifier
FLAGD GPIFA7 GPIFA8 0 START d7 0 D7 D7
SLCS GPIFA6 T2EX 0 STOP d6 0 D6 D6
0 GPIFA5 INT6 0 LASTRD d5 0 D5 D5
0 GPIFA4 RXD1OUT 0 ID1 d4 0 D4 D4
0 GPIFA3
0 GPIFA2
INT1 GPIFA1 T1OUT 0 ACK d1 STOPIE D1 D1
INT0 GPIFA0 T0OUT EXTCLK DONE d0 400kHz D0 D0
00000000 RW 00000000 RW 00000000 RW 00000000 rrrrrrrb 000xx000 xxxxxxxx 00000000 xxxxxxxx xxxxxxxx bbbrrrrr RW RW RW RW
RXD0OUT T2OUT 0 ID0 d3 0 D3 D3 0 BERR d2 0 D2 D2
E67C 1
E67D 1 E67E 1 E67F 1
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
E680 E681 E682 E683 E684 E685 E686 E687 E688
1 1 1 1 1 1 1 1 2
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
E68A E68B E68C E68D E68E E68F E690 E691 E692 E694 E695 E696 E698 E699 E69A E69C E69D
1 1 1 1 1 1 1 1 2 1 1 2 1 1 2 1 1
Endpoint 0 Byte Count H (BC15) Endpoint 0 Byte Count L (BC7) Endpoint 1 OUT Byte Count 0
(BC14) BC6 BC6
(BC13) BC5 BC5
(BC12) BC4 BC4
(BC11) BC3 BC3
(BC10) BC2 BC2
(BC9) BC1 BC1
(BC8) BC0 BC0
xxxxxxxx xxxxxxxx
RW RW
0xxxxxxx RW
Endpoint 1 IN Byte Count 0 Endpoint 2 Byte Count H 0 Endpoint 2 Byte Count L BC7/SKIP Endpoint 4 Byte Count H 0 Endpoint 4 Byte Count L BC7/SKIP Endpoint 6 Byte Count H 0 Endpoint 6 Byte Count L BC7/SKIP Endpoint 8 Byte Count H 0 Endpoint 8 Byte Count L BC7/SKIP
BC6 0 BC6 0 BC6 0 BC6 0 BC6
BC5 0 BC5 0 BC5 0 BC5 0 BC5
BC4 0 BC4 0 BC4 0 BC4 0 BC4
BC3 0 BC3 0 BC3 0 BC3 0 BC3
BC2 BC10 BC2 0 BC2 BC10 BC2 0 BC2
BC1 BC9 BC1 BC9 BC1 BC9 BC1 BC9 BC1
BC0 BC8 BC0 BC8 BC0 BC8 BC0 BC8 BC0
0xxxxxxx RW 00000xxx RW xxxxxxxx RW 000000xx RW xxxxxxxx RW 00000xxx RW xxxxxxxx RW 000000xx RW xxxxxxxx RW
Document #: 001-04247 Rev *F
Page 20 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
E69E 2 E6A0 1 E6A1 1 E6A2 1 E6A3 1 E6A4 1 E6A5 1 E6A6 1 E6A7 1 E6A8 1 E6A9 1 E6AA 1 E6AB 1 E6AC 1 E6AD 1 E6AE 1 E6AF 1 E6B0 1 E6B1 1 E6B2 1 E6B3 1 E6B4 1 E6B5 1 2 E6B8 8 reserved EP0CS EP1OUTCS EP1INCS EP2CS EP4CS EP6CS EP8CS EP2FIFOFLGS EP4FIFOFLGS EP6FIFOFLGS EP8FIFOFLGS EP2FIFOBCH EP2FIFOBCL EP4FIFOBCH EP4FIFOBCL EP6FIFOBCH EP6FIFOBCL EP8FIFOBCH EP8FIFOBCL SUDPTRH SUDPTRL SUDPTRCTL reserved SET-UPDAT
Description
b7
0 0 0
b6
0 0 0
b5
0 0 0
b4
0 0 0
b3
0 0 0
b2
b1
BUSY BUSY BUSY 0 0 0 0 EF EF EF EF BC9 BC1 BC9 BC1 BC9 BC1 BC9 BC1 A9 A1 0
b0
STALL STALL STALL STALL STALL STALL STALL FF FF FF FF BC8 BC0 BC8 BC0 BC8 BC0 BC8 BC0 A8 0 SDPAUTO
Default Access
10000000 bbbbbbrb 00000000 bbbbbbrb 00000000 bbbbbbrb 00101000 rrrrrrrb 00101000 rrrrrrrb 00000100 rrrrrrrb 00000100 rrrrrrrb 00000010 R 00000010 R 00000110 R 00000110 R 00000000 R 00000000 R 00000000 R 00000000 R 00000000 R 00000000 R 00000000 R 00000000 R xxxxxxxx RW
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 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 Waveform Selector GPIF Done, GPIF IDLE drive mode Inactive Bus, CTL states CTL Drive Type GPIF Address H GPIF Address L Flowstate Enable and Selector Flowstate Logic CTL-Pin States in Flowstate (when Logic = 0) CTL-Pin States in Flowstate (when Logic = 1) Holdoff Configuration Flowstate Strobe Configuration Flowstate Rising/Falling Edge Configuration
NPAK2 0 NPAK2 0 0 0 0 0 0 BC6 0 BC6 0 BC6 0 BC6 A14 A6 0
NPAK1 NPAK1 NPAK1 NPAK1 0 0 0 0 0 BC5 0 BC5 0 BC5 0 BC5 A13 A5 0
NPAK0 NPAK0 NPAK0 NPAK0 0 0 0 0 BC12 BC4 0 BC4 0 BC4 0 BC4 A12 A4 0
FULL FULL FULL FULL 0 0 0 0 BC11 BC3 0 BC3 BC11 BC3 0 BC3 A11 A3 0
EMPTY EMPTY EMPTY EMPTY PF PF PF PF BC10 BC2 BC10 BC2 BC10 BC2 BC10 BC2 A10 A2 0
xxxxxxx0 bbbbbbbr 00000001 RW
D6
D5
D4
D3
D2
D1
D0
xxxxxxxx
R
E6C0 1 E6C1 1 E6C2 E6C3 E6C4 E6C5 1 1 1 1
GPIF GPIFWFSELECT GPIFIDLECS GPIFIDLECTL GPIFCTLCFG GPIFADRH[7] GPIFADRL[7] FLOWSTATE FLOWSTATE FLOWLOGIC FLOWEQ0CTL FLOWEQ1CTL FLOWHOLDOFF FLOWSTB FLOWSTBEDGE
SINGLEWR1 SINGLEWR0 SINGLERD1 SINGLERD0 FIFOWR1 DONE 0 0 0 0 0 TRICTL 0 GPIFA7 FSE LFUNC1 CTL0E3 CTL0E3 0 0 0 GPIFA6 0 LFUNC0 CTL0E2 CTL5 CTL5 0 GPIFA5 0 TERMA2 CTL0E1/ CTL5 CTL4 CTL4 0 GPIFA4 0 TERMA1 CTL0E0/ CTL4 CTL3 CTL3 0 GPIFA3 0 TERMA0 CTL3
FIFOWR0 0 CTL2 CTL2 0 GPIFA2 FS2 TERMB2 CTL2 CTL2 HOCTL2 MSTB2 0
FIFORD1 0 CTL1 CTL1 0 GPIFA1 FS1 TERMB1 CTL1 CTL1 HOCTL1 MSTB1 FALLING
FIFORD0 IDLEDRV CTL0 CTL0 GPIFA8 GPIFA0 FS0 TERMB0 CTL0 CTL0 HOCTL0 MSTB0 RISING
11100100 RW 10000000 RW 11111111 00000000 00000000 00000000 RW RW RW RW
E6C6 1 E6C7 1 E6C8 1 E6C9 1 E6CA 1 E6CB 1 E6CC 1
00000000 brrrrbbb 00000000 RW 00000000 RW 00000000 RW 00010010 RW 00100000 RW 00000001 rrrrrrbb
CTL0E2 CTL0E1/ CTL0E0/ CTL3 CTL5 CTL4 HOPERIOD3 HOPERIOD2 HOPERIOD1 HOPERIOD HOSTATE 0 SLAVE RDYASYNC CTLTOGL SUSTAIN 0 0 0 0 0 0
Document #: 001-04247 Rev *F
Page 21 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
E6CD 1 E6CE 1 E6CF 1 E6D0 1 E6D1 1 2 FLOWSTBPERIOD GPIFTCB3[7] GPIFTCB2[7] GPIFTCB1[7] GPIFTCB0[7] reserved reserved reserved 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 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 Special Function Registers (SFRs) IOA[9] Port A (bit addressable) SP Stack Pointer DPL0 Data Pointer 0 L 0 0 x 0 0 x
Description
b7
b6
D6 TC30 TC22 TC14 TC6
b5
D5 TC29 TC21 TC13 TC5
b4
D4 TC28 TC20 TC12 TC4
b3
D3 TC27 TC19 TC11 TC3
b2
D2 TC26 TC18 TC10 TC2
b1
D1 TC25 TC17 TC9 TC1
b0
D0 TC24 TC16 TC8 TC0
Default Access
00000010 RW 00000000 RW 00000000 RW 00000000 RW 00000001 RW 00000000 RW
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
1 0 0 x 0 0 x 0 0 x 0 0 x FS1 0 x FS0 00000000 RW
E6D2 1 E6D3 1 E6D4 1 3
FIFO2FLAG 00000000 RW x xxxxxxxx W
E6DA 1 E6DB 1 E6DC 1 3
0 0 x
0 0 x
0 0 x
0 0 x
0 0 x
0 0 x
FS1 0 x
FS0
00000000 RW
FIFO4FLAG 00000000 RW x xxxxxxxx W
E6E2 1 E6E3 1 E6E4 1 3
0 0 x
0 0 x
0 0 x
0 0 x
0 0 x
0 0 x
FS1 0 x
FS0
00000000 RW
FIFO6FLAG 00000000 RW x xxxxxxxx W
E6EA 1 E6EB 1 E6EC 1 3 E6F0 1 E6F1 1 E6F2 1 E6F3 1
0 0 x D15 D7 D7 INTRDY
0 0 x D14 D6 D6 SAS
0 0 x D13 D5 D5 TCXRDY5
0 0 x D12 D4 D4 0
0 0 x D11 D3 D3 0
0 0 x D10 D2 D2 0
FS1 0 x D9 D1 D1 0
FS0
00000000 RW
FIFO8FLAG 00000000 RW x D8 D0 D0 0 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx W RW RW R
00000000 bbbrrrrr
E6F4 1 E6F5 1 E6F6 2 E740 64 E780 64 E7C0 64 2048 F000 1024 F400 512 F600 512 F800 1024 FC00 512 FE00 512 xxxx
0 x
0 x
RDY5 x
RDY4 x
RDY3 x
RDY2 x
RDY1 x
RDY0 x
00xxxxxx R xxxxxxxx W
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
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
RW RW RW RW RW RW
D7 D7
D6 D6
D5 D5
D4 D4
D3 D3
D2 D2
D1 D1
D0 D0
xxxxxxxx xxxxxxxx
RW RW
0
DISCON
0
0
0
0
0
400KHZ
xxxxxxxx
[10]
n/a
80 81 82
1 1 1
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
Document #: 001-04247 Rev *F
Page 22 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 98 99 9A 9B 9C 9D 9E 9F A0 A1 A2 A3 A8 A9 AA AB AC AD AF B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 DPH0 DPL1[9] DPH1[9] DPS[9] PCON TCON TMOD TL0 TL1 TH0 TH1 CKCON[9] reserved IOB[9] EXIF[9] MPAGE[9] reserved SCON0 SBUF0 AUTOPTRH1[9] AUTOPTRL1[9] reserved AUTOPTRH2[9] AUTOPTRL2[9] reserved IOC[9] INT2CLR[9] INT4CLR[9] reserved IE reserved EP2468STAT[9] EP24FIFOFLGS
[9] [9]
Description
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
b7
A15 A7 A15 0 SMOD0 TF1 GATE D7 D7 D15 D15 x
b6
A14 A6 A14 0 x TR1 CT D6 D6 D14 D14 x D6 IE4 A14
b5
A13 A5 A13 0 1 TF0 M1 D5 D5 D13 D13 T2M D5 I²CINT A13
b4
A12 A4 A12 0 1 TR0 M0 D4 D4 D12 D12 T1M D4 USBNT A12
b3
A11 A3 A11 0 x IE1 GATE D3 D3 D11 D11 T0M D3 1 A11
b2
A10 A2 A10 0 x IT1 CT D2 D2 D10 D10 MD2 D2 0 A10
b1
A9 A1 A9 0 x IE0 M1 D1 D1 D9 D9 MD1 D1 0 A9
b0
A8 A0 A8 SEL IDLE IT0 M0 D0 D0 D8 D8 MD0 D0 0 A8
Default Access
00000000 00000000 00000000 00000000 00110000 00000000 RW RW RW RW RW RW
00000000 RW 00000000 00000000 00000000 00000000 00000001 RW RW RW RW RW
Port B (bit addressable) D7 External Interrupt Flag(s) IE5 Upper Addr Byte of MOVX A15 using @R0/@R1 Serial Port 0 Control (bit addressable) Serial Port 0 Data Buffer Autopointer 1 Address H Autopointer 1 Address L SM0_0 D7 A15 A7
xxxxxxxx RW 00001000 RW 00000000 RW
SM1_0 D6 A14 A6 A14 A6 D6 x x ES1
SM2_0 D5 A13 A5 A13 A5 D5 x x ET2
REN_0 D4 A12 A4 A12 A4 D4 x x ES0
TB8_0 D3 A11 A3 A11 A3 D3 x x ET1
RB8_0 D2 A10 A2 A10 A2 D2 x x EX1
TI_0 D1 A9 A1 A9 A1 D1 x x ET0
RI_0 D0 A8 A0 A8 A0 D0 x x EX0
00000000 RW 00000000 RW 00000000 RW 00000000 RW 00000000 RW 00000000 RW xxxxxxxx xxxxxxxx xxxxxxxx RW W W
Autopointer 2 Address H A15 Autopointer 2 Address L A7 Port C (bit addressable) Interrupt 2 clear Interrupt 4 clear Interrupt Enable (bit addressable) D7 x x EA
00000000 RW
EP68FIFOFLGS
Endpoint 2,4,6,8 status EP8F flags Endpoint 2,4 slave FIFO 0 status flags Endpoint 6,8 slave FIFO 0 status flags 0 D7 D7 D7 D7 D7 D7 D7 1
EP8E EP4PF EP8PF
EP6F EP4EF EP8EF
EP6E EP4FF EP8FF
EP4F 0 0
EP4E EP2PF EP6PF
EP2F EP2EF EP6EF
EP2E EP2FF EP6FF
01011010 R 00100010 R 01100110 R
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 GPIFTRIG
[9, 7]
0 D6 D6 D6 D6 D6 D6 D6 PS1
0 D5 D5 D5 D5 D5 D5 D5 PT2
0 D4 D4 D4 D4 D4 D4 D4 PS0
0 D3 D3 D3 D3 D3 D3 D3 PT1
APTR2INC D2 D2 D2 D2 D2 D2 D2 PX1
APTR1INC D1 D1 D1 D1 D1 D1 D1 PT0
APTREN D0 D0 D0 D0 D0 D0 D0 PX0
00000110 RW xxxxxxxx RW xxxxxxxx RW 00000000 00000000 00000000 00000000 00000000 RW RW RW RW RW
10000000 RW
0 DONE
0 0
0 0
0 0
0 0
EP1INBSY RW
Endpoint 2,4,6,8 GPIF slave FIFO Trigger
EP1OUTBS EP0BSY Y EP1 EP0
00000000 R 10000xxx brrrrbbb
reserved GPIFSGLDATH[9] GPIFSGLDATLX[9]
GPIF Data H (16-bit mode D15 only) GPIF Data L w/Trigger D7
D14 D6
D13 D5
D12 D4
D11 D3
D10 D2
D9 D1
D8 D0
xxxxxxxx xxxxxxxx
RW 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.
Document #: 001-04247 Rev *F
Page 23 of 34
[+] Feedback
CY7C68033, CY7C68034
Table 9. NX2LP-Flex Register Summary (continued)
Hex Size Name
BF C0 C1 C2 C8 C9 CA CB CC CD CE D0 D1 D8 D9 E0 E1 E8 E9 F0 F1 F8 F9 1 1 1 6 1 1 1 1 1 1 2 1 7 1 7 1 7 1 7 1 7 1 7 GPIFSGLDAT LNOX[9] SCON1[9] SBUF1[9] reserved T2CON reserved RCAP2L RCAP2H TL2 TH2 reserved PSW reserved EICON[9] reserved ACC reserved EIE[9] reserved B reserved EIP[9] reserved
Description
b7
b6
D6 SM1_1 D6 EXF2
b5
D5 SM2_1 D5 RCLK
b4
D4 REN_1 D4 TCLK
b3
D3 TB8_1 D3 EXEN2
b2
D2 RB8_1 D2 TR2
b1
D1 TI_1 D1 CT2
b0
D0 RI_1 D0 CPRL2
Default Access
xxxxxxxx R 00000000 RW 00000000 RW 00000000 RW
GPIF Data L w/No Trigger D7 Serial Port 1 Control (bit SM0_1 addressable) Serial Port 1 Data Buffer D7 Timer/Counter 2 Control (bit addressable) Capture for Timer 2, auto-reload, up-counter Capture for Timer 2, auto-reload, up-counter Timer 2 reload L Timer 2 reload H TF2
D7 D7 D7 D15
D6 D6 D6 D14 AC
D5 D5 D5 D13 F0
D4 D4 D4 D12 RS1
D3 D3 D3 D11 RS0
D2 D2 D2 D10 OV
D1 D1 D1 D9 F1
D0 D0 D0 D8 P
00000000 RW 00000000 RW 00000000 RW 00000000 RW 00000000 RW
Program Status Word (bit CY addressable) External Interrupt Control SMOD1 Accumulator (bit address- D7 able) External Interrupt Enable(s) B (bit addressable) 1
1 D6
ERESI D5
RESI D4
INT6 D3
0 D2
0 D1
0 D0
01000000 RW 00000000 RW
1
1
EX6
EX5
EX4
EI²C
EUSB
11100000 RW
D7
D6 1
D5 1
D4 PX6
D3 PX5
D2 PX4
D1 PI²C
D0 PUSB
00000000 RW 11100000 RW
External Interrupt Priority 1 Control
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. Storage Temperature .................................. –65°C to +150°C Ambient Temperature with Power Supplied...... 0°C to +70°C Supply Voltage to Ground Potential................–0.5V to +4.0V DC Input Voltage to Any Input Pin ........................ +5.25V[12] DC Voltage Applied to Outputs in High Z State ........................ –0.5V to VCC + 0.5V Power Dissipation..................................................... 300 mW Static Discharge Voltage........................................... > 2000V Max Output Current, per I/O port................................. 10 mA
Operating Conditions
TA (Ambient Temperature Under Bias) ............. 0°C to +70°C Supply Voltage............................................+3.00V to +3.60V Ground Voltage.................................................................. 0V FOSC (Oscillator or Crystal Frequency).... 24 MHz ± 100 ppm (Parallel Resonant)
DC Characteristics
Table 10. DC Characteristics Parameter VCC VIH VIL VIH_X VIL_X II VOH VOL IOH IOL CIN ISUSP VCC Ramp Up 0 to 3.3V Input HIGH Voltage Input LOW Voltage Crystal Input HIGH Voltage Crystal Input LOW Voltage Input Leakage Current Output Voltage HIGH Output LOW Voltage Output Current HIGH Output Current LOW Input Pin Capacitance Suspend Current CY7C68034 Suspend Current CY7C68033 ICC IUNCONFIG TRESET Supply Current Unconfigured Current Reset Time After Valid Power Pin Reset After powered on Except D+/D– D+/D– Connected Disconnected Connected Disconnected 8051 running, connected to USB HS 8051 running, connected to USB FS Before bMaxPower granted by host VCC min = 3.0V 5.0 200 300 100 0.5 0.3 43 35 43 0< VIN < VCC IOUT = 4 mA IOUT = –4 mA 2.4 0.4 4 4 10 15 380[12] 150[12] 1.2[12] 1.0[12] Description Supply Voltage Conditions Min 3.00 200 2 –0.5 2 –0.5 5.25 0.8 5.25 0.8 ±10 Typ 3.3 Max 3.60 Unit V μs V V V V μA V V mA mA pF pF μA μA mA mA mA mA mA ms μ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 tXFLG FLAGS tXFD
DATA SLOE
N tOEon
N+1 tOEoff
Table 11. Slave FIFO Asynchronous Read Parameters[15] Parameter tRDpwl tRDpwh tXFLG tXFD tOEon tOEoff Description SLRD Pulse Width LOW SLRD Pulse Width HIGH SLRD to FLAGS Output Propagation Delay SLRD to FIFO Data Output Propagation Delay SLOE Turn on to FIFO Data Valid SLOE Turn off to FIFO Data Hold Min 50 50 70 15 10.5 10.5 Max Unit ns ns ns ns ns ns
Slave FIFO Asynchronous Write
Figure 12. Slave FIFO Asynchronous Write Timing Diagram[13]
tWRpwh SLWR/SLCS# tWRpwl
tSFD DATA tXFD
tFDH
FLAGS
Table 12. Slave FIFO Asynchronous Write Parameters with Internally Sourced IFCLK [15] Parameter tWRpwl tWRpwh tSFD tFDH tXFD SLWR Pulse LOW SLWR Pulse HIGH SLWR to FIFO DATA Setup Time FIFO DATA to SLWR Hold Time SLWR to FLAGS Output Propagation Delay Description Min 50 70 10 10 70 Max Unit ns ns ns ns 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 tPEpwl tPWpwh tXFLG Description PKTEND Pulse Width LOW PKTEND Pulse Width HIGH PKTEND to FLAGS Output Propagation Delay Min 50 50 115 Max Unit ns ns ns
Slave FIFO Output Enable
Figure 14. Slave FIFO Output Enable Timing Diagram[13]
SLOE tOEoff
DATA
tOEon
Table 14. Slave FIFO Output Enable Parameters Parameter tOEon tOEoff Description SLOE Assert to FIFO DATA Output SLOE Deassert to FIFO DATA Hold Min Max 10.5 10.5 Unit ns 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 tXFLG tXFD Description FIFOADR[1:0] to FLAGS Output Propagation Delay FIFOADR[1:0] to FIFODATA Output Propagation Delay Min Max 10.7 14.3 Unit ns 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] tSFA SLRD/SLWR/PKTEND tFAH
Table 16. Slave FIFO Asynchronous Address Parameters[15] Parameter tSFA tFAH Description FIFOADR[1:0] to SLRD/SLWR/PKTEND Setup Time RD/WR/PKTEND to FIFOADR[1:0] Hold Time Min 10 10 Max Unit ns 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
T=0
tRDpwl
tRDpwh
tRDpwl
tRDpwh
tRDpwl
tRDpwh
SLRD
t=2 t=3 T=2 T=3 T=4 T=5 T=6
SLCS
tXFLG tXFLG
FLAGS
tXFD tXFD N tOEoff tOEon N+1 tXFD N+2 tXFD N+3 tOEoff
DATA
Data (X) Driven tOEon
N
SLOE
t=1 t=4 T=1 T=7
Figure 18. Slave FIFO Asynchronous Read Sequence of Events Diagram
SLOE
SLRD
SLRD
SLOE
SLOE
SLRD
SLRD
SLRD
SLRD
SLOE
FIFO POINTER
N
N Driven: X
N N
N+1 N
N+1 Not Driven
N+1 N
N+1 N+1
N+2 N+1
N+2 N+2
N+3 N+2
N+3 Not Driven
FIFO DATA BUS Not Driven
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
tWRpwh
tWRpwl
tWRpwh
tWRpwl
tWRpwh
SLWR
t =1 t=3 T=1 T=3 T=4 T=6 T=7 T=9
SLCS
tXFLG tXFLG
FLAGS
tSFD tFDH tSFD tFDH N+1
T=2 T=5
tSFD tFDH N+2
tSFD tFDH N+3
T=8
DATA
t=2
N
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.
■
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.
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
Page 29 of 34
[+] Feedback
CY7C68033, CY7C68034
Ordering Information
Ordering Code Silicon for battery-powered applications CY7C68034-56LFXC CY7C68034-56LTXC Silicon for non-battery-powered applications CY7C68033-56LFXC CY7C68033-56LTXC Development Kit CY3686 EZ-USB NX2LP-Flex Development Kit 8 x 8 mm, 56 QFN – Pb-free 8 X 8 mm, 56 QFN (Sawn) 8 x 8 mm, 56 QFN – Pb-free 8 X 8 mm, 56 QFN (Sawn) Description
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. 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: http://www.amkor.com/products/notes_papers/ MLF_AppNote_0902.pdf. The application note provides detailed information on board mounting guidelines, soldering flow, rework process, and so on.
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.
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
0.013” dia
PCB Material
Via hole for thermally connecting the QFN to the circuit board ground plane.
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. ** *A *B *C *D ECN NO. Submission Date 388499 394699 400518 433952 498295 See ECN See ECN See ECN See ECN See ECN Orig. of Change GIR XUT GIR RGL KKU Preliminary draft Minor Change: Upload data sheet to external website. Publicly announcing the parts. No physical changes to document were made Took ‘Preliminary’ off the top of all pages. Corrected the first bulleted item. Corrected Figure 3-2 caption. Added new logo Added I2C functionality 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 Added 56 QFN (8 X 8 mm) package diagram and added CY7C68033-56LTXC and CY7C68034-56LTXC part information in the Ordering Information table Updated revision in the footer Description of Change
*E *F
2717536 2728424
06/11/2009 07/02/2009
DPT GNKK
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 Wireless Memories Image Sensors psoc.cypress.com clocks.cypress.com wireless.cypress.com memory.cypress.com 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
All products and company names mentioned in this document may be the trademarks of their respective holders.
Revised June 03, 2009
Page 34 of 34
[+] Feedback