GL660USB - USB2.0 to IEEE-1284/DMA Bridge Controller
1 Overview
GL660USB is a high performance USB 2.0 controller with integrated UTMI
transceiver proposed by Intel. Two operation modes, 1284 and DMA are
supported for kinds of application.
For 1284 mode, it is a bridge between USB bus and IEEE-1284 interface. By
adding GL660USB to parallel port device like printer and scanner, it’s very easy to
upgrade the original design into USB 2.0 interface.
For DMA mode, GL660USB can be used to replace some DMA controller like
NCR 53C80. That means it is easy to modify a SCSI device into USB 2.0 interface.
Four endpoints, control, bulk in, bulk out, and interrupt, are supported to satisfy
most USB application. Built in 2 sets of 512-byte ping-pong FIFOs to provide the
maximum performance. With extended 16-bit EPP/DMA bus, up to 40M-bytes/sec
transfer rate is reachable. Using 12MHz crystal and slew-rate controlled pads to
reduce EMI problem. With embedded CPU and customized firmware, GL660USB
provides maximum flexibility for customers. Additional 7 GPIOs can be
programmed to fit different applications.
GL660USB is compatible to GL640USB, the USB1.1 controller, in function. For
GL640USB customers, It’s easy to upgrade their original USB1.1 device without
software modification, only changing GL640USB and little modification in circuit is
needed.
GL660USB - USB2.0 to IEEE-1284/DMA Bridge Controller
3.2 Functional Descriptions
3.2.1 USB2.0 Transceiver
The analog circuitry to handle the USB HS/FS signaling.
3.2.2 UTMI Logic
The UTMI Logic is compliant to Intel‘s UTMI specification 1.01. This block handles the
low level USB protocol and signaling, which including data and clock recovery, NRZI
encoding/decoding, Bit Stuffing/De-stuffing, supporting USB2.0 test modes and
serial/parallel conversion.
3.3.3 PLL
10XPLL provides the 120MHz clock output for UTMI Logic block. UTMI operates in
120MHz for USB HS data processing. 40XPLL block will provide 480MHz for USB HS
data transmission.
3.3.4 CLKGEN
This is the clock generator block for the logic blocks. It generates 15MHz clock for
micro controller, 24MHz ~ 60MHz for EPP engine, 30MHz clock for UTMI, SIE, and
FIFO.
3.3.5 CPU
It is a 15MHz 8-bit micro controller, the brain of GL660USB. After receiving a USB
command, CPU processes command data and re-assigns tasks to EPP/DMA engine,
GPIOs, FIFO. Then it will response proper data/status to USB host.
3.3.6 EPP/DMA Engine
EPP/DMA engine is extended from standard IEEE1284/DMA protocol. It supports
normal 8-bit EPP/ECP data accessing with up to 20M-bytes/s transfer rate. With
extended 16-bit mode, VALIDH is used for the control of high byte. Up to 40Mbytes/sec transfer rate can be achieved.
3.3.7 FIFOs
TXFIFO0/TXFIFO1 is a 512-byte ping-pong FIFOs for ‘bulk read’ purpose. It buffers
data from EPP/DMA engine, and re-directs to USB SIE logic.
RXFIFO0/RXFIFO1 is a 512-byte ping-pong FIFOs for ‘bulk write’ purpose. It buffers
data from USB SIE logic, and send to EPP/DMA engine for I/O write operation..
CTLFIFO is a 64-byte FIFO for control endpoint. Operations of ‘control write’ and
‘control read’ use CTLFIFO as data buffer. CPU accesses CTLFIFO for command
processing and status responding.
3.3.8 Control Registers
Control Register configures GL660USB to proper operation. For example, CPU can
set registers to generate wakeup event, enter suspend, transmit proper USB packet to
host.
GL660USB - USB2.0 to IEEE-1284/DMA Bridge Controller
5.1.2 Pin Descriptions
Pin
#
1 GPIO1 B up General Purpose I/O
2 HRSTZ I up Chip reset Input, active low
3 GPIO2 B up General Purpose I/O
4 SUSPND O down USB suspend indicator
5 RPU - 3.3V Pull up control for DPF
6 AVCC0 P Positive analog supply (3.3V)
7 DPF B Positive USB differential data (Full Speed)
8 DPH B Positive USB differential data (High Speed)
9 DMF B
10 DMH B Negative USB Differential Data (High Speed)
11 AGND0 P Analog ground (0V)
12 RREF - 510Ohm reference resistor input
13 AVCC1 P Positive analog supply (3.3V)
14 XO B Crystal output
15 XI I 12MHz crystal/oscillator input
16 AGND1 P Analog ground (0V)
17 TEST0 I down Test mode enable
18 GPIO3 B up General purpose I/O
19 GPIO4 B down General purpose I/O
20 ASTRBZ O EPP Address strobe
21 GPIO5 B General Purpose I/O
22 DSTRBZ O EPP data strobe
23 CLKOUT O 24-60MHz clock output
24 WAITZ I EPP acknowledge input
25 VALIDH O High byte valid
26 WRZ O EPP write indicator
27 EPPD 0 B EPP Data bus 0
28 EPPD 1 B EPP data bus 1
29 EPPD 2 B EPP data bus 2
30 EPPD 3 B EPP data bus 3
31 DVCC0 P Positive digital supply (3.3V)
32 DGND0 P Digital ground (0V)
33 EPPD 4 B EPP data bus 4
34 EPPD 5 B EPP data bus 5
35 EPPD 6 B EPP data bus 6
36 EPPD 7 B EPP data bus 7
37 EPPD 8 B EPP data bus 8
38 EPPD 9 B EPP data bus 9
39 EPPD 10 B EPP data bus 10
40 EPPD 11 B EPP data bus 11
41 DVCC1 P Positive digital supply (3.3V)
42 DGND1 P Digital ground (0V)
43 EPPD 12 B EPP data bus 12
44 EPPD 13 B EPP data bus 13
45 EPPD 14 B EPP data bus 14
46 EPPD 15 B EPP data bus 15
47 GPIO6 B General purpose I/O
48 GPIO7 B General purpose I/O
GL660USB - USB2.0 to IEEE-1284/DMA Bridge Controller
5.2.2 Pin Descriptions
Pin
#
1 CSZ I up Chip select, active low
2 HRSTZ I up Chip reset Input, active low
3 EOPZ I up End of DMA cycles, active low
4 INTZ O down Interrupt output, active low
5 RPU - 3.3V Pull up control for DPF
6 AVCC0 P Positive analog supply (3.3V)
7 DPF B
8 DPH B
9 DMF B
10 DMH B
11 AGND0 P Analog ground (0V)
12 RREF - 510Ohm reference resistor input
13 AVCC1 P Positive analog supply (3.3V)
14 XO B Crystal output
15 XI I 12MHz crystal/oscillator input
16 AGND1 P Analog ground (0V)
17 TEST0 I down Test mode enable
18 DACKZ I up DMA acknowledge, active low
19 DRQ O down DMA request, active high
20 A4 I Address bus 4
21 A0 I Address bus 0
22 A3 I Address bus 3
23 CLKOUT O 24-60MHz clock output
24 IOWZ I Write strobe input, active low
25 VALIDH I High byte valid
26 IORZ I Read strobe input, active low
27 D 0 B Data bus 0
28 D 1 B Data bus 1
29 D 2 B Data bus 2
30 D 3 B Data bus 3
31 DVCC0 P Positive digital supply (3.3V)
32 DGND0 P Digital ground (0V)
33 D 4 B Data bus 4
34 D 5 B Data bus 5
35 D 6 B Data bus 6
36 D 7 B Data bus 7
37 D 8 B Data bus 8
38 D 9 B Data bus 9
39 D 10 B Data bus 10
40 D 11 B Data bus 11
41 DVCC1 P Positive digital supply (3.3V)
42 DGND1 P Digital ground (0V)
43 D 12 B Data bus 12
44 D 13 B Data bus 13
45 D 14 B Data bus 14
46 D 15 B Data bus 15
47 A1 B Address bus 1
48 A2 B Address bus 2
Name I/O Pull
Up/Down
Negative USB Differential Data (Full Speed)
Description
Positive USB differential data (Full Speed)
Positive USB differential data (High Speed)