Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products
or to discontinue any product or service without notice, and advise customers to obtain the latest
version of relevant information to verify , before placing orders, that information being relied on
is current and complete. All products are sold subject to the terms and conditions of sale supplied
at the time of order acknowledgement, including those pertaining to warranty, patent
infringement, and limitation of liability.
TI warrants performance of its semiconductor products to the specifications applicable at the
time of sale in accordance with TI’s standard warranty. Testing and other quality control
techniques are utilized to the extent TI deems necessary to support this warranty . Specific testing
of all parameters of each device is not necessarily performed, except those mandated by
government requirements.
CERTAIN APPLICATIONS USING SEMICONDUCTOR PRODUCTS MAY INVOLVE
POTENTIAL RISKS OF DEATH, PERSONAL INJURY, OR SEVERE PROPERTY OR
ENVIRONMENTAL DAMAGE (“CRITICAL APPLICATIONS”). TI SEMICONDUCTOR
PRODUCTS ARE NOT DESIGNED, AUTHORIZED, OR WARRANTED TO BE SUIT ABLE FOR
USE IN LIFE-SUPPORT DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS.
INCLUSION OF TI PRODUCTS IN SUCH APPLICATIONS IS UNDERSTOOD TO BE FULLY
AT THE CUSTOMER’S RISK.
In order to minimize risks associated with the customer’s applications, adequate design and
operating safeguards must be provided by the customer to minimize inherent or procedural
hazards.
TI assumes no liability for applications assistance or customer product design. TI does not
warrant or represent that any license, either express or implied, is granted under any patent right,
copyright, mask work right, or other intellectual property right of TI covering or relating to any
combination, machine, or process in which such semiconductor products or services might be
or are used. TI’s publication of information regarding any third party’s products or services does
not constitute TI’s approval, warranty or endorsement thereof.
The Texas Instruments TSB12LV23 is a PCI-to-1394 host controller compatible with the latest
Bus Power Management Interface
chip provides the IEEE 1394 link function, and is compatible with serial bus data rates of 100 Mbits/s, 200 Mbits/s,
and 400 Mbits/s.
As required by the
registers are memory mapped and non-prefetchable. The PCI configuration header is accessed through
configuration cycles specified by PCI, and provides Plug-and-Play (PnP) compatibility . Furthermore, the TSB12LV23
is compliant with the
supports the D0, D2, and D3 power states.
The TSB12L V23 design provides PCI bus master bursting, and is capable of transferring a cacheline of data at 132
Mbytes/s after connection to the memory controller. Since PCI latency can be large even on a PCI Revision 2.1
system, deep FIFOs are provided to buffer 1394 data.
The TSB12L V23 provides physical write posting buffers and a highly tuned physical data path for SBP-2 performance.
The TSB12L V23 also provides multiple isochronous contexts, multiple cacheline burst transfers, advanced internal
arbitration, and bus holding buffers on the PHY/Link interface, thus, making the TSB12L V23 the best-in-class 1394
OHCI solution.
An advanced CMOS process is used to achieve low power consumption while operating at PCI clock rates up to
33 MHz.
1394 Open Host Controller Interface
PCI Bus Power Management Interface Specification
,
IEEE 1394-1995
, and
1394 Open Host Controller Interface Specifications
(OHCI) and
IEEE 1394A
, per the
PC 98
Specifications, internal control
requirements. TSB12L V23
PCI Local Bus, PCI
. The
1.2Features
The TSB12LV23 supports the following features:
•3.3-V core logic with universal PCI interfaces compatible with 3.3-V and 5-V PCI signaling environments
•Supports serial bus data rates of 100, 200, and 400 Mbits/s
•Provides bus-hold buffers on physical interface for low-cost single capacitor isolation
•Supports physical write posting of up to three outstanding transactions
•Serial ROM interface supports 2-wire devices
•Supports external cycle timer control for customized synchronization
•Implements PCI burst transfers and deep FIFOs to tolerate large host latency
•Provides two general-purpose I/Os
•Fabricated in advanced low-power CMOS process
•Packaged in 100 LQFP (PZ)
•Supports CLKRUN
•Drop-in replacement for the TSB12LV22
•Supports PCI and CardBus applications
1–1
Page 8
1.3Related Documents
•1394 Open Host Controller Interface Specification
•IEEE 1394-1995 and Compatible with Proposal 1394A
•PC 98
•PCI Bus Power Management Interface Specification (Revision 1.1)
NO.TERMINAL NAMENO.TERMINAL NAMENO.TERMINAL NAMENO.TERMINAL NAME
1GND26PCI_AD2551PCI_SERR76RST
2GPIO227PCI_AD2452PCI_PAR77CARDBUS/CYCLEOUT
3GPIO328PCI_C/BE353PCI_C/BE178CYCLEIN
4SCL29PCI_IDSEL54PCI_AD1579ISOLATED
5SDA30GND553.3 V
6V
7CLKRUN32PCI_AD2257PCI_AD1382PHY_DATA6
8PCI_INTA/CINT33PCI_AD2158PCI_AD1283GND
93.3 V
10G_RST353.3 V
11GND36PCI_AD1961PCI_AD1086PHY_DA TA3
12PCI_CLK37PCI_AD1862PCI_AD987V
133.3 V
14PCI_GNT39V
15PCI_REQ40PCI_AD1665PCI_C/BE090PHY_DATA0
16V
17PCI_PME/CSTSCHG42GND67PCI_AD692PHY_CTL1
18PCI_AD3143PCI_FRAME68PCI_AD593PHY_CTL0
19PCI_AD3044PCI_IRDY69PCI_AD494GND
203.3 V
21PCI_AD29463.3 V
22PCI_AD2847PCI_DEVSEL72PCI_AD297PHY_LREQ
23PCI_AD2748PCI_STOP73PCI_AD198PHY_LINKON
24GND49PCI_PERR74PCI_AD099PHY_LPS
25PCI_AD2650GND75GND100GND
CCP
CC
CC
CCP
CC
31PCI_AD2356PCI_AD1481PHY_DATA7
34PCI_AD2059PCI_AD1184PHY_DATA5
CC
38PCI_AD1763V
CCP
41PCI_C/BE266PCI_AD7913.3 V
45PCI_TRDY703.3 V
CC
60GND85PHY_DATA4
64PCI_AD889PHY_DATA1
71PCI_AD3963.3 V
CC
CCP
CC
803.3 V
88PHY_DATA2
95PHY_SCLK
CC
CCP
CC
CC
The terminals are grouped in tables by functionality, such as PCI system function, power supply function, etc. The
terminal numbers are also listed for convenient reference.
Table 2–2. Power Supply
TERMINAL
NAMENO.
1, 11, 24, 30,
CC
42, 50, 60, 75,
83, 94, 100
9, 13, 20, 35,
46, 55, 70, 80,
91, 96
6, 16, 39, 63,
87
IDevice ground terminals
I3.3-V power supply terminals
IPCI signaling clamp voltage power input. PCI signals are clamped per the
PCI bus clock. Provides timing for all transactions on the PCI bus. All PCI signals are sampled at rising edge
of PCLK.
Global power reset. This reset brings all of the TSB12LV23 to its default state, including those registers not
reset by RST
Interrupt signal. This output indicates interrupts from the TSB12LV23 to the host. This terminal signals an
interrupt based upon the CARDBUS
PCI or CardBus reset. When this bus reset is asserted, the TSB12LV23 places all output buffers in a high
impedance state and resets all internal registers except device power management context- and
vendor-specific bits initialized by host power on software. When asserted, the device is completely
nonfunctional.
. When asserted, the device is completely nonfunctional.
input terminal.
Table 2–4. PCI Address and Data
PCI address/data bus. These signals make up the multiplexed PCI address and data bus on the PCI interface
during the address phase of a PCI cycle, AD31–AD0 contain a 32-bit address or other destination information.
During the data phase, AD31–AD0 contain data.
PCI bus commands and byte enables. The command and byte enable signals are multiplexed on the same PCI
terminals. During the address phase of a bus cycle C/BE3
phase, this 4-bit bus is used as byte enables.
PCI parity. In all PCI bus read and write cycles, the TSB12LV23 calculates even parity across the AD and C/BE
buses. As an initiator during PCI cycles, the TSB12LV23 outputs this parity indicator with a one PCLK delay. As
a target during PCI cycles, the calculated parity is compared to the initiator’s parity indicator; a miscompare can
result in a parity error assertion (PERR
).
–C/BE0 defines the bus command. During the data
2–3
Page 12
TERMINAL
I/O
DESCRIPTION
I/O
DESCRIPTION
NAMENO.
PCI_DEVSEL47I/O
PCI_FRAME43I/O
PCI_GNT14I
PCI_IDSEL29I
PCI_IRDY44I/O
PCI_STOP48I/O
CLKRUN7I/O
PCI_PERR49I/O
PCI_PME/
CSTSCHG
PCI_REQ15O
PCI_SERR51O
PCI_TRDY45I/O
17O
Table 2–5. PCI Interface Control
PCI device select. The TSB12LV23 asserts this signal to claim a PCI cycle as the target device. As a PCI
initiator, the TSB12LV23 monitors this signal until a target responds. If no target responds before time-out
occurs, then the TSB12LV23 terminates the cycle with an initiator abort.
PCI cycle frame. This signal is driven by the initiator of a PCI bus cycle. FRAME is asserted to indicate that a
bus transaction is beginning, and data transfers continue until while this signal is asserted. When FRAME
deasserted, the PCI bus transaction is in the final data phase.
PCI bus grant. This signal is driven by the PCI bus arbiter to grant the TSB12LV23 access to the PCI bus after
the current data transaction has completed. This signal may or may not follow a PCI bus request depending
upon the PCI bus parking algorithm.
Initialization device select. IDSEL selects the TSB12L V23 during configuration space accesses. IDSEL can be
connected to 1 of the upper 24 PCI address lines on the PCI bus.
PCI initiator ready. IRDY indicates the PCI bus initiator’s ability to complete the current data phase of the
transaction. A data phase is completed upon a rising edge of PCLK where both IRDY
until which wait states are inserted.
PCI cycle stop signal. This signal is driven by a PCI target to request the initiator to stop the current PCI bus
transaction. This signal is used for target disconnects, and is commonly asserted by target devices which do
not support burst data transfers.
Clock run. This terminal provides clock control through the CLKRUN protocol. An internal pulldown resistor is
implemented on this terminal for TSB12LV22 drop-in compatibility.
PCI parity error indicator. This signal is driven by a PCI device to indicate that calculated parity does not match
PAR when enabled through the command register.
PME or card status change. This terminal indicates wake events to the host. When in a CardBus configuration,
per the CARDBUS
PCI bus request. Asserted by the TSB12LV23 to request access to the bus as an initiator. The host arbiter
asserts the GNT
PCI system error. Output pulsed from the TSB12LV23 when enabled indicating an address parity error has
occurred. The TSB12LV23 needs not be the target of the PCI cycle to assert this signal.
PCI target ready. TRDY indicates the PCI bus target’s ability to complete the current data phase of the
transaction. A data phase is completed upon a rising edge of PCLK where both IRDY
until which wait states are inserted.
sample, the CSTSCHG output is an active high.
signal when the TSB12LV23 has been granted access to the bus.
PHY_SCLK95ISystem clock. This input from the PHY provides a 49.152 MHz clock signal for data synchronization.
PHY_LREQ97OLink request. This signal is driven by the TSB12L V23 to initiate a request for the PHY to perform some service.
PHY_LINKON98I/OLinkOn wake indication. Used and defined by 1394A and 3.3-V signaling is required.
PHY_LPS99I/OLink power status. Used and defined by 1394A and 3.3-V signaling is required.
2–4
92
93
81
82
84
85
86
88
89
90
Phy-link interface control. These bidirectional signals control passage of information between the two devices.
The TSB12LV23 can only drive these terminals after the PHY has granted permission following a link request
I/O
(LREQ).
Phy-link interface data. These bidirectional signals pass data between the TSB12LV23 and the PHY device.
These terminals are driven by the TSB12LV23 on transmissions and are driven by the PHY on reception. Only
I/O
DATA1–DATA0 are valid for 100-Mbit speeds, DATA3–DATA0 are valid for 200-Mbit speeds, and
DATA7–DATA0 are valid for 400-Mbit speeds.
Page 13
Table 2–7. Miscellaneous
I/O
DESCRIPTION
TERMINAL
NAMENO.
Serial data. The TSB12LV23 determines whether a two-wire serial ROM, or no serial ROM is implemented at
reset. If a two-wire serial ROM is detected, then this terminal provides the SDA serial data signaling. This
terminal must be wired low to indicate no serial ROM is present.
Serial clock. The TSB12LV23 determines whether a two-wire, or no serial ROM is implemented at reset. If a
two-wire serial ROM is implemented, then this terminal provides the SCL serial clock signaling.
Phy-link isolation barrier mode. This terminal should be asserted when the PHY device is electrically isolated
from the TSB12LV23. This input controls bus-hold I/Os.
The CYCLEIN terminal can provide an optional external 8 kHz clock set up as a cycle timer that can be used
for synchronization with other system devices.
This terminal is sampled when G_RST is asserted, and it selects between PCI buffers and CardBus buffers.
After reset, this terminal may also function as CYCLEOUT which provides an 8 kHz cycle timer synchronization
signal.
2–5
Page 14
2–6
Page 15
3 TSB12LV23 Controller Programming Model
This section describes the internal registers used to program the TSB12LV23, including both PCI configuration
registers and OHCI registers (see Section 4). All registers are detailed in the same format: a brief description for each
register, followed by the register offset and a bit table describing the reset state for each register.
A bit description table, typically included, indicates bit field names, a detailed field description, and field access tags.
Table 3–1 describes the field access tags.
Table 3–1. Bit Field Access Tag Descriptions
ACCESS TAGNAMEMEANING
RReadField may be read by software.
WWriteField may be written by software to any value.
SSetField may be set by a write of 1. Writes of 0 have no effect.
CClearField may be cleared by a write of 1. Writes of 0 have no effect.
UUpdateField may be autonomously updated by the TSB12LV23.
A simplified block diagram of the TSB12LV23 is provided in Figure 3–1.
3–1
Page 16
PCI
Target
SM
Internal
Registers
OHCI PCI Power
Mgmt & CLKRUN
Serial
ROM
GPIOs
PCI
Host
Bus
Interface
Central
Arbiter
&
PCI
Initiator
SM
ISO Transmit
Contexts
Async Transmit
Contexts
Physical DMA
& Response
Resp
Timeout
PHY
Register
Access
& Status
Monitor
Request
Filters
General
Request Receive
Transmit
FIFO
Receive
Acknowledge
Cycle Start
Generator &
Cycle Monitor
Synthesized
Bus Reset
MISC
Interface
Link
Transmit
CRC
PHY /
Link
Interface
Link
Receive
Async Response
Receive
ISO Receive
Contexts
Receive
FIFO
Figure 3–1. TSB12LV23 Block Diagram
3–2
Page 17
3.1PCI/CardBus Configuration Registers
The TSB12LV23 is a single-function PCI device that can be configured as either a PCI or CardBus device. The
configuration header is compliant with the
the PCI configuration header that includes both the predefined portion of the configuration space and the user
definable registers. Most of the registers in this configuration have not changed from the TSB12LV22 design.
Table 3–2. PCI Configuration Register Map
Device IDVendor ID00h
StatusCommand04h
BISTHeader typeLatency timerCache line size0Ch
Subsystem IDSubsystem vendor ID2Ch
Maximum latencyMinimum grantInterrupt pinInterrupt line3Ch
Power management capabilitiesNext item pointerCapability ID44h
PM dataPMCSR_BSEPower management CSR48h
PCI miscellaneous configuration registerF0h
Subsystem ID aliasSubsystem vendor ID aliasF8h
GPIO3GPIO2ReservedFCh
PCI Local Bus Specification
REGISTER NAMEOFFSET
Class codeRevision ID08h
OHCI registers base address10h
TI extension registers base address14h
CIS base address18h
Reserved1Ch
Reserved20h
Reserved24h
CardBus CIS pointer28h
Reserved30h
ReservedCapabilities pointer34h
Reserved38h
PCI OHCI control register40h
Reserved4C–ECh
Link_Enhancements registerF4h
as a standard header. Table 3–2 illustrates
3.2Vendor ID Register
The vendor ID register contains a value allocated by the PCI SIG and identifies the manufacturer of the PCI device.
The vendor ID assigned to Texas Instruments is 104Ch.
Bit1514131211109876543210
NameVendor ID
TypeRRRRRRRRRRRRRRRR
Default0001000001001100
Register:Vendor ID
Type:Read-only
Offset:00h
Default:104Ch
3–3
Page 18
3.3Device ID Register
The device ID register contains a value assigned to the TSB12L V23 by Texas Instruments. The device identification
for the TSB12LV23 is 8019.
Bit1514131211109876543210
NameDevice ID
TypeRRRRRRRRRRRRRRRR
Default1000000000011001
Register:Device ID
Type:Read-only
Offset:02h
Default:8019h
3.4PCI Command Register
The command register provides control over the TSB12L V23 interface to the PCI bus. All bit functions adhere to the
definitions in the
15–10RSVDRReserved. Bits 15–10 return 0s when read.
9FBB_ENBRFast back-to-back enable. The TSB12LV23 does not generate fast back-to-back transactions, thus
8SERR_ENBR/WSERR enable. When this bit is set, the TSB12LV23 SERR driver is enabled. SERR can be asserted
7STEP_ENBRAddress/data stepping control. The TSB12LV23 does not support address/data stepping, thus this bit
6PERR_ENBR/WParity error enable. When this bit is set, the TSB12LV23 is enabled to drive PERR response to parity
5VGA_ENBRVGA palette snoop enable. The TSB12L V23 does not feature VGA palette snooping. This bit returns 0
4MWI_ENBR/WMemory write and invalidate enable. When this bit is set, the TSB12LV23 is enabled to generate MWI
3SPECIALRSpecial cycle enable. The TSB12L V23 function does not respond to special cycle transactions. This bit
2MASTER_ENBR/WBus master enable. When this bit is set, the TSB12LV23 is enabled to initiate cycles on the PCI bus.
1MEMORY_ENBR/WMemory response enable. Setting this bit enables the TSB12L V23 to respond to memory cycles on the
0IO_ENBRI/O space enable. The TSB12L V23 does not implement any I/O mapped functionality; thus, this bit re-
this bit returns 0 when read.
after detecting an address parity error on the PCI bus.
is hardwired to 0.
errors through the PERR
when read.
PCI bus commands. If this bit is reset, then the TSB12LV23 generates memory write commands
instead.
returns 0 when read.
PCI bus. This bit must be set to access OHCI registers.
turns 0 when read.
signal.
3–4
Page 19
3.5PCI Status Register
The status register provides status over the TSB12LV23 interface to the PCI bus. All bit functions adhere to the
definitions in the
Bit1514131211109876543210
NamePCI status
TypeRCURCURCURCURCURRRCURRRRRRRR
Default0000001000010000
Register:PCI status
Type:Read/Clear/Update
Offset:06h
Default:0210h
BITFIELD NAMETYPEDESCRIPTION
15PAR_ERRRCUDetected parity error. This bit is set when a parity error is detected, either address or data parity errors.
14SYS_ERRRCUSignaled system error. This bit is set when SERR is enabled and the TSB12LV23 has signaled a
13MABORTRCUReceived master abort. This bit is set when a cycle initiated by the TSB12LV23 on the PCI bus has been
12TABORT_RECRCUReceived target abort. This bit is set when a cycle initiated by the TSB12LV23 on the PCI bus was
11TABORT_SIGRCUSignaled target abort. This bit is set by the TSB12LV23 when it terminates a transaction on the PCI bus
10–9PCI_SPEEDRDEVSEL timing. Bits 10–9 encode the timing of DEVSEL and are hardwired to 01b indicating that the
8DATAPARRCUData parity error detected. This bit is set when the following conditions have been met:
7FBB_CAPRFast back-to-back capable. The TSB12L V23 cannot accept fast back-to-back transactions; thus, this
6UDFRUser definable features (UDF) supported. The TSB12L V23 does not support the UDF; thus, this bit is
566MHZR66 MHz capable. The TSB12L V23 operates at a maximum PCLK frequency of 33 MHz; therefore, this
4CAPLISTRCapabilities list. This bit returns 1 when read, indicating that capabilities additional to standard PCI are
3–0RSVDRReserved. Bits 3–0 return 0s when read.
PCI Local Bus Specification
Table 3–4. PCI Status Register Description
system error to the host.
terminated by a master abort.
terminated by a target abort.
with a target abort.
TSB12L V23 asserts this signal at a medium speed on nonconfiguration cycle accesses.
a. PERR
b. The TSB12LV23 was the bus master during the data parity error
c. The parity error response bit is set in the command register (see Section 3.4)
bit is hardwired to 0.
hardwired to 0.
bit is hardwired to 0.
implemented. The linked list of PCI power management capabilities is implemented in this function.
was asserted by any PCI device including the TSB12LV23
, as seen in the following bit descriptions.
3–5
Page 20
3.6Class Code and Revision ID Register
The class code and revision ID register categorizes the TSB12L V23 as a serial bus controller (0Ch), controlling an
IEEE1394 bus (00h), with an OHCI programming model (10h). Furthermore, the TI chip revision is indicated in the
lower byte.
Bit31302928272625242322212019181716
NameClass code and revision ID
TypeRRRRRRRRRRRRRRRR
Default0000110000000000
Bit1514131211109876543210
NameClass code and revision ID
TypeRRRRRRRRRRRRRRRR
Default0001000000000000
Register:Class code and revision ID
Type:Read-only
Offset:08h
Default:0C00 1000h
Table 3–5. Class Code and Revision ID Register Description
BITFIELD NAMETYPEDESCRIPTION
31–24BASECLASSRBase class. This field returns 0Ch when read, which broadly classifies the function as a serial bus
23–16SUBCLASSRSubclass. This field returns 00h when read, which specifically classifies the function as controlling an
15–8PGMIFRProgramming interface. This field returns 10h when read, indicating that the programming model is
7–0CHIPREVRSilicon revision. This field returns 00h when read, indicating the silicon revision of the TSB12LV23.
controller.
IEEE1394 serial bus.
compliant with the
1394 Open Host Controller Interface Specification
.
3.7Latency Timer and Class Cache Line Size Register
The latency timer and class cache line size register is programmed by host BIOS to indicate system cache line size
and the latency timer associated with the TSB12LV23.
Bit1514131211109876543210
NameLatency timer and class cache line size
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Register:Latency timer and class cache line size
Type:Read/Write
Offset:0Ch
Default:0000h
Table 3–6. Latency T imer and Class Cache Line Size Register Description
BITFIELD NAMETYPEDESCRIPTION
15–8LATENCY_TIMERR/WPCI latency timer. The value in this register specifies the latency timer for the TSB12LV23, in units of
7–0CACHELINE_SZR/WCache line size. This value is used by the TSB12L V23 during memory write and invalidate, memory
PCI clock cycles. When the TSB12LV23 is a PCI bus initiator and asserts FRAME
begins counting from zero. If the latency timer expires before the TSB12LV23 transaction has
terminated, then the TSB12LV23 terminates the transaction when its GNT
read line, and memory read multiple transactions.
, the latency timer
is deasserted.
3–6
Page 21
3.8Header Type and BIST Register
The header type and BIST register indicates the TSB12LV23 PCI header type, and indicates no built-in self test.
Bit1514131211109876543210
NameHeader type and BIST
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:Header type and BIST
Type:Read-only
Offset:0Eh
Default:0000h
Table 3–7. Header Type and BIST Register Description
BITFIELD NAMETYPEDESCRIPTION
15–8BISTRBuilt-in self test. The TSB12L V23 does not include a built-in self test; thus, this field returns 00h when
7–0HEADER_TYPERPCI header type. The TSB12LV23 includes the standard PCI header , and this is communicated by re-
read.
turning 00h when this field is read.
3.9OHCI Base Address Register
The OHCI base address register is programmed with a base address referencing the memory-mapped OHCI control.
When BIOS writes all 1s to this register, the value read back is FFFF F800h, indicating that at least 2K bytes of memory
address space are required for the OHCI registers.
Register:OHCI base address
Type:Read/Write
Offset:10h
Default:0000 0000h
Table 3–8. OHCI Base Address Register Description
BITFIELD NAMETYPEDESCRIPTION
31–1 1OHCIREG_PTRR/WOHCI register pointer. Specifies the upper 21 bits of the 32-bit OHCI base address register.
10–4OHCI_SZROHCI register size. This field returns 0s when read, indicating that the OHCI registers require a
2-Kbyte region of memory.
3OHCI_PFROHCI register prefetch. This bit returns 0 when read, indicating that the OHCI registers are
nonprefetchable.
2–1OHCI_MEMTYPEROHCI memory type. This field returns 0s when read, indicating that the OHCI base address register is
32 bits wide and mapping can be done anywhere in the 32-bit memory space.
0OHCI_MEMROHCI memory indicator. This bit returns 0 when read, indicating that the OHCI registers are mapped
into system memory space.
3–7
Page 22
3.10 TI Extension Base Address Register
The TI extension base address register is programmed with a base address referencing the memory-mapped TI
extension registers. Refer to the
Bit31302928272625242322212019181716
NameTI extension base address
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NameTI extension base address
TypeR/WR/WR/WR/WR/WRRRRRRRRRRR
Default0000000000000000
OHCI base address register
(see Section 3.9) for bit field details.
Register:TI extension base address
Type:Read/Write
Offset:14h
Default:0000 0000h
3.11 CIS Base Address Register
If CARDBUS is sampled high on a PCI reset, then this 32-bit register returns 0s when read. If CARDBUS is sampled
low, then this register is to be programmed with a base address referencing the memory mapped CIS. This register
must be programmed with a nonzero value before the CIS may be accessed.
Bit31302928272625242322212019181716
NameCIS base address
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NameCIS base address
TypeR/WR/WR/WR/WR/WRRRRRRRRRRR
Default0000000000000000
Register:CIS base address
Type:Read/Write
Offset:18h
Default:0000 0000h
Table 3–9. CIS Base Address Register Description
BITFIELD NAMETYPEDESCRIPTION
31–1 1CIS_BASER/WCIS base address. Specifies the upper 21 bits of the 32-bit CIS base address. If the CARDBUS input is
10–4CIS_SZRCIS address space size. This field returns 0s when read, indicating that the CIS space requires a
3CIS_PFRCIS prefetch. This bit returns 0 when read, indicating that the CIS is nonprefetchable. Furthermore, the
2–1CIS_MEMTYPERCIS memory type. This field returns 0s when read, indicating that the CIS base address register is
0CIS_MEMRCIS memory indicator. This bit returns 0 when read, indicating that the CIS is mapped into system
3–8
sampled high on a PCI reset, then this field is read-only , returning 0s when read.
2-Kbyte region of memory.
CIS is a byte-accessible address space, and double-word or 16-bit word access yields indeterminate
results.
32 bits wide and mapping can be done anywhere in the 32-bit memory space.
memory space.
Page 23
3.12 CardBus CIS Pointer Register
The CARDBUS input to the TSB12LV23 is sampled at PCI reset to determine the TSB12LV23 application. If
CARDBUS
this register is the CardBus card information structure pointer.
from the serial ROM field CIS_Offset (7–3). This implementation allows the TSB12LV23 to produce
serial ROM addresses equal to the lower PCI address byte to acquire data from the serial ROM.
sampled asserted during a PCI reset. If CARDBUS
returns 000b when read. Thus, bit 1 is implemented as the logical inverse of the CARDBUS
is sampled high during a PCI reset, then this field
input.
3.13 PCI Subsystem Identification Register
The PCI subsystem identification register is used for system and option card identification purposes. This register
can be initialized from the serial EEPROM or programmed via the subsystem ID and subsystem vendor ID alias
registers at offset 0XFC.
31–16OHCI_SSIDRUSubsystem device ID. This field indicates the subsystem device ID.
15–0OHCI_SSVIDRUSubsystem vendor ID. This field indicates the subsystem vendor ID.
3–9
Page 24
3.14 PCI Power Management Capabilities Pointer Register
The PCI power management capabilities pointer register provides a pointer into the PCI configuration header where
the PCI power management register block resides. The TSB12LV23 configuration header double-words at offsets
44h and 48h provide the power management registers. This register is read-only and returns 44h when read.
Bit76543210
NamePCI power management capabilities pointer
TypeRRRRRRRR
Default01000100
Register:PCI power management capabilities pointer
Type:Read-only
Offset:34h
Default:44h
3.15 Interrupt Line and Pin Registers
The interrupt line and pin register is used to communicate interrupt line routing information.
Bit1514131211109876543210
NameInterrupt line and pin
TypeRRRRRRRRR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000100000000
Register:Interrupt line and pin
Type:Read/Write
Offset:3Ch
Default:0100h
Table 3–12. Interrupt Line and Pin Registers Description
BITFIELD NAMETYPEDESCRIPTION
15–8INTR_PINRInterrupt pin register. This register returns 01h when read, indicating that the TSB12LV23 PCI function
7–0INTR_LINER/WInterrupt line register. This register is programmed by the system and indicates to software to which
signals interrupts on the INTA
interrupt line the TSB12LV23 INTA
pin.
is connected.
3–10
Page 25
3.16 MIN_GNT and MAX_LAT Register
The MIN_GNT and MAX_LA T register is used to communicate to the system the desired setting of the latency timer
register (see Section 3.7). If a serial ROM is detected, then the contents of this register are loaded through the serial
ROM interface after a PCI reset. If no serial ROM is detected, then this register returns a default value that
corresponds to the MIN_GNT = 2, MAX_LAT = 4.
Bit1514131211109876543210
NameMIN_GNT and MAX_LAT
TypeRURURURURURURURURURURURURURURURU
Default0000001000000010
Register:MIN_GNT and MAX_LAT
Type:Read/Update
Offset:3Eh
Default:0202h
Table 3–13. MIN_GNT and MAX_LAT Register Description
BITFIELD NAMETYPEDESCRIPTION
15–8MAX_LATRUMaximum latency. The contents of this register may be used by host BIOS to assign an arbitration
7–0MIN_GNTRUMinimum grant. The contents of this register may be used by host BIOS to assign a latency timer register
priority-level to the TSB12LV23. The default for this register indicates that the TSB12LV23 may need to
access the PCI bus as often as every 0.25 µs; thus, an extremely high priority level is requested. The
contents of this field may also be loaded through the serial ROM.
value to the TSB12LV23. The default for this register indicates that the TSB12LV23 may need to sustain
burst transfers for nearly 64 µs; thus, requesting a large value be programmed in the TSB12LV23 latency
timer register (see Section 3.7).
3.17 PCI OHCI Control Register
The PCI OHCI control register is defined by the
bit for big endian PCI support.
Bit31302928272625242322212019181716
NamePCI OHCI control
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Bit1514131211109876543210
NamePCI OHCI control
TypeRRRRRRRRRRRRRRRR/W
Default0000000000000000
Register:PCI OHCI control
Type:Read/Write
Offset:40h
Default:0000 0000h
Table 3–14. PCI OHCI Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31–1RSVDRReserved. Bits 31–1 return 0s when read.
0GLOBAL_SWAPR/WWhen this bit is set, all quadlets read from and written to the PCI interface are byte swapped (big
endian).
1394 Open Host Controller Interface Specification
and provides a
3–11
Page 26
3.18 Capability ID and Next Item Pointer Registers
The capability ID and next item pointer register identifies the linked list capability item and provides a pointer to the
next capability item.
Bit1514131211109876543210
NameCapability ID and next item pointer
TypeRRRRRRRRRRRRRRRR
Default0000000000000001
Register:Capability ID and next item pointer
Type:Read-only
Offset:44h
Default:0001h
Table 3–15. Capability ID and Next Item Pointer Registers Description
BITFIELD NAMETYPEDESCRIPTION
15–8NEXT_ITEMRNext item pointer. The TSB12LV23 supports only one additional capability that is communicated to
7–0CAPABILITY_IDRCapability identification. This field returns 01h when read, which is the unique ID assigned by the PCI
the system through the extended capabilities list; thus, this field returns 00h when read.
SIG for PCI power management capability.
3–12
Page 27
3.19 Power Management Capabilities Register
The power management capabilities register indicates the capabilities of the TSB12LV23 related to PCI power
management.
Table 3–16. Power Management Capabilities Register Description
BITFIELD NAMETYPEDESCRIPTION
15PME_D3COLDRUPME support from D3
14–1 1PME_SUPPORTRUPME support. This 4-bit field indicates the power states from which the TSB12LV23 may assert PME .
10D1_SUPPORTRUD2 support. This bit returns a 1 when read, indicating that the TSB12LV23 does not support the D2
9D1_SUPPORTRD1 support. This bit returns a 0 when read, indicating that the TSB12LV23 does not support the D1
8DYN_DATARDynamic data support. This bit returns a 0 when read, indicating that the TSB12LV23 does not report
7–6RSVDRReserved. Bits 7–6 return 0s when read.
5DSIRDevice specific initialization. This bit returns 0 when read, indicating that the TSB12LV23 does not
4AUX_PWRRAuxiliary power source. Since the TSB12L V23 does not support PME generation in the D3
3PME_CLKRPME clock. This bit returns 0 when read, indicating that no host bus clock is required for the
2–0PM_VERSIONRPower management version. This field returns 001b when read, indicating that the TSB12LV23 is
D3
configured by host software using the PCI miscellaneous configuration register (see Section 3.22).
This field returns a value of 1100b by default, indicating that PME
D2 power states. Bit 13 may be modified by host software using the PCI miscellaneous configuration
register (see Section 3.22).
power state.
power state.
dynamic power consumption data.
require special initialization beyond the standard PCI configuration header before a generic class
driver is able to use it.
state, this bit returns 0 when read.
TSB12L V23 to generate PME
compatible with the registers described in the
. This bit state is dependent upon the TSB12LV23 V
COLD
. When this bit is set, the TSB12LV23 generates a PME wake event from
COLD
.
PCI Bus Power Management Interface Specification
implementation and may be
AUX
may be asserted from the D3
COLD
HOT
device
and
.
3–13
Page 28
3.20 Power Management Control and Status Register
The power management control and status register implements the control and status of the PCI power management
function. This register is not affected by the internally generated reset caused by the transition from the D3
state.
Bit1514131211109876543210
NamePower management control and status
TypeRCRRRRRRR/WRRRRRRR/WR/W
Default0000000000000000
Register:Power management control and status
Type:Read/Write/Clear
Offset:48h
Default:0000h
Table 3–17. Power Management Control and Status Register Description
BITFIELD NAMETYPEDESCRIPTION
15PME_STSRCThis bit is set when the TSB12LV23 would normally be asserting the PME signal, independent of the
state of the PME_ENB bit. This bit is cleared by a write back of 1, and this also clears the PME
driven by the TSB12LV23. Writing a 0 to this bit has no effect.
14–9DYN_CTRLRDynamic data control. This field returns 0s when read since the TSB12LV23 does not report dynamic
data.
8PME_ENBR/WPME enable. This bit enables the function to assert PME. If this bit is cleared, then assertion of PME is
disabled.
7–5RSVDRReserved. Bits 7–5 return 0s when read.
4DYN_DATARDynamic data. This bit returns 0 when read since the TSB12LV23 does not report dynamic data.
3–2RSVDRReserved. Bits 3–2 return 0s when read.
1–0PWR_STATER/WPower state. This 2-bit field is used to set the TSB12LV23 device power state and is encoded as
follows:
00 = Current power state is D0
01 = Current power state is D1
10 = Current power state is D2
11 = Current power state is D3
HOT
to D0
signal
3.21 Power Management Extension Registers
The power management extension register provides extended power management features not applicable to the
TSB12LV23, thus it is read-only and returns 0 when read.
31–16RSVDRReserved. Bits 31–16 return 0s when read.
15PME_ D3COLDR/WPME support from D3
from power management capabilities.
14RSVDRReserved. Bit 14 returns 0 when read.
13PME_SUPPORT_D2R/WPME support. This bit is used to program the corresponding read-only value read from power
management capabilities. If wake from the D2 power state implemented in the TSB12L V23 is not
desired, then this bit may be cleared to indicate to power management software that wake-up from
D2 is not supported.
12–1 1RSVDRReserved. Bits 12–11 return 0s when read.
10D2_SUPPORTR/WD2 support. This bit is used to program the corresponding read-only value read from power
management capabilities. If the D2 power state implemented in the TSB12LV23 is not desired,
then this bit may be cleared to indicate to power management software that D2 is not supported.
9–5RSVDRReserved. Bits 9–5 return 0s when read.
4DIS_TGT_ABTR/WThis bit defaults to 0, which provides OHCI-Lynx compatible target abort signaling. When this bit is
set, it enables the no-target-abort mode, in which the TSB12LV23 returns indeterminate data
instead of signaling target abort.
3GP2IICR/WWhen this bit is set, the GPIO3 and GPIO2 signals are routed to SDA and SCL. When this bit is set,
the GPIO3 and GPIO2 terminals are placed in a high impedance state.
2DISABLE_SCLKGATER/WWhen this bit is set, the internal SCLK runs identically with the chip input.
1DISABLE_PCIGATER/WWhen this bit is set, the internal PCI clock runs identically with the chip input.
0KEEP_PCLKR/WWhen this bit is set, the PCI clock is always kept running through the CLKRUN protocol. When this
bit is cleared, the PCI clock may be stopped using CLKRUN
. This bit is used to program the corresponding read-only value read
COLD
.
3–15
Page 30
3.23 Link Enhancement Control Register
The link enhancement control register implements TI proprietary bits that are initialized by software or by a serial
EEPROM, if present. After these bits are set, their functionality is enabled only if bit 22 (aPhyEnhanceEnable) in the
host controller control register (see Section 4.16) is set.
Bit31302928272625242322212019181716
NameLink enhancement control
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Bit1514131211109876543210
NameLink enhancement control
TypeRRR/WR/WRRRRR/WRRRRR/WR/WR
Default0001000000000000
Register:Link enhancement control
Type:Read/Write
Offset:F4h
Default:0000 1000h
Table 3–20. Link Enhancement Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31–14RSVDRReserved. Bits 31–14 return 0s when read.
13–12atx_threshR/WThis field sets the initial AT threshold value, which is used until the AT FIFO is underrun. When the
11–8RSVDRReserved. Bits 11–8 return 0s when read.
7enab_unfairR/WEnable asynchronous priority requests. OHCI-Lynx compatible.
6RSVDRThis bit is not assigned in the TSB12LV23 follow-on products since this bit location loaded by the serial
5–3RSVDRReserved. Bits 5–3 return 0s when read.
2enab_insert_idleR/WEnable insert idle. OHCI-Lynx compatible
1enab_accelR/WEnable acceleration enhancements. OHCI-Lynx compatible.
0RSVDRReserved. Bit 0 returns 0 when read.
TSB12L V23 retries the packet, it uses a 2-Kbyte threshold resulting in a store-and-forward operation.
ROM from the Enhancements field corresponds to bit 23 (programPhyEnable) in the host controller
control register (see Section 4.16).
3–16
Page 31
3.24 Subsystem Access Register
Write access to the subsystem access register updates the subsystem identification registers identically to
OHCI-Lynx. The system ID value written to this register may also be read back from this register.
31–16SUBDEV_IDR/WSubsystem device ID. This field indicates the subsystem device ID.
15–0SUBVEN_IDR/WSubsystem vendor ID. This field indicates the subsystem vendor ID.
3–17
Page 32
3.25 GPIO Control Register
The GPIO control register has the control and status bits for the GPIO2 and GPIO3 ports.
Bit31302928272625242322212019181716
NameGPIO control
TypeR/WRR/WR/WRRRRWUR/WRR/WR/WRRRRWU
Default0000000000000000
Bit1514131211109876543210
NameGPIO control
TypeRRRRRRRRRRRRRRRR
Default0001000000010000
Register:GPIO control
Type:Read/Write/Update
Offset:FCh
Default:0000 1010h
Table 3–22. General-Purpose Input/Output Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31INT_3ENR/WWhen this bit is set, a TSB12LV23 GPInterrupt event occurs on a level change of the GPIO3 input. This
30RSVDRReserved. Bit 30 returns 0 when read.
29GPIO_INV3R/WGPIO3 polarity invert. When this bit is set, the polarity of GPIO3 is inverted.
28GPIO_ENB3R/WGPIO3 enable control. When this bit is set, the output is enabled. Otherwise, the output is high
27–25RSVDRReserved. Bits 27–25 return 0s when read.
24GPIO_DA TA3RWUGPIO3 data. Reads from this bit return the logical value of the input to GPIO3. Writes to this bit update
23INT_2ENR/WWhen this bit is set, a TSB12LV23 GPInterrupt event occurs on a level change of the GPIO3 input. This
22RSVDRReserved. Bit 22 returns 0 when read.
21GPIO_INV2R/WGPIO2 polarity invert. When this bit is set, the polarity of GPIO2 is inverted.
20GPIO_ENB2R/WGPIO2 enable control. When this bit is set, the output is enabled. Otherwise, the output is high
19–17RSVDRReserved. Bits 19–17 return 0s when read.
16GPIO_DA TA2RWUGPIO2 data. Reads from this bit return the logical value of the input to GPIO2. Writes to this bit update
15–0RSVDRReserved. Bits 15–0 return 0s when read.
event may generate an interrupt, with mask and event status reported through the OHCI interrupt mask
(see Section 4.22) and interrupt event (see Section 4.21) registers.
impedance.
the value to drive to GPIO3 when output is enabled.
event may generate an interrupt, with mask and event status reported through the OHCI interrupt mask
(see Section 4.22) and interrupt event (see Section 4.21) registers.
impedance.
the value to drive to GPIO2 when the output is enabled.
3–18
Page 33
4 OHCI Registers
Host controller control
The OHCI registers defined by the
1394 Open Host Controller Interface Specification
are memory mapped into a
2-Kbyte region of memory pointed to by the OHCI base address register at offset 10h in PCI configuration space.
These registers are the primary interface for controlling the TSB12LV23 IEEE1394 link function.
This section provides the register interface and bit descriptions. There are several set and clear register pairs in this
programming model, which are implemented to solve various issues with typical read-modify-write control registers.
There are two addresses for a set/clear register: RegisterSet and RegisterClear. Refer to Table 4–1 for an illustration.
A 1 bit written to RegisterSet causes the corresponding bit in the set/clear register to be set, while a 0 bit leaves the
corresponding bit unaffected. A 1 bit written to RegisterClear causes the corresponding bit in the set/clear register
to be reset, while a 0 bit leaves the corresponding bit in the set/clear register unaffected.
Typically, a read from either RegisterSet or RegisterClear returns the contents of the set or clear register. However,
sometimes reading the RegisterClear provides a masked version of the set or clear register. The interrupt event
register is an example of this behavior.
Table 4–1. OHCI Register Map
DMA CONTEXTREGISTER NAMEABBREVIATIONOFFSET
—OHCI versionVersion00h
Global unique ID ROMGUID_ROM04h
Asynchronous transmit retriesATRetries08h
CSR dataCSRData0Ch
CSR compare dataCSRCompareData10h
CSR controlCSRControl14h
Configuration ROM headerConfigROMhdr18h
Bus identificationBusID1Ch
Bus optionsBusOptions20h
Global unique ID highGUIDHi24h
Global unique ID lowGUIDLo28h
PCI subsystem identificationSSID2Ch
Reserved—30h
Configuration ROM mapConfigROMmap34h
Posted write address lowPostedWriteAddressLo38h
Posted write address highPostedWriteAddressHi3Ch
Vendor identificationVendorID40h
Capability ID and next item pointerCAP_ID44h
Power management capabilitiesPM_CAP46h
Power management control and statusPMCSR48h
Power management extensionsPM_Ext4Ah
Reserved—4Ch
HCControlSet50h
HCControlClr54h
Reserved—58h
Reserved—5Ch
4–1
Page 34
Table 4–1. OHCI Register Map (Continued)
Isochronous receive channel mask high
Isochronous receive channel mask lo
Interrupt event
Interrupt mask
Isochronous transmit interrupt event
Isochronous transmit interrupt mask
Isochronous receive interrupt event
Isochronous receive interrupt mask
Link control
Asynchronous request filter high
Asynchronous request filter lo
Physical request filter high
Physical request filter lo
DMA CONTEXTREGISTER NAMEABBREVIATIONOFFSET
Self IDReserved—60h
Self ID bufferSelfIDBuffer64h
Self ID countSelfIDCount68h
Reserved—6Ch
This register indicates the OHCI version support, and whether or not the serial ROM is present.
Bit31302928272625242322212019181716
NameOHCI version
TypeRRRRRRRRRRRRRRRR
Default0000000X00000001
Bit1514131211109876543210
NameOHCI version
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:OHCI version
Type:Read-only
Offset:00h
Default:0X01 0000h
Table 4–2. OHCI Version Register Description
BITFIELD NAMETYPEDESCRIPTION
31–25RSVDRReserved. Bits 31–25 return 0s when read.
24GUID_ROMRThe TSB12LV23 sets this bit if the serial ROM is detected. If the serial ROM is present, then the
23–16versionRMajor version of the OHCI. The TSB12L V23 is compliant with the
15–8RSVDRReserved. Bits 15–8 return 0s when read.
7–0revisionRMinor version of the OHCI. The TSB12LV23 is compliant with the
Bus_Info_Block is automatically loaded on hardware reset.
Specification
Specification
; thus, this field reads 01h.
; thus, this field reads 00h.
1394 Open Host Controller Interface
1394 Open Host Controller Interface
4–4
Page 37
4.2GUID ROM Register
The GUID ROM register is used to access the serial ROM, and is only applicable if bit 24 (GUID_ROM) in the OHCI
version register (see Section 4.1) is set.
Bit31302928272625242322212019181716
NameGUID ROM
TypeRSURRRRRRSURRURURURURURURURU
Default00000000XXXXXXXX
Bit1514131211109876543210
NameGUID ROM
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:GUID ROM
Type:Read/Set/Update
Offset:04h
Default:00XX 0000h
Table 4–3. GUID ROM Register Description
BITFIELD NAMETYPEDESCRIPTION
31addrResetRSUSoftware sets this bit to reset the GUID ROM address to 0. When the TSB12LV23 completes the reset,
30–26RSVDRReserved. Bits 30–26 return 0s when read.
25rdStartRSUA read of the currently addressed byte is started when this bit is set. This bit is automatically cleared
24RSVDRReserved. Bit 24 returns 0 when read.
23–16rdDataRUThis field represents the data read from the GUID ROM.
15–0RSVDRReserved. Bits 15–0 return 0s when read.
it clears this bit. The TSB12LV23 does not automatically fill bits 23–16 (rdData field) with the 0th byte.
when the TSB12LV23 completes the read of the currently addressed GUID ROM byte.
4–5
Page 38
4.3Asynchronous Transmit Retries Register
The asynchronous transmit retries register indicates the number of times the TSB12LV23 attempts a retry for
asynchronous DMA request transmit and for asynchronous physical and DMA response transmit.
31–29secondLimitRThe second limit field returns 0s when read, since outbound dual-phase retry is not implemented.
28–16cycleLimitRThe cycle limit field returns 0s when read, since outbound dual-phase retry is not implemented.
15–12RSVDRReserved. Bits 15–12 return 0s when read.
11–8maxPhysRespRetriesR/WThis field tells the physical response unit how many times to attempt to retry the transmit operation
7–4maxATRespRetriesR/WThis field tells the asynchronous transmit response unit how many times to attempt to retry the
3–0maxATReqRetriesR/WThis field tells the asynchronous transmit DMA request unit how many times to attempt to retry the
for the response packet when a busy acknowledge or ack_data_error is received from the target
node.
transmit operation for the response packet when a busy acknowledge or ack_data_error is received from the target node.
transmit operation for the response packet when a busy acknowledge or ack_data_error is received from the target node.
4.4CSR Data Register
The CSR data register is used to access the bus management CSR registers from the host through compare-swap
operations. This register contains the data to be stored in a CSR if the compare is successful.
Bit31302928272625242322212019181716
NameCSR data
TypeRRRRRRRRRRRRRRRR
DefaultXXXXXXXXXXXXXXXX
Bit1514131211109876543210
NameCSR data
TypeRRRRRRRRRRRRRRRR
DefaultXXXXXXXXXXXXXXXX
Register:CSR data
Type:Read-only
Offset:0Ch
Default:XXXX XXXXh
4–6
Page 39
4.5CSR Compare Register
The CSR compare register is used to access the bus management CSR registers from the host through
compare-swap operations. This register contains the data to be compared with the existing value of the CSR
resource.
The CSR control register is used to access the bus management CSR registers from the host through compare-swap
operations. This register is used to control the compare-swap operation and to select the CSR resource.
Bit31302928272625242322212019181716
NameCSR control
TypeRURRRRRRRRRRRRRRR
Default1000000000000000
Bit1514131211109876543210
NameCSR control
TypeRRRRRRRRRRRRRRR/WR/W
Default00000000000000XX
Register:CSR control
Type:Read/Write/Update
Offset:14h
Default:8000 000Xh
Table 4–5. CSR Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31csrDoneRUThis bit is set by the TSB12LV23 when a compare-swap operation is complete. It is reset whenever this
register is written.
30–2RSVDRReserved. Bits 30–2 return 0s when read.
1–0csrSelR/WThis field selects the CSR resource as follows:
The configuration ROM header register externally maps to the first quadlet of the 1394 configuration ROM, offset
48’hFFFF_F000_0400.
Bit31302928272625242322212019181716
NameConfiguration ROM header
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NameConfiguration ROM header
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
DefaultXXXXXXXXXXXXXXXX
Register:Configuration ROM header
Type:Read/Write
Offset:18h
Default:0000 XXXXh
Table 4–6. Configuration ROM Header Register Description
BITFIELD NAMETYPEDESCRIPTION
31–24info_lengthR/WIEEE1394 bus management field. Must be valid when bit 17 (linkEnable) of the host controller control
23–16crc_lengthR/WIEEE1394 bus management field. Must be valid when bit 17 (linkEnable) of the host controller control
15–0rom_crc_valueR/WIEEE1394 bus management field. Must be valid at any time bit 17 (linkEnable) of the host controller
register (see Section 4.16) is set.
register (see Section 4.16) is set.
control register (see Section 4.16) is set. The reset value is undefined if no serial ROM is present. If a
serial ROM is present, then this field is loaded from the serial ROM.
4.8Bus Identification Register
The bus identification register externally maps to the first quadlet in the Bus_Info_Block, and contains the constant
32’h31333934, which is the ASCII value of 1394.
31irmcR/WIsochronous resource manager capable. IEEE1394 bus management field. Must be valid when bit 17
30cmcR/WCycle master capable. IEEE1394 bus management field. Must be valid when bit 17 (linkEnable) of the
29iscR/WIsochronous support capable. IEEE1394 bus management field. Must be valid when bit 17 (linkEnable)
28bmcR/WBus manager capable. IEEE1394 bus management field. Must be valid when bit 17 (linkEnable) of the
27pmcR/WIEEE1394 bus management field. Must be valid when bit 17 (linkEnable) of the host controller control
26–24RSVDRReserved. Bits 26–24 return 0s when read.
23–16cyc_clk_accR/WCycle master clock accuracy. (accuracy in parts per million) IEEE1394 bus management field. Must be
15–12max_recR/WIEEE 1394 bus management field. Hardware initializes this field to indicate the maximum number of
11–8RSVDRReserved. Bits 11–8 return 0s when read.
7–6gR/WGeneration counter. This field is incremented if any portion of the configuration ROM has been
5–3RSVDRReserved. Bits 5–3 return 0s when read.
2–0Lnk_spdRLink speed. This field returns 010, indicating that the link speeds of 100, 200, and 400 Mbits/s are
(linkEnable) of the host controller control register (see Section 4.16) is set.
host controller control register (see Section 4.16) is set.
of the host controller control register (see Section 4.16) is set.
host controller control register (see Section 4.16) is set.
register (see Section 4.16) is set.
valid when bit 17 (linkEnable) of the host controller control register (see Section 4.16) is set.
bytes in a block request packet that is supported by the implementation. This value, max_rec_bytes
must be 512 greater, and is calculated by 2^(max_rec + 1). Software may change this field; however ,
this field must be valid at any time bit 17 (linkEnable) of the host controller control register (see
Section 4.16) is set. A received block write request packet with a length greater than max_rec_bytes
may generate an ack_type_error. This field is not affected by a soft reset, and defaults to value
indicating 2048 bytes on a hard reset.
incremented since the prior bus reset.
supported.
4–9
Page 42
4.10 GUID High Register
The GUID high register represents the upper quadlet in a 64-bit global unique ID (GUID) which maps to the third
quadlet in the Bus_Info_Block. This register contains node_vendor_ID and chip_ID_hi fields. This register initializes
to 0s on a hardware reset, which is an illegal GUID value. If a serial ROM is detected, then the contents of this register
are loaded through the serial ROM interface after a PCI reset. At that point, the contents of this register cannot be
changed. If no serial ROM is detected, then the contents of this register are loaded by the BIOS after a PCI reset.
At that point, the contents of this register cannot be changed.
Bit31302928272625242322212019181716
NameGUID high
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Bit1514131211109876543210
NameGUID high
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:GUID high
Type:Read-only
Offset:24h
Default:0000 0000h
4.11 GUID Low Register
The GUID low register represents the lower quadlet in a 64-bit global unique ID (GUID) which maps to chip_ID_lo
in the Bus_Info_Block. This register initializes to 0s on a hardware reset and behaves identical to the GUID high
register (see Section 4.10).
The configuration ROM mapping register contains the start address within system memory that maps to the start
address of 1394 configuration ROM for this node.
Bit31302928272625242322212019181716
NameConfiguration ROM mapping
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NameConfiguration ROM mapping
TypeR/WR/WR/WR/WR/WR/WRRRRRRRRRR
Default0000000000000000
Register:Configuration ROM mapping
Type:Read/Write
Offset:34h
Default:0000 0000h
Table 4–8. Configuration ROM Mapping Register Description
BITFIELD NAMETYPEDESCRIPTION
31–10configROMaddrR/WIf a quadlet read request to 1394 offset 48’hFFFF_F000_0400 through offset 48’hFFFF_F000_07FF is
9–0RSVDRReserved. Bits 9–0 return 0s when read.
received, then the low order 10 bits of the offset are added to this register to determine the host memory
address of the read request.
4.13 Posted Write Address Low Register
The posted write address low register is used to communicate error information if a write request is posted and an
error occurs while writing the posted data packet.
31–0offsetLoRUThe lower 32 bits of the 1394 destination offset of the write request that failed.
4–11
Page 44
4.14 Posted Write Address High Register
The posted write address high register is used to communicate error information if a write request is posted and an
error occurs while writing the posted data packet.
Bit31302928272625242322212019181716
NamePosted write address high
TypeRURURURURURURURURURURURURURURURU
DefaultXXXXXXXXXXXXXXXX
Bit1514131211109876543210
NamePosted write address high
TypeRURURURURURURURURURURURURURURURU
DefaultXXXXXXXXXXXXXXXX
Register:Posted write address high
Type:Read/Update
Offset:3Ch
Default:XXXX XXXXh
Table 4–10. Posted Write Address High Register Description
BITFIELD NAMETYPEDESCRIPTION
31–16sourceIDRUThis field is the bus and node number of the node that issued the write request that failed.
15–0offsetHiRUThe upper 16 bits of the 1394 destination offset of the write request that failed.
4.15 Vendor ID Register
The vendor ID register holds the company ID of an organization that specifies any vendor-unique registers. The
TSB12LV23 does not implement Texas Instruments unique behavior with regards to OHCI. Thus, this register is
read-only and returns 0s when read.
Bit31302928272625242322212019181716
NameVendor ID
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Bit1514131211109876543210
NameVendor ID
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:Vendor ID
Type:Read-only
Offset:40h
Default:0000 0000h
4–12
Page 45
4.16 Host Controller Control Register
The host controller control set/clear register pair provides flags for controlling the TSB12LV23.
Bit31302928272625242322212019181716
NameHost controller control
TypeRRSCRRRRRRRCRSCRRRSCRSCRSCRSCU
Default0X00000000000X00
Bit1514131211109876543210
NameHost controller control
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:Host controller control
Type:Read/Set/Clear/Update
Offset:50hset register
54hclear register
Default:X00X 0000h
Table 4–11. Host Controller Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31RSVDRReserved. Bit 31 returns 0 when read.
30noByteSwapDataRSCThis bit is used to control whether physical accesses to locations outside the TSB12LV23 itself as
29–24RSVDRReserved. Bits 29–24 return 0s when read.
23programPhyEnableRCThis bit informs upper level software that lower level software has consistently configured the
22aPhyEnhanceEnableRSCWhen bits 23 (programPhyEnable) and 17 (linkEnable) are 1, the OHCI driver can set this bit to
21–20RSVDRReserved. Bits 21–20 return 0s when read.
19LPSRSCThis bit is used to control the link power status. Software must set this bit to 1 to permit the
18postedWriteEnableRSCThis bit is used to enable (1) or disable (0) posted writes. Software should change this bit only
17linkEnableRSCThis bit is cleared to 0 by either a hardware or software reset. Software must set this bit to 1 when
16SoftResetRSCUWhen this bit is set, all TSB12LV23 states are reset, all FIFOs are flushed, and all OHCI registers
15–0RSVDRReserved. Bits 15–0 return 0s when read.
well as any other DMA data accesses should be swapped.
P1394a enhancements in the Link and PHY . When this bit is 1, generic software such as the OHCI
driver is responsible for configuring P1394a enhancements in the PHY and bit 22
(aPhyEnhanceEnable) in the TSB12L V23. When this bit is 0, the generic software may not modify
the P1394a enhancements in the TSB12LV23 or PHY and cannot interpret the setting of bit 22
(aPhyEnhanceEnable). This bit is initialized from serial EEPROM.
use all P1394a enhancements. When bit 23 (programPhyEnable) is set to 0, the software does
not change PHY enhancements or this bit.
link-PHY communication. A 0 prevents link-PHY communication.
when bit 17 (linkEnable) is 0.
the system is ready to begin operation and then force a bus reset. This bit is necessary to keep
other nodes from sending transactions before the local system is ready. When this bit is cleared,
the TSB12LV23 is logically and immediately disconnected from the 1394 bus, no packets are
received or processed nor are packets transmitted.
are set to their hardware reset values unless otherwise specified. PCI registers are not affected by
this bit. This bit remains set while the softReset is in progress and reverts back to 0 when the reset
has completed.
4–13
Page 46
4.17 Self ID Buffer Pointer Register
The self ID buffer pointer register points to the 2-Kbyte aligned base address of the buffer in host memory where the
self ID packets are stored during bus initialization. Bits 31–11 are read/write accessible.
Bit31302928272625242322212019181716
NameSelf ID buffer pointer
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
DefaultXXXXXXXXXXXXXXXX
Default0000000000000000
Bit1514131211109876543210
NameSelf ID buffer pointer
TypeR/WR/WR/WR/WR/WRRRRRRRRRRR
DefaultXXXXX00000000000
Register:Self ID buffer pointer
Type:Read/Write
Offset:64h
Default:XXXX XX00h
4.18 Self ID Count Register
The self ID count register keeps a count of the number of times the bus self ID process has occurred, flags self ID
packet errors, and keeps a count of the amount of self ID data in the self ID buffer.
Bit31302928272625242322212019181716
NameSelf ID count
TypeRURRRRRRRRURURURURURURURU
DefaultX0000000XXXXXXXX
Bit1514131211109876543210
NameSelf ID count
TypeRRRRRRURURURURURURURURURR
Default0000000000000000
Register:Self ID count
Type:Read/Update
Offset:68h
Default:X0XX 0000h
Table 4–12. Self ID Count Register Description
BITFIELD NAMETYPEDESCRIPTION
31selfIDErrorRUWhen this bit is 1, an error was detected during the most recent self ID packet reception. The contents
30–24RSVDRReserved. Bits 30–24 return 0s when read.
23–16selfIDGenerationRUThe value in this field increments each time a bus reset is detected. This field rolls over to 0 after
15–1 1RSVDRReserved. Bits 15–11 return 0s when read.
10–2selfIDSizeRUThis field indicates the number of quadlets that have been written into the self ID buffer for the current
1–0RSVDRReserved. Bits 1–0 return 0s when read.
4–14
of the self ID buffer are undefined. This bit is cleared after a self ID reception in which no errors are
detected. Note that an error can be a hardware error or a host bus write error.
reaching 255.
bits 23–16 (selfIDGeneration field). This includes the header quadlet and the self ID data. This field is
cleared to 0 when the self ID reception begins.
Page 47
4.19 Isochronous Receive Channel Mask High Register
The isochronous receive channel mask high set/clear register is used to enable packet receives from the upper 32
isochronous data channels. A read from either the set register or clear register returns the content of the isochronous
receive channel mask high register.
Bit31302928272625242322212019181716
NameIsochronous receive channel mask high
TypeRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
DefaultXXXXXXXXXXXXXXXX
Default0000000000000000
Bit1514131211109876543210
NameIsochronous receive channel mask high
TypeRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
DefaultXXXXXXXXXXXXXXXX
Default0000000000000000
Register:Isochronous receive channel mask high
Type:Read/Set/Clear
Offset:70hset register
74hclear register
Default:XXXX XXXXh
Table 4–13. Isochronous Receive Channel Mask High Register Description
BITFIELD NAMETYPEDESCRIPTION
31isoChannel63RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 63.
30isoChannel62RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 62.
29isoChannel61RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 61.
28isoChannel60RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 60.
27isoChannel59RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 59.
26isoChannel58RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 58.
25isoChannel57RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 57.
24isoChannel56RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 56.
23isoChannel55RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 55.
22isoChannel54RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 54.
21isoChannel53RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 53.
20isoChannel52RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 52.
19isoChannel51RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 51.
18isoChannel50RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 50.
17isoChannel49RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 49.
16isoChannel48RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 48.
15isoChannel47RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 47.
14isoChannel46RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 46.
13isoChannel45RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 45.
12isoChannel44RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 44.
11isoChannel43RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 43.
10isoChannel42RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 42.
9isoChannel41RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 41.
8isoChannel40RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 40.
7isoChannel39RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 39.
4–15
Page 48
Table 4–13. Isochronous Receive Channel Mask High Register Description (Continued)
BITFIELD NAMETYPEDESCRIPTION
6isoChannel38RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 38.
5isoChannel37RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 37.
4isoChannel36RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 36.
3isoChannel35RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 35.
2isoChannel34RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 34.
1isoChannel33RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 33.
0isoChannel32RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 32.
31isoChannel31RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 31.
30isoChannel30RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 30.
29isoChannel29RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 29.
28isoChannel28RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 28.
27isoChannel27RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 27.
26isoChannel26RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 26.
25isoChannel25RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 25.
24isoChannel24RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 24.
23isoChannel23RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 23.
22isoChannel22RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 22.
21isoChannel21RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 21.
20isoChannel20RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 20.
19isoChannel19RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 19.
18isoChannel18RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 18.
17isoChannel17RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 17.
16isoChannel16RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 16.
15isoChannel15RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 15.
14isoChannel14RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 14.
13isoChannel13RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 13.
12isoChannel12RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 12.
11isoChannel11RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 11.
10isoChannel10RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 10.
9isoChannel9RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 9.
8isoChannel8RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 8.
7isoChannel7RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 7.
6isoChannel6RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 6.
5isoChannel5RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 5.
4isoChannel4RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 4.
3isoChannel3RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 3.
2isoChannel2RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 2.
1isoChannel1RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 1.
0isoChannel0RSCWhen this bit is set, the TSB12LV23 is enabled to receive from iso channel number 0.
4–17
Page 50
4.21 Interrupt Event Register
The interrupt event set/clear register reflects the state of the various TSB12L V23 interrupt sources. The interrupt bits
are set by an asserting edge of the corresponding interrupt signal or by writing a 1 in the corresponding bit in the set
register. The only mechanism to clear the bits in this register is to write a 1 to the corresponding bit in the clear register .
This register is fully compliant with OHCI and the TSB12LV23 adds OHCI 1.0 compliant vendor-specific interrupt
function to bit 30. When reading the interrupt event register, the return value is the bit-wise AND function of the
interrupt event and interrupt mask registers per the
84hclear register [returns the content of the interrupt event and interrupt mask registers
when read]
Default:XXXX 0XXXh
1394 Open Host Controller Interface Specification
.
Table 4–15. Interrupt Event Register Description
BITFIELD NAMETYPEDESCRIPTION
31RSVDRReserved. Bit 31 returns 0 when read.
30vendorSpecificRSCThis vendor-specific interrupt event is reported when either of the general-purpose interrupts occur
29–27RSVDRReserved. Bits 29–27 return 0s when read.
26phyRegRcvdRSCUThe TSB12L V23 has received a PHY register data byte which can be read from the PHY layer control
25cycleTooLongRSCUIf bit 21 (cycleMaster) of the link control register (see Section 4.28) is set, then this indicates that over
24unrecoverableErrorRSCUThis event occurs when the TSB12LV23 encounters any error that forces it to stop operations on any
23cycleInconsistentRSCUA cycle start was received that had values for cycleSeconds and cycleCount fields that are different
22cycleLostRSCUA lost cycle is indicated when no cycle_start packet is sent/received between two successive
21cycle64SecondsRSCUIndicates that the 7th bit of the cycle second counter has changed.
20cycleSynchRSCUIndicates that a new isochronous cycle has started. This bit is set when the low order bit of the cycle
19phyRSCUIndicates the PHY requests an interrupt through a status transfer.
18RSVDRReserved. Bit 18 returns 0 when read.
which are enabled via INT_EN3 and INT_EN2.
register (see Section 4.30).
125 µs have elapsed between the start of sending a cycle start packet and the end of a subaction gap.
The link control register bit 21 (cycleMaster) is cleared by this event.
or all of its subunits, for example, when a DMA context sets its dead bit. While this bit is set, all normal
interrupts for the context(s) that caused this interrupt are blocked from being set.
from the values in bits 31–25 (cycleSeconds field) and bits 24–12 (cycleCount field) of the
isochronous cycle timer register (see Section 4.31).
cycleSynch events. A lost cycle can be predicted when a cycle_start packet does not immediately
follow the first subaction gap after the cycleSynch event or if an arbitration reset gap is detected after
a cycleSynch event without an intervening cycle start. This bit may be set either when it occurs or
when logic predicts that it will occur.
17busResetRSCUIndicates that the PHY chip has entered bus reset mode.
16selfIDcompleteRSCUA selfID packet stream has been received. It is generated at the end of the bus initialization process.
15–10RSVDRReserved. Bits 15–10 return 0s when read.
9lockRespErrRSCUIndicates that the TSB12L V23 sent a lock response for a lock request to a serial bus register, but did
8postedWriteErrRSCUIndicates that a host bus error occurred while the TSB12LV23 was trying to write a 1394 write request,
7isochRxRUIsochronous receive DMA interrupt. Indicates that one or more isochronous receive contexts have
6isochTxRUIsochronous transmit DMA interrupt. Indicates that one or more isochronous transmit contexts have
5RSPktRSCUIndicates that a packet was sent to an asynchronous receive response context buffer and the
4RQPktRSCUIndicates that a packet was sent to an asynchronous receive request context buffer and the
3ARRSRSCUAsync receive response DMA interrupt. This bit is conditionally set upon completion of an ARRS DMA
2ARRQRSCUAsync receive request DMA interrupt. This bit is conditionally set upon completion of an ARRQ DMA
1respTxCompleteRSCUAsynchronous response transmit DMA interrupt. This bit is conditionally set upon completion of an
0reqTxCompleteRSCUAsynchronous request transmit DMA interrupt. This bit is conditionally set upon completion of an
This bit is turned off simultaneously when bit 17 (busReset) is turned on.
not receive an ack_complete.
which had already been given an ack_complete, into system memory.
generated an interrupt. This is not a latched event, it is the OR’ing of all bits in the isochronous receive
interrupt event and isochronous receive interrupt mask registers. The isochronous receive interrupt
event register (see Section 4.25) indicates which contexts have interrupted.
generated an interrupt. This is not a latched event, it is the OR’ing of all bits in the isochronous
transmit interrupt event and isochronous transmit interrupt mask registers. The isochronous transmit
interrupt event register (see Section 4.23) indicates which contexts have interrupted.
descriptor’s xferStatus and resCount fields have been updated.
descriptor’s xferStatus and resCount fields have been updated.
context command descriptor.
context command descriptor.
ATRS DMA command.
ATRQ DMA command.
4–19
Page 52
4.22 Interrupt Mask Register
The interrupt mask set/clear register is used to enable the various TSB12L V23 interrupt sources. Reads from either
the set register or the clear register always return the contents of the interrupt mask register. In all cases except
masterIntEnable (bit 31), the enables for each interrupt event align with the interrupt event register bits detailed in
Table 4–15.
This register is fully compliant with OHCI and the TSB12L V23 adds an OHCI 1.0 compliant interrupt function to bit 30.
The isochronous transmit interrupt event set/clear register reflects the interrupt state of the isochronous transmit
contexts. An interrupt is generated on behalf of an isochronous transmit context if an OUTPUT_LAST command
completes and its interrupt bits are set. Upon determining that the interrupt event register isochTx (bit 6) interrupt has
occurred, software can check this register to determine which context(s) caused the interrupt. The interrupt bits are
set by an asserting edge of the corresponding interrupt signal, or by writing a 1 in the corresponding bit in the set
register. The only mechanism to clear the bits in this register is to write a 1 to the corresponding bit in the clear register .
7isoXmit7RSCIsochronous transmit channel 7 caused the interrupt event register bit 6 (isochTx) interrupt.
6isoXmit6RSCIsochronous transmit channel 6 caused the interrupt event register bit 6 (isochTx) interrupt.
5isoXmit5RSCIsochronous transmit channel 5 caused the interrupt event register bit 6 (isochTx) interrupt.
4isoXmit4RSCIsochronous transmit channel 4 caused the interrupt event register bit 6 (isochTx) interrupt.
3isoXmit3RSCIsochronous transmit channel 3 caused the interrupt event register bit 6 (isochTx) interrupt.
2isoXmit2RSCIsochronous transmit channel 2 caused the interrupt event register bit 6 (isochTx) interrupt.
1isoXmit1RSCIsochronous transmit channel 1 caused the interrupt event register bit 6 (isochTx) interrupt.
0isoXmit0RSCIsochronous transmit channel 0 caused the interrupt event register bit 6 (isochTx) interrupt.
4–21
Page 54
4.24 Isochronous Transmit Interrupt Mask Register
The isochronous transmit interrupt mask set/clear register is used to enable the isochTx interrupt source on a per
channel basis. Reads from either the set register or the clear register always return the contents of the isochronous
transmit interrupt mask register. In all cases the enables for each interrupt event align with the event register bits
detailed in Table 4–17.
The isochronous receive interrupt event set/clear register reflects the interrupt state of the isochronous receive
contexts. An interrupt is generated on behalf of an isochronous receive context if an INPUT_* command completes
and its interrupt bits are set. Upon determining that the interrupt event register isochRx (bit 7) interrupt has occurred,
software can check this register to determine which context(s) caused the interrupt. The interrupt bits are set by an
asserting edge of the corresponding interrupt signal, or by writing a 1 in the corresponding bit in the set register. The
only mechanism to clear the bits in this register is to write a 1 to the corresponding bit in the clear register.
3isoRecv3RSCIsochronous receive channel 3 caused the interrupt event register bit 7 (isochRx) interrupt.
2isoRecv2RSCIsochronous receive channel 2 caused the interrupt event register bit 7 (isochRx) interrupt.
1isoRecv1RSCIsochronous receive channel 1 caused the interrupt event register bit 7 (isochRx) interrupt.
0isoRecv0RSCIsochronous receive channel 0 caused the interrupt event register bit 7 (isochRx) interrupt.
4–22
Page 55
4.26 Isochronous Receive Interrupt Mask Register
The isochronous receive interrupt mask register is used to enable the isochRx interrupt source on a per channel basis.
Reads from either the set register or the clear register always return the contents of the isochronous receive interrupt
mask register. In all cases the enables for each interrupt event align with the event register bits detailed in Table 4–18.
The fairness control register provides a mechanism by which software can direct the host controller to transmit
multiple asynchronous requests during a fairness interval.
Bit31302928272625242322212019181716
NameFairness control
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Default0000000000000000
Bit1514131211109876543210
NameFairness control
TypeRRRRRRRRRRR/WR/WR/WR/WR/WR/W
Default0000000000000000
Register:Fairness control
Type:Read-only
Offset:DCh
Default:0000 0000h
Table 4–19. Fairness Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31–8RSVDRReserved. Bits 31–8 return 0s when read.
7–0pri_reqR/WThis field specifies the maximum number of priority arbitration requests for asynchronous request
packets that the link is permitted to make of the PHY during fairness interval.
4–23
Page 56
4.28 Link Control Register
The link control set/clear register provides the control flags that enable and configure the link core protocol portions
of the TSB12LV23. It contains controls for the receiver and cycle timer.
Bit31302928272625242322212019181716
NameLink control
TypeRRRRRRRRRRSCRSCU RSCRRRR
Default000000000XXX0000
Bit1514131211109876543210
NameLink control
TypeRRRRRRSCRSCRRRRRRRRR
Default00000XX000000000
Register:Link control
Type:Read/Set/Clear/Update
Offset:E0hset register
E4hclear register
Default:00X0 0X00h
Table 4–20. Link Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31–23RSVDRReserved. Bits 31–23 return 0s when read.
22cycleSourceRSCWhen this bit is set, the cycle timer uses an external source (CYCLEIN) to determine when to roll over
21cycleMasterRSCUWhen this bit is set, and the PHY has notified the TSB12LV23 that it is root, the TSB12LV23 generates
20CycleTimerEnableRSCWhen this bit is set, the cycle timer offset counts cycles of the 24.576 MHz clock and rolls over at the
19–1 1RSVDRReserved. Bits 19–11 return 0s when read.
10RcvPhyPktRSCWhen this bit is set, the receiver accepts incoming PHY packets into the AR request context if the AR
9RcvSelfIDRSCWhen this bit is set, the receiver accepts incoming self-identification packets. Before setting this bit to
8–0RSVDRReserved. Bits 8–0 return 0s when read.
the cycle timer. When this bit is cleared, the cycle timer rolls over when the timer reaches 3072 cycles
of the 24.576 MHz clock (125 µs).
a cycle start packet every time the cycle timer rolls over , based on the setting of bit 22. When this bit is
cleared, the OHCI-Lynx accepts received cycle start packets to maintain synchronization with the
node which is sending them. This bit is automatically reset when bit 25 (cycleT ooLong) of the interrupt
event register (see Section 4.21) is set and cannot be set until bit 25 (cycleTooLong) is cleared.
appropriate time based on the settings of the above bits. When this bit is cleared, the cycle timer offset
does not count.
request context is enabled. This does not control receipt of self-identification packets.
1, software must ensure that the self ID buffer pointer register contains a valid address.
4–24
Page 57
4.29 Node Identification Register
The node identification register contains the address of the node on which the OHCI-Lynx chip resides, and indicates
the valid node number status. The 16-bit combination of the busNumber field (bits 15–6) and the NodeNumber field
(bits 5–0) is referred to as the node ID.
31iDValidRUThis bit indicates whether or not the TSB12LV23 has a valid node number. It is cleared when a 1394 bus
30rootRUThis bit is set during the bus reset process if the attached PHY is root.
29–28RSVDRReserved. Bits 29–28 return 0s when read.
27CPSRUSet if the PHY is reporting that cable power status is OK.
26–16RSVDRReserved. Bits 26–16 return 0s when read.
15–6busNumberRWUThis number is used to identify the specific 1394 bus the TSB12LV23 belongs to when multiple
5–0NodeNumberRUThis number is the physical node number established by the PHY during self-identification. It is
reset is detected and set when the TSB12LV23 receives a new node number from the PHY.
1394-compatible buses are connected via a bridge.
automatically set to the value received from the PHY after the self-identification phase. If the PHY sets
the nodeNumber to 63, then software should not set ContextControl.run for either of the AT DMA
contexts.
4–25
Page 58
4.30 PHY Layer Control Register
The PHY layer control register is used to read or write a PHY register.
Bit31302928272625242322212019181716
NamePHY layer control
TypeRURRRRURURURURURURURURURURURU
Default0000000000000000
Bit1514131211109876543210
NamePHY layer control
TypeRWU RWURRR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Register:PHY layer control
Type:Read/Write/Update
Offset:ECh
Default:0000 0000h
Table 4–22. PHY Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31rdDoneRUThis bit is cleared to 0 by the TSB12L V23 when either bit 15 (rdReg) or bit 14 (wrReg) is set. This bit is
30–28RSVDRReserved. Bits 30–28 return 0s when read.
27–24rdAddrRUThis is the address of the register most recently received from the PHY.
23–16rdDataRUThis field is the contents of a PHY register which has been read.
15rdRegRWUThis bit is set by software to initiate a read request to a PHY register and is cleared by hardware when
14wrRegRWUThis bit is set by software to initiate a write request to a PHY register and is cleared by hardware when
13–12RSVDRReserved. Bits 13–12 return 0s when read.
11–8regAddrR/WThis field is the address of the PHY register to be written or read.
7–0wrDataR/WThis field is the data to be written to a PHY register and is ignored for reads.
set when a register transfer is received from the PHY.
the request has been sent. Bits 14 (wrReg) and 15 (rdReg) must be used exclusively.
the request has been sent. Bits 14 (wrReg) and 15 (rdReg) must be used exclusively.
4–26
Page 59
4.31 Isochronous Cycle Timer Register
The isochronous cycle timer register indicates the current cycle number and offset. When the TSB12LV23 is cycle
master, this register is transmitted with the cycle start message. When the TSB12LV23 is not cycle master, this
register is loaded with the data field in an incoming cycle start. In the event that the cycle start message is not received,
the fields can continue incrementing on their own (if programmed) to maintain a local time reference.
31–25cycleSecondsRWUThis field counts seconds [rollovers from bits 24–12 (cycleCount field)] modulo 128.
24–12cycleCountRWUThis field counts cycles [rollovers from bits 11–0 (cycleOffset field)] modulo 8000.
11–0cycleOffsetRWUThis field counts 24.576 MHz clocks modulo 3072, i.e., 125 µs. If an external 8 kHz clock configuration
is being used, then this bit must be set to 0 at each tick of the external clock.
4–27
Page 60
4.32 Asynchronous Request Filter High Register
The asynchronous request filter high set/clear register is used to enable asynchronous receive requests on a per
node basis, and handles the upper node IDs. When a packet is destined for either the physical request context or
the ARRQ context, the source node ID is examined. If the bit corresponding to the node ID is not set in this register,
then the packet is not acknowledged and the request is not queued. The node ID comparison is done if the source
node is on the same bus as the TSB12L V23. All nonlocal bus sourced packets are not acknowledged unless bit 31
in this register is set.
Bit31302928272625242322212019181716
NameAsynchronous request filter high
TypeRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
Default0000000000000000
Bit1514131211109876543210
NameAsynchronous request filter high
TypeRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
Default0000000000000000
Register:Asynchronous request filter high
Type:Read/Set/Clear
Offset:100hset register
104hclear register
Default:0000 0000h
Table 4–24. Asynchronous Request Filter High Register Description
BITFIELD NAMETYPEDESCRIPTION
31asynReqAllBusesRSCIf this bit is set, then all asynchronous requests received by the TSB12LV23 from non-local bus
30asynReqResource62RSCIf this bit is set for local bus node number 62, then asynchronous requests received by the
29asynReqResource61RSCIf this bit is set for local bus node number 61, then asynchronous requests received by the
28asynReqResource60RSCIf this bit is set for local bus node number 60, then asynchronous requests received by the
27asynReqResource59RSCIf this bit is set for local bus node number 59, then asynchronous requests received by the
26asynReqResource58RSCIf this bit is set for local bus node number 58, then asynchronous requests received by the
25asynReqResource57RSCIf this bit is set for local bus node number 57, then asynchronous requests received by the
24asynReqResource56RSCIf this bit is set for local bus node number 56, then asynchronous requests received by the
23asynReqResource55RSCIf this bit is set for local bus node number 55, then asynchronous requests received by the
22asynReqResource54RSCIf this bit is set for local bus node number 54, then asynchronous requests received by the
21asynReqResource53RSCIf this bit is set for local bus node number 53, then asynchronous requests received by the
20asynReqResource52RSCIf this bit is set for local bus node number 52, then asynchronous requests received by the
19asynReqResource51RSCIf this bit is set for local bus node number 51, then asynchronous requests received by the
nodes are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
4–28
Page 61
Table 4–24. Asynchronous Request Filter High Register Description (Continued)
BITFIELD NAMETYPEDESCRIPTION
18asynReqResource50RSCIf this bit is set for local bus node number 50, then asynchronous requests received by the
17asynReqResource49RSCIf this bit is set for local bus node number 49, then asynchronous requests received by the
16asynReqResource48RSCIf this bit is set for local bus node number 48, then asynchronous requests received by the
15asynReqResource47RSCIf this bit is set for local bus node number 47, then asynchronous requests received by the
14asynReqResource46RSCIf this bit is set for local bus node number 46, then asynchronous requests received by the
13asynReqResource45RSCIf this bit is set for local bus node number 45, then asynchronous requests received by the
12asynReqResource44RSCIf this bit is set for local bus node number 44, then asynchronous requests received by the
11asynReqResource43RSCIf this bit is set for local bus node number 43, then asynchronous requests received by the
10asynReqResource42RSCIf this bit is set for local bus node number 42, then asynchronous requests received by the
9asynReqResource41RSCIf this bit is set for local bus node number 41, then asynchronous requests received by the
8asynReqResource40RSCIf this bit is set for local bus node number 40, then asynchronous requests received by the
7asynReqResource39RSCIf this bit is set for local bus node number 39, then asynchronous requests received by the
6asynReqResource38RSCIf this bit is set for local bus node number 38, then asynchronous requests received by the
5asynReqResource37RSCIf this bit is set for local bus node number 37, then asynchronous requests received by the
4asynReqResource36RSCIf this bit is set for local bus node number 36, then asynchronous requests received by the
3asynReqResource35RSCIf this bit is set for local bus node number 35, then asynchronous requests received by the
2asynReqResource34RSCIf this bit is set for local bus node number 34, then asynchronous requests received by the
1asynReqResource33RSCIf this bit is set for local bus node number 33, then asynchronous requests received by the
0asynReqResource32RSCIf this bit is set for local bus node number 32, then asynchronous requests received by the
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
4–29
Page 62
4.33 Asynchronous Request Filter Low Register
The asynchronous request filter low set/clear register is used to enable asynchronous receive requests on a per node
basis, and handles the lower node IDs. Other than filtering different node IDs, this register behaves identically to the
asynchronous request filter high register.
16asynReqResource16RSCIf this bit is set for local bus node number 16, then asynchronous requests received by the
15asynReqResource15RSCIf this bit is set for local bus node number 15, then asynchronous requests received by the
14asynReqResource14RSCIf this bit is set for local bus node number 14, then asynchronous requests received by the
13asynReqResource13RSCIf this bit is set for local bus node number 13, then asynchronous requests received by the
12asynReqResource12RSCIf this bit is set for local bus node number 12, then asynchronous requests received by the
11asynReqResource11RSCIf this bit is set for local bus node number 11, then asynchronous requests received by the
10asynReqResource10RSCIf this bit is set for local bus node number 10, then asynchronous requests received by the
9asynReqResource9RSCIf this bit is set for local bus node number 9, then asynchronous requests received by the
8asynReqResource8RSCIf this bit is set for local bus node number 8, then asynchronous requests received by the
7asynReqResource7RSCIf this bit is set for local bus node number 7, then asynchronous requests received by the
6asynReqResource6RSCIf this bit is set for local bus node number 6, then asynchronous requests received by the
5asynReqResource5RSCIf this bit is set for local bus node number 5, then asynchronous requests received by the
4asynReqResource4RSCIf this bit is set for local bus node number 4, then asynchronous requests received by the
3asynReqResource3RSCIf this bit is set for local bus node number 3, then asynchronous requests received by the
2asynReqResource2RSCIf this bit is set for local bus node number 2, then asynchronous requests received by the
1asynReqResource1RSCIf this bit is set for local bus node number 1, then asynchronous requests received by the
0asynReqResource0RSCIf this bit is set for local bus node number 0, then asynchronous requests received by the
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
TSB12L V23 from that node are accepted.
4–31
Page 64
4.34 Physical Request Filter High Register
The physical request filter high set/clear register is used to enable physical receive requests on a per node basis and
handles the upper node IDs. When a packet is destined for the physical request context and the node ID has been
compared against the ARRQ registers, then the comparison is done again with this register. If the bit corresponding
to the node ID is not set in this register, then the request is handled by the ARRQ context instead of the physical
request context.
Bit31302928272625242322212019181716
NamePhysical request filter high
TypeRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
Default0000000000000000
Bit1514131211109876543210
NamePhysical request filter high
TypeRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
Default0000000000000000
Register:Physical request filter high
Type:Read/Set/Clear
Offset:110hset register
114hclear register
Default:0000 0000h
Table 4–26. Physical Request Filter High Register Description
BITFIELD NAMETYPEDESCRIPTION
31physReqAllBussesRSCIf this bit is set, then all asynchronous requests received by the TSB12LV23 from non-local bus
30physReqResource62RSCIf this bit is set for local bus node number 62, then physical requests received by the TSB12LV23
29physReqResource61RSCIf this bit is set for local bus node number 61, then physical requests received by the TSB12LV23
28physReqResource60RSCIf this bit is set for local bus node number 60, then physical requests received by the TSB12LV23
27physReqResource59RSCIf this bit is set for local bus node number 59, then physical requests received by the TSB12LV23
26physReqResource58RSCIf this bit is set for local bus node number 58, then physical requests received by the TSB12LV23
25physReqResource57RSCIf this bit is set for local bus node number 57, then physical requests received by the TSB12LV23
24physReqResource56RSCIf this bit is set for local bus node number 56, then physical requests received by the TSB12LV23
23physReqResource55RSCIf this bit is set for local bus node number 55, then physical requests received by the TSB12LV23
22physReqResource54RSCIf this bit is set for local bus node number 54, then physical requests received by the TSB12LV23
21physReqResource53RSCIf this bit is set for local bus node number 53, then physical requests received by the TSB12LV23
20physReqResource52RSCIf this bit is set for local bus node number 52, then physical requests received by the TSB12LV23
19physReqResource51RSCIf this bit is set for local bus node number 51, then physical requests received by the TSB12LV23
18physReqResource50RSCIf this bit is set for local bus node number 50, then physical requests received by the TSB12LV23
nodes are accepted.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
4–32
Page 65
Table 4–26. Physical Request Filter High Register Description (Continued)
BITFIELD NAMETYPEDESCRIPTION
17physReqResource49RSCIf this bit is set for local bus node number 49, then physical requests received by the TSB12LV23
16physReqResource48RSCIf this bit is set for local bus node number 48, then physical requests received by the TSB12LV23
15physReqResource47RSCIf this bit is set for local bus node number 47, then physical requests received by the TSB12LV23
14physReqResource46RSCIf this bit is set for local bus node number 46, then physical requests received by the TSB12LV23
13physReqResource45RSCIf this bit is set for local bus node number 45, then physical requests received by the TSB12LV23
12physReqResource44RSCIf this bit is set for local bus node number 44, then physical requests received by the TSB12LV23
11physReqResource43RSCIf this bit is set for local bus node number 43, then physical requests received by the TSB12LV23
10physReqResource42RSCIf this bit is set for local bus node number 42, then physical requests received by the TSB12LV23
9physReqResource41RSCIf this bit is set for local bus node number 41, then physical requests received by the TSB12LV23
8physReqResource40RSCIf this bit is set for local bus node number 40, then physical requests received by the TSB12LV23
7physReqResource39RSCIf this bit is set for local bus node number 39, then physical requests received by the TSB12LV23
6physReqResource38RSCIf this bit is set for local bus node number 38, then physical requests received by the TSB12LV23
5physReqResource37RSCIf this bit is set for local bus node number 37, then physical requests received by the TSB12LV23
4physReqResource36RSCIf this bit is set for local bus node number 36, then physical requests received by the TSB12LV23
3physReqResource35RSCIf this bit is set for local bus node number 35, then physical requests received by the TSB12LV23
2physReqResource34RSCIf this bit is set for local bus node number 34, then physical requests received by the TSB12LV23
1physReqResource33RSCIf this bit is set for local bus node number 33, then physical requests received by the TSB12LV23
0physReqResource32RSCIf this bit is set for local bus node number 32, then physical requests received by the TSB12LV23
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
from that node are handled through the physical request context.
4–33
Page 66
4.35 Physical Request Filter Low Register
The physical request filter low set/clear register is used to enable physical receive requests on a per node basis and
handles the lower node IDs. When a packet is destined for the physical request context and the node ID has been
compared against the asynchronous request filter registers, then the node ID comparison is done again with this
register. If the bit corresponding to the node ID is not set in this register, then the request is handled by the
asynchronous request context instead of the physical request context.
Table 4–28. Asynchronous Context Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31–16RSVDRReserved. Bits 31–16 return 0s when read.
15runRSCUThis bit is set by software to enable descriptor processing for the context and cleared by software to
14–13RSVDRReserved. Bits 14–13 return 0s when read.
12wakeRSUSoftware sets this bit to cause the TSB12LV23 to continue or resume descriptor processing. The
11deadRUThe TSB12L V23 sets this bit when it encounters a fatal error and clears the bit when software resets
10activeRUThe TSB12LV23 sets this bit to 1 when it is processing descriptors.
9–8RSVDRReserved. Bits 9–8 return 0s when read.
7–5spdRUThis field indicates the speed at which a packet was received or transmitted, and only contains
4–0eventcodeRUThis field holds the acknowledge sent by the Link core for this packet or an internally generated error
stop descriptor processing. The TSB12LV23 changes this bit only on a hardware or software reset.
TSB12L V23 clears this bit on every descriptor fetch.
bit 15 (run).
meaningful information for receive contexts. This field is encoded as:
000 = 100 Mbits/sec,
001 = 200 Mbits/sec,
010 = 400 Mbits/sec, and all other values are reserved.
code if the packet was not transferred successfully.
The asynchronous context command pointer register contains a pointer to the address of the first descriptor block
that the TSB12LV23 accesses when software enables the context by setting the asynchronous context control
register bit 15 (run).
31–4descriptorAddressRWUContains the upper 28 bits of the address of a 16-byte aligned descriptor block.
3–0ZRWUIndicates the number of contiguous descriptors at the address pointed to by the descriptor address. If
Z is 0, then it indicates that the descriptorAddress field (bits 31–4) is not valid.
4–38
Page 71
4.39 Isochronous Transmit Context Control Register
The isochronous transmit context control set/clear register controls options, state, and status for the isochronous
transmit DMA contexts. The n value in the following register addresses indicates the context number (n = 0, 1, 2, 3,…).
Bit31302928272625242322212019181716
NameIsochronous transmit context control
TypeRSCU RSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSCRSC
DefaultXXXXXXXXXXXXXXXX
Bit1514131211109876543210
NameIsochronous transmit context control
TypeRSCRRRSURURURRRURURURURURURURU
Default000X0000XXXXXXXX
Table 4–30. Isochronous Transmit Context Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31cycleMatchEnableRSCUWhen this bit is set to 1, processing occurs such that the packet described by the context’s first
30–16cycleMatchRSCContains a 15-bit value, corresponding to the low order 2 bits of the bus isochronous cycle timer
15runRSCThis bit is set by software to enable descriptor processing for the context and cleared by software to
14–13RSVDRReserved. Bits 14–13 return 0s when read.
12wakeRSUSoftware sets this bit to cause the TSB12LV23 to continue or resume descriptor processing. The
11deadRUThe TSB12LV23 sets this bit when it encounters a fatal error and clears the bit when software resets
10activeRUThe TSB12LV23 sets this bit to 1 when it is processing descriptors.
9–8RSVDRReserved. Bits 9–8 return 0s when read.
7–5spdRUThis field in not meaningful for isochronous transmit contexts.
4–0event codeRUFollowing an OUTPUT_LAST* command, the error code is indicated in this field. Possible values
descriptor block is transmitted in the cycle whose number is specified in the cycleMatch field
(bits 30–16). The cycleMatch field (bits 30–16) must match the low order 2 bits of cycleSeconds and
the 13-bit cycleCount field in the cycle start packet that is sent or received immediately before
isochronous transmission begins. Since the isochronous transmit DMA controller may work ahead,
the processing of the first descriptor block may begin slightly in advance of the actual cycle in which
the first packet is transmitted.
The effects of this bit, however, are impacted by the values of other bits in this register and are
explained in the
active, hardware clears this bit.
register cycleSeconds field (bits 31–25) and the cycleCount field (bits 24–12). If bit 31
(cycleMatchEnable) is set, then this isochronous transmit DMA context becomes enabled for
transmits when the low order 2 bits of the bus isochronous cycle timer register cycleSeconds field
(bits 31–25) and the cycleCount field (bits 24–12) value equal this field’s (cycleMatch) value.
stop descriptor processing. The TSB12LV23 changes this bit only on a hardware or software reset.
TSB12L V23 clears this bit on every descriptor fetch.
bit 15 (run).
are: ack_complete, evt_descriptor_read, evt_data_read, and evt_unknown.
1394 Open Host Controller Interface Specification.
The isochronous transmit context command pointer register contains a pointer to the address of the first descriptor
block that the TSB12LV23 accesses when software enables an isochronous transmit context by setting the
isochronous transmit context control register bit 15 (run). The n value in the following register addresses indicates
the context number (n = 0, 1, 2, 3,…).
The isochronous receive context control set/clear register controls options, state, and status for the isochronous
receive DMA contexts. The n value in the following register addresses indicates the context number (n = 0, 1, 2, 3,…).
Bit31302928272625242322212019181716
NameIsochronous receive context control
TypeRSCRSC RSCU RSCRRRRRRRRRRRR
DefaultXXXX000000000000
Bit1514131211109876543210
NameIsochronous receive context control
TypeRSCURRRSURURURRRURURURURURURURU
Default000X0000XXXXXXXX
Table 4–31. Isochronous Receive Context Control Register Description
BITFIELD NAMETYPEDESCRIPTION
31bufferFillRSCWhen this bit is set, received packets are placed back-to-back to completely fill each receive buffer.
30isochHeaderRSCWhen this bit is 1, received isochronous packets include the complete 4-byte isochronous packet
4–40
When this bit is cleared, each received packet is placed in a single buffer. If bit 28 (multiChanMode)
is set to 1, then this bit must also be set to 1. The value of this bit must not be changed while bit 10
(active) or bit 15 (run) is set.
header seen by the link layer. The end of the packet is marked with a xferStatus in the first doublet,
and a 16-bit timeStamp indicating the time of the most recently received (or sent) cycleStart packet.
When this bit is cleared, the packet header is stripped off of received isochronous packets. The
packet header, if received, immediately precedes the packet payload. The value of this bit must not
be changed while bit 10 (active) or bit 15 (run) is set.
Page 73
Table 4–31. Isochronous Receive Context Control Register Description (Continued)
BITFIELD NAMETYPEDESCRIPTION
29cycleMatchEnableRSCUWhen this bit is set, the context begins running only when the 13-bit cycleMatch field (bits 24–12) in
28multiChanModeRSCWhen this bit is set, the corresponding isochronous receive DMA context receives packets for all
27–16RSVDRReserved. Bits 27–16 return 0s when read.
15runRSCUThis bit is set by software to enable descriptor processing for the context and cleared by software to
14–13RSVDRReserved. Bits 14–13 return 0s when read.
12wakeRSUSoftware sets this bit to cause the TSB12LV23 to continue or resume descriptor processing. The
11deadRUThe TSB12L V23 sets this bit when it encounters a fatal error and clears the bit when software resets
10activeRUThe TSB12LV23 sets this bit to 1 when it is processing descriptors.
9–8RSVDRReserved. Bits 9–8 return 0s when read.
7–5spdRUThis field indicates the speed at which the packet was received.
4–0event codeRUFollowing an INPUT* command, the error code is indicated in this field.
the isochronous receive context match register matches the 13-bit cycleCount field in the cycleStart
packet. The effects of this bit, however , are impacted by the values of other bits in this register. Once
the context has become active, hardware clears this bit. The value of this bit must not be changed
while bit 10 (active) or bit 15 (run) is set.
isochronous channels enabled in the isochronous receive channel mask high and isochronous
receive channel mask low registers. The isochronous channel number specified in the isochronous
receive DMA context match register is ignored.
When this bit is cleared, the isochronous receive DMA context receives packets for that single
channel. Only one isochronous receive DMA context may use the isochronous receive channel
mask registers. If more that one isochronous receive context control register has this bit set, then
results are undefined. The value of this bit must not be changed while bit 10 (active) or bit 15 (run) is
set to 1.
stop descriptor processing. The TSB12LV23 changes this bit only on a hardware or software reset.
TSB12L V23 clears this bit on every descriptor fetch.
bit 15 (run).
000 = 100 Mbits/sec,
001 = 200 Mbits/sec, and
010 = 400 Mbits/sec. All other values are reserved.
The isochronous receive context command pointer register contains a pointer to the address of the first descriptor
block that the TSB12LV23 accesses when software enables an isochronous receive context by setting the
isochronous receive context control register bit 15 (run). The n value in the following register addresses indicates the
context number (n = 0, 1, 2, 3,…).
The isochronous receive context match register is used to start an isochronous receive context running on a specified
cycle number, to filter incoming isochronous packets based on tag values, and to wait for packets with a specified
sync value. The n value in the following register addresses indicates the context number (n = 0, 1, 2, 3,…).
Bit31302928272625242322212019181716
NameIsochronous receive context match
TypeR/WR/WR/WR/WRRRR/WR/WR/WR/WR/WR/WR/WR/WR/W
DefaultXXXX000XXXXXXXXX
Bit1514131211109876543210
NameIsochronous receive context match
TypeR/WR/WR/WR/WR/WR/WR/WR/WRR/WR/WR/WR/WR/WR/WR/W
DefaultXXXXXXXX0XXXXXXX
Table 4–32. Isochronous Receive Context Match Register Description
BITFIELD NAMETYPEDESCRIPTION
31tag3R/WIf this bit is set, then this context matches on iso receive packets with a tag field of 11b.
30tag2R/WIf this bit is set, then this context matches on iso receive packets with a tag field of 10b.
29tag1R/WIf this bit is set, then this context matches on iso receive packets with a tag field of 01b.
28tag0R/WIf this bit is set, then this context matches on iso receive packets with a tag field of 00b.
27–25RSVDRReserved. Bits 27–25 return 0s when read.
24–12cycleMatchR/WContains a 15-bit value, corresponding to the low order 2 bits of cycleSeconds and the 13-bit
11–8syncR/WThis field contains the 4-bit field which is compared to the sync field of each iso packet for this channel
7RSVDRReserved. Bit 7 returns 0 when read.
6tag1SyncFilterR/WIf this bit and bit 29 (tag1) are set , then packets with tag2b01 are accepted into the context if the two
5–0channelNumberR/WThis 6-bit field indicates the isochronous channel number for which this isochronous receive DMA
cycleCount field in the cycleStart packet. If isochronous receive context control register bit 29
(cycleMatchEnable) is set, then this context is enabled for receives when the 2 low order bits of the bus
isochronous cycle timer register cycleSeconds field (bits 31–25) and cycleCount field (bits 24–12)
value equal this field’s (cycleMatch) value.
when the command descriptor’s w field is set to 11b.
most significant bits of the packets sync field are 00b. Packets with tag values other than 01b are
filtered according to tag0, tag2, and tag3 (bits 28, 30, and 31, respectively) without any additional
restrictions.
If this bit is cleared, then this context matches on isochronous receive packets as specified in
bits 28–31 (tag0–tag3) with no additional restrictions.
context accepts packets.
4–42
Page 75
5 GPIO Interface
The general-purpose input/output (GPIO) interface consists of two GPIO ports. GPIO2 and GPIO3 power up as
general-purpose inputs and are programmable via the GPIO control register. Figure 5–1 shows the schematic for
GPIO2 and GPIO3 implementation.
GPIO0 and GPIO1 are not implemented in the TSB12LV23. The terminals for these legacy GPIOs from the
TSB12LV23 have been dedicated to BMC/LINKON and LPS, respectively.
GPIO Read Data
GPIO Write Data
GPIO_Invert
GPIO Enable
DQ
Figure 5–1. GPIO2 and GPIO3
GPIO Port
5–1
Page 76
5–2
Page 77
6 Serial EEPROM Interface
The TSB12LV23 provides a serial bus interface to initialize the 1394 global unique ID register and a few PCI
configuration registers through a serial EEPROM. The TSB12L V23 communicates with the serial EEPROM via the
2-wire serial interface.
After power-up the serial interface initializes the locations listed in T able 6–1. While the TSB12LV23 is accessing the
serial ROM, all incoming PCI slave accesses are terminated with retry status. Table 6–2 shows the serial ROM
memory map required for initializing the TSB12LV23 registers.
Table 6–1. Registers and Bits Loadable through Serial EEPROM
Supply voltage range, V
Input voltage range for PCI, V
Input voltage range for Miscellaneous and PHY interface, V
Output voltage range for PCI, V
Input voltage range for Miscellaneous and PHY interface, V
Input clamp current, I
Stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. These are stress ratings only, and
functional operation of the device at these or any other conditions beyond those indicated under recommended operating conditions is not implied.
Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
NOTES: 1. Applies to external input and bidirectional buffers. For 5-V tolerant use VI > V
2. Applies to external output and bidirectional buffers. For 5-V tolerant use VO > V
. For PCI use VI > V
CCI
. For PCI use VO > V
CCI
CCP
.
CCP
.
7–1
Page 80
7.2Recommended Operating Conditions
V
PCI I/O clamping voltage
Commercial
V
PCI
V
†
High-level input voltage
V
PCI
V
†
Low-level input voltage
V
§
OPERATIONMINNOMMAXUNIT
V
CC
CCP
IH
IL
V
I
V
O
t
t
T
A
¶
T
J
†
Applies for external inputs and bidirectional buffers without hysteresis.
7.5Switching Characteristics for PHY-Link Interface
PARAMETERMEASUREDMINTYPMAXUNIT
t
Setup time, Dn, CTLn, LREQ to PHY_CLK–50% to 50%6ns
su
t
Hold time, Dn, CTLn, LREQ before PHY_CLK–50% to 50%1ns
h
t
Delay time, PHY_CLK to Dn, CTLn–50% to 50%211ns
d
§
These parameters are ensured by design.
§
7–3
Page 82
7–4
Page 83
8 Mechanical Information
The TSB12L V23 is packaged in a 100-pin PZ package. The following shows the mechanical dimensions for the PZ
package.
PZ (S-PQFP-G100)PLASTIC QUAD FLATPACK
76
100
0,50
75
0,27
0,17
51
50
26
1
12,00 TYP
14,20
SQ
13,80
16,20
SQ
15,80
25
0,08
M
0,05 MIN
0,13 NOM
Gage Plane
0,25
0°–7°
1,45
1,35
1,60 MAX
NOTES: A. All linear dimensions are in millimeters.
B. This drawing is subject to change without notice.
C. Falls within JEDEC MO-136
0,75
0,45
Seating Plane
0,08
4040149/B 11/96
8–1
Page 84
8–2
Page 85
IMPORTANT NOTICE
T exas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to discontinue
any product or service without notice, and advise customers to obtain the latest version of relevant information
to verify, before placing orders, that information being relied on is current and complete. All products are sold
subject to the terms and conditions of sale supplied at the time of order acknowledgement, including those
pertaining to warranty, patent infringement, and limitation of liability.
TI warrants performance of its semiconductor products to the specifications applicable at the time of sale in
accordance with TI’s standard warranty. Testing and other quality control techniques are utilized to the extent
TI deems necessary to support this warranty . Specific testing of all parameters of each device is not necessarily
performed, except those mandated by government requirements.
CERT AIN APPLICATIONS USING SEMICONDUCTOR PRODUCTS MAY INVOLVE POTENTIAL RISKS OF
DEATH, PERSONAL INJURY, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE (“CRITICAL
APPLICATIONS”). TI SEMICONDUCTOR PRODUCTS ARE NOT DESIGNED, AUTHORIZED, OR
WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT DEVICES OR SYSTEMS OR OTHER
CRITICAL APPLICA TIONS. INCLUSION OF TI PRODUCTS IN SUCH APPLICATIONS IS UNDERST OOD TO
BE FULLY AT THE CUSTOMER’S RISK.
In order to minimize risks associated with the customer’s applications, adequate design and operating
safeguards must be provided by the customer to minimize inherent or procedural hazards.
TI assumes no liability for applications assistance or customer product design. TI does not warrant or represent
that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other
intellectual property right of TI covering or relating to any combination, machine, or process in which such
semiconductor products or services might be or are used. TI’s publication of information regarding any third
party’s products or services does not constitute TI’s approval, warranty or endorsement thereof.
Copyright 1999, Texas Instruments Incorporated
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.