Universal Serial Bus 2.0 high-speed interface device
Rev. 02 — 23 October 2000Objective specification
1.General description
The ISP1581 is a cost-optimized and feature-optimized Universal Serial Bus (USB)
interface device, which fully complies with the
Rev. 2.0
microcontroller or microprocessor. The ISP1581 communicates with the system’s
microcontroller/processor through a high-speed general-purpose parallel interface.
The ISP1581 supports automatic detection of USB 2.0 system operation. The
USB 1.1 fall-back mode allows the device to remain operational under full-speed
conditions. It is designed as a generic USB interface device so that it can fit into all
existing device classes, such as: Imaging Class, Mass Storage Devices,
Communication Devices, Printing Devices and Human Interface Devices.
Universal Serial Bus Specification
. It provideshigh-speedUSB communication capacity to systems based on a
The internal generic DMA block allows easy integration into data streaming
applications. In addition, the various configurations of the DMA block are tailored for
mass storage applications.
The modular approach to implementing a USB interface device allows the designer to
select the optimum system microcontroller from the wide variety available. The ability
to re-use existing architecture and firmware investments shortens the development
c
c
time, eliminates risk and reduces costs. The result is fast and efficient developmentof
the most cost-effective USB peripheral solution.
The ISP1581 is ideally suited for many types of peripherals, such as: printers;
scanners; magneto-optical (MO), compact disc (CD), digital video disc (DVD) and
Zip®/Jaz® drives; digital still cameras; USB-to-Ethernet links; cable and DSL
modems. The low power consumption during ‘suspend’ mode allows easy design of
equipment that is compliant to the ACPI™, OnNow™ and USB power management
requirements.
The ISP1581 also incorporates features such as SoftConnect™, a reduced
frequency crystal oscillator and integrated termination resistors. These features allow
significant cost savings in system design and easy implementation of advanced USB
functionality into PC peripherals.
Page 2
Philips Semiconductors
2.Features
■ Complies fully with Universal Serial Bus Specification Rev. 2.0
■ Complies with most Device Class specifications
■ High performance USB interface device with integrated Serial Interface Engine
■ Supports automatic USB 2.0 mode detection and USB 1.1 fall-back mode
■ High speed DMA interface
■ Fully autonomous and multi-configuration DMA operation
■ Up to 14 programmable USB endpoints with 2 fixed control IN/OUT endpoints
■ Integrated physical 8 kbyte of multi-configuration FIFO memory
■ Endpoints with double buffering to increase throughput and ease real-time data
■ Bus independent interface with most microcontroller/microprocessors
■ Bus-powered capability with low power consumption and low ‘suspend’ current
■ 12 MHz crystal oscillator with integrated PLL for low EMI
■ Software controlled connection to the USB bus (SoftConnect™)
■ Complies with the ACPI™, OnNow™ and USB power management requirements
■ Internal power-on and low-voltage reset circuit, also supporting a software reset
■ Operation over the extended USB bus voltage range (4.0 to 5.5 V) with 5 V
■ Operating temperature range −40 to +85 °C
■ 12 kV in-circuit ESD protection on human accessible pins such as D+ and D−
■ Full-scan design with high fault coverage (>99%)
■ Available in LQFP64 package.
ISP1581
USB 2.0 HS interface device
(SIE), FIFO memory, data transceiver and 3.3 V voltage regulators
transfer
(16 Mbytes/s or 16 Mwords/s)
tolerant I/O pads
3.Applications
■ Personal digital assistant (PDA)
■ Mass storage device, e.g., Zip®, Jaz®, MO, CD, DVD drive
■ Digital camera
■ Communication device, e.g. router, modem
■ Printer
■ Scanner.
4.Ordering information
Table 1:Ordering information
Type numberPackage
NameDescriptionVersion
ISP1581BDLQFP64Plastic low profile quad flat package; 64 leads; body 10 x 10 x 1.4 mmSOT314-2
9397 750 07648
Objective specificationRev. 02 — 23 October 20002 of 73
MODE0/DA120I/Oduring power-up: input to select the read/write strobe
functionality in generic processor mode
0 — Motorola style: pin 26 is R/
1 — 8051 style: pin 26 is
W and pin 27 is DS
RD and pin 27 is WR
normal operation: address output to select the task file
register of an ATAPI device
DA221Oaddress output to select the task file register of an ATAPI
device
READY/
IORDY
22I/OGeneric processor mode: ready signal (READY; output)
A LOW level signals that ISP1581 is processing a previous
command or data and is not ready for the next command or
data transfer; a HIGH level signals that ISP1581 is ready
for the next microprocessor read or write.
Split Bus mode: DMA ready signal (IORDY; input); used
for accessing ATAPI peripherals (PIO and UDMA modes
only).
AGND23-analog ground
V
CC(3.3)
24-supply voltage (3.3 V ± 10%); supplies internal digital
circuits
CS25Ichip select input
W)/RD26Iinput; function is determined by input MODE0 at power-up:
(R/
MODE0 = 0 — pin functions as R/
MODE0 = 1 — pin functions as
W (Motorola style)
RD (8051 style).
DS/WR27Iinput; function is determined by input MODE0 at power-up:
MODE0 = 0 — pin functions as
MODE0 = 1 — pin functions as
DS (Motorola style)
WR (8051 style).
INT28Ointerrupt output; programmable polarity (active HIGH or
LOW) and signaling (edge or level triggered)
ALE/A029Iinput; function determined by input MODE1 during
the address on the multiplexed address/data bus (AD[7:0])
MODE1 = 1 — address/data selection on AD[7:0]; a logic 1
indicates that an address will be written at the next
WR
pulse; a logic 0 indicates that data will be written at the next
WR pulse; used in Split Bus mode only.
AD030I/Obit 0 of multiplexed address/data
AD131I/Obit 1 of multiplexed address/data
AD232I/Obit 2 of multiplexed address/data
AD333I/Obit 3 of multiplexed address/data
AD434I/Obit 4 of multiplexed address/data
AD535I/Obit 5 of multiplexed address/data
DGND36-digital ground
V
CC(5.0)
37-supply voltage (3.3 or 5.0 V)
AD638I/Obit 6 of multiplexed address/data
9397 750 07648
Objective specificationRev. 02 — 23 October 20006 of 73
58-supply voltage (3.3 V ± 10%); supplies internal digital
64-supply voltage (3.3 or 5.0 V)
Symbol
AD739I/Obit 7 of multiplexed address/data
DATA040I/Obit 0 of bidirectional data
DATA141I/Obit 1 of bidirectional data
DGND42-digital ground
V
DATA244I/Obit 2 of bidirectional data
DATA345I/Obit 3 of bidirectional data
DATA446I/Obit 4 of bidirectional data
DATA547I/Obit 5 of bidirectional data
DATA648I/Obit 6 of bidirectional data
DATA749I/Obit 7 of bidirectional data
DATA850I/Obit 8 of bidirectional data
DATA951I/Obit 9 of bidirectional data
DATA1052I/Obit 10 of bidirectional data
DATA1153I/Obit 11 of bidirectional data
DATA1254I/Obit 12 of bidirectional data
DATA1355I/Obit 13 of bidirectional data
DATA1456I/Obit 14 of bidirectional data
DATA1557I/Obit 15 of bidirectional data
V
XTAL259Ocrystal oscillator output (12 MHz); connect a fundamental
XTAL160Icrystal oscillator input (12 MHz); connect a fundamental
DGND61-digital ground
WAKEUP62Iwake-up input (edge triggered); a LOW-to-HIGH transition
SUSPEND63O’suspend’ state indicator output (4 mA); used as a power
V
[2]
…continued
Description
circuits
parallel-resonant crystal; leavethis pin open when using an
external clock source on pin XTAL1
parallel-resonant crystal or an external clock source
(leaving pin XTAL2 unconnected)
generates a remote wake-up from ‘suspend’ state
switch control output (active LOW) for powered-off
application or as a resume signal to the CPU (active HIGH)
for powered-on application
[1] Symbol names with an overscore (e.g. NAME) represent active LOW signals.
[2] All outputs and I/O pins can source 4 mA of current.
7.Functional description
The ISP1581 is a high-speed USB device controller. It implements the USB 2.0/1.1
physical layer, the packet protocol layer and maintains up to 16 USB endpoints
concurrently (2 control, 14 configurable).
executed by means of external firmware.
9397 750 07648
Objective specificationRev. 02 — 23 October 20007 of 73
The ISP1581 has a fast general-purpose interface for communication with most types
of microcontrollers/processors. This Microcontroller Interface is configured by pins
BUS_CONF, MODE1 and MODE0 to accommodate most interface types. Two bus
configurations are available, selected via input BUS_CONF during power-up:
•
•
ISP1581
USB 2.0 HS interface device
Generic Processor mode (BUS_CONF = 1):
– AD[7:0]: 8-bit address bus (selects target register)
– DATA[15:0]: 16-bit data bus (shared by processor and DMA)
– Control signals: R/W and DS or RD and WR (selected via pin MODE0)
– DMA interface (generic slave mode only): uses lines DATA[15:0] as data bus,
DIOR and DIOW as dedicated read and write strobes.
Split Bus mode (BUS_CONF = 0):
– AD[7:0]: 8-bit local microprocessor bus (multiplexed address/data)
– DATA[15:0]: 16-bit DMA data bus
– Control signals: CS, ALE or A0 (selected via pin MODE1), R/W and DS or RD
and WR (selected via pin MODE0)
– DMA interface (master or slave mode): uses DIOR and DIOW as dedicated read
and write strobes.
For high-bandwidth data transfer, the integrated DMA handler can be invoked to
transfer data to/from external memory or devices. The DMA Interface can be
configured by writing to the proper DMA registers (see Section 9.4).
The ISP1581 supports high-speed USB 2.0 and full-speed USB 1.1 signaling.
Detection of the USB signaling speed is done automatically.
ISP1581 has 8 kbytes of internal FIFO memory, which is shared among the enabled
USB endpoints.
There are 14 configurable data endpoints and 2 control endpoints. Any of the 14 data
endpoints can be separately enabled or disabled. The endpoint type (interrupt,
isochronous or bulk) and packet size of these endpoints can be individually
configured depending on the requirements of the application. Optional double
buffering increases the data throughput of the data endpoints.
The ISP1581 requires a single supply of 3.0 V or 5.0 V, depending on the I/O voltage.
It has 5.0 V tolerant I/O pads and has an internal 3.3 V regulator for powering the
analog transceiver. It supports bus-powered operation with a ‘suspend’ current below
500 µA.
The ISP1581 operates on a 12 MHz crystal oscillator. An integrated 40× PLL clock
multiplier generates the internal sampling clock of 480 MHz.
7.1 USB 2.0 transceiver
The analog transceiver interfaces directly to the USB cable via integrated termination
resistors. The high-speed transceiver requires an external resistor (12.2 kΩ±0.1%)
between pin RREF and ground to ensure an accurate current mirror. A full-speed
transceiver is integrated as well. This makes the ISP1581 compliant with USB 2.0
9397 750 07648
Objective specificationRev. 02 — 23 October 20008 of 73
and USB 1.1, supporting both the high-speed and full-speed physical layer. After
automatic speed detection, the Philips Serial Interface Engine sets the transceiver to
use either high-speed or full-speed signaling.
7.2 Philips Serial Interface Engine (SIE)
The Philips SIE implements the full USB protocol layer. It is completely hardwired for
speed and needs no firmware intervention. The functions of this block include:
synchronization pattern recognition, parallel/serial conversion, bit (de-)stuffing, CRC
checking/generation, Packet IDentifier (PID) verification/generation, address
recognition, handshake evaluation/generation.
7.3 Voltage regulators
Two 5 V to 3.3 V voltage regulators are integrated on-chip to separately supply the
analog transceiver and the internal logic. The analog supply voltage is available at pin
V
reg(3.3)
ISP1581
USB 2.0 HS interface device
to supply an external 1.5 kΩ pull-up resistor on the D+ line.
Remark: Pin V
cannot be used to supply external devices.
reg(3.3)
7.4 Memory Management Unit (MMU) and integrated RAM
The MMU and the integrated RAM provide the conversion between the USB speed
(full speed: 12 Mbit/s, high speed: 480 Mbit/s) and the Microcontroller Handler or the
DMA Handler. The data from the USB Bus is stored in the integrated RAM, which is
cleared only when the microcontroller clears the endpoint buffer or when the DMA
Handler has read/written all data from/to the endpoint buffer. A total of 8 kbytes RAM
is available for buffering.
7.5 SoftConnect
The connection to the USB is established by pulling the D+ line (for high-speed
devices) HIGH through a 1.5 kΩ pull-up resistor. In the ISP1581 an external 1.5 kΩ
pull-up resistor must be connected between pins RPU and V
connects the pull-up resistor to the D+ line, when bit SOFTCT in the Mode register is
set (see Table 7). After a hardware reset the pull-up resistor is disconnected by
default (SOFTCT = 0). Bit SOFTCT remains unchanged by a USB bus reset.
. The RPU pin
reg(3.3)
7.6 Bit clock recovery
The bit clock recovery circuit recovers the clock from the incoming USB data stream
using 4× over-sampling principle. It is able to track the jitter and the frequency drift as
specified by the USB specification.
7.7 Multiplying PLL oscillator
A 12 MHz to 480 MHz clock multiplier Phase-Locked Loop (PLL) is integrated
on-chip. This allows the use of a low-cost 12 MHz crystal, which also minimizes EMI.
No external components are needed for the operation of the PLL.
9397 750 07648
Objective specificationRev. 02 — 23 October 20009 of 73
7.8 Microcontroller Interface and Microcontroller Handler
The Microcontroller Interface allows direct interfacing to most microcontrollers. The
interface is configured at power-up via inputs BUS_CONF, MODE1 and MODE0.
When BUS_CONF is set to logic 1, the Microcontroller Interface switches to the
Generic Processor mode in which AD[7:0] is the 8-bit address bus and DATA[15:0]
is the separate 16-bit data bus. If BUS_CONF is made logic 0, the interface is in the
Split Bus mode, where AD[7:0] is the local microprocessor bus (multiplexed
address/data) and DATA[15:0] is used as the DMA bus.
If pin MODE0 is set to logic 1, pins RD and WR are the read and write strobes (8051
style). If pin MODE0 is logic 0, pins R/W and DS pins represent the direction and data
strobe (Motorola style).
When pin MODE1 is made logic 0, ALE is used to latch the multiplexed address on
pins AD[7:0]. If pin MODE1 is set to logic 1, A0 is used to indicate address or data.
Pin MODE1 is only used in Split Bus mode: in Generic Processor mode it must be
tied to V
The Microcontroller Handler allows the external microcontroller to access the register
set in the Philips SIE as well as the DMA Handler. The initialization of the DMA
configuration is done via the Microcontroller Handler.
CC(5.0)
ISP1581
USB 2.0 HS interface device
(logic 1).
7.9 DMA Interface and DMA Handler
The DMA block can be subdivided into two blocks: the DMA Handler and the DMA
Interface.
The firmware writes to the DMA Command register to start a DMA transfer (see
Table 30). The command opcode determines whether a generic DMA, PIO,MDMA or
UDMA transfer will start. The Handler interfaces to the same FIFO (internal RAM) as
used by the USB core. Upon receiving the DMA Command, the DMA Handler directs
the data from the internal RAM to the external DMA device and vice versa.
The DMA Interface configures the timings and how the DMA data is accessed. Data
can be transferred either using DIOR and DIOW strobes or by the DACK and DREQ
handshakes. The different DMA configurations are set up by writing to the DMA
Configuration register (see Table 35).
For an IDE-based storage interface, the applicable DMA modes are PIO (Parallel
I/O), MDMA (Multiword DMA; ATA), and UDMA (Ultra DMA; ATA).
For a generic DMA interface, the DMA modes that can be used are Generic DMA
(Slave) and MDMA (Master).
7.10 System Controller
The System Controller implements the USB power-down capabilities of the ISP1581.
Two modes are supported during ‘suspend’ state: powered-on and powered-off.
These modes are selected via bit PWROFF in the Mode register (see Table 7).
Registers are protected against data corruption during wake-up following a ‘resume’.
9397 750 07648
Objective specificationRev. 02 — 23 October 200010 of 73
The ISP1581 has two bus configuration modes, selected via pin BUS_CONF/DA0 at
power-up:
Split Bus mode (BUS_CONF = 0): 8-bit multiplexed address/data bus and
•
separate 8-bit/16-bit DMA bus
Generic Processor mode (BUS_CONF = 1); separate 8-bit address and 16-bit
•
data bus
Details of the bus configurations for each mode are given in Table 3. Typical interface
circuits for each mode are given in Section 13 “Application information”.
Table 3:Bus configuration modes
BUS_CONF PIO widthDMA widthDescription
DMAWD = 0 DMAWD = 1
0AD[7:0]D[7:0]D[15:0]Split Bus mode: multiplexed address/data on pins AD[7:0];
separate 8/16-bit DMA bus on pins DATA[15:0]
1A[7:0]
D[15:0]
D[7:0]D[15:0]Generic Processor mode: separate 8-bit address on pins
AD[7:0]; 16-bit data (PIO and DMA) on pins DATA[15:0]
ISP1581
9.Register descriptions
Table 4:Register summary
NameDestinationAddress
(Hex)
Initialization registers
Addressdevice00USB device address + enable1
Modedevice0Cpower-down options, global interrupt
DMA EndpointDMA controller58selects endpoint FIFO, data flow direction 1
DMA Strobe TimingDMA controller60strobe duration in UDMA/MDMA mode1
General registers
Interruptdevice18shows interrupt sources4
Chip IDdevice70product ID code and hardware version3
Frame Numberdevice74last successfully received Start Of Frame:
Scratchdevice78allows save/restore of firmware status
Unlock Devicedevice7Cre-enables register access after ‘suspend’ 2
Test ModePHY84direct setting of D+, D− states, loopback
…continued
DescriptionSize
(Hex)
burst length, data strobing, bus width)
39 (byte 1)sets ATA configuration (IORDY enable,
mode selection: ATA/UDMA/MDMA/PIO)
polarity for DACK, DREQ, DIOW, DIOR
byte) is accessed first
returns 00H)
51 (byte 1)1
55 (byte 1)1
lower byte (byte 0) is accessed first
during ‘suspend’
mode, internal transceiver test (PHY)
(bytes)
1
1
1
2
1
2
2
1
9397 750 07648
Objective specificationRev. 02 — 23 October 200012 of 73
Endpoint specific registers are indexed via the Endpoint Index register. The target
endpoint must be selected first, before accessing the following registers:
•
•
•
•
•
•
9.2 Initialization registers
ISP1581
USB 2.0 HS interface device
8-bit bus: multi-byte registers are accessed lower byte (LSB) first.
16-bit bus: for single-byte registers the upper byte (MSB) must be ignored.
Buffer Length
Control Function
Data Port
Endpoint MaxPacketsize
Endpoint Type
Short Packet.
9.2.1 Address register (address: 00H)
This register is used to set the USB assigned address and enable the USB device.
Table 5 shows the Address register bit allocation.
The DEVEN and DEVADDR bits will be cleared whenever a bus reset, a power-on
reset or a soft reset occurs.
In response to the standard USB request SET_ADDRESS, the firmware must write
the (enabled) device address to the Address register, followed by sending an empty
packetto the host. The new device address is activated when the host acknowledges
the empty packet.
Table 5:Address register: bit allocation
Bit76543210
SymbolDEVENDEVADDR[6:0]
Reset000H
Bus reset000H
AccessR/WR/W
Table 6:Endpoint Configuration register: bit description
BitSymbolDescription
7DEVENA logic 1 enables the device.
6 to 0DEVADDR[6:0]This field specifies the USB device address.
9397 750 07648
Objective specificationRev. 02 — 23 October 200013 of 73
This register consists of 1 byte (bit allocation: see Table 7). In 16-bit bus mode the
upper byte is ignored.
The Mode register controls the resume, suspend and wake-up behaviour, interrupt
activity, soft reset, clock signals and SoftConnect operation. This register also
controls the Power Off mode during ‘suspend’ state.
Table 7:Mode register: bit allocation
Bit76543210
SymbolCLKAONSNDRSUGOSUSPSFRESETGLINTENAWKUPCSPWROFFSOFTCT
Reset00000000
Bus reset0000unchanged0unchangedunchanged
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Table 8:Mode register: bit description
BitSymbolDescription
7CLKAONClock Always On: A logic 1 indicates that the internal clocks
are always running even during ‘suspend’ state. A logic 0
switches off the internal oscillator and PLL, when they are not
needed. During ‘suspend’ state, this bit must be set to logic 0 to
meet the suspend current requirements. The clock is stopped
after a delay of approximately 2 ms, following the setting of bit
GOSUSP.
6SNDRSUSend Resume: Writing a logic 1 followed by a logic 0 will
generate an upstream ‘resume’ signal of 10 ms duration, after a
5 ms delay.
5GOSUSPGo Suspend: Writing a logic 1 followed by a logic 0 will activate
‘suspend’ mode.
4SFRESETSoft Reset: Writing a logic 1 followed by a logic 0 will enable a
software-initiated reset to ISP1581. A soft reset is similar to a
hardware-initiated reset (via the
3GLINTENAGlobal Interrupt Enable: A logic 1 enables all interrupts.
Individual interrupts can be masked OFF by clearing the
corresponding bits in the Interrupt Enable register. Bus reset
value: unchanged.
2WKUPCSWake-up on Chip Select: A logic 1 enables remote wake-up
via a LOW level on input
1PWROFFPower Off mode: A logic 1 enables powering-off during
‘suspend’ state. Output SUSPEND is configured as a power
switch control signal for external devices (HIGH during
‘suspend’). Bus reset value: unchanged.
0SOFTCTSoftConnect: A logic 1 enables the connection of the 1.5 kΩ
pull-up resistor on pin RPU to the D+ line. Bus reset value:
unchanged.
RESET pin).
CS.
9397 750 07648
Objective specificationRev. 02 — 23 October 200014 of 73
This 1-byte register determines the behaviour and polarity of the INT output. The bit
allocation is shown in Table 9. When the USB SIE receives or generates a ACK, NAK
or STALL, it will generate interrupts depending on three Debug mode bit fields:
CDBGMOD[1:0]: interrupts for the Control endpoint 0
•
DDBGMODIN[1:0]: interrupts for the DATA IN endpoints 1 to 7
•
DDBGMODOUT[1:0]: interrupts for the DATA OUT endpoints 1 to 7.
•
The Debug mode settings for CDBGMOD, DDBGMODIN and DDBGMODOUT allow
the user to individually configure when the ISP1581 will send an interrupt to the
external microprocessor. Table 11 lists the available combinations.
Bit INTPOL controls the signal polarity of the INT output (active HIGH or LOW, rising
or falling edge). For level-triggering bit INTLVL must be made logic 0. By setting
INTLVL to logic 1 an interrupt will generate a pulse of 60 ns (edge-triggering).
Table 9:Interrupt Configuration register: bit allocation
Bit76543210
SymbolCDBGMOD[1:0]DDBGMODIN[1:0]DDBGMODOUT[1:0]INTLVLINTPOL
Reset03H03H03H00
Bus reset03H03H03Hunchanged unchanged
AccessR/WR/WR/WR/WR/W
Table 10: Interrupt Configuration register: bit description
BitSymbolDescription
7 to 6CDBGMOD[1:0]Control 0 Debug Mode: values see Table 11
5 to 4DDBGMODIN[1:0]Data Debug Mode IN: values see Table 11
3 to 2DDBGMODOUT[1:0]Data Debug Mode OUT: values see Table 11
1INTLVLInterrupt Level: selects the signaling mode on output
INT (0 = level, 1 = pulsed). In pulsed mode an interrupt
produces a 60 ns pulse. Bus reset value: unchanged.
0INTPOLInterrupt Polarity: selects signal polarity on output INT
(0 = active LOW, 1 = active HIGH). Bus reset value:
unchanged.
Table 11: Debug mode settings
ValueCDBGMODDDBGMODINDDBGMODOUT
00HInterrupt on all ACK,
STALL and NAK
01HInterrupt on all ACK and
STALL
1XHInterrupt on all ACK,
STALL and first NAK
[1] First NAK: the first NAK on an IN or OUT token after a previous ACK response.
Interrupt on all ACK
and NAK
Interrupt on ACKInterrupt on ACK, STALL and
Interrupt on all ACK
[1]
and first NAK
[1]
Interrupt on all ACK, STALL,
NYET and NAK
NYET
Interrupt on all ACK, STALL,
NYET and first NAK
[1]
9397 750 07648
Objective specificationRev. 02 — 23 October 200015 of 73
This register enables/disables individual interrupt sources. The interrupt for each
endpoint can be individually controlled via the associated IEPnRX or IEPnTX bits (‘n’
representing the endpoint number). All interrupts can be globally disabled via bit
GLINTENA in the Mode Register (see Table 7).
An interrupt is generated when the USB SIE receives or generates an ACK, NAK or
STALL on the USB bus. The interrupt generation depends on the Debug mode
settings of bit fields CDBGMOD, DDBGMODIN and DDBGMODOUT.
All data IN transactions use the Transmit buffers (TX), which are handled by the
DDBGMODIN bits. All data OUT transactions go via the Receive buffers (RX), which
are handled by the DDBGMODOUT bits. Transactions on Control endpoint 0 (IN,
OUT and SETUP) are handled by the CDBGMOD bits.
Interrupts caused by events on the USB bus (SOF, Pseudo SOF, suspend, resume,
bus reset, Setup and High Speed Status) can also be controlled individually. A bus
reset disables all enabled interrupts except bit IEBRST (bus reset), which remains
unchanged.
ISP1581
USB 2.0 HS interface device
The Interrupt Enable Register consists of 4 bytes. The bit allocation is given in
Table 12.
Table 12: Interrupt Enable register: bit allocation
Bit3130292827262524
SymbolreservedreservedreservedreservedreservedreservedIEP7TXIEP7RX
Reset00000000
Bus Reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Bit2322212019181716
SymbolIEP6TXIEP6RXIEP5TXIEP5RXIEP4TXIEP4RXIEP3TXIEP3RX
Reset00000000
Bus Reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Bit15141312111098
SymbolIEP2TXIEP2RXIEP1TXIEP1RXIEP0TXIEP0RXreservedIEP0SETUP
Reset00000000
Bus Reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Bit76543210
SymbolreservedIEDMAIEHS_STAIERESMIESUSPIEPSOFIESOFIEBRST
Reset00000000
Bus Reset0000000unchanged
AccessR/WR/WR/WR/WR/WR/WR/WR/W
9397 750 07648
Objective specificationRev. 02 — 23 October 200016 of 73
Table 13: Interrupt Enable register: bit description
BitSymbolDescription
31 to 26-reserved; must write logic 0
25 to 12IEP7TX to
11IEP0TXA logic 1 enables interrupt from the Control IN endpoint 0.
10IEP0RXA logic 1 enables interrupt from the Control OUT endpoint 0.
9-reserved
8IEP0SETUPA logic 1 enables the interrupt for the Setup data received on
7-reserved
6IEDMAA logic 1 enables interrupt upon DMA status change detection.
5IEHS_STAA logic 1 enables interrupt upon detection of a High Speed
4IERESMA logic 1 enables interrupt upon detection of a ‘resume’ state.
3IESUSPA logic 1 enables interrupt upon detection of a ‘suspend’ state.
2IEPSOFA logic 1 enables interrupt upon detection of a Pseudo SOF.
1IESOFA logic 1 enables interrupt upon detection of an SOF.
0IEBRSTA logic 1 enables interrupt upon detection of a bus reset.
ISP1581
USB 2.0 HS interface device
A logic 1 enables interrupt from the indicated endpoint.
IEP1RX
endpoint 0.
Status change.
9.2.5 DMA Configuration register (address: 38H)
See Section 9.4.3.
9.2.6 DMA Hardware register (address: 3CH)
See Section 9.4.4.
9397 750 07648
Objective specificationRev. 02 — 23 October 200017 of 73
The Endpoint Index register selects a target endpoint for register access by the
microcontroller. The register consists of 1 byte and the bit allocation is shown in
Table 14. The following registers are indexed:
Endpoint MaxPacketsize
•
Endpoint Type
•
Buffer Length
•
Data Port
•
Short Packet
•
Control Function.
•
For example, to access the OUT data buffer of endpoint 1 via the Data Port register,
the Endpoint Index register has to be written first with 02H.
Table 14: Endpoint Index register: bit allocation
Bit76543210
SymbolreservedreservedEP0SETUPENDPIDX[3:0]DIR
Reset00000H0
Bus reset00000H0
AccessR/WR/WR/WR/WR/W
Table 15: Endpoint Index register: bit description
BitSymbolDescription
7 to 6-reserved
5EP0SETUPSelects the SETUP buffer for Endpoint 0:
0 — EP0 data buffer
1 — SETUP buffer.
Must be logic 0 for access to other endpoints than Endpoint 0.
4 to 1ENDPIDX[3:0] Endpoint Index: Selects the target endpoint for register access
of Buffer Length, Control Function, Data Port, Endpoint Type,
MaxPacketSize and Short Packet.
0DIRDirection bit: Sets the target endpoint as IN or OUT endpoint:
0 — target endpoint refers to OUT (RX) FIFO
1 — target endpoint refers to IN (TX) FIFO.
Table 16: Addressing of Endpoint 0 buffers
Buffer nameEP0SETUPENDPIDXDIR
SETUP100H0
Data OUT000H0
Data IN000H1
9397 750 07648
Objective specificationRev. 02 — 23 October 200018 of 73
The Control Function register is used to perform the buffer management on the
endpoints. It consists of 1 byte and the bit configuration is given in Table 17.The
register bits can stall, clear or validate any enabled data endpoint. Before accessing
this register, the Endpoint Index register must be written first to specify the target
endpoint.
Table 17: Control Function register: bit allocation
Bit76543210
[1]
SymbolreservedreservedreservedCLBUFVENDPreservedSTATUS
Reset00000000
Bus reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
[1] Only applicable for Endpoint 0.
Table 18: Control Function register: bit description
BitSymbolDescription
7 to 5-reserved.
4CLBUFClear Buffer: A logic 1 clears the RX buffer of the indexed
endpoint; the TX buffer is not affected. Before new data can be
received, old data in the buffer must be cleared first.
3VENDPValidate Endpoint: A logic 1 validates the data in the TX FIFO
of an IN endpoint for sending on the next IN token. The FIFO
byte count is below or equal to the Endpoint MaxPacketSize.
2-reserved
1STATUSStatus Acknowledge: This bit controls the generation of ACK
or NAK during the status stage of a SETUP packet. It is
automatically cleared upon completion of the status stage and
upon receiving a SETUP token.
0 — sends NAK
1 — sends empty packet following IN token (host-to-device) or
ACK following OUT token (device-to-host).
0STALLStall Endpoint: A logic 1 stalls the indexed endpoint. This bit is
not applicable for isochronous transfers.
STALL
9.3.3 Data Port register (address: 20H)
This 2-byte register provides direct access for a microcontroller to the FIFO of the
indexedendpoint. In case of an 8-bit bus the upper byte is not used. The bit allocation
is shown in Table 19.
Device to host (IN endpoint): After each write action an internal counter is
auto-incremented (by 2 for a 16-bit access, by 1 for an 8-bit access) to the next
location in the TX FIFO. When all bytes have been written, the buffer can be validated
via the Control Function register (bit VENDP). The data packet will then be sent on
the next IN token.
9397 750 07648
Objective specificationRev. 02 — 23 October 200019 of 73
Host to device (OUT endpoint): After each read action an internal counter is
auto-decremented (by 2 for a 16-bit access, by 1 for an 8-bit access) to the next
location in the RX FIFO. When all bytes have been read, the buffer contents can be
cleared via the Control Function register (bit CLBUF). A new data packet can then be
received on the next OUT token.
Remark: The buffer can be validated or cleared automatically by using the Buffer
Length register (see Table 21).
Table 19: Data Port register: bit allocation
Bit15141312111098
SymbolDATAPORT[15:8]
Reset00H
Bus reset00H
AccessR/W
Bit76543210
SymbolDATAPORT[7:0]
Reset00H
Bus reset00H
AccessR/W
Table 20: Data Port register: bit description
BitSymbolDescription
15 to 8DATAPORT[15:8]data (upper byte); not used in 8-bit bus mode
7 to 0DATAPORT[7:0]data (lower byte)
9.3.4 Buffer Length register (address: 1CH)
This 2-byte register determines the current packet size (DATACOUNT) of the indexed
endpoint FIFO. The bit allocation is given in Table 21.
The Buffer Length register is automatically loaded with the FIFO size, when the
Endpoint MaxPacketSize register is written (see Table 22). A smaller value can be
written when required. After a bus reset the Buffer Length register is made zero.
IN endpoint: When writing bytes into the TX FIFO, the buffer is automatically
validatedwhen DATACOUNT exceeds MaxPacketSize. During the subsequent packet
transmission DATACOUNT is decremented with the number of bytes sent. This
process is repeated until the number of remaining bytes is less than MaxPacketSize
(case I) or zero (case II). In case I, the remaining bytes are automatically validated
and a short packet is sent. In case II, a final empty packet will be appended if bit
NOEMPKT in the Endpoint Type register is cleared (see Table 24). Otherwise (if bit
NOEMPKT is set), data transfer is considered finished when the buffer is empty.
OUT endpoint: The DATACOUNT value is automatically initialized to the number of
data bytes sent by the host on each ACK. After reading DATACOUNT bytes from the
RX buffer, the buffer is automatically cleared to allow the next packet to be received
from the host.
Remark: For a 16-bit bus, the last byte of an odd-sized packet is output as the lower
byte (LSB).
9397 750 07648
Objective specificationRev. 02 — 23 October 200020 of 73
This register determines the maximum packet size for all endpoints except Control 0.
The register contains 2 bytes and the bit allocation is given in Table 22.
Each time the register is written, the Buffer Length registers of all endpoints are
re-initialized to the FFOSZ field value. The NTRANS bits control the number of
transactions allowed in a single micro-frame (for high-speed operation only).
Table 22: Endpoint MaxPacketSize register: bit allocation
Bit15141312111098
SymbolreservedreservedreservedNTRANS[1:0]FFOSZ[10:8]
Reset00000H00H
Bus reset00000H00H
AccessR/WR/WR/WR/WR/W
Bit76543210
SymbolFFOSZ[7:0]
Reset00H
Bus reset00H
AccessR/W
Table 23: Endpoint MaxPacketSize register: bit description
BitSymbolDescription
15 to 13reservedreserved
12 to 11NTRANS[1:0]Number of Transactions (HS mode only):
0 — 1 packet per microframe
1 — 2 packets per microframe
2 — 3 packets per microframe
3 — reserved.
10 to 0FFOSZ[10:0]FIFO Size: Sets the FIFO size in bytes for the indexed endpoint.
Applies to both HS and FS operation.
Remark: A FIFO size of zero will disable the endpoint.
9397 750 07648
Objective specificationRev. 02 — 23 October 200021 of 73
This register sets the Endpoint type of the indexed endpoint: control, isochronous,
bulk or interrupt. It also serves to enable the endpoint and configure it for double
buffering. Automatic generation of an empty packet for a zero length TX buffer can be
disabled via bit NOEMPKT. The register contains 2 bytes and the bit allocation is
shown in Table 24.
Table 24: Endpoint Type register: bit allocation
Bit15141312111098
Symbolreserved
Reset00H
Bus reset00H
AccessR/W
Bit76543210
SymbolreservedreservedreservedNOEMPKTENABLEDBLBUF ENDPTYP[1:0]
Reset00000000H
Bus reset00000000H
AccessR/WR/WR/WR/WR/WR/WR/W
Table 25: Endpoint Type register: bit description
BitSymbolDescription
15 to 5reservedreserved.
4NOEMPKTNo Empty Packet: A logic 0 causes an empty packet to be
appended to the next IN token of the USB data, if the Buffer
Length register or the Endpoint MaxPacketSize register is zero.
A logic 1 disables this function.
3ENABLEEndpoint Enable: A logic 1 enables the FIFO of the indexed
endpoint. The memory size is allocated as specified in the
Endpoint MaxPacketSize register. A logic 0 disables the FIFO.
2DBLBUFDouble Buffering: A logic 1 enables double buffering for the
indexed endpoint. A logic 0 disables double buffering.
1 to 0ENDPTYP[1:0]Endpoint Type: These bits select the endpoint type as follows:
00H — control
01H — isochronous
02H — bulk
03H — interrupt.
9.3.7 Short Packet register (address: 24H)
This read-only register is applicable only for OUT endpoints. It contains 2 bytes and
the bit allocation is shown in Table 26.
If the number of bytes of a received packet is less than the value specified in the
Endpoint MaxPacketSize register (see Table 22), the corresponding short packet
status bit (OUTnSH) is set. The Short Packet register is updated on every
successfully received new packet.
9397 750 07648
Objective specificationRev. 02 — 23 October 200022 of 73
Two types of Generic DMA transfer and three types of IDE-specified transfer can be
done by writing the proper opcode in the DMA Command Register. The control bits
are given in Table 28 (Generic DMA transfers) and Table 29 (IDE-specified transfers).
GDMA read/write (opcode = 00H/01H) — Generic DMA Slave mode; the DIOR and
DIOW strobe signals are driven by the external DMA Controller.
MDMA (Master) read/write (opcode = 06H/07H) — Generic DMA Master mode; the
DIOR and DIOW strobe signals are driven by the ISP1581.
PIO read/write (opcode = 04H/05H) — PIO mode for IDE transfers; the specification
of this mode can be obtained from the
used as data strobes, IORDY can be used by the device to extend the PIO cycle.
MDMA read/write (opcode = 06H/07H) — Multiword DMA mode for IDE transfers;
the specification of this mode can be obtained from the
DIOR and DIOW are used as data strobes, while DREQ and DACK serve as
handshake signals.
USB 2.0 HS interface device
ATA Specification Rev. 4
ATA Specification Rev. 4
ISP1581
. DIOR and DIOW are
.
UDMA read/write (opcode = 02H/03H) — Ultra DMA mode for IDE transfers; the
specification of this mode can be obtained from the
ATA Specification Rev. 4
. Pins
DA0 to DA2, CS0 and CS1 are used to select a device register for access. Control
signals are mapped as follows: DREQ (= DMARQ), DACK (= DMACK), DIOW
(= STOP), DIOR (= HDMARDY or HSTROBE), IORDY (= DSTROBE or DDMARDY).
Table 28: Control bits for Generic DMA transfers
Control bitsDescription
GDMA read/write (opcode = 00H/01H)
DMA Configuration register (see Table 35)
BURST[2:0]determines the number of DMA cycles during which pin
DREQ is kept asserted
MODE[1:0]determines the active data strobe(s)
WIDTH0selects the DMA bus width: 8 or 16 bits
DIS_XFER_CNTdisables the use of the DMA Transfer Counter
ATA_MODEset to logic 0 (non-ATA transfer)
DMA Hardware register (see Table 37)
EOT_POLselects the polarity of the EOT signal
ACK_POL, DREQ_POL,
WRITE_POL, READ_POL
MASTERset to logic 0 (slave)
select the polarity of the DMA handshake signals
9397 750 07648
Objective specificationRev. 02 — 23 October 200024 of 73
UDMA_MODE[1:0]determines the MDMA timings for the DIOR and DIOW
strobes (value 03H is used for UDMA only)
MODE[1:0]determines the active data strobe(s).
WIDTHselects the DMA bus width: 8 or 16 bits
DIS_XFER_CNTdisables the use of the DMA Transfer Counter
ATA_MODEset to logic 1 (ATA transfer)
DMA Hardware register (see Table 37)
EOT_POLinput EOT is not used
ACK_POL, DREQ_POL,
WRITE_POL, READ_POL
MASTERset to logic 1 (master)
Table 29: Control bits for IDE-specified DMA transfers
Control bitsDescription
PIO read/write (opcode = 04H/05H)
DMA Configuration register (see Table 35)
PIO_MODE[2:0]selects the PIO mode; timings are ATA(PI) compatible
ATA_MODEset to logic 1 (ATA transfer)
DMA Hardware register (see Table 37)
MASTERset to logic 0
MDMA read/write (opcode = 06H/07H)
DMA Configuration register (see Table 35)
MDMA_MODE[1:0]selects the MDMA mode; timings are ATA(PI) compatible
ATA_MODEset to logic 1 (ATA transfer)
DMA Hardware register (see Table 37)
MASTERset to logic 0
UDMA Read/Write (opcode = 02H/03H)
DMA Configuration register (see Table 35)
UDMA_MODE[1:0]selects the UDMA mode; timings are ATA(PI) compatible
IGNORE_IORDYused to ignore the IORDY pin during transfer
ATA_MODEset to logic 1 (ATA transfer)
DMA Hardware register (see Table 37)
MASTERset to logic 0
select the polarity of the DMA handshake signals
…continued
9397 750 07648
Objective specificationRev. 02 — 23 October 200025 of 73
The DMA Command register is a 1-byte register that initiates all DMA transfer activity
on the DMA Controller. The register is write-only: reading it will return FFH.
Table 30: DMA Command register: bit allocation
Bit76543210
SymbolDMA_CMD[7:0]
ResetFFH
Bus resetFFH
AccessW
Table 31: DMA Command Register: bit description
BitSymbolDescription
7:0DMA_CMD[7:0]DMA command code, see Table 32.
Table 32: DMA commands
Code (Hex) NameDescription
00GDMA ReadGeneric DMA IN token transfer (slave mode only):
Data is transferred from the external DMA bus to the
internal buffer. Strobe: DIOW by external DMA
Controller.
01GDMA WriteGeneric DMA OUT token transfer (slave mode
only): Data is transferred from the internal buffer to the
external DMA bus. Strobe: DIOR by external DMA
Controller.
02UDMA ReadUDMA Read command: Data is transferred from the
external DMA to the internal DMA bus.
03UDMA WriteUDMA Write command: Data is transferred in UDMA
mode from the internal buffer to the external DMA bus.
04PIO ReadPIO Read command for ATAPI device: Data is
transferred in PIO mode from the external DMA bus to
the internal buffer. Data transfer starts when IORDY is
asserted. Inputs DREQ and DACK are ignored.
05PIO WritePIO Write command for ATAPI device: Data is
transferred in PIO mode from the internal buffer to the
external DMA bus. Data transfer starts when IORDY is
asserted. Inputs DREQ and DACK are ignored.
06MDMA ReadMultiword DMA Read: Data is transferred from the
external DMA bus to the internal buffer.
07MDMA WriteMultiword DMA Write: Data is transferred from the
internal buffer to the external DMA bus.
0ARead 1F0Read at address 01F0H: Initiates a PIO Read cycle
from Task File 1F0. Before issuing this command the
task file byte count should be programmed at address
1F4H (LSB) and 1F5H (MSB).
0BPoll BSYPoll BSY status bit for ATAPI device: Starts repeated
PIO Read commands to poll the BSY status bit of the
ATAPIdevice.WhenBSY = 0, polling is terminated and
an interrupt is generated.
9397 750 07648
Objective specificationRev. 02 — 23 October 200026 of 73
0D-reserved
0EValidate BufferValidate Buffer (for debugging only): Request from
0FClear BufferClear Buffer: Request from the microcontroller to clear
10RestartRestart: Request from the microcontroller to move the
11Reset DMAReset DMA: Initializes the DMA core to its power-on
12 to FF-reserved
…continued
1F0H and 1F7H. When reading has been completed,
an interrupt is generated.
the microcontroller to validate the endpoint buffer
following an ATA to USB data transfer.
the endpoint buffer after a USB to ATA data transfer.
buffer pointers to the beginning of the endpoint FIFO.
reset state.
9.4.2 DMA Transfer Counter register (address: 34H)
This 4-byte register is used to set up the total byte count of a DMA transfer (DMACR).
It indicates the remaining number of bytes left for transfer. The bit allocation is given
in Table 33.
The transfer counter is used in DMA modes: PIO (commands: 04H, 05H), UDMA
(commands: 02H, 03H), MDMA (commands: 06H, 07H) and GDMA (commands:
00H, 01H).
A new value is written into the register starting with the lower byte (DMACR1) or the
lower word (MSB: DMACR2, LSB: DMACR1). Internally, the transfer counter is
initialized only after the last byte (DMACR4) has been written.
In the GDMA Slave mode only, the transfer counter can be disabled via bit
DIS_XFER_CNT in the DMA Configuration Register (see Table 35). In this case,
input EOT can be used to terminate the DMA transfer when data is transferred from
the external device to the host via IN tokens. The last packet in the FIFO is validated
when pin EOT is asserted. When the host sends data to an external device via OUT
tokens, the EOT condition is ignored.
9397 750 07648
Objective specificationRev. 02 — 23 October 200027 of 73
Table 33: DMA Transfer Counter register: bit allocation
Bit3130292827262524
SymbolDMACR4 = DMACR[31:24]
Reset00H
Bus reset00H
AccessR/W
Bit2322212019181716
SymbolDMACR3 = DMACR[23:16]
Reset00H
Bus reset00H
AccessR/W
Bit15141312111098
SymbolDMACR2 = DMACR[15:8]
Reset00H
Bus reset00H
AccessR/W
Bit76543210
SymbolDMACR1 = DMACR[7:0]
Reset00H
Bus reset00H
AccessR/W
Table 34: DMA Transfer Counter register: bit description
BitSymbolDescription
31 to 24DMACR4,
DMACR[31:24]
23 to 16DMACR3,
DMACR[23:16]
15 to 8DMACR2,
DMACR[15:8]
7 to 0DMACR1,
DMACR[7:0]
DMA transfer counter byte 4 (MSB)
DMA transfer counter byte 3
DMA transfer counter byte 2
DMA transfer counter byte 1 (LSB)
9.4.3 DMA Configuration register (address: 38H)
This register defines the DMA configuration for the Generic DMA (GDMA) and the
Ultra-DMA (UDMA) modes. The DMA Configuration register consists of 2 bytes. The
bit allocation is given in Table 35.
9397 750 07648
Objective specificationRev. 02 — 23 October 200028 of 73
Table 36: DMA Configuration register: bit description
…continued
BitSymbolDescription
6 to 4BURST[2:0]These bits select the DMA burst length and the DREQ timing
(GDMA Slave mode only):
00H — DREQ is asserted until the last byte/word is
transferred or until the FIFO becomes full or empty
01H — DREQ is asserted and negated for each byte/word
transferred
[1][2]
02H — DREQ is asserted and negated for every
2 bytes/words transferred
[1][2]
03H — DREQ is asserted and negated for every
4 bytes/words transferred
[1][2]
04H — DREQ is asserted and negated for every
8 bytes/words transferred
[1][2]
05H — DREQ is asserted and negated for every
12 bytes/words transferred
[1][2]
06H — DREQ is asserted and negated for every
16 bytes/words transferred
[1][2]
07H — DREQ is asserted and negated for every
[1][2]
32 bytes/words transferred
.
3 to 2MODE[1:0]These bits only affect the GDMA (slave) and MDMA (master)
handshake signals:
00H — DIOR (master) or DIOW (slave):strobesdata from the
DMA bus into the ISP1581; DIOW (master) or DIOR (slave):
puts data from the ISP1581 on the DMA bus
01H — DIOR (master) or DACK (slave) strobes the data from
the DMA bus into the ISP1581; DACK (master) or DIOR
(slave) puts the data from the ISP1581 on the DMA bus
02H — DACK (master and slave) strobes the data from the
DMA bus into the ISP1581 and also puts the data from the
ISP1581 on the DMA bus
03H — reserved.
1-reserved
0WIDTHThis bit selects the DMA bus width for GDMA (slave) and
MDMA (master):
0 — 8-bit data bus
1 — 16-bit data bus.
[1] DREQ is asserted only if space (writing) or data (reading) is available in the FIFO.
[2] This process is stopped when the transfer FIFO becomes empty.
9.4.4 DMA Hardware register (address: 3CH)
The DMA Hardware register consists of 1 byte. The bit allocation is shown in
Table 37.
This register determines the polarity of the bus control signals (EOT, DACK, DREQ,
DIOR, DIOW) and the DMA mode (master or slave). It also controls whether the
upper and lower parts of the data bus are swapped (bits ENDIAN[1:0]), for modes
GDMA (slave) and MDMA (master) only.
9397 750 07648
Objective specificationRev. 02 — 23 October 200030 of 73
Table 37: DMA Hardware register: bit allocation (modes GDMA, MDMA (Master) and MDMA (ATA) only)
Bit76543210
SymbolENDIAN[1:0]EOT_
POL
Reset00H000100
Bus reset00H000100
AccessR/WR/WR/WR/WR/WR/WR/W
Table 38: DMA Hardware register: bit description
BitSymbolDescription
7 to 6ENDIAN[1:0]These bits determine whether the data bus is swapped between
5EOT_POLSelects the polarity of the End Of Transfer input (used in GDMA
4MASTERSelects the DMA master/slave mode:
3ACK_POLSelects the DMA acknowledgement polarity:
2DREQ_POLSelects the DMA request polarity:
1WRITE_POLSelects the DIOW strobe polarity.
0READ_POLSelects the DIOR strobe polarity.
MASTERACK_
POL
internal RAM and the DMA bus: nibbles
(16-bit bus). This only applies for modes GDMA (slave) and
MDMA (master).
00H — normal data representation
8-bit bus: MSN on DATA[7:4], LSN on DATA[3:0];
16-bit bus: MSB on DATA[15:8], LSB on DATA[7:0]
01H — swapped data representation
8-bit bus: MSN on DATA[3:0], LSN on DATA[7:4];
16-bit bus: MSB on DATA[7:0], LSB on DATA[15:8]
02H, 03H — reserved.
slave mode only):
0 — EOT is active LOW
1 — EOT is active HIGH.
0 — GDMA slave mode.
1 — MDMA master mode.
0 — DACK is active LOW
1 — DACK is active HIGH.
0 — DREQ is active LOW
1 — DREQ is active HIGH.
0 — DIOW is active LOW
1 — DIOW is active HIGH.
0 — DIOR is active LOW
1 — DIOR is active HIGH.
DREQ_
POL
WRITE_
POL
[1]
(8-bit bus) or bytes
READ_
POL
[1] Nibble = 4 bits. MSN: Most Significant Nibble, LSN: Least Significant Nibble.
9.4.5 DMA Strobe Timing register (address: 60H)
This 1-byte register controls the strobe timings forUDMA and MDMA mode, when the
UDMA_MODE bits in the DMA Configuration register have been set to 03H. The bit
allocation is given in Table 39.
9397 750 07648
Objective specificationRev. 02 — 23 October 200031 of 73
Table 39: DMA Strobe Timing register: bit allocation
Bit76543210
SymbolreservedreservedreservedDMA_STROBE_CNT[4:0]
Reset0001FH
Bus reset0001FH
AccessR/WR/WR/WR/W
Table 40: DMA Strobe Timing register: bit description
BitSymbolDescription
7 to 5-reserved.
4 to 0DMA_
STROBE_
CNT[4:0]
[1] The cycle duration for UDMA mode 3 is the same as for UDMA mode 2 (see Table 87).
These bits select the strobe duration for UDMA_MODE = 03H
(see Table 35). The strobe duration is (N+1) cycles
representing the value of DMA_.STROBE_CNT.
[1]
, with N
9.4.6 Task File registers (addresses: 40H to 4FH)
These registers allow direct access to the internal registers of an ATAPI peripheral
using PIO mode. The supported Task File registers and their functions are shown in
Table 41. The correct peripheral register is automatically addressed via pins CS1,
In 8-bit bus mode, the 16-bit Task File register 1F0 requires 2 consecutive write/read
accesses before the proper PIO write/read is generated on the IDE interface. The first
byte is always the lower byte (LSB). Other task file registers can be accessed directly.
Writing to Task File registers can be done in any order except for Task File register
1F7, which must be written last.
Table 43: Task File register 1F0 (address: 40H): bit allocation
CS1 = H, CS0 = L, DA2 = L, DA1 = L, DA0 = L.
Bit76543210
Symboldata (ATA or ATAPI)
Reset00H
Bus reset00H
AccessR/W
Table 44: Task File register 1F1 (address: 48H): bit allocation
CS1 = H, CS0 = L, DA2 = L, DA1 = L, DA0 = H.
Bit76543210
Symbolerror/feature (ATA or ATAPI)
Reset00H
Bus reset00H
AccessR/W
Table 45: Task File register 1F2 (address: 49H): bit allocation
CS1 = H, CS0 = L, DA2 = L, DA1 = H, DA0 = L.
Bit76543210
Symbolsector count (ATA) or interrupt reason (ATAPI)
Reset00H
Bus reset00H
AccessR/W
Table 46: Task File register 1F3 (address: 4AH): bit allocation
CS1 = H, CS0 = L, DA2 = L, DA1 = H, DA0 = H.
Bit76543210
Symbolsector number/LBA[7:0] (ATA), reserved (ATAPI)
Reset00H
Bus reset00H
AccessR/W
9397 750 07648
Objective specificationRev. 02 — 23 October 200033 of 73
This 2-byte register shows the source(s) of a DMA interrupt. Each bit is refreshed
after a DMA command has been executed.An interrupt source is cleared by writing a
logic 1 to the corresponding bit. The bit allocation is given in Table 53.
Table 53: DMA Interrupt Reason register: bit allocation
This 2-byte register controls the interrupt generation of the source bits in the DMA
Interrupt Reason register (see Table 53). The bit allocation is given in Table 55. A
logic 1 enables interrupt generation. The value after a (bus) reset is logic 0 (disabled).
Table 55: DMA Interrupt Enable register: bit allocation
The Interrupt register consists of 4 bytes. The bit allocation is given in Table 58.
When a bit is set in the Interrupt register, this indicates that the hardware condition for
an interrupt has occurred. When the Interrupt register content is non-zero, the INT
output will be asserted. Upon detecting the interrupt, the external microprocessor
must read the Interrupt register to determine the source of the interrupt.
Each endpoint buffer has a dedicated interrupt bit (EPnTX, EPnRX). In addition,
various bus states can generate an interrupt: Resume, Suspend, Pseudo-SOF, SOF
and Bus Reset. The DMA Controller only has one interrupt bit: the source for a DMA
interrupt is shown in the DMA Interrupt Reason register (see Table 53).
Each interrupt bit (except bit DMA) can be individually cleared by writing a logic 1.
The DMA interrupt bit can be cleared by writing a logic 1 to the related interrupt
source bit in the DMA Interrupt Reason register.
Table 58: Interrupt register: bit allocation
Bit3130292827262524
SymbolreservedreservedreservedreservedreservedreservedEP7TXEP7RX
Reset00000000
Bus reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Bit2322212019181716
SymbolEP6TXEP6RXEP5TXEP5RXEP4TXEP4RXEP3TXEP3RX
Reset00000000
Bus reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Bit15141312111098
SymbolEP2TXEP2RXEP1TXEP1RXEP0TXEP0RXreservedEP0SETUP
Reset00000000
Bus reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Bit76543210
SymbolreservedDMAHS_STATRESUMESUSPPSOFSOFBRESET
Reset00000000
Bus reset0000000unchanged
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Table 59: Interrupt register: bit description
BitSymbolDescription
31 to 26reservedreserved; must write logic 0
25EP7TXA logic 1 indicates the Endpoint 7 TX buffer as interrupt source.
24EP7RXA logic 1 indicates the Endpoint 7 RX buffer as interrupt source.
23EP6TXA logic 1 indicates the Endpoint 6 TX buffer as interrupt source.
9397 750 07648
Objective specificationRev. 02 — 23 October 200037 of 73
22EP6RXA logic 1 indicates the Endpoint 6 RX buffer as interrupt source.
21EP5TXA logic 1 indicates the Endpoint 5 TX buffer as interrupt source.
20EP5RXA logic 1 indicates the Endpoint 5 RX buffer as interrupt source.
19EP4TXA logic 1 indicates the Endpoint 4 TX buffer as interrupt source.
18EP4RXA logic 1 indicates the Endpoint 4 RX buffer as interrupt source.
17EP3TXA logic 1 indicates the Endpoint 3 TX buffer as interrupt source.
16EP3RXA logic 1 indicates the Endpoint 3 RX buffer as interrupt source.
15EP2TXA logic 1 indicates the Endpoint 2 TX buffer as interrupt source.
14EP2RXA logic 1 indicates the Endpoint 2 RX buffer as interrupt source.
13EP1TXA logic 1 indicates the Endpoint 1 TX buffer as interrupt source.
12EP1RXA logic 1 indicates the Endpoint 1 RX buffer as interrupt source.
11EP0TXA logic 1 indicates the Endpoint 0 data TX buffer as interrupt
source.
10EP0RXA logic 1 indicates the Endpoint 0 data RX buffer as interrupt
source.
9reservedreserved.
8EP0SETUPA logic 1 indicates that a SETUP token was received on
Endpoint 0.
7reservedreserved.
6DMADMA status: A logic 1 indicates a change in the DMA Status
register.
5HS_STATHigh Speed Status:.A logic 1 indicates a change from FS to
HS mode (HS connection). This bit is not set, when the system
goes into a FS suspend.
4RESUMEResume status: A logic 1 indicates that a status change from
‘suspend’ to ‘resume’ (active) was detected.
3SUSPSuspend status: A logic 1 indicates that a status change from
active to ‘suspend’ was detected on the bus.
2PSOFPseudo SOF interrupt: A logic 1 indicates that a Pseudo SOF
or µSOF was received. Pseudo SOF is an internally generated
clock signal (FS: 1 ms period, HS: 125 µs period) synchronized
to the USB bus SOF/µSOF.
1SOFSOF interrupt: A logic 1 indicates that a SOF/µSOF was
received.
0BRESETBus Reset: A logic 1 indicates that a USB bus reset was
detected.
…continued
9.5.2 Chip ID register (address: 70H)
This read-only register contains the chip identification and the hardware version
numbers. The firmware should check this information to determine the functions and
features supported. The register contains 3 bytes and the bit allocation is shown in
Table 60.
9397 750 07648
Objective specificationRev. 02 — 23 October 200038 of 73
Bit2322212019181716
SymbolVERSION[7:0]
Reset01H
Bus reset01H
AccessR
Bit15141312111098
SymbolCHIPID[15:8]
Reset15H
Bus reset15H
AccessR
Bit76543210
SymbolCHIPID[7:0]
Reset81H
Bus reset81H
AccessR
Table 61: Chip ID Register: bit description
BitSymbolDescription
23 to 16VERSIONVersion number (01H). The version number will be incremented
in case of a silicon revision with improved performance and
functionality.
15 to 8CHIPID[15:8]Chip ID: upper byte (15H)
7 to 0CHIPID[7:0]Chip ID: lower byte (81H)
9.5.3 Frame Number register (address: 74H)
This read-only register contains the frame number of the last successfully received
Start Of Frame (SOF). The register contains 2 bytes and the bit allocation is given in
Table 62. In case of 8-bit access the register content is returned lower byte first.
Table 62: Frame Number register: bit allocation
Bit15141312111098
SymbolreservedreservedMICROSOF[2:0]SOFR[10:8]
Power Reset0000H00H
Bus Reset0000H00H
AccessRRRR
Bit76543210
SymbolSOFR[7:0]
Power Reset00H
Bus Reset00H
AccessR
9397 750 07648
Objective specificationRev. 02 — 23 October 200039 of 73
13 to 11MICROSOF[2:0] microframe number
10 to 0SOFR[10:0]frame number
9.5.4 Scratch register (address: 78H)
This 16-bit register can be used by the firmware to save and restore information, e.g.
the device status before it enters power-off mode during ‘suspend’. The content of
this register will not be altered by a bus reset. The bit allocation is given in Table 64.
Table 64: Scratch Register: bit allocation
Bit15141312111098
SymbolSFIRH[7:0]
Reset00H
Bus resetunchanged
AccessR/W
Bit76543210
SymbolSFIRL[7:0]
Reset00H
Bus resetunchanged
AccessR/W
Table 65: Scratch Information register: bit description
BitSymbolDescription
15 to 8SFIRH[7:0]scratch firmware information register (high byte)
7 to 0SFIRL[7:0]scratch firmware information register (low byte)
9.5.5 Unlock Device register (address: 7CH)
In ‘suspend’ state all the internal registers are write-protected to prevent data
corruption by external devices during a ‘resume’. Register access for reading is not
blocked.
To re-enable the ISP1581 registers from the write-protected mode, the firmware must
write a 2-byte unlock code (AA37H) into this register. The bit allocation of the Unlock
Device register is given in Table 66.
9397 750 07648
Objective specificationRev. 02 — 23 October 200040 of 73
Bit15141312111098
SymbolULCODE[15:8] = AAH
Resetnot applicable
Bus resetnot applicable
AccessW
Bit76543210
SymbolULCODE[7:0] = 37H
Resetnot applicable
Bus resetnot applicable
AccessW
Table 67: Unlock Device register: bit description
BitSymbolDescription
15 to 0ULCODE[15:0] Writing data AA37H unlocks the internal registers and FIFOs
for writing, following a ‘resume’.
9.5.6 Test Mode register (address: 84H)
This 1-byte register allows the firmware to set the (D+, D−) lines to predetermined
states for testing purposes. The bit allocation is given in Table 68.
Remark: Only one bit can be set at a time.
Table 68: Test Mode register: bit allocation
Bit76543210
SymbolFORCEHSPHYTESTLPBKFORCEFSPRBSKSTATEJSTATESE0_NAK
Reset00000000
Bus reset00000000
AccessR/WR/WR/WR/WR/WR/WR/WR/W
Table 69: Test Mode Register: bit description
BitSymbolDescription
7FORCEHSA logic 1 forces the hardware to high-speed mode only and
disables the chirp detection logic.
6PHYTESTA logic 1 initiates an internal hardware test of the transceiver.
After successful completion the PHYTEST bit reverts to logic 0.
5LPBKA logic 1 selects loop-back mode. All data written to TX/IN FIFO
of endpoint 1 is copied into RX/OUT of endpoint 1.
4FORCEFSA logic 1 forces the physical layer to full-speed mode only and
disables the chirp detection logic.
3PRBSA logic 1 sets the (D+, D−) lines to toggle in a pre-determined
random pattern.
2KSTATEWriting a logic 1 sets the (D+, D−) lines to the K state.
1JSTATEWriting a logic 1 sets the (D+, D−) lines to the J state.
0SE0_NAKWriting a logic 1 sets the (D+, D−) lines to a HS quiescent state.
The device only responds to a valid HS IN token with a NAK.
9397 750 07648
Objective specificationRev. 02 — 23 October 200041 of 73
12.1.1 Template 1 (transmit waveform; device without captive cable)
The eye pattern in Figure 7 defines the transmit waveform requirements for a hub
(measured at TP2) or a device without a captive1 cable (measured at TP3). The
corresponding signal levels and timings are given in Table 77. Timings are given as a
percentage of the unit interval (UI), which represents the nominal bit duration T
for a 480 Mbit/s transmission rate.
Point 107.5
Point 2092.5
Point 3+30037.5
Point 4+30062.5
Point 5−30037.5
Point 6−30062.5
[1] In the unit interval following a transition.
[2] In all other cases.
1.Captive cables have a vendor-specificconnectorto the peripheral (hardwired or detachable) and a USB “A” connector on the other side.
For hot plugging, the vendor-specific connector must meet the same performance requirements as a USB “B” connector.
9397 750 07648
Objective specificationRev. 02 — 23 October 200047 of 73
12.1.2 Template 2 (transmit waveform; device with captive cable)
The eye pattern in Figure 8 defines the transmit waveform requirements for a device
with a captive cable (measured at TP2). The corresponding signal levels and timings
are given in Table 78. Timings are given as a percentage of the unit interval (UI),
which represents the nominal bit duration T
12.1.3 Template 3 (receive waveform; receiver sensitivity with captive cable)
The eye pattern defined in Figure 9 defines the receiver sensitivity requirements for a
device with a captive cable (signal applied at test point TP2). The corresponding
signal levels and timings are given in Table 79. Timings are given as a percentage of
the unit interval (UI), which represents the nominal bit duration T
480 Mbit/s transmission rate.
ISP1581
USB 2.0 HS interface device
for a
PERIOD
point 4
point 2
004aaa003
level 1
+400 mV
0
−400 mV
level 2
differential
input
voltage
(mV)
600
500
400
300
200
100
0
−100
−200
−300
−400
−500
−600
0100relative duration
point 3
point 1
point 5
(% of unit interval)
point 6
Fig 9. Template 3 eye pattern (receive waveform).
Table 79: Template 3 eye pattern definition
NameDifferential voltage on DP, DM
(mV)
Relative duration
(% of unit interval)
Level 1+575n.a.
Level 2−575n.a.
Point 1010
Point 2090
Point 3+27540
Point 4+27560
Point 5−27540
Point 6−27560
9397 750 07648
Objective specificationRev. 02 — 23 October 200049 of 73
12.1.4 Template 4 (receive waveform; receiver sensitivity without captive cable)
The eye pattern defined in Figure 10 defines the receiver sensitivity requirements for
a hub (signal applied at test point TP2) or a device without a captive cable (signal
applied at test point TP3). The corresponding signal levels and timings are given in
Table 80. Timings are given as a percentage of the unit interval (UI), which represents
Fig 11. Parallel I/O timing: separate address and data buses.
Table 82: Parallel I/O timing parameters: separate address and data buses
SymbolParameterMinMaxUnit
Reading
t
AVRL
t
RHAX
t
RLDV
t
RHDZ
t
RHSH
address set-up time before RD LOW0-ns
address hold time after RD HIGH0-ns
RD LOW to data valid delay-35ns
RD HIGH to data outputs three-state delay020ns
RD HIGH to CS HIGH delay0-ns
Writing
t
AVWL
t
WHAX
t
DVWH
t
WHDZ
t
WHSH
address set-up time before WR LOW0-ns
address hold time after WR HIGH0-ns
data set-up time before WR HIGH25-ns
data hold time after WR HIGH0-ns
WR HIGH to CS HIGH delay0-ns
Table 83: Parallel I/O timing parameters: multiplexed address/data bus
SymbolParameterMinMaxUnit
General
T
cy(RW)
t
AVLL
t
I1VLL
t
LLI2L
t
I2HI1X
12.4 DMA timing
12.4.1 PIO mode
(1)
t
su1
(4)
(2)
]
(2)
]
HIGH
(3a)
…continued
read/write cycle time60-ns
address set-up time before ALE LOW3-ns
R/W set-up time before ALE LOW3-ns
ALE LOW to DS LOW delay5-ns
R/W hold time after DS HIGH5-ns
T
cy1
t
h1
t
w1
t
su2
t
su3
t
w2
t
h2
t
h3
(min)
t
d2
t
su4
(3b)
IORDY
t
su5
(3c)
IORDY
t
su4
t
w3
MGT499
(1) The device address consists of signals CS1, CS0, DA2, DA1 and DA0.
(2) The data bus width depends on the PIO access command used. Task File register access uses 8 bits (DATA[7:0]), except
for Task File register 1F0 which uses 16 bits (DATA[15:0]). DMA commands 04H and 05H also use a 16-bit data bus.
(3) The device can negate IORDY to extend the PIO cycle with wait states. The host determines whether or not to extend the
current cycle after t
following the assertion of DIOR or DIOW. The following three cases are distinguished:
su4
a) Device keeps IORDY released (high-impedance): no wait state is generated.
b) Device negates IORDY during t
c) Device negates IORDY during t
, but re-asserts IORDY before t
su4
and keeps IORDY negated for at least 5 ns after t
su4
expires: no wait state is generated.
su4
expires: a wait state is
su4
generated. The cycle is completed as soon as IORDY is re-asserted. For extended read cycles (DIOR asserted), the
read data on lines DATAn must be valid at td1 before IORDY is asserted.
(4) DIOR and DIOW have a programmable polarity: shown here as active LOW signals.
Fig 13. PIO mode timing.
9397 750 07648
Objective specificationRev. 02 — 23 October 200054 of 73
[2] td2 specifies the time after DIOR is negated, when the data bus is no longer driven by the device (three-state).
[3] If IORDY is LOW at t
is the total cycle time, consisting of the command active time tw1and is the command recovery (= inactive) time tw2:T
cy1
The minimum timing requirements for T
host implementation must lengthen tw1 and/or tw2 to ensure that T
DEVICE data. A device implementation shall support any legal host implementation.
, the host waits until IORDY is made HIGH before the PIO cycle is completed. In that case, t
reading (t
su3
su4
does not apply). When IORDY is HIGH at t
, tw1and tw2 must all be met. Since T
cy1
su4
, t
is equal to or greater than the value reported in the IDENTIFY
cy1
must be met for reading (t
su3
is greater than the sum of t
cy1(min)
does not apply).
su5
cy1=tw1+tw2
and t
w1(min)
must be met for
su5
w2(min)
.
, a
9397 750 07648
Objective specificationRev. 02 — 23 October 200055 of 73
DREQ is continuously asserted until the last transfer is done or the FIFO is full.
Data strobes: DIOR (read), DIOW (write).
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
DREQ is continuously asserted until the last transfer is done or the FIFO is full.
Data strobe: DACK (read/write).
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
DREQ is asserted for every transfer.
Data strobes: DIOR (read), DIOW (write).
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
DREQ is asserted for every transfer.
Data strobe: DACK (read/write).
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
Objective specificationRev. 02 — 23 October 200057 of 73
Page 58
Philips Semiconductors
(2)
DREQ
t
w1
t
d2
t
h2
t
su2
DACK
DIOR/DIOW
(read) DATA[15:0
(write) DATA[15:0
t
su1
(1)
(1)
]
]
DREQ is asserted once per N transfers (N is determined by the BURST value). Example shown here: N = 2.
Data strobes: DIOR (read), DIOW (write).
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
DREQ is asserted once per N transfers (N is determined by the BURST value). Example shown here: N = 2.
Data strobe: DACK (read/write).
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
Objective specificationRev. 02 — 23 October 200058 of 73
Page 59
Philips Semiconductors
Table 85: GMDA slave mode timing parameters
SymbolParameterMinMaxUnit
T
cy1
t
su1
t
d1
t
h1
t
w1
t
d2
t
h2
t
su2
12.4.3 MDMA mode
(2)
DREQ
(1)
DACK
t
su1
DIOR/DIOW
(write) DATA[15:0
(read) DATA[15:0
(1)
]
]
ISP1581
USB 2.0 HS interface device
read/write cycle time66.67-ns
DREQ set-up time before first DACK on0-ns
DREQ on delay after last strobe off33.33-ns
DREQ hold time after last strobe on033.33ns
DIOR/DIOW pulse width33.33-ns
read data valid delay after strobe on-10ns
read data hold time after strobe off5-ns
write data set-up time before strobe off10-ns
T
cy1
t
w1
t
d1
t
h3
t
su2
t
w2
t
d2
t
su2
t
h1
t
d3
t
h2
MGT506
(1) Programmable polarity: shown as active LOW.
(2) Programmable polarity: shown as active HIGH.
Fig 20. MDMA master mode timing.
Table 86: MDMA mode timing parameters
SymbolParameterMode 0 Mode 1 Mode 2 Unit
T
cy1(min)
t
w1(min)
t
d1(max)
read/write cycle time (minimum)
DIOR/DIOW pulse width (minimum)
data valid delay after DIOR on
[1]
480150120ns
[1]
2158070ns
1506050ns
(maximum)
t
h3(min)
t
su2(min)
data hold time after DIOR off (minimum) 555ns
data set-up time before DIOR/DIOW off
1003020ns
(minimum)
t
h2(min)
t
su1(min)
data hold time after DIOW off (minimum) 201510ns
DACKset-uptime before DIOR/DIOW on
000ns
(minimum)
t
h1(min)
DACK hold time after DIOR/DIOW off
2055ns
(minimum)
9397 750 07648
Objective specificationRev. 02 — 23 October 200059 of 73
(= inactive) time tw2: T
be met. Since T
lengthen tw1 and/or tw2 to ensure that T
IDENTIFY DEVICE data. A device implementation shall support any legal host implementation.
12.4.4 UDMA mode
(1)
(sender)
(1)
(sender)
(1)
(receiver)
…continued
DIOR recovery time (minimum)
DIOW recovery time (minimum)
[1]
[1]
505025ns
2155025ns
DIOR on to DREQ off delay (maximum)1204035ns
DIOW on to DREQ off delay (maximum) 404035ns
DACK off to data lines three-state delay
202525ns
(maximum)
is the total cycle time, consisting of the command active time tw1and is the command recovery
cy1
t
cy1=tw1+tw2
is greater than the sum of t
cy1(min)
T
cy1
t
su1
h1
t
h2
. The minimum timing requirements for T
and t
t
su2
w1(min)
is equal to or greater than the value reported in the
cy1
t
h1
t
h2
w2(min)
T
cy1
, tw1and tw2 must all
cy1
, a host implementation must
t
su1
t
h1
t
su2
t
h2
(1)
DATA[15:0]
(receiver)
(1) DATA[15:0] and strobe signals at the receiver require some time to stabilize due to the settling time and propagation delay
Fig 28. UDMA timing: host terminating a burst during a write command.
Table 87: UDMA mode timing parameters
SymbolParameterMode 0Mode 1Mode 2Unit
MinMaxMinMaxMinMax
T
cy1
read/write cycle time (from strobe edge
114-75-55-ns
to strobe edge)
t
t
t
t
t
t
t
t
t
su2
h2
su1
h1
d1
d2
d3
d4
d5
data set-up time at receiver15-10-7-ns
data hold time at receiver5-5-5-ns
data set-up time at sender70-48-34-ns
data hold time at sender6-6-6-ns
unlimited interlock time
limited interlock time
limited interlock time with minimum
[1]
[1]
[1]
0-0-0-ns
015001500150ns
20-20-20-ns
data line drivers switch-off delay-10-10-10ns
data line drivers switch-on delay (host)20-20-20-ns
data line drivers switch-on delay (drive)0-0-0-ns
t
su3
control signal set-up time before DACK
20-20-20-ns
on
t
h3
t
d6
t
d7
t
d8
control signal hold time after DACK off20-20-20-ns
DACKon to control signal transition delay207020702070ns
ready to paused delay160-125-100-ns
strobe to ready delay to ensure a
Objective specificationRev. 02 — 23 October 200067 of 73
Page 68
Philips Semiconductors
16. Soldering
16.1 Introduction to soldering surface mount packages
This text gives a very brief insight to a complex technology. A more in-depth account
of soldering ICs can be found in our
Packages
There is no soldering method that is ideal for all surface mount IC packages. Wave
soldering can still be used for certain surface mount ICs, but it is not suitable for fine
pitch SMDs. In these situations reflow soldering is recommended.
16.2 Reflow soldering
Reflow soldering requires solder paste (a suspension of fine solder particles, flux and
binding agent) to be applied to the printed-circuit board by screen printing, stencilling
or pressure-syringe dispensing before package placement.
Several methods exist for reflowing; for example, convection or convection/infrared
heating in a conveyor type oven. Throughput times (preheating, soldering and
cooling) vary between 100 and 200 seconds depending on heating method.
ISP1581
USB 2.0 HS interface device
Data Handbook IC26; Integrated Circuit
(document order number 9398 652 90011).
Typical reflow peak temperatures range from 215 to 250 °C. The top-surface
temperature of the packages should preferable be kept below 220 °C for thick/large
packages, and below 235 °C small/thin packages.
16.3 Wave soldering
Conventional single wave soldering is not recommended for surface mount devices
(SMDs) or printed-circuit boards with a high component density, as solder bridging
and non-wetting can present major problems.
To overcome these problems the double-wave soldering method was specifically
developed.
If wave soldering is used the following conditions must be observed for optimal
results:
Use a double-wave soldering method comprising a turbulent wave with high
•
upward pressure followed by a smooth laminar wave.
For packages with leads on two sides and a pitch (e):
•
– larger than or equal to 1.27 mm, the footprint longitudinal axis is preferred to be
parallel to the transport direction of the printed-circuit board;
– smaller than 1.27 mm, the footprint longitudinal axis must be parallel to the
transport direction of the printed-circuit board.
The footprint must incorporate solder thieves at the downstream end.
For packages with leads on four sides, the footprint must be placed at a 45° angle
•
to the transport direction of the printed-circuit board. The footprint must
incorporate solder thieves downstream and at the side corners.
9397 750 07648
Objective specificationRev. 02 — 23 October 200068 of 73
During placement and before soldering, the package must be fixed with a droplet of
adhesive. The adhesive can be applied by screen printing, pin transfer or syringe
dispensing. The package can be soldered after the adhesive is cured.
Typical dwell time is 4 seconds at 250 °C. A mildly-activated flux will eliminate the
need for removal of corrosive residues in most applications.
16.4 Manual soldering
Fix the component by first soldering two diagonally-opposite end leads. Use a low
voltage (24 V or less) soldering iron applied to the flat part of the lead. Contact time
must be limited to 10 seconds at up to 300 °C.
When using a dedicated tool, all other leads can be soldered in one operation within
2 to 5 seconds between 270 and 320 °C.
16.5 Package related soldering information
Table 88: Suitability of surface mount IC packages for wave and reflow soldering
[1] All surface mount (SMD) packages are moisture sensitive. Depending upon the moisture content, the
maximum temperature (with respect to time) and body size of the package, there is a risk that internal
or external package cracks may occur due to vaporization of the moisture in them (the so called
popcorn effect). For details, refer to the Drypack information in the
Circuit Packages; Section: Packing Methods
[2] These packages are not suitable for wavesoldering as a solder joint between the printed-circuit board
and heatsink (at bottom version) can not be achieved, and as solder may stick to the heatsink (on top
version).
[3] If wave soldering is considered, then the package must be placed at a 45° angle to the solder wave
direction. The package footprint must incorporate solder thieves downstream and at the side corners.
[4] Wave soldering is only suitable for LQFP, QFP and TQFP packages with a pitch (e) equal to or larger
than 0.8 mm; it is definitely not suitable for packages with a pitch (e) equal to or smaller than 0.65 mm.
[5] Wave soldering is only suitableforSSOP and TSSOP packages with a pitch (e) equal to orlargerthan
0.65 mm; it is definitely not suitable for packages with a pitch (e) equal to or smaller than 0.5 mm.
9397 750 07648
Objective specificationRev. 02 — 23 October 200069 of 73
Objective specificationDevelopmentThis data sheet contains the design target or goal specifications for product development. Specification may
change in any manner without notice.
Preliminary specification QualificationThis data sheet contains preliminary data, and supplementary data will be published at a later date. Philips
Semiconductors reserves the right to make changes at any time without notice in order to improve design and
supply the best possible product.
Product specificationProductionThis data sheet contains final specifications. Philips Semiconductors reserves the right to make changes at any
time without notice in order to improve design and supply the best possible product.
[1] Please consult the most recently issued data sheet before initiating or completing a design.
19. Definitions
Short-form specification — The data in a short-form specification is
extracted from a full data sheet with the same type number and title. For
detailed information see the relevant data sheet or data handbook.
Limiting values definition — Limiting values given are in accordance with
the Absolute Maximum Rating System (IEC 60134). Stress above one or
more of the limiting values may cause permanent damage to the device.
These are stress ratings only and operation of the device at these or at any
other conditions above those given in the Characteristics sections of the
specification is not implied. Exposure to limiting values for extended periods
may affect device reliability.
Application information — Applications that are described herein for any
of these products are for illustrative purposes only. Philips Semiconductors
make no representation or warranty that such applications will be suitable for
the specified use without further testing or modification.
[1]
20. Disclaimers
Life support — These products are not designed for use in life support
appliances, devices, or systems where malfunction of these products can
reasonably be expected to result in personal injury. Philips Semiconductors
customers using or selling these products for use in such applications do so
at their own risk and agree to fully indemnify Philips Semiconductors for any
damages resulting from such application.
Right to make changes — Philips Semiconductors reserves the right to
make changes, without notice, in the products, including circuits, standard
cells, and/or software, described or contained herein in order to improve
design and/or performance. Philips Semiconductors assumes no
responsibility or liability for the use of any of these products, conveys no
licence or title under any patent, copyright, or mask work right to these
products, and makes no representations or warranties that these products
are free from patent, copyright, or mask work right infringement, unless
otherwise specified.
21. Trademarks
ACPI — is an open industry specification for PC power management,
co-developed by Intel Corp., Microsoft Corp. and Toshiba
Jaz — is a registered trademark of Iomega Corp.
OnNow — is a trademark of Microsoft Corp.
SoftConnect — is a trademark of Royal Philips Electronics
Zip — is a registered trademark of Iomega Corp.
All rights are reserved. Reproduction in whole or in part is prohibited without the prior
written consent of the copyright owner.
The information presented in this document does not form part of any quotation or
contract, is believed to be accurate and reliable and may be changed without notice. No
liability will be accepted by the publisher for any consequence of its use. Publication
thereof does not convey nor imply any license under patent- or other industrial or
intellectual property rights.
Date of release: 23 October 2000Document order number: 9397 750 07648
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.