throbber
CY7C64713
`EZ-USB FX1™ USB Microcontroller
`Full Speed USB Peripheral Controller
`
`EZ-USB FX1™ USB Microcontroller Full Speed USB Peripheral Controller
`
`Features
`■ Single chip integrated USB transceiver, SIE, and enhanced
`8051 microprocessor
`■ Fit, form, and function upgradable to the FX2LP (CY7C68013A)
`❐ Pin compatible
`❐ Object code compatible
`❐ Functionally compatible (FX1 functionality is a subset of the
`FX2LP)
`■ Draws no more than 65 mA in any mode, making the FX1
`suitable for bus powered applications
`■ Software: 8051 runs from internal RAM, which is:
`❐ Downloaded using USB
`❐ Loaded from EEPROM
`❐ External memory device (128 pin configuration only)
`■ 16 KB of on-chip code/data RAM
`■ Four programmable BULK/INTERRUPT/ISOCHRONOUS
`endpoints
`❐ Buffering options: double, triple, and quad
`■ Additional programmable
`(BULK/INTERRUPT) 64-byte
`endpoint
`■ 8- or 16-bit external data interface
`■ Smart media standard ECC generation
`■ GPIF
`❐ Allows direct connection to most parallel interfaces; 8- and
`16-bit
`❐ Programmable waveform descriptors and configuration
`registers to define waveforms
`❐ Supports multiple ready (RDY) inputs and Control (CTL)
`outputs
`■ Integrated, industry standard 8051 with enhanced features:
`
`❐ Up to 48 MHz clock rate
`❐ Four clocks for each instruction cycle
`❐ Two USARTS
`❐ Three counters or timers
`❐ Expanded interrupt system
`❐ Two data pointers
`■ 3.3 V operation with 5 V tolerant inputs
`■ Smart SIE
`■ Vectored USB interrupts
`■ Separate data buffers for the setup and DATA portions of a
`CONTROL transfer
`■ Integrated I2C controller, running at 100 or 400 KHz
`■ 48 MHz, 24 MHz, or 12 MHz 8051 operation
`■ Four integrated FIFOs
`❐ Brings glue and FIFOs inside for lower system cost
`❐ Automatic conversion to and from 16-bit buses
`❐ Master or slave operation
`❐ FIFOs can use externally supplied clock or asynchronous
`strobes
`❐ Easy interface to ASIC and DSP ICs
`■ Vectored for FIFO and GPIF Interrupts
`■ Up to 40 general purpose IOs (GPIO)
`■ Four package options:
`❐ 128-pin TQFP
`❐ 100-pin TQFP
`❐ 56-pin SSOP
`❐ 56-pin QFN Pb-free
`
`Errata: For information on silicon errata, see “Errata” on page 71. Details include trigger conditions, devices affected, and proposed workaround.
`
`Cypress Semiconductor Corporation
`Document Number: 38-08039 Rev. *L
`
`•
`
`198 Champion Court
`
`•
`
`San Jose, CA 95134-1709
`
`408-943-2600
`•
` Revised March 9, 2014
`
`Exhibit 2034 - Page 01 of 74
`
`

`

`CY7C64713
`
`I2C
`Master
`
`Additional IOs (24)
`
`GPIF
`
`ADDR (9)
`
`RDY (6)
`CTL (6)
`
`ECC
`
`Abundant I/O
`including two USARTS
`
`General
`programmable I/F
`to ASIC/DSP or bus
`standards such as
`ATAPI, EPP, etc.
`
`4 kB
`FIFO
`
`8/16
`
`Up to 96 MBytes
`burst rate
`
`Logic Block Diagram
`
`24 MHz
`Ext. XTAL
`
`High performance micro
`using standard tools
`with lower-power options
`
`Data (8)
`
`Address (16) / Data Bus (8)
`
`Address (16)
`
`8051 Core
`12/24/48 MHz,
`four clocks/cycle
`
`CY
`Smart
`USB
`Engine
`
`16 KB
`RAM
`
`FX1
`
`VCC
`
`x20
`PLL
`
`/0.5
`/1.0
`/2.0
`
`1.5k
`connected for
`enumeration
`
`D+
`
`D–
`
`USB
`
`XCVR
`
`Integrated
`full speed XCVR
`
`Enhanced USB core
`Simplifies 8051 code
`
`‘Soft Configuration’
`Easy firmware changes
`
`FIFO and endpoint memory
`(master or slave operation)
`
`Document Number: 38-08039 Rev. *L
`
`Page 2 of 74
`
`Exhibit 2034 - Page 02 of 74
`
`

`

`CY7C64713
`
`Contents
`Functional Description .....................................................4
`Applications ......................................................................4
`Functional Overview ........................................................4
`USB Signaling Speed ..................................................4
`8051 Microprocessor ...................................................4
`I2C Bus ........................................................................5
`Buses ..........................................................................5
`USB Boot Methods ......................................................5
`ReNumeration™ ..........................................................6
`Bus-powered Applications ...........................................6
`Interrupt System ..........................................................6
`Reset and Wakeup ......................................................8
`Program/Data RAM .....................................................9
`Endpoint RAM ...........................................................11
`External FIFO Interface .............................................11
`GPIF ..........................................................................12
`ECC Generation ........................................................13
`USB Uploads and Downloads ...................................13
`Autopointer Access ...................................................13
`I2C Controller .............................................................13
`Compatible with Previous Generation
`EZ-USB FX2 .....................................................................14
`Pin Assignments ............................................................14
`CY7C64713 Pin Definitions ............................................20
`Register Summary ..........................................................28
`Absolute Maximum Ratings ..........................................47
`Operating Conditions .....................................................47
`DC Characteristics .........................................................47
`USB Transceiver .......................................................47
`AC Electrical Characteristics ........................................48
`USB Transceiver .......................................................48
`PORTC Strobe Feature Timings ...............................51
`
`GPIF Synchronous Signals ....................................... 52
`Slave FIFO Synchronous Read ................................. 53
`Slave FIFO Asynchronous Read ............................... 54
`Slave FIFO Synchronous Write ................................. 55
`Slave FIFO Asynchronous Write ............................... 56
`Slave FIFO Synchronous Packet End Strobe ........... 56
`Slave FIFO Asynchronous Packet End Strobe ......... 58
`Slave FIFO Output Enable ........................................ 58
`Slave FIFO Address to Flags/Data ............................ 58
`Slave FIFO Synchronous Address ............................ 59
`Slave FIFO Asynchronous Address .......................... 59
`Sequence Diagram .................................................... 60
`Ordering Information ...................................................... 64
`Ordering Code Definitions ......................................... 64
`Package Diagrams .......................................................... 65
`Quad Flat Package No Leads (QFN) Package
`Design Notes ................................................................... 68
`Acronyms ........................................................................ 70
`Document Conventions ................................................. 70
`Units of Measure ....................................................... 70
`Errata ............................................................................... 71
`Part Numbers Affected .............................................. 71
`EZ-USB FX1 Qualification Status .............................. 71
`EZ-USB FX1 Errata Summary .................................. 71
`Document History Page ................................................. 72
`Sales, Solutions, and Legal Information ...................... 74
`Worldwide Sales and Design Support ....................... 74
`Products .................................................................... 74
`PSoC® Solutions ...................................................... 74
`Cypress Developer Community ................................. 74
`Technical Support ..................................................... 74
`
`Document Number: 38-08039 Rev. *L
`
`Page 3 of 74
`
`Exhibit 2034 - Page 03 of 74
`
`

`

`Functional Description
`EZ-USB FX1 (CY7C64713) is a full speed, highly integrated,
`USB microcontroller. By integrating the USB transceiver, Serial
`Interface Engine (SIE), enhanced 8051 microcontroller, and a
`programmable peripheral interface in a single chip, Cypress has
`created a very cost effective solution that provides superior
`time-to-market advantages.
`The EZ-USB FX1 is more economical, because it incorporates
`the USB transceiver and provides a smaller footprint solution
`than the USB SIE or external transceiver implementations. With
`EZ-USB FX1, the Cypress Smart SIE handles most of the USB
`protocol in hardware, freeing the embedded microcontroller for
`application specific functions and decreasing the development
`time to ensure USB compatibility.
`The General Programmable Interface (GPIF) and Master/Slave
`Endpoint FIFO (8 or 16-bit data bus) provide an easy and
`glueless interface to popular interfaces such as ATA, UTOPIA,
`EPP, PCMCIA, and most DSP/processors.
`Four Pb-free packages are defined for the family: 56-pin SSOP,
`56-pin QFN, 100-pin TQFP, and 128-pin TQFP.
`Applications
`■ DSL modems
`■ ATA interface
`■ Memory card readers
`■ Legacy conversion devices
`■ Home PNA
`■ Wireless LAN
`■ MP3 players
`■ Networking
`The Reference Designs section of the cypress website provides
`additional tools for typical USB 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
`FX1 operates at one 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.
`
`CY7C64713
`
`FX1 does not support the low speed signaling mode of 1.5 Mbps
`or the high speed mode of 480 Mbps.
`8051 Microprocessor
`The 8051 microprocessor embedded in the FX1 family has
`256 bytes of register RAM, an expanded interrupt system, three
`timer/counters, and two USARTs.
`
`8051 Clock Frequency
`FX1 has an on-chip oscillator circuit that uses an external
`24 MHz (±100 ppm) crystal with the following characteristics:
`■ Parallel resonant
`■ Fundamental mode
`■ 500 W drive level
`■ 12 pF (5% tolerance) load capacitors.
`An on-chip PLL multiplies the 24 MHz oscillator up to 480 MHz,
`as required by the transceiver/PHY, and the 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 is
`dynamically changed by the 8051 through the CPUCS register.
`The CLKOUT pin, which is three-stated and inverted using the
`internal control bits, outputs the 50% duty cycle 8051 clock at the
`selected 8051 clock frequency which is 48, 24, or 12 MHz.
`
`USARTS
`FX1 contains two standard 8051 USARTs, addressed by Special
`Function Register (SFR) bits. The USART interface pins are
`available on separate I/O pins, and are not multiplexed with port
`pins.
`UART0 and UART1 can operate using an internal clock at
`230 KBaud with no more than 1% baud rate error. 230 KBaud
`operation is achieved by an internally derived clock source that
`generates overflow pulses at the appropriate time. The internal
`clock adjusts for the 8051 clock rate (48, 24, 12 MHz) such that
`it always presents the correct frequency for 230-KBaud
`operation.[1]
`Special Function Registers
`Certain 8051 SFR addresses are populated to provide fast
`access to critical FX1 functions. These SFR additions are shown
`in Table 1 on page 5. 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 the FX1. Because of the faster and
`more efficient SFR addressing, the FX1 I/O ports are not
`addressable in the external RAM space (using the MOVX
`instruction).
`
`Note
`1. 115-KBaud operation is also possible by programming the 8051 SMOD0 or SMOD1 bits to a ‘1’ for UART0 and UART1, respectively.
`
`Document Number: 38-08039 Rev. *L
`
`Page 4 of 74
`
`Exhibit 2034 - Page 04 of 74
`
`

`

`CY7C64713
`
`Figure 1. Crystal Configuration
`24 MHz
`C1
`
`C2
`
`12 pF
`
`12 pF
`
`12-pF capacitor values assumes
`a trace capacitance of 3 pF per
`side on a four layer FR4 PCA
`
`20 × PLL
`
`Table 1. Special Function Registers
`x
`8x
`9x
`IOA
`IOB
`0
`EXIF
`1
`SP
`MPAGE
`2
`DPL0
`3
`DPH0
`DPL1
`4
`DPH1
`5
`DPS
`6
`7
`PCON
`8
`TCON
`9
`TMOD
`A
`TL0
`B
`TL1
`C
`TH0
`D
`TH1
`CKCON
`E
`F
`
`SCON0
`SBUF0
`AUTOPTRH1
`AUTOPTRL1
`reserved
`AUTOPTRH2
`AUTOPTRL2
`reserved
`
`Ax
`IOC
`INT2CLR
`INT4CLR
`
`IE
`
`EP2468STAT
`EP24FIFOFLGS
`EP68FIFOFLGS
`
`Bx
`IOD
`IOE
`OEA
`OEB
`OEC
`OED
`OEE
`
`IP
`
`EP01STAT
`GPIFTRIG
`
`GPIFSGLDATH
`GPIFSGLDATLX
`AUTOPTRSETUP GPIFSGLDATLNOX
`
`Cx
`SCON1
`SBUF1
`
`Ex
`Dx
`PSW ACC
`
`Fx
`B
`
`T2CON
`
`EICON
`
`EIE
`
`EIP
`
`RCAP2L
`RCAP2H
`TL2
`TH2
`
`I2C Bus
`FX1 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.3 V, even if no I2C device
`is connected.
`Buses
`All packages: 8 or 16-bit ‘FIFO’ bidirectional data bus,
`multiplexed on I/O ports B and D. 128-pin package: adds 16-bit
`output only 8051 address bus, 8-bit bidirectional data bus.
`USB Boot Methods
`During the power up sequence, internal logic checks the I2C port
`for the connection of an EEPROM whose first byte is either 0xC0
`or 0xC2. If found, it uses the VID/PID/DID values in the EEPROM
`
`in place of the internally stored values (0xC0). Alternatively, it
`boot-loads the EEPROM contents into an internal RAM (0xC2).
`If no EEPROM is detected, FX1 enumerates using internally
`stored descriptors. The default
`ID values
`for FX1 are
`VID/PID/DID
`(0x04B4, 0x6473, 0xAxxx where xxx=Chip
`revision).[2]
`Table 2. Default ID Values for FX1
`Default VID/PID/DID
`Vendor ID 0x04B4 Cypress Semiconductor
`Product ID 0x6473 EZ-USB FX1
`Device
`0xAnnn Depends on chip revision (nnn = chip
`release
`revision where first silicon = 001)
`
`Notes
`2. The I2C bus SCL and SDA pins must be pulled up, even if an EEPROM is not connected. Otherwise this detection method does not work properly.
`
`Document Number: 38-08039 Rev. *L
`
`Page 5 of 74
`
`Exhibit 2034 - Page 05 of 74
`
`

`

`ReNumeration™
`Because the FX1’s configuration is soft, one chip can take on the
`identities of multiple distinct USB devices.
`When first plugged into the USB, the FX1 enumerates
`automatically and downloads firmware and the USB descriptor
`tables over the USB cable. Next, the FX1 enumerates again, this
`time as a device defined by the downloaded information. This
`patented two step process, called ReNumeration, happens
`instantly when the device is plugged in, with no indication that
`the initial download step has occurred.
`Two control bits in the USBCS (USB Control and Status) register
`control the ReNumeration process: DISCON and RENUM. To
`simulate a USB disconnect, the firmware sets DISCON to 1. To
`reconnect, the firmware clears DISCON to 0.
`Before reconnecting, the firmware sets or clears the RENUM bit
`to indicate if the firmware or the Default USB Device handles
`device requests over endpoint zero:
`■ RENUM = 0, the Default USB Device handles device requests
`■ RENUM = 1, the firmware handles device requests
`Bus-powered Applications
`The FX1 fully supports bus powered designs by enumerating
`with less than 100 mA as required by the USB specification.
`Interrupt System
`INT2 Interrupt Request and Enable Registers
`FX1 implements an autovector feature for INT2 and INT4. There
`are 27 INT2 (USB) vectors, and 14 INT4 (FIFO/GPIF) vectors.
`See EZ-USB Technical Reference Manual (TRM) for more
`details.
`Table 3. INT2 USB Interrupts
`
`CY7C64713
`
`USB-Interrupt Autovectors
`The main USB interrupt is shared by 27 interrupt sources. The
`FX1 provides a second level of interrupt vectoring, called
`Autovectoring, to save code and processing time that is normally
`required to identify the individual USB interrupt source. When a
`USB interrupt is asserted, the FX1 pushes the program counter
`on to its stack and then jumps to address 0x0043, where it
`expects to find a “jump” instruction to the USB Interrupt service
`routine.
`The FX1 jump instruction is encoded as shown in Table 3.
`If Autovectoring is enabled (AV2EN = 1 in the INTSETUP
`register), the FX1 substitutes its INT2VEC byte. Therefore, if the
`high byte (“page”) of a jump table address is preloaded at
`location 0x0044, the automatically inserted INT2VEC byte at
`0x0045 directs the jump to the correct address out of the 27
`addresses within the page.
`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 on page
`7 shows the priority and INT4VEC values for the 14 FIFO/GPIF
`interrupt sources.
`
`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 on page 7 shows the priority and INT4VEC values for the
`14 FIFO/GPIF interrupt sources.
`
`Priority
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`
`INT2VEC Value
` 00
` 04
` 08
`0C
`10
`14
`18
`1C
`20
`24
`28
`2C
`30
`34
`38
`3C
`40
`
`USB INTERRUPT TABLE FOR INT2
`Source
`
`Notes
`
`SUDAV
`SOF
`SUTOK
`SUSPEND
`USB RESET
`
`EP0ACK
`
`EP0-IN
`EP0-OUT
`EP1-IN
`EP1-OUT
`EP2
`EP4
`EP6
`EP8
`IBN
`
`Setup Data Available
`Start of Frame
`Setup Token Received
`USB Suspend request
`Bus reset
`Reserved
`FX1 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)
`
`Document Number: 38-08039 Rev. *L
`
`Page 6 of 74
`
`Exhibit 2034 - Page 06 of 74
`
`

`

`Table 3. INT2 USB Interrupts (continued)
`
`CY7C64713
`
`USB INTERRUPT TABLE FOR INT2
`Source
`
`Notes
`
`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
`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
`Endpoint 2 Programmable Flag
`Endpoint 4 Programmable Flag
`Endpoint 6 Programmable Flag
`Endpoint 8 Programmable Flag
`Endpoint 2 Empty Flag [3]
`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
`
`Priority
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`29
`30
`31
`32
`
`INT2VEC Value
`44
`48
`4C
`50
`54
`58
`5C
`60
`64
`68
`6C
`70
`74
`78
`7C
`
`EP0PING
`EP1PING
`EP2PING
`EP4PING
`EP6PING
`EP8PING
`ERRLIMIT
`
`EP2ISOERR
`EP4ISOERR
`EP6ISOERR
`EP8ISOERR
`
`Table 4. Individual FIFO/GPIF Interrupt Sources
`Priority
`INT4VEC Value
`Source
`1
`80
`2
` 84
`3
`88
`4
`8C
`5
`90
`6
`94
`7
`98
`8
`9C
`9
`A0
`10
`A4
`11
` A8
`12
`AC
`13
` B0
`14
` B4
`
`EP2PF
`EP4PF
`EP6PF
`EP8PF
`EP2EF
`EP4EF
`EP6EF
`EP8EF
`EP2FF
`EP4FF
`EP6FF
`EP8FF
`GPIFDONE
`GPIFWF
`
`If Autovectoring is enabled (AV4EN = 1 in the INTSETUP
`register), the FX1 substitutes its INT4VEC byte. Therefore, if the
`high byte (“page”) of a jump-table address is preloaded at
`location 0x0054, the automatically inserted INT4VEC byte at
`0x0055 directs the jump to the correct address out of the 14
`addresses within the page. When the ISR occurs, the FX1
`
`pushes the program counter onto its stack and then jumps to
`address 0x0053, where it expects to find a “jump” instruction to
`the ISR Interrupt service routine.
`
`Note
`3. Errata: In Slave FIFO Asynchronous Word Wide mode, if a single word data is transferred from the USB host to EP2, configured as OUT Endpoint (EP) in the first
`transaction, then the Empty flag behaves incorrectly. This does not happen if the data size is more than one word in the first transaction. For more information, see
`the “Errata” on page 71.
`
`Document Number: 38-08039 Rev. *L
`
`Page 7 of 74
`
`Exhibit 2034 - Page 07 of 74
`
`

`

`CY7C64713
`
`Reset and Wakeup
`Reset Pin
`The input pin, RESET#, resets the FX1 when asserted. This pin
`has hysteresis and is active LOW. When a crystal is used with
`the CY7C64713, the reset period must allow for the stabilization
`of the crystal and the PLL. This reset period must be
`approximately 5 ms after VCC has reached 3.0 Volts. If the
`crystal input pin is driven by a clock signal the internal PLL
`stabilizes in 200 s after VCC has reached 3.0 V[4]. Figure 2 on
`page 8 shows a power on reset condition and a reset applied
`Figure 2. Reset Timing Plots
`
`during operation. A power on reset is defined as the time a reset
`is asserted when power is being applied to the circuit. A powered
`reset is defined to be when the FX1 has been previously
`powered on and operating and the RESET# pin is asserted.
`Cypress provides an application note which describes and
`recommends power on reset implementation and is found on the
`Cypress web site. While the application note discusses the FX2,
`the information provided applies also to the FX1. For more
`information on reset implementation for the FX2 family of
`products visit http://www.cypress.com.
`
`RESET#
`
`VCC
`
`RESET#
`
`VCC
`
`VIL
`
`3.3 V
`3.0 V
`
`0 V
`
`VIL
`3.3 V
`
`0 V
`
`TRESET
`
`Power on Reset
`
`TRESET
`
`Powered Reset
`
`
`
`Table 5. Reset Timing Values
`Condition
`Power On Reset with crystal
`Power On Reset with external
`clock
`Powered Reset
`
`TRESET
`
`5 ms
`200 s + Clock stability time
`
`200 s
`
`Wakeup Pins
`The 8051 puts itself and the rest of the chip into a power down
`mode by setting PCON.0 = 1. This stops the oscillator and PLL.
`When WAKEUP is asserted by external logic, the oscillator
`restarts, after the PLL stabilizes, and then the 8051 receives a
`
`wakeup interrupt. This applies irrespective of whether the FX1 is
`connected to the USB or not.
`The FX1 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 FX1 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 allows a simple external R-C
`network to be used as a periodic wakeup source. Note that
`WAKEUP is by default active LOW.
`
`Note
`4.
`If the external clock is powered at the same time as the CY7C64713 and has a stabilization wait period. It must be added to the 200 s.
`
`Document Number: 38-08039 Rev. *L
`
`Page 8 of 74
`
`Exhibit 2034 - Page 08 of 74
`
`

`

`CY7C64713
`
`Program/Data RAM
`Size
`The FX1 has 16 KBytes of internal program/data RAM, where
`PSEN#/RD# signals are internally ORed to allow the 8051 to
`access it as both program and data memory. No USB control
`registers appear in this space.
`Two memory maps are shown in the following diagrams:
`■ Figure 3 on page 9 Internal Code Memory, EA = 0
`■ Figure 4 on page 10 External Code Memory, EA = 1.
`
`external RAM or ROM is added, the external read and write
`strobes are suppressed for memory spaces that exist inside the
`chip. This allows the user to connect a 64 KByte memory without
`requiring the address decodes to keep clear of internal memory
`spaces.
`Only the internal 16 KBytes and scratch pad 0.5 KBytes RAM
`spaces have the following access:
`■ USB download
`■ USB upload
`■ Setup data pointer
`■ I2C interface boot load
`
`Internal Code Memory, EA = 0
`This mode implements the internal 16 KByte block of RAM
`(starting at 0) as combined code and data memory. When the
`Figure 3. Internal Code Memory, EA = 0.
`Inside FX1
`Outside FX1
`
`FFFF
`
`E200
`E1FF
`
`E000
`
`7.5 KBytes
`USB regs and
`4K FIFO buffers
`(RD#,WR#)
`
`0.5 KBytes RAM
`Data (RD#,WR#)*
`
`(OK to populate
`data memory
`here—RD#/WR#
`strobes are not
`active)
`
`40 KBytes
`External
`Data
`Memory
`(RD#,WR#)
`
`48 KBytes
`External
`Code
`Memory
`(PSEN#)
`
`16 KBytes RAM
`Code and Data
`(PSEN#,RD#,WR#)*
`
`(Ok to populate
`data memory
`here—RD#/WR#
`strobes are not
`active)
`
`(OK to populate
`program
`memory here—
`PSEN# strobe
`is not active)
`
`3FFF
`
`0000
`
`Code
`Data
`*SUDPTR, USB upload/download, I2C interface boot access
`
`Document Number: 38-08039 Rev. *L
`
`Page 9 of 74
`
`Exhibit 2034 - Page 09 of 74
`
`

`

`External Code Memory, EA = 1
`The bottom 16 KBytes of program memory is external, and therefore the bottom 16 KBytes of internal RAM is accessible only as data
`memory.
`
`CY7C64713
`
`Figure 4. External Code Memory, EA = 1
`
`Inside FX1
`
`Outside FX1
`
`FFFF
`
`E200
`E1FF
`E000
`
`7.5 KBytes
`USB regs and
`4K FIFO buffers
`(RD#,WR#)
`
`0.5 KBytes RAM
`Data (RD#,WR#)*
`
`(OK to populate
`data memory
`here—RD#/WR#
`strobes are not
`active)
`
`40 KBytes
`External
`Data
`Memory
`(RD#,WR#)
`
`64 KBytes
`External
`Code
`Memory
`(PSEN#)
`
`3FFF
`
`0000
`
`16 KBytes
`RAM
`Data
`(RD#,WR#)*
`
`(Ok to populate
`data memory
`here—RD#/WR#
`strobes are not
`active)
`
`Code
`Data
`*SUDPTR, USB upload/download, I2C interface boot access
`
`Document Number: 38-08039 Rev. *L
`
`Page 10 of 74
`
`Exhibit 2034 - Page 10 of 74
`
`

`

`CY7C64713
`
`2
`
`3
`
`0
`
`1
`
`Table 6. Default Alternate Settings
`Alternate
`Setting
`ep0
`ep1out
`ep1in
`ep2
`ep4
`ep6
`ep8
`
`Endpoint RAM
`Size
`■ 3 × 64 bytes
`■ 8 × 512 bytes
`
`(Endpoints 0 and 1)
`(Endpoints 2, 4, 6, 8)
`
`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, of which only the transfer size is available. EP4
`and EP8 are double buffered, while EP2 and 6 are either
`double, triple, or quad buffered. Regardless of the physical size
`of the buffer, each endpoint buffer accommodates only one full
`speed packet. For bulk endpoints, the maximum number of
`bytes it can accommodate is 64, even though the physical
`buffer size is 512 or 1024. For an ISOCHRONOUS endpoint
`the maximum number of bytes it can accommodate is 1023.
`For endpoint configuration options, see Figure 6 on page 12.
`
`Setup Data Buffer
`A separate 8-byte buffer at 0xE6B8-0xE6BF holds the Setup
`data from a CONTROL transfer.
`
`Default Alternate Settings
`In the following table, ‘0’ means “not implemented”, and ‘2×’
`means “double buffered”.
`
`Figure 5. Register Addresses
`
`FFFF
`
`F000
`EFFF
`
`E800
`E7FF
`E7C0
`E7BF
`E780
`E77F
`E740
`E73F
`E700
`E6FF
`
`E500
`E4FF
`E480
`E47F
`E400
`E3FF
`E200
`E1FF
`
`E000
`
`4 KBytes EP2-EP8
`buffers
`(8 x 512)
`Not all Space is available
` for all transfer types
`
`2 KBytes RESERVED
`
`64 Bytes EP1IN
`
`64 Bytes EP1OUT
`
`64 Bytes EP0 IN/OUT
`
`64 Bytes RESERVED
`
`8051 Addressable Registers
`(512)
`
`Reserved (128)
`
`128 bytes GPIF Waveforms
`
`Reserved (512)
`
`512 bytes
`8051 xdata RAM
`
`64
`64
`64 64
`64 int
`64 int
`0
`64 bulk
`64 int
`64 int
`0
`64 bulk
`0
`64 bulk out (2×) 64 int out (2×) 64 iso out (2×)
`0
`64 bulk out (2×) 64 bulk out (2×) 64 bulk out (2×)
`0
`64 bulk in (2×) 64 int in (2×)
`64 iso in (2×)
`0
`64 bulk in (2×) 64 bulk in (2×) 64 bulk in (2×)
`
`External FIFO Interface
`Architecture
`The FX1 slave FIFO architecture has eight 512-byte blocks in the
`endpoint RAM that directly serve as FIFO memories, and are
`controlled by FIFO control signals (such as IFCLK, SLCS#,
`SLRD, SLWR, SLOE, PKTEND, and flags). The usable size of
`these buffers depend on the USB transfer mode as described in
`the section Organization.
`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.
`
`Document Number: 38-08039 Rev. *L
`
`Page 11 of 74
`
`Exhibit 2034 - Page 11 of 74
`
`

`

`Figure 6. Endpoint Configuration
`64
`64
`64
`64
`64
`64
`
`64
`64
`64
`
`64
`64
`64
`
`64
`64
`64
`
`CY7C64713
`
`64
`64
`64
`
`64
`64
`64
`
`64
`64
`64
`
`64
`64
`64
`
`EP2
`64
`64
`
`64
`64
`
`EP6
`64
`64
`EP8
`64
`64
`4
`
`EP2
`64
`64
`
`64
`64
`
`EP6
`64
`64
`
`64
`64
`5
`
`EP2
`64
`64
`
`64
`64
`
`EP6
`
`1023
`
`1023
`
`6
`
`EP2
`
`1023
`
`EP2
`
`1023
`
`EP2
`
`1023
`
`1023
`
`1023
`
`1023
`
`EP6
`64
`64
`EP8
`64
`64
`
`7
`
`EP6
`64
`64
`
`64
`64
`
`8
`
`EP6
`
`1023
`
`1023
`
`9
`
`EP2 EP2 EP2
`64
`
`1023
`
`1023
`
`1023
`
`1023
`
`64
`64
`EP6
`64
`
`64
`
`1023
`1023
`
`64
`EP8 EP8
`64
`64
`
`64
`
`10
`
`64
`
`11
`
`1023
`
`1023
`
`12
`
`EP0 IN&OUT
`EP1 IN
`EP1 OUT
`
`64
`64
`64
`
`EP2
`64
`64
`EP4
`64
`64
`
`EP6
`64
`64
`EP8
`64
`64
`
`1
`
`64
`64
`64
`
`EP2
`64
`64
`EP4
`64
`64
`
`EP6
`64
`64
`
`64
`64
`
`2
`
`64
`64
`64
`
`EP2
`64
`64
`EP4
`64
`64
`
`EP6
`
`1023
`
`1023
`
`3
`
`Master/Slave Control Signals
`The FX1 endpoint FIFOS are implemented as eight physically
`distinct 256 × 16 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
`instantaneously, giving essentially zero transfer time between
`“USB FIFOS” and “Slave FIFOS”. While they are physically the
`same memory, no bytes are actually transferred between
`buffers.
`At any time, some RAM blocks fill or empty with USB data under
`SIE control, while other RAM blocks are available to the 8051
`and the I/O control unit. The RAM blocks operate as a single-port
`in the USB domain, and dual port in the 8051-I/O domain. The
`blocks are configured as single, double, triple, or quad buffered.
`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 RDY pins (two in the 56-pin package, six
`in the 100-pin and 128-pin packages) are used as flag inputs
`from an external FIFO or other logic if desired. The GPIF is run
`from either an internally derived clock or an externally supplied
`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 FX1 accepts either an internally derived
`clock or an externally supplied clock (IFCLK with a maximum
`frequency of 48 MHz) and SLCS#, SLRD, SLWR, SLOE,
`PKTEND signals from external logic. When using an external
`IFCLK, the external clock must be present before switching to
`the external clock with the IFCLKSRC bit. Each endpoint can
`individually be selected for byte or word operation by an internal
`configuration bit, and a Slave FIFO Output Enable signal SLOE
`enables data of the selected width. External logic must ensure
`that the output enable signal is inactive when writing data to a
`slave FIFO. The slave
`interface can also operate
`asynchronously, where the SLRD and SLWR signals act directly
`
`as strobes, rather than a clock qualifier as in the 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.
`Alternatively, an externally supplied clock of 5 to 48 MHz feeding
`the IFCLK pin is used as the interface clock. IFCLK is configured
`to function as an output clock when the GPIF and FIFOs are
`internally clocked. An output enable bit in the IFCONFIG register
`turns this clock output off, if desired. Another bit within the
`IFCONFIG register inverts the IFCLK signal whether internally or
`externally sourced.
`GPIF
`The GPIF is a flexible 8 or 16-bit parallel interface driven by a
`user programmable
`finite state machine.
`It allows
`the
`CY7C64713 to perform local bus mastering, and can implement
`a wide variety of protocols such as ATA interface, printer parallel
`port, and Utopia.
`The GPIF has six programmable control outputs (CTL), nine
`address outputs (GPIFADRx), and six general purpose Ready
`inputs (RDY). The data bus width is 8 or 16 bits. Each GPIF
`vector defines the state of the control outputs, and determines
`what state a Ready input (or multiple inputs) must be before
`proceeding. The GPIF vector is programmed to advance a FIFO
`to the next data value, advance an address, and so on. A
`sequence of the GPIF vectors create a single waveform that
`executes to perform the data move between the FX1 and the
`external device.
`
`Six Control OUT Signals
`The 100-pin and 128-pin packages bring out all six Control
`Output pins (CTL0–CTL5). The 8051 programs the GPIF unit to
`define the CTL waveforms. The 56-pin package brings out three
`
`Document Number: 38-08039 Rev. *L
`
`Page 12 of 74
`
`Exhibit 2034 - Page 12 of 74
`
`

`

`of these signals: CTL0–CTL2. CTLx waveform edges are
`programmed to make transitions as fast as once per clock
`(20.8 ns using a 48 MHz clock).
`
`Six Ready IN Signals
`The 100-pin and 128-pin packages bring out all six Ready inputs
`(RDY0–RDY5). The 8051 programs the GPIF unit to test the
`RDY pins for GPIF branching. The 56 pin package brings out two
`of these signals, RDY0–1.
`
`Nine GPIF Address OUT Signals
`Nine GPIF address lines are available in the 100-pin and 128-pin
`packages: GPIFADR[8..0]. The GPIF address lines allow
`indexing through up to a 512 byte block of RAM. If more address
`lines are needed, I/O port pins are used.
`
`Long Transfer Mode
`In Master mode, the 8051 appropriately sets the GPIF
`transaction count registers

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket