Integrated Device Technology, Inc. reserves the right to make changes to its products or specifications at any time, without notice, in order to improve design or performance
and to supply the best possible product. IDT does not assume any responsibility for use of any circuitry described other than the circuitry embodied in an IDT product. The
Company makes no representations that circuitry described herein is free from patent infringement or other rights of third parties which may result from its use. No license is
granted by implication or otherwise under any patent, patent rights or other rights, of Integrated Device Technology, Inc.
GENERAL DISCLAIMER
Code examples provided by IDT are for illustrative purposes only and should not be relied upon for developing applications. Any use of the code examples below is completely
at your own risk. IDT MAKES NO REPRESENT ATIONS OR WARRANTIES OF ANY KIND CONCERNING THE NONINFRINGEMENT, QUALITY, SAFETY OR SUITABILITY
OF THE CODE, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. FURTHER, IDT MAKES NO REPRESENT ATIONS OR WARRANTIES AS TO THE TRUTH, ACCURACY OR COMPLETENESS
OF ANY STATEMENTS, INFORMATION OR MATERIALS CONCERNING CODE EXAMPLES CONTAINED IN ANY IDT PUBLICATION OR PUBLIC DISCLOSURE OR
THAT IS CONTAINED ON ANY IDT INTERNET SITE. IN NO EVENT WILL IDT BE LIABLE FOR ANY DIRECT, CONSEQUENTIAL, I NCIDENTAL, INDIRECT, PUNITIVE OR
SPECIAL DAMAGES, HOWEVER THEY MAY ARIS E, AND EVEN IF IDT HAS BEEN PREVIOUSLY ADVISED ABOUT THE POSSIBILITY OF SUCH DAMAGES. The code
examples also may be subject to United States export control laws and may be subject to the export or import laws of other countries and it is your responsibility to comply with
any applicable laws or regulations.
Integrated Device Technology's products are not authorized for use as critical components in life support devices or systems unless a specific written agreement pertaining to
such intended use is executed between the manufacturer and an officer of IDT.
1. Life support devices or systems are devices or systems which (a) are intended for surgical implant into the body or (b) support or sustain life and whose failure to perform,
when properly used in accordance with instructions for use provided in the labeling, can be reasonably expected to result in a significant injury to the user.
2. A critical component is any components of a life support device or system whose failure to perform can be reasonably expected to cause the failure of the life support device
or system, or to affect its safety or effectiveness.
IDT, the IDT logo, and Integrated Device Technology are trademarks or registered trademarks of Integrated Device Technology, Inc.
This chapter discusses general document information about the Tsi310 PCI-X Bus Bridge User
Manual. The following topics are described:
•“Revision History” on page 13
•“Document Conventions” on page 14
•“Related Information” on page 17
Revision History
80B6020_MA001_05, Formal, September 2009
13
This version of the document was rebranded as IDT. It does not include any technical changes.
80B6020_MA001_04, Formal, December 2004
This document was updated to address the following changes:
•Added maximum rating information for V
•Revised V
conditions (see Section 8.3 on page 193)
•Added power dissipation numbers (see Section 8.5 on page 194)
•Added part ordering information for Pb-free Tsi310 (see Section A on page 201)
(Maximum) and V
IL
(Minimum) numbers for Recommended DC operating
IH
(Input voltage) (see Section 8.2 on page 192)
IN
80B6020_MA001_03, Formal, June 2004
This document was updated to incorporate a non-technical change.
80B6020_MA001_02, Formal, March 2004
This document was updated to incorporate several non-technical changes.
Tsi310 User Manual
80B6020_MA001_05
Page 14
80B6020_MA001_01, Formal, February 2004
This document supports the Tsi310 (part numbers Tsi310A-133CE and Tsi310-133CE). For
information about the differences between these devices, see the Tsi310 Differences Document.
This document differs from the 80B6000_MA001_03 user manual in the following ways:
•Updated the Revision ID number (see Section 5.4.5 on page 77)
•Revised the explanation of the Secondary Retry Counter Register (see Section 5.5.9 on
page 123)
•Added a note about the P_CFG_BUSY signal (see Table 15 on page 157)
•Revised the reset value for the JTAG Device ID register (see Section 7.6 on page 174)
•Added a caution note in the Hot plug section about powering up Tsi310’s I/O pads (see
Section 3.8 on page 54)
•Revised the 1111 PCI command code row in Table 1 on page 28
•Added a new bullet in the section describing PCI commands not supported by the Tsi310
(see Section 2.1.1 on page 28)
14
•Added more information about PCI-to-PCI transactions (see Section 2.2.1.3 on page 31)
Document Conventions
This section explains the document conventions used in this manual.
Signal Notation
Signals are either active high or active low. Active low signals are defined as true (asserted)
when they are at a logic low. Similarly, active high signals are defined as true at a logic high.
Signals are considered asserted when active and negated when inactive, irrespective of voltage
levels. For voltage levels, the use of 0 indicates a low voltage while a 1 indicates a high voltage.
Signals that assume a logic low state when asserted are followed by a number sign as the last
non-numerical character “#” (for example, SIGNAL#). Signals that assume a logic high state
are not followed by an underscore character (for example, SIGNAL).
Tsi310 User Manual
80B6020_MA001_05
Page 15
15
Bit Ordering Notation
When referring to PCI-X transactions, this document assumes the most significant bit is the
largest number (also known as little-endian bit ordering). For example, the PCI address/data bus
consists of AD[31:0], where AD[31] is the most significant bit and AD[0] is the least-significant
bit of the field (see the following graphic).
The following object size conventions are used for PCI/X transactions:
•A byte is an 8-bit object.
•A word is a 16-bit (2-byte) object.
•A doubleword (Dword) is a 32-bit (4-byte) object.
•A quadword is a 64-bit (8-byte) object.
Numeric Notation
The following numeric conventions are used:
•Hexadecimal values are in single quotation marks and are preceded by an x. For example:
x‘0B00’.
•Undefined hexadecimal values are indicated by a capital X. For example: x’X1’ =
undefined on reset.
•Binary values are spelled out (zero and one) or appear in single quotation marks and are
preceded by b. For example: b‘0101’.
Typographic Notation
The following italic typographic conventions are used in this manual:
•Book titles: For example, PCI Local Bus Specification (Revision 2.2).
•Important terms: For example, when a device is granted access to the PCI bus it is called
the bus master.
•Undefined values: For example, the device supports four channels depending on the setting
of the Ax register.
Tsi310 User Manual
80B6020_MA001_05
Page 16
Units of Measure
Tip
The following units of measure are used in this manual:
•Prefixes: K=1024, k=1000
•Bits and bytes: An uppercase “B” stands for bytes. For example, 1 KB means 1024 bytes.
•A lowercase “b” refers to bits. For example, 1 Kb means 1024 bits.
Symbols Used
The following symbols are used in this manual:
This symbol indicates important configuration information or suggestions.
This symbol indicates procedures or operating levels that may result in misuse or
damage to the device.
16
This symbol indicates a basic design concept or information considered helpful.
Document Status Information
“Tsi” technical documentation is classified as either Advance, Prelim inary, or Final:
•Advance: The Advance manual contains information that is subject to change and exists
until prototypes are available.
•Preliminary: The Preliminary manual contains information about a product that is near
production-ready , and is revised as required. The Preliminary manual exists until the
product is released to production.
•Formal: The Final manual contains information about a final, customer-ready product. This
type of manual can be downloaded from our website once the product is released to
production.
Tsi310 User Manual
80B6020_MA001_05
Page 17
17
Related Information
The following information is useful for reference purposes when using this manual:
PCI Local Bus Specification
(Revision 2.2)
PCI-X Addendum to PCI Local
Bus Specification (Revision 1.0a)
PCI Bus Power Management
Interface Specification
(Revision 2.0)
This document defines the PCI hardware system including
the protocol, electrical, mechanical and configuration
specification for the PCI local bus components and
expansion boards. For more information, see
www .pcisig.com.
This document addresses the need for increased
bandwidth of PCI Devices. PCI-X enables the design of
systems and devices that can operate at speeds
significantly higher than today's specification allows. For
more information, see www.pcisig.com.
This document establishes the minimum behavioral
requirements that PCI-to-PCI bridges must meet to be
compliant to the PCI Local Bus Specification (Revision 2.2). Recommendations and guidance on
optional PCI-to PCI bridge features are also provided by
this specification. For more information, see
www .pcisig.com.
This document defines power management capabilities
that enhance the base PCI architecture. For more
information, see www.pcisig.com.
Tsi310 User Manual
80B6020_MA001_05
Page 18
18
Tsi310 User Manual
80B6020_MA001_05
Page 19
1. Functional Overview
This chapter describes the main features and functions of the Tsi310. The following topics are
discussed:
•“Overview of the Tsi310” on page 19
•“Features” on page 22
•“Technology Highlights” on page 26
•“Operation Overview” on page 24
1.1Overview of the Tsi310
The Tsi310 transparently connects two electrically separate PCI-X bus domains, allowing
concurrent operations on both buses. This results in good utilization of the buses in various
system configurations and enables hierarchical expansion of I/O bus structures.
19
As described by the PCI-X architecture, the Tsi310 is capable of handling 64-bit data at a
maximum bus frequency of 133 MHz (depending upon the bus topology and load) and is
backward compatible with all 3.3V I/O conventional PCI interfaces.
The Tsi310 also provides extensive buffering and prefetching mechanisms for efficient transfer
of data through the device, facilitating multi-threaded operation and high system throughput.
Tsi310 User Manual
80B6020_MA001_05
Page 20
Figure 1: Block Diagram
Primary PCI/PCI-X Bus
Secondary PCI/PCI-X Bus
80B6000_BK001_02
JTAG
Secondary
Bus Arbiter
Primary
Clock PLL
Secondary
Clock PLL
PCI-X
Interface
Bus
Master
Bus
Slave
PCI-X
Interface
Configuration Registers
Clocking & Reset
Data/Control Unit
Queue
Compare
Logic
Read Queue
8 entries
PW Queue
8 entries
Address
Decode
Control
Logic
Burst Read
Buffer
4 Kbytes
Posted Write
Buffer
1 Kbyte
Single Data
Phase Buffer
4 Bytes
Data/Control Unit
Queue
Compare
Logic
Read Queue
8 entries
PW Queue
8 entries
Address
Decode
Control
Logic
Burst Read
Buffer
4 Kbytes
Posted Write
Buffer
1 Kbyte
Single Data
Phase Buffer
4 Bytes
Bus
Slave
Bus
Master
1. Functional Overview20
Tsi310 User Manual
80B6020_MA001_05
The Tsi310 is composed of the following major functional blocks (see Figure 1):
•The device has two PCI-X interfaces. Each interface handles the PCI/PCI-X protocol for its
respective bus and depending on the type of transaction, can act as either a bus master or a
bus slave. These interfaces transfer data and control information flowing to and from the
blocks shown in the middle of the diagram.
•Two phase-locked loops (PLLs), one for the primary clock domain and one for the
secondary clock domain. The PLL for each clock domain is used when that bus is running
in PCI-X mode; in PCI mode, the PLL is bypassed to allow the full frequency range as
defined by the bus architecture. The two bus clocks may be run synchronously or
asynchronously. A spread-spectrum clock input, within the architectural bounds, is
supported for either or both interfaces.
•One set of configuration registers, programmable either from the primary or secondary
interface. The first 64 bytes of this address space conform to the architectural format for
bridge devices, called Header Type 1. The remaining 192 bytes are device-specific
registers. Each register is fully defined in Section 5.1.2 on page 64.
Page 21
1. Functional Overview21
•T wo data/control units, one for downstream transactions and one for upstream transactions.
These symmetric units each contain separate buffers for burst read, posted write, and single
data phase operations. Read and write queues, queue compare logic, address decoding,
control logic, and other control functions are also included in these blocks.
•An arbiter for the secondary bus, which can be disabled if an external arbiter is employed.
When enabled, bus arbitration is provided for the Tsi310 and up to six other masters. Each
client can be assigned high or low priority, or can be masked off.
•A clocking and reset control unit to manage these common device functions.
•A JTAG controller, compliant with IEEE Standard 1149.1, to facilitate boundary scan
testing.
Tsi310 User Manual
80B6020_MA001_05
Page 22
1.2Features
The Tsi310 has the following key features:
1.2.1PCI-X Interfaces
•Complies with the following specifications:
— PCI Local Bus Specification (Revision 2.2)
— PCI-X Addendum to PCI Local Bus Specification (Revision 1.0a)
•Uses the 3.3V signaling environment and does not support the optional 5 V I/O signaling
levels
•Primary and secondary interface clocks may be run synchronously or asynchronously
•Concurrent primary and secondary bus operations
•Supports configurations of PCI mode or PCI-X mode on either bus in any combination
1. Functional Overview22
1.2.2Memory Buffer Architecture
•4KB of buffering for upstream memory burst read commands, with up to eight active
transactions allowed
•4KB of buffering for downstream memory burst read commands, with up to eight active
transactions allowed
•1KB of buffering for upstream posted memory write commands, with up to eight active
transactions allowed
•1KB of buffering for downstream posted memory write commands, with up to eight active
transactions allowed
•Allows one active single data phase (4-byte) delayed or split transaction in each direction
1.2.3Power Management
•Supports D0 and D3 power states
Tsi310 User Manual
80B6020_MA001_05
Page 23
1. Functional Overview23
1.2.4T ransaction Forwarding
•I/O, Memory, and Prefetchable Memory base and limit registers for downstream
forwarding
•Inverse address decoding for upstream forwarding
•Flat addressing model
•Supports VGA-compatible addressing and palette snooping for upstream transactions
•Supports full 64-bit addressing and Dual Address Cycles
•Responds as medium-speed device on both interfaces
1.2.5Configuration Registers
•1 set of standard PCI and device specific configuration registers, accessible from both the
primary and secondary interfaces
•Supports Type 0 and Type 1 configuration cycles
1.2.6Optional Features
•Capable of defining an optional opaque (undecoded) memory address region to facilitate
applications with embedded processors
•Supports secondary side PCI-X device privatization
•Optional Definable Base Address Register for use by embedded sub-systems on the
secondary bus
•Optional access to configuration register space from the secondary bus
1.2.7Bus Arbitration
•On-chip programmable bus arbiter for the secondary bus with support for up to six external
masters
•Priority and masking control for each agent
1.2.8IEEE® 1149.1 JTAG Port
•Performs boundary-scan testing
Tsi310 User Manual
80B6020_MA001_05
Page 24
1.3Operation Overview
This section briefly describes the operation of various aspects of the Tsi310. For more
information on each topic, refer to subsequent chapters.
1.3.1Supported Modes
The Tsi310 is a full-function transparent PCI-X to PCI-X bridge. As such, either interface may
be configured to operate using the conventional PCI bus protocol or the PCI-X bus protocol. In
mixed-mode configurations, the Tsi310 hardware handles the conversion from one protocol to
the other.
Any allowed bus clock frequency range for a particular mode may be used: up to 66 MHz for
PCI mode, and up to 133 MHz for PCI-X mode. Operation at a particular speed depends on the
bus topology and loading. Since the two clock domains are asynchronous and independent, a
different bus speed may be used on each interface. Speed-matching is accomplished using the
buffering structure of the Tsi310 design.
The Tsi310 implements a 64-bit bus on both interfaces. The PCI architecture also allows either
side to be connected to a 32-bit bus or to 32-bit devices. Full 64-bit addressing capability is also
provided, including support for dual address cycles (DAC).
1. Functional Overview24
The Tsi310 uses the 3.3V signaling environment and is not tolerant of 5V signal
levels. When the Tsi310 is mounted on an adapter card, the card must use the 3.3V
connector keying scheme.
1.3.2Buffer Structure
The Tsi310 contains two symmetric sets of buffers with associated queues, one for upstream
transactions and the other for downstream transactions.
1.3.2.1Burst Read Buffers
Each burst read buffer shown in Figure 1 on page 20 contains 4 KB to hold data from memory
burst read transactions. Each buffer is logically divided into eight independent 512 -by te bu ffers
to allow for multi-threading. Each 512-byte buffer has a read queue providing up to eight active
read transactions in each direction.
Tsi310 User Manual
80B6020_MA001_05
Page 25
1. Functional Overview25
Every 512-byte buffer is further divided into four 128-byte subsections. Activity generally
occurs on these 128-byte boundaries. Filling and/or emptying 128 bytes causes bus transactions
to be initiated. While each read queue entry has up to 512 bytes of buffer space associated with
it, to keep data flowing efficiently the 128-byte subsections are re-used as needed when they are
emptied. This means that when the primary and secondary interfaces are running at similar
frequencies and there is little bus contention, long transfers can proceed without disconnection,
after the initial latency needed to fill the first 128-byte subsection. For large transfers when the
two buses are running at vastly dissimilar frequencies, disconnections may occur on the faster
bus as often as every 128 bytes as the 512-byte buffer becomes completely full or empty.
1.3.2.2Posted Write Buffers
The posted write buffers each have a capacity of 1 KB to hold data from posted memory write
transactions. Each is logically divided into eight independent 128-byte segments to allow
transactions to be issued on the destination bus before they have been completed on the
originating bus. Unlike the burst read buffers, the amount of space assigned to each transaction
is dynamic. A single transaction can utilize from one to eight 128-byte subsections as needed.
Each posted write queue is an 8-entry FIFO, providing up to eight active write transactions in
each direction. Activity generally occurs when a 128-byte segment is filled or emptied, this
keeps data flowing by re-using 128-byte subsections as they become available.
1.3.2.3Single Data Phase Buffers
There is one single data phase buffer for each direction to hold read or write data from 4-byte
split or delayed transactions. These transactions include all I/O or configuration operations as
well as doubleword memory read operations.
1.3.3Address Decoding
The Tsi310 is a transparent bridge that uses a flat addressing model. Both the PCI and PCI-X
address spaces are split between the primary bus and the secondary bus. Address ranges residing
on the secondary bus are defined by the I/O, memory, prefetchable memory base and limit, and
the optional base address registers 0 and 1 in the bridge configuration space. All other addresses
are assumed to reside on the primary bus. Inverse address decoding determines when to forward
transactions upstream. The only exception is when the optional opaque address range is enabled
and defined by T si310’s base and limit registers. The T si310 does not recognize transactions for
addresses within the opaque range on either bus. This region may be used, for example, for
peer-to-peer communication between devices on the secondary bus.
The Tsi310 supports full 64-bit addressing and handles dual address cycles on both interfaces.
The device provides no capability for translating addresses.
Tsi310’s configuration registers are accessible from either the primary or secondary interface
using T ype 0 configuration read s and writes. On the secondary interface, the bridge claims Type
1 configuration write transactions that specify conversion to a special cycle on an upstream bus
segment.
Tsi310 User Manual
80B6020_MA001_05
Page 26
1.3.4Bus Arbitration
The T si310 contains an arbiter for the secondary interface that is enabled or disabled through an
input signal pin. It provides bus arbitration for up to six additional masters, each of which may
be assigned high or low priority or may be masked off. When the internal arbiter is used and the
Tsi310 request is not masked off, the bus is parked at the bridge whenever there are no pending
requests.
The arbiter implements a two-level fairness algorithm that allows each device within a level to
receive grant requests cyclically. The arbiter uses the arbitration priority register to determine
which agents are high priority (HP) devices and which are low priority (LP) devices. At
different points in time, snapshots are taken of all pending requests for each priority level. All
captured HP requests are serviced first, then one of the captured LP requests is serviced. At this
point, a new HP snapshot is taken, picking up any new HP requests. All captured HP requests
are serviced before continuing with the next LP request still pending from the previous LP
snapshot. A new snapshot of pending LP requests is taken only after all requests from the
previous LP snapshot have been serviced.
1. Functional Overview26
1.4Technology Highlights
The Tsi310 is implemented using a 0.25 micron (m) lithography process with a 0.18 m
L
effective
3.3 V to power the device I/O circuits. The device is packaged in a 31mm thermally and
electrically enhanced plastic ball grid array (HPBGA) with 304 balls. For more information, see
Section 8 on page 191 and Section 9 on page 197.
. The device requires two power supplies, one at 2.5 V for internal logic and the other at
Tsi310 User Manual
80B6020_MA001_05
Page 27
2. Bus Operation
This chapter discusses the following topics:
•“Overview of Bus Operation” on page 27
•“Write Transactions” on page 30
•“Read Transactions” on page 33
•“Configuration Transactions ” on page 37
2.1Overview of Bus Operation
This chapter presents a summary of the PCI and PCI-X transactions, transaction forwarding
across the Tsi310, and transaction termination.
27
Tsi310 User Manual
80B6020_MA001_05
Page 28
2.1.1Types of Transactions
Tables 1 and 2 list the command code and name for each PCI and PCI-X transaction. For each
transaction type, the middle two columns indicate whether the T si310 can initiate the transaction
as a master on the primary bus and on the secondary bus. The last two columns indicate whether
the bridge responds to the transaction as a target on the primary bus and on the secondary bus.
As indicated in the previous tables, certain commands are not supported by the Tsi310:
•The bridge never initiates a transaction with a reserved command code and, as a target, the
bridge ignores reserved command codes.
•The bridge never initiates an interrupt acknowledge transaction and, as a target, the bridge
ignores interrupt acknowledge transactions. Interrupt acknowledge transactions are
expected to reside entirely on the primary bus closest to the host bridge.
•The bridge does not respond to special cycle transactions. To generate special cycle
transactions on other buses, either upstream or downstream, a Type 1 configuration
command must be used.
•The Tsi310’s response to Type 1 Configuration accesses on the secondary interface is
limited. The Tsi310 only responds to Type 1 configuration writes that get converted to
special cycles going upstream, as described in Section 2.4.4 on page 42.
Tsi310 User Manual
80B6020_MA001_05
Page 30
•The Tsi310 does not generate Type 0 configuration transactions on the primary interface.
•The T si310 never initiates a Memory Write and Invalidate command on either interface. As
a target, the bridge will accept a Memory Write and Invalidate command and forward it to
the destination interface as a Memory Write command.
2.2Write Transactions
Write transactions are treated as either posted, delayed/split (PCI-X), or immediate write
transactions, as shown in the following table.
Table 3: Write Transaction Handling
Type of TransactionType of Handling
Memory WritePosted
Memory Write and InvalidatePosted
Memory Write Block (PCI-X)Posted
2. Bus Operation30
I/O WriteDelayed/Split (PCI-X)
Type 0 Configuration WriteImmediate on the primary bus, Delayed/Split
Type 1 Configuration WriteDelayed/Split (PCI-X)
2.2.1Posted Write Transactions
The posted mode is the default mode used for the memory-write and
memory-write-and-invalidate transactions. The memory-write-block transaction also uses the
posted mode. Posted is the only mode used for the memory-write-block command.
When the Tsi310 determines that a memory write transaction is to be forwarded across the
bridge, it first checks for empty space in the posted write buffer. If space is available in the
posted write buffer, the Tsi310 accepts data until the buffer is full or the transaction is
terminated. If the transaction is terminated because the buffer is full, the transaction is
terminated on a 128-byte boundary. If there is no space in the posted write buffer , the transaction
is terminated with retry.
Up to eight posted write transactions can be enqueued in the Tsi310.
(PCI-X) on the secondary bus.
Tsi310 User Manual
80B6020_MA001_05
Page 31
2. Bus Operation31
2.2.1.1PCI to PCI-X Transactions
When the originating bus is operating in the conventional PCI mode and the destination bus is
operating in PCI-X mode, the Tsi310 must buffer memory write transactions from the
conventional PCI interface and count the number of bytes to be forwarded to the PCI-X
interface. If the conventional PCI transaction uses the memory write command and some byte
enables are not asserted, the Tsi310 must use the PCI-X memory write command. If the
conventional PCI command is memory write and all byte enables are asserted, the bridge will
use the memory write PCI-X command. If the conventional transaction uses the memory write
and invalidate command, the bridge uses the PCI-X memory write block command.
The Tsi310 attempts to transfer the write data on the PCI-X interface as soon as the transaction
ends or a 128-byte boundary is crossed, whichever comes first. Writes of greater than 128 bytes
are possible only if more than one 128-byte sector fills up before the write operation is issued on
the PCI-X interface.
2.2.1.2PCI-X to PCI Transactions
When the originating bus is operating in PCI-X mode and the destination bus is operating in the
conventional PCI mode, the Tsi310 uses the conventional memory write command for both the
PCI-X memory write and PCI-X memory write block commands.
The Tsi310 attempts to transfer write data on the conventional PCI interface when the PCI-X
data crosses a 128-byte boundary or the end of the PCI-X transfer occurs, whichever comes
first. As long as a 128-byte buffer is full, or the end of transfer remains from the PCI-X memory
write command when a 128-byte boundary is crossed, the transfer will continue on the
conventional PCI interface.
2.2.1.3PCI to PCI Transactions
When both buses are operating in conventional PCI mode, the Tsi310 passes a memory write
command that it receives to the destination interface. However, if command received is a
memory write and invalidate command, the T si310 will forward it on to the destination interface
as a memory write command.
The Tsi310 attempts to transfer a memory write command when the transaction ends or a
128-byte boundary is crossed, whichever comes first. As long as a 128-byte buffer is full or the
end of transfer remains from the PCI memory write command when a 128-byte boundary is
crossed, the transfer will continue.
Tsi310 User Manual
80B6020_MA001_05
Page 32
2.2.1.4PCI-X to PCI-X Transactions
When both buses are operating in PCI-X mode, the Tsi310 passes the memory write command
that it receives to the destination interface along with the originating byte count and transaction
ID.
The Tsi310 attempts to transfer a memory write command when the transaction ends or a
128-byte boundary is crossed, whichever comes first. As long as a 128-byte buffer is full or the
end of transfer remains from the PCI-X memory write command when a 128-byte boundary is
crossed, the transfer will continue.
If a transaction is disconnected on the destination interface in the middle of a continuing
transfer, the byte count and address are updated and the transaction is presented again on the
destination interface. If a transaction is disconnected in the middle of a continuing transfer on
the originating interface, the originator must present the transaction again with the updated byte
count and address.
2.2.2Delayed/Split Write Transactions
I/O writes, Type 1 configuration writes, and Type 0 configuration writes on the secondary bus
are treated as delayed transactions by the T si310. These commands are retried on the originating
bus, completed on the destination bus if necessary, and then completed on the originating bus.
The Tsi310 executes DWord transactions only as delayed transactions in the conventional PCI
mode and as split requests in PCI-X mode.
2. Bus Operation32
There is only one request queue entry for either delayed or split write transactions.
2.2.3Immediate Write Transactions
Type 0 configuration writes on the primary PCI interface meant for the Tsi310 are treated as an
immediate write transaction by the bridge. The Tsi310 executes the transaction and indicates its
completion by accepting the DWord of data immediately.
Tsi310 User Manual
80B6020_MA001_05
Page 33
2. Bus Operation33
2.3Read Transactions
Read transactions are treated as either delayed (PCI), split (PCI-X), or immediate read
transactions, as shown in the following table.
The conventional PCI memory-read, memory-read-line, memory-read-multiple, PCI-X
memory-read-DWord, and PCI-X memory-read-block transactions are used to transfer memory
data from the originating side of the Tsi310 to the destination side. All memory read
transactions are either delayed or split on the originating interface depending on the mode of the
originating interface.
2.3.1.1PCI to PCI-X Transactions
The Tsi310 must translate the conventional memory read command to either the memory read
DW ord or the memory read block PCI-X Command. If the conventional memory read command
targets non-prefetchable memory space, the command is translated into a memory read DWord.
In any other instance the conventional memory read command gets translated into a memory
read block PCI-X command. The prefetching algorithm for the conventional memory read
command in the prefetchable space is controlled by bits 9:8 of the primary and secondary data
buffering control registers. The default value of these bits indicates that one cache line will be
prefetched.
The Tsi310 must translate the conventional memory read line command to the memory read
block PCI-X command. The prefetching algorithm is controlled by bits 7:6 of th e primary and
secondary data buffering control registers. The default value of these bits indicates that one
cache line will be prefetched.
Tsi310 User Manual
80B6020_MA001_05
Page 34
The T si310 must translate the conventional memory read multiple command to the memory read
block PCI-X command. The prefetching algorithm is controlled by bits 5:4 of th e primary and
secondary data buffering control registers. The default value of these bits indicates that a full
prefetch will be done, subject to the limit imposed by the maximum memory read byte count
value set by bits (14:12) of the same register. The default value for this field is 512 bytes or an
entire read buffer. Using a value greater than this is possible, but it may be constrained by the
setting of the split transaction commitment limit value in the upstream or downstream split
transaction register, since the target bus is in PCI-X mode (or more information about these
registers, see Section 5.5.21 on page 140 and Section 5.5.22 on page 141, respectively). Data
fetching operations will be disconnected at all 1MB boundaries.
2.3.1.2PCI-X to PCI Transactions
The Tsi310 translates PCI-X memory read DWord commands into conventional memory read
commands.
The T si310 translates a PCI-X memory read block command into one of three conventional PCI
memory read commands based on the byte count and starting address. If the starting address and
byte count are such that only a single DWord (or less) is being read, the conventional transaction
uses the memory read command. If the PCI-X transaction reads more than one DWord, but does
not cross a cache line boundary (as indicated by the Cache Line Size register in the conventional
Configuration Space header), the conventional transaction uses the memory read line command.
If the PCI-X transaction crosses a cache line boundary, the conventional transaction uses the
memory read multiple command.
2. Bus Operation34
If a disconnect occurs before the byte count of the PCI-X memory read block command is
exhausted, the bridge continues to issue the command until all the bytes in the count are
received. The bridge disconnects once the buffer is filled and prefetches more data as 128-byte
sectors of the buffer become free when split completion data is returned to the originator, until
the byte count is exhausted.
2.3.1.3PCI to PCI Transactions
This mode does not involve any translation.
If the memory read command targets non-prefetchable memory space, the memory read fetches
only the requested double word. Bits 9:8 of the primary and secondary data buffering control
registers control the prefetching algorithm for the memory read command in prefetchable space.
The default value of these bits indicates that up to one cache line will be prefetched.
For the memory read line command, the prefetching algorithm is controlled by bits 7:6 of the
primary and secondary data buffering control registers. The default value of these bits indicates
that up to one cache line will be prefetched.
Tsi310 User Manual
80B6020_MA001_05
Page 35
2. Bus Operation35
For the memory read multiple command, the prefetching algorithm is controlled by bits 5:4 of
the primary and secondary data buffering control registers. The default value of these bits
indicates that a full prefetch will be done, subject to the limit imposed by the maximum memory
read byte count value set by bits (14:12) of the same register. The default value is 512 bytes or
an entire read buffer. Data fetching operations will be disconnected at all 1 MB boundaries.
2.3.1.4PCI-X to PCI-X Transactions
This mode does not involve any translation.
The amount of data that is fetched is controlled by the downstream and upstream split
transaction control register. The split transaction capacity and split transaction commitment
limit fields control how much data is requested at any one time (for more information, see
Section 5.5.21 on page 140 and Section 5.5.22 on page 141).
2.3.2I/O Read
The I/O Read command is not translated and fetches a DWord of data. The command will either
be split in the PCI-X mode or delayed in the conventional PCI mode.
2.3.3Configuration Read
2.3.3.1Type 1 Configuration Read
The Type 1 configuration read command is only accepted on the primary interface. The
command will either be split in PCI-X mode or delayed in the conventional PCI mode.
2.3.3.2Type 0 Configuration Read
The Type 0 configuration read command is accepted on either the primary or secondary
interface. The command returns immediate data on the primary interface regardless of the
interface mode. On the secondary interface the command is treated as a delayed transaction in
PCI mode, and as a split transaction in PCI-X mode.
2.3.4Non-Prefetchable and DWord Reads
A non-prefetchable read transaction is a read transaction in which the Tsi310 requests exactly
one DWord from the target and disconnects the initiator after delivering that one DWord of read
data. Unlike prefetchable read transactions, the Tsi310 forwards the read byte enable
information for the data phase.
Non-prefetchable behavior is used for I/O, configuration, memory read transactions that fall into
the non-prefetchable memory space for PCI mode, and all DWord read transactions in PCI-X
mode.
Tsi310 User Manual
80B6020_MA001_05
Page 36
2.3.5Prefetchable Reads
A prefetchable read transaction is a read transaction where the Tsi310 performs speculative
reads, transferring data from the target before it is requested from the initiator. This behavior
allows a prefetchable read transaction to consist of multiple data transfers. For prefetchable read
transactions, all byte enables are asserted for all data phases.
Prefetchable behavior is used for memory read line and memory read multiple transactions, as
well as for memory read transactions that fall into prefetchable memory space and are allowed
to fetch more than a DWord. The amount of data that is prefetched depends on the type of
transaction and the setting of bits in the primary and secondary data bufferi ng co ntro l registers
in configuration space. The amount of prefetching may also be affected by the amount of free
buffer space available in the T si310, and by any read address boundaries encountered. Examples
of these boundaries are cache line for cache line reads and 1M address boundary to ensure that a
read does not cross into another devices’ space.
2.3.5.1Algorithm for PCI-to-PCI Mode
The algorithm used for transfers in PCI-to-PCI mode is user defined in the primary and
secondary data buffering control registers. These registers have bits for memory read to
prefetchable space, memory read line, and memory read multiple transactions. For memory
read, the bits select whether to read a DWord, read to a cache line boundary, or to fill the
prefetch buffer. For memory read line and memory read multiple transactions, the bits select
whether to read to a cache line boundary or to fill the prefetch buffer. In all cases, if the bits are
selected to fill the prefetch buffer, the maximum amount of data that is requested on the target
interface is controllable by the setting of the maximum memory read byte count bits of the
Primary and Secondary Data Buffering Control registers. When more than 512 bytes are
requested, the Tsi310 fetches data to fill the buffer and then fetches more data to keep the buf fer
filled as sectors (128 bytes) are emptied and become free to use again.
2. Bus Operation36
2.3.5.2Algorithm for PCI-to-PCI-X Mode
The algorithm for transfers in this mode is much the same as for transfers in PCI-to-PCI mode,
except that the maximum request amount may be additionally constrained by the setting of the
split transaction commitment limit value in the upstream or downstream split transaction
register. The only other dif ference is that prefetching will not cease when the originating master
disconnects. Prefetching will only cease when all of the requested data is received, as required
by the PCI-X architecture.
Tsi310 User Manual
80B6020_MA001_05
Page 37
2. Bus Operation37
2.3.5.3Algorithm for PCI-X-to-PCI and PCI-X-to-PCI-X Mode
The algorithm for transfers in these modes is to transfer the amount of requested data.
In the PCI-X-to-PCI mode, the Tsi310 continues to generate data requests to the PCI interface
and keeps the prefetch buffer full until the entire amount of data requested is transferred.
In the PCI-X to PCI-X mode, the algorithm is controlled by the split transaction commitment
limit value contained in the upstream or downstream split transaction register. If the value is
greater than or equal to the split transaction capacity (4KB) but less than 32KB, the maximum
request amount is 512 bytes. Larger transfers will be decomposed into a series of smaller
transfers, until the original byte count has been satisfied. If the commitment limit value indicates
32KB or more, the original request amount is used and decomposition is not performed (for
more information, see Section 5.5.21 on page 140 and Section 5.5.22 on page 141).
If the original request is broken into smaller requests the Tsi310 waits until the previous
completion has been totally received before a new request is issued. This ensures that the data
does not get out of order and that two requests with the same sequence ID are not issued. In any
case, the bridge generates a new requester ID for each request passed through the bridge.
2.4Configuration Transactions
The PCI Local Bus Specification (Revision 2.2) defines two configuration transaction types,
Type 0 and Type 1. These two configuration formats are distinguished by the value of bus
address bits (1:0). If address bits (1:0) are b‘00’ during a configuration transaction, a Type 0
configuration transaction is being indicated. A Type 0 configuration transaction is used to
access configuration information for devices on the current bus segment. A Type 0
configuration transaction is not forwarded across the Tsi310, but rather is used to configure the
bridge itself. If address bits (1:0) are b‘01’ during a configuration transaction, a Type 1
configuration transaction is being indicated. T ype 1 configuration transactions are used to access
devices that reside behind one or more bridges.
Figure 2 shows the address formats for Type 0 and Type 1 configuration transactions.
The register number is found in both T ype 0 and Type 1 formats and gives the DW ord address of
the configuration register to be accessed. The function number is also included in both formats
and indicates which function of a multi-function device is to be accessed. For single-function
devices, this value is not decoded. Configuration transaction addresses for Type 1 and PCI-X
T ype 0 formats also include a 5-bit field designating the device number that identifies the device
on the target PCI bus that is to be accessed. This device number is decoded to determine which
IDSEL signal is asserted for the transaction. Finally, Type 1 transactions also include a bus
number field that is used by the T si310 to determine where in the bus hierarchy the transaction is
targeted.
The configuration space of the Tsi310 is accessed by Type 0 configuration transactions. The
configuration space of the bridge can be accessed from either the primary bus or the secondary
bus. Applications which do not require access from the secondary bus should tie down the
S_IDSEL pin.
On the primary bus, the Tsi310 responds to a Type 0 configuration transaction by accepting the
transaction when the following conditions are met during the address phase:
•P_C/BE(3:0)# command indicates a configuration read or configuration write transaction
•P_AD(1:0) are b'00'
•P_IDSEL is asserted
•Bit 2 of the Miscellaneous Control Register must be set to b‘0’
Tsi310 User Manual
80B6020_MA001_05
Page 39
2. Bus Operation39
On the secondary bus, the Tsi310 responds to a Type 0 configuration transaction by accepting
the transaction when the following conditions are met during the address phase:
•S_C/BE(3:0)# command indicates a configuration read or configuration write transaction
•S_AD(1:0) are b'00'
•S_IDSEL is asserted
•The Bus Master control bit in the Command Register must be set to b‘1’ from the Primary
Interface
The function number is not decoded since the bridge is a single-function device. All
configuration transactions to the bridge are handled as DWord (single data phase) operations.
The T si310 has a transaction limitation when its Pr imary interface is configured in PCI-X mode,
and a Configuration write accesses the Tsi310 register space after it is configured by the host
processor through the Primary interface. The host processor is responsible for configuring all
devices on the Primary bus at power-up, and assigns each device a unique “device number.”
This number is defined by AD[15:11] of the address Type 0 configuration write transaction.
Each time a configuration write is initiated to the Tsi310 this device number is updated. The
device number can be read at offset 0x84 of Tsi310’s configuration space (see Section 5.5.20 on
page 137).
The T s i310 contains a feature that allows devices connected to its Secondary interface to access
Tsi310’s registers through Type 0 configuration cycles. For example, when a Type 0
configuration write is initiated to the bridge’s Secondary interface the contents of the Tsi310
device number is updated. Users should be aware, however, that transaction accesses to the
Tsi310 from the Secondary interface could overwrite the bridge’s device number. As a result, it
is possible that two devices may have the same device number.
If a user needs to access the Tsi310 from the Secondary interface after reset (for
example, to set up Opaque regions), IDT recommends completing a configuration
read of offset 0x84 to determine the Tsi310's device number assigned upon initial
configuration. Once the device number is determined it must be included in
AD[15:11] of any configuration write access to the bridge from the Primary or
Secondary interface.
Tsi310 User Manual
80B6020_MA001_05
Page 40
2.4.2Type 1 to Type 0 Translation by Bridge
Type 1 configuration transactions are used to configure devices in a hierarchical bus structure
having one or more bridges. A bridge is the only type of device that should respond to a Type 1
configuration transaction. T ype 1configuration commands are used to access PCI/PCI-X devices
that are located on a bus segment other than the one where the Type 1 transaction is initiated.
The Tsi310 performs a Type 1 to Type 0 translation when a Type 1 transaction is presented on
the primary interface that is destined for a device attached directly to the secondary interface. In
this case, the bridge must convert the configuration transaction to a Type 0 format so that the
secondary bus device can accept it. Type 1 to Type 0 translations are never performed in the
upstream direction.
The Tsi310 claims a Type 1 configuration transaction on its primary bus and translates it into a
Type 0 transaction on the secondary bus when the following conditions are met during the
address phase:
•P_C/BE(3:0)# command indicates a configuration read or configuration write transaction
•P_AD(1:0) are b‘01’
2. Bus Operation40
•The bus number on P_AD(23:16) is the same as the value in the secondary bus number
register in the bridge’s configuration space
When the Tsi310 translates the Type 1 transaction to a Type 0 transaction on the secondary
interface, it performs the following translations to the address:
•Sets S_AD(1:0) to b‘00’
•Decodes the device number specified and drives the bit pattern specified in Table 5 on
S_AD(31:16) for use in the assertion of the device’s IDSEL signal
•Sets S_AD(15:11) to b‘00000’ if the secondary bus is operating in conventional PCI mode
(in the PCI-X mode, the device number is passed through unchanged)
•Leaves the function number and register number fields unchanged
The Tsi310 asserts a unique address signal based on the device number. These address signals
may be used as secondary bus IDSEL signals. Mapping of the address signals depends on the
device number on P_AD(15:11) of the Type1 configuration transaction.
Table 5 indicates how the bridge decodes the device number field. This default mapping may be
modified by the secondary bus private device mask register (see Section 5.5.29 on page 146.
or may convert to a special cycle
transaction if all criteria are met (see
Section 2.4.4 on page 42)
The Tsi310 forwards Type 1 to Type 0 configuration read or configuration write transactions as
delayed transactions in PCI mode, or as split transactions in PCI-X mode.
Tsi310 User Manual
80B6020_MA001_05
Page 42
2.4.3Type 1 to Type 1 Forwarding by Bridge
Type 1 to Type 1 transaction forwarding provides a means to configure devices when a
hierarchical bus structure containing two or more levels of bridges is used.
When the Tsi310 accepts a Type 1 configuration transaction destined for a PCI/PCI-X bus
downstream from its secondary interface, the bridge forwards the transaction unchanged to the
secondary bus. Eventually, this transaction is translated to a Type 0 configuration transaction or
to a special cycle transaction by a downstream bridge.
Downstream T ype 1 to Type 1 forwarding occurs when the following conditions are met during
the address phase:
•P_C/BE(3:0)# command indicates a configuration read or configuration write transaction
•P_AD(1:0) are equal to b‘01’
•the specified bus number is within the range defined by the secondary bus number register
(exclusive) and the subordinate bus number register (inclusive)
The Tsi310 also supports Type 1 to Type 1 forwarding of configuration write transactions
upstream to allow for the generation of upstream special cycle transactions, as described in
Section 2.4.4 on page 42. All upstream Type 1 configuration read transactions are ignored by
the bridge.
2. Bus Operation42
The Tsi310 forwards Type 1 to Type 1 configuration read and configuration write transactions
as delayed transactions in PCI mode, and as split transactions in PCI-X mode.
2.4.4Special Cycle Generation by the Bridge
The Type 1 configuration transaction format may be used to generate special cycle transactions
in hierarchical PCI/PCI-X systems. Special cycle transactions can be generated from Type 1
configuration write transactions in either the upstream or the downstream direction.
The Tsi310 initiates a special cycle on the destination bus when a Type 1 configuration write
transaction is detected on the initiating bus and the following conditions are met during the
address phase:
•The command is a configuration write
•Address bits AD(1:0) are b‘01’
•The device number in address bits AD(15:11) is equal to b‘11111’
•The function number in address bits AD(10:8) is equal to b‘111’
•The register number in address bits AD(7:2) is equal to b‘000000’
•The specified bus number is the same as the value in Tsi310’s secondary bus number
register (for downstream transactions) or matches the value in its primary bus number
register (for upstream transactions)
Tsi310 User Manual
80B6020_MA001_05
Page 43
2. Bus Operation43
When the Tsi310 initiates the transaction on the destination interface, the command is changed
from a configuration write to a special cycle. Devices that use special cycles ignore the address
and decode only the bus command. The data phase contains the special cycle message. The
transaction is forwarded as a delayed transaction in PCI mode and as a split transaction in PCI-X
mode. Once the transaction is completed on the destination bus through the detection of the
master abort condition, the Tsi310 completes the transaction on the originating bus by accepting
the retry of the delayed command in PCI mode, or by generating a completion message in
PCI-X mode.
Special cycle transactions received by the Tsi310 as a target are ignored.
Tsi310 User Manual
80B6020_MA001_05
Page 44
2. Bus Operation44
Tsi310 User Manual
80B6020_MA001_05
Page 45
3. Clocking and Reset Options
This chapter discusses the following topics:
•“Clocking Domains” on page 45
•“Clock Jitter” on page 46
•“Mode and Clock Frequency Determination” on page 46
•“Clock Stability” on page 48
•“Driver Impedance Selection” on page 49
•“Reset Functions and Operations” on page 50
•“Bus Parking and Bus Width Determination” on page 53
•“Power Management and Hot-Plug” on page 54
•“Secondary Device Masking” on page 55
•“Handling of Address Phase Parity Errors” on page 55
45
•“Optional Base Address Register” on page 55
•“Optional Configuration Register Access from the Secondary Bus” on page 56
•“Short Term Caching” on page 57
3.1Clocking Domains
The Tsi310 has two clocking domains, one for the primary interface and one for the secondary
interface. Each interface has its own clock input pin. The primary interface is controlled by the
P_CLK input. The secondary interface and the internal arbiter are controlled by the S_CLK
input. The T si310 does not supply the clocks on either interface. The two bus clocks may be run
synchronously or asynchronously to one another. The two clock frequencies are independent of
each other and each may have any value allowed by the PCI/PCI-X bus architectures. A spread
spectrum clock input is supported for either or both interfaces within the architectural bounds.
The Tsi310 contains a separate internal phase-locked loop (PLL) circuit for each clocking
domain. The PLL for each interface is employed when its bus is running in PCI-X mode, as
determined by the bus initialization process described below . When either bus is running i n PCI
mode, the respective PLL is bypassed to allow for any clock frequency from zero to 66 MHz.
Tsi310 User Manual
80B6020_MA001_05
Page 46
3.2Clock Jitter
Clock jitter is defined as the relationship of one clock edge to a subsequent clock edge,
measured at the same point. If these two edges are separated by one clock cycle, it is called
cycle-to-cycle or short-term jitter. If they are separated by hundreds or thousands of cycles, it is
called long-term jitter. As specified in Section 8 on page 191, the Tsi310 tolerates a maximum
of ± 250 ps of short-term and long-term jitter on each of its clock inputs. Clock jitter introduced
by the internal PLLs of the bridge is accounted for within this maximum specification.
Careful design of the clock generation circuitry is an important factor in determining the speed
of the bus. As indicated in the PCI and PCI-X architectures, all sources of clock jitter must be
considered when determining the bus clock frequency. The minimum and maximum clock
period specifications must not be violated for any single clock cycle. The system clock output
period, including all sources of clock period variation such as jitter and component tolerances,
must always be within the minimum and maximum limits defined for the mode in which the bus
is configured. For example, if a specific system clock design has a maximum clock period
variation of 180 ps, then the nominal clock period for the PCI-X 133 range needs to be at least
7.68ns (7.5ns + 0.180ns), making the maximum frequency allowed for this case is just over 130
MHz.
3. Clocking and Reset Options46
3.3Mode and Clock Frequency Determination
As explained in Sections 6.2 and 8.9 of the PCI-X Addendum to PCI Local Bus Specification
(Revision 1.0a), the mode and frequency range of each bus is determined by the values on its
M66EN and PCIXCAP signals when the bus reset signal is active. Each bus client is then
informed of the determination through an initialization pattern that is broadcast at the
de-assertion or rising edge of the reset signal. This process is accomplished on the secondary
interface differently than on the primary interface, due to architectural requirements for PCI-X
bridges. The differences for each interface are discussed in the following sections.
3.3.1Primary Interface
The primary interface is capable of operating in either the conventional PCI mode or in PCI-X
mode, at any of the defined frequency ranges. When the Tsi310 is used on an add-in card, the
M66EN and PCIXCAP pins on the card edge connector should be left unconnected (except for a
required decoupling capacitor to provide an AC return path) to indicate this maximum
capability. As defined by Section 9.10 of the PCI-X Addendum to PCI Local Bus Specification (Revision 1.0a), an add-in card’s PCIXCAP pin must be consistent with the 133 MHz Capable
bit in the PCI-X Bridge Status register. When the Tsi310 is used on a motherboard, the system
designer should wire the M66EN and PCIXCAP signal networks to all clients on the bus in the
architected fashion to achieve the desired results.
Tsi310 User Manual
80B6020_MA001_05
Page 47
3. Clocking and Reset Options47
The T si310 does not have I/O pins for th e M66EN or PCIXCAP signals on its primary interface.
The bridge adjusts its internal configuration (including its internal PLLs, if appropriate) solely
on the basis of the initialization pattern it detects on the signals P_DEVSEL#, P_STOP#, and
P_TRDY# at the rising edge of P_RST#. If the internal PLL is used (the bus is configured in
PCI-X mode), a maximum of 100 s from the rising edge of P_RST# is required to lock the PLL
to the frequency of the clock supplied on the P_CLK input.
3.3.2Secondary Interface
The secondary interface is also capable of operating in either conventional PCI mode or in
PCI-X mode, at any of the defined frequency ranges. Since the Tsi310 acts as the central
resource for the secondary bus, it controls the mode and frequency determination process. As
recommended by Section 14.2 of the PCI-X Addendum to PCI Local Bus Specification (Revision 1.0a), the bridge uses a programmable pull-up circuit to accomplish this. Figure 3
shows the programmable pull-up circuit and the structure of the network that is connected to the
S_PCIXCAP input of the bridge. Examples of the connections that are expected when
PCI-X 66, PCI-X 133, and conventional PCI clients are attached to the bus are also shown (for
more information, see the PCI-X Addendum). There are two pull-up resistors in the circuit. The
first is an external weak pull-up whose value of 56kis selected to set the voltage of the
S_PCIXCAP input below its low threshold when a PCI-X 66 client is attached. The second is a
strong pull-up, externally wired between the S_PCIXCAP and S_PCIXCAP_PU pins on the
module. Its value of 1k is selected to set the voltage of the S_PCIXCAP input above its high
threshold when all clients on the bus are only PCI-X 66 capable.
During the mode and frequency determination process, the S_PCIXCAP_PU driver is initially
disabled, effectively removing the strong pull-up resistor from the circuit. The Tsi310 begins by
sampling the value on its S_PCIXCAP input. If it detects a b’0’ value, one or more clients have
either pulled the network to ground (if they are PCI-X 66 capable) or tied it to ground (if they
are only capable of conventional PCI operation). To distinguish between these two cases, the
bridge then enables its S_PCIXCAP_PU driver to put the strong pull-up into the circuit. If, after
a sufficient time, the S_PCIXCAP input remains at a b’0’ value, the network must be tied to
ground by one or more clients, and the bus is initialized to the conventional PCI mode. If the
network can be pulled up, one or more clients are capable of only PCI-X 66 operation (and there
are no conventional PCI devices), so the bus is initialized to PCI-X 66 mode.
If the Tsi310 initially samples a b’1’ value on the S_PCIXCAP input, then all clients on the bus
are capable of PCI-X 133 operation. The bridge then samples the S_SEL100 input to distinguish
between the 66-100 MHz and the 100-133 MHz clock frequency ranges. If it detects a b’1’
value on the S_SEL100 input, the bus is initialized with the PCI-X 100 initialization pattern. If
the value is b’0’, the PCI-X 133 initialization pattern is used. These two ranges allow
adjustment of the clock frequency to account for bus loading conditions.
Tsi310 User Manual
80B6020_MA001_05
Page 48
Figure 3: Programmable Pull-up Circuit
3.3V
3.3V
S_PCIXCAP
S_PCIXCAP_PU
Weak
Pull-up
Strong
Pull-up
For PCI-X
66 MHz Cards
For PCI-X
100/133 MHz Cards
For PCI
Cards
S_SEL100
3.3V
For 100 MHz
For 133 MHz
Enabled During
Bus Capability
Determination
Tsi310
10k0.01uF0.01uF
0.01uF
56k
10k
1k
3. Clocking and Reset Options48
Since the internal PLL is bypassed in PCI mode and the S_CLK input is used directly, the
Tsi310 has no need to distinguish between the PCI 66 and PCI 33 modes. Therefore the Tsi310
does not have an I/O pin for the M66EN signal on its secondary interface. This signal should be
routed to all devices on the bus in case the other clients require it.
3.4Clock Stability
The PCI/PCI-X architectures specify that the bus clock must be stable and running at its
designated frequency for at least 100s prior to the de-assertion of the bus reset signal. As the
Tsi310 does not generate the secondary bus clock but does control the secondary bus reset
signal, it must detect when the S_CLK input has become stable in order to meet this
requirement. The input signal S_CLK_ST ABLE is provided for thi s purpose. During a bus reset,
the bridge waits for the assertion of the S_CLK_STABLE input before executing the mode and
frequency determination sequence described in Section 3.3.2 on page 47.
Tsi310 User Manual
80B6020_MA001_05
Page 49
3. Clocking and Reset Options49
The Tsi310 is expecting at most one transition on the S_CLK_STABLE input from the not
stable to the stable state. The S_CLK_STABLE input may also be tied-up if the secondary clock
input will always be stable prior to the de-assertion of the primary bus reset signal or the
secondary bus reset bit of the bridge control register (see Section 3.6.2 on page 51).There are
several possibilities for the source of the S_CLK_STABLE input signal. For example: some
clock generation circuits that use phase-locked loops provide a lock indicator that may be used
for this purpose. Care must be taken to assure that the lock indicator does not toggle randomly
while the PLL is locking to the desired frequency before reaching a steady state. Another
possibility is to tie-up the signal, this may be useful for fixed frequency applications with simple
clock generators or oscillators. A third possibility may be to use a ‘power good’ indicator, if the
proper stability assurances can be made. Other ways to provide the S_CLK_STABLE input
signal may also be possible.
The S_CLK_ST ABLE input provides another measure of control for cases where the secondary
bus mode and clock frequency could vary from reset to reset, as in motherboard applications
with pluggable slots. In these applications the external clock generation circuitry will need to
adapt to the changes along with the Tsi310. If the S_CLK_STABLE signal is initially held low
during reset, the bridge will not control the S_PCIXCAP network and the clock generation
circuitry is free to do its own mode and frequency determination sequence. The clock frequency
may be adjusted based on the number of populated slots, determined by the PRSNT pins of the
bus. Once the frequency of the S_CLK input is stable, the clock circuit can assert the
S_CLK_STABLE signal to allow the bridge to complete the reset sequence. The clock
generation circuitry must ensure that the clock frequency it provides falls within the range that
the bridge will determine and broadcast on the initialization pattern. To do this, the clock
generator may need to drive the proper values on the S_SEL100 and S_PCIXCAP inputs, in
addition to controlling the S_CLK_STABLE signal. A mismatch between the broadcast
initialization pattern and the actual operating mode and frequency of the bus is a violation of the
architecture and will cause unpredictable results.
3.5Driver Impedance Selection
On the Tsi310, the output drivers for the bussed PCI/PCI-X interface signals are capable of two
different output impedances, a 40 ohm output impedance for point-to-point applications and a
20 ohm output impedance for multi-point configurations. The output impedance for the primary
and secondary interfaces is separately controlled. The Tsi310 selects a default impedance value
at the de-assertion of the bus reset on the basis of the bus mode and frequency initialization
pattern which was received on the primary interface or generated on the secondary interface. It
is assumed that if a bus is configured to be in the PCI-X 133 mode, it will be lightly loaded and
therefore have a higher impedance. The drivers are put into point-to-point mode for this case.
For all other PCI-X and all PCI configurations, the bridge assumes that the bus is more heavily
loaded and has a lower impedance, so the drivers are set to multi-point mode.
Tsi310 User Manual
80B6020_MA001_05
Page 50
3. Clocking and Reset Options50
There may be some applications for which these assumptions are inaccurate. For example, a
conventional PCI device may be connected in a point-to-point manner. For exceptions like this,
two control input signals are provided, P_DRVR_MODE for the primary interface and
S_DRVR_MODE for the secondary interface. When these inputs are pulled high, the Tsi310
changes the output impedance of the drivers on their respective interfaces to the opposite state
than was assumed by default (see Table 6).
Table 6: Driver Impedance Selection
Default Driver
Mode
Primary Bus
Mode
Conventional
PCI
PCI-X 66Multi-point (20)Point-to-point
PCI-X 100Multi-point (20)Point-to-point
PCI-X 133Point-to-point
a. Note that the values on these inputs are only valid at reset time; they may not be used to change the driver mode
dynamically, though they may be set differently at each reset if desired to account for changes in bus loading and
mode. Regardless of the driver impedance used, signal analysis should always be done with the actual or expected
bus topology and wiring to verify proper operation. Nets may need to be tuned and series terminations or other
adjustments may be required in order to meet the frequency targets.
(P_DRVR_MODE
=0)
Multi-point (20)Point-to-point
(40)
a
Default Driver
Driver Mode if
P_DRVR_MODE=
1
(40)
(40)
(40)
Multi-point (20)PCI-X 133Point-to-point
Secondary
Bus Mode
Conventional
PCI
PCI-X 66Multi-point (20)Point-to-point
PCI-X 100Multi-point (20)Point-to-point
Mode
(S_DRVR_MODE
=0)
Multi-point (20)Point-to-point
(40)
Driver Mode if
S_DRVR_MODE=
1
(40)
(40)
(40)
Multi-point (20)
3.6Reset Functions and Operations
Each bus interface has an asynchronous bus reset signal that is used at power-on and other times
to place the Tsi310 into a known state. On the primary interface, the reset signal is an input to
the Tsi310. On the secondary interface, the reset signal is an output driven by the bridge in its
role as the central resource for that bus.
3.6.1Primary Reset
The bus reset for the primary interface is called P_RST#. It is an input to the Tsi310 and is
controlled by an external upstream central resource. When asserted (see Figure 4 on page 52
and Table 7 on page 53) it forces all bus output signals from the bridge into their benign states
and sets all configuration registers within the Tsi310 to their reset values as defined in
Section 2.4 on page 37. Activating the P_RST# signal also causes the secondary bus reset signal
to be asserted, as required by the PCI and PCI-X specifications.
Tsi310 User Manual
80B6020_MA001_05
Page 51
3. Clocking and Reset Options51
On the de-assertion or rising edge of the P_RST# signal, the initialization pattern is received off
of the bus and latched into the bridge. If the indication is that the primary bus is operating in
PCI-X mode, an internal PLL sources the clock tree for the primary clock domain. The
appropriate range and tuning bits for the PLL are set according to the indicated frequency range,
and an internal PLL reset signal is deactivated to allow the PLL to begin locking to the P_CLK
input frequency. Since the PLL requires an allowance of 100 s to accomplish this frequency
lock, an internal reset is held on the logic in the primary clock domain until this time period has
elapsed. While the internal logic reset is active, the bridge will not respond to any primary bus
transactions. When the primary bus is operating in PCI mode, the internal PLL for the primary
interface is not used. In this case, the internal PLL reset remains activated, keeping the PLL in
the bypass mode, and the internal logic reset is held for only seven additional primary clock
cycles after the rising edge of P_RST#.
3.6.2Secondary Reset
The bus reset for the secondary interface is called S_RST#, it is an output from the Tsi310.
Whenever P_RST# is asserted or when the secondary bus reset bit (bit 6) of the bridge control
register is set to b’1’, S_RST# is asserted immediately, asychronously to the secondary bus
clock. When the secondary bus reset bit is being used to control S_RST#, the software must be
sure that the required minimum reset active time (T
) of 1 ms is met.
rst
Several things must occur at or prior to the de-assertion of the secondary bus reset signal. Once
P_RST# is de-asserted or the secondary bus reset bit is changed from b’1’ to b’0’, indicating
that S_RST# should be deactivated, the Tsi310 will wait for the S_CLK_STABLE signal to be
asserted before proceeding. The S_CLK input must be stable at a frequency within the bus
capability limits prior to the assertion of S_CLK_STABLE. Since the PCI Local Bus Specification (Revision 2.2) requires that the bus clock be stable for at least 100 s prior to the
de-assertion of the bus reset, S_CLK_STABLE serves as a gate to a timer that ensures that this
requirement is met. During this time delay period, the determination of the secondary bus mode
and frequency capability is made through the use of the programmable pull-up circuit described
in Section 3.3.2 on page 47. This process may include up to 80 s for the capacitive load on the
S_PCIXCAP net to be charged, making it prudent to overlap the two functions. By the time the
100 s timer expires, the bus capability will have been determined and the appropriate
initialization pattern can be driven on the secondary interface. The S_RST# signal is then
de-asserted a minimum of ten secondary bus cycles later.
Tsi310 User Manual
80B6020_MA001_05
Page 52
3. Clocking and Reset Options52
P_CLK
S_AD[31:00]
P_RST#
S_CLK
p_internal_rst#
2456713
P_Cycle
s_internal_rst#
T
pirstdly
S_PCIXCAP_PU
S_STOP#:S_TRDY#
T
xcap
S_RST#
S_DEVSEL#:
T
sirstdly
00
1XX
T
srstdly
S_REQ64#
S_CLK_STABLE
Bus parked when reset
When the secondary bus is operating in PCI-X mode, an internal PLL sources the clock tree for
the secondary clock domain inside the Tsi310. The appropriate range and tuning bits for the
PLL are set once the initialization pattern is known, and an internal PLL reset signal is
deactivated to allow the PLL to begin locking to the S_CLK input frequency. The PLL requires
an allowance of 100 s to accomplish this frequency lock. An internal reset is held on the logic
in the secondary clock domain until this time period has elapsed. While the internal reset is
active, the Tsi310 will not respond to any secondary bus transactions. When the secondary bus
is operating in PCI mode, the internal PLL for the secondary interface is not used. In this case,
the internal PLL reset remains activated, keeping the PLL in the bypass mode, and the internal
logic reset is held for only five additional secondary clock cycles.
Figure 4: De-assertion of S_RST#
Tsi310 User Manual
80B6020_MA001_05
Page 53
3. Clocking and Reset Options53
In Table 7, the terms “P_cycles” and “S_cycles” refer to clock cycles whose period is
determined by the P_CLK and S_CLK input frequencies, respectively. Since the time periods
listed in the table are based on counters, different clock rates will result in different effective
delays, as shown. The counter values have been selected to meet the various minimum delay
requirements, but will result in longer times when the clock period lengthens.
Table 7: Delay Times for De-assertion of S_RST#
PCIPCI-X (66 MHz)PCI-X (100 MHz)PCI-X (133 MHz)
T
pirstdly
T
xcap
T
srstdly
T
sirstdly
7 P_cycles6678 P_cycles
100 s - 133 s
6675 P_cycles6675 P_cycles
100 s - 133 s
11 S + 7 P_cycles11 S + 7 P_cycles11 S + 7 P_cycles11 S + 7 P_cycles
16 S_cycles6687 S_cycles
100 s - 133 s
13350 P_cycles
133 s - 200 s
13347 P_cycles
133 s - 200 s
13359 S_cycles
133 s - 200 s
3.7Bus Parking and Bus Width Determination
On the secondary interface, as required by the PCI-to-PCI Bridge Architecture Specification
(Revision 2.0), the S_AD(31:0), S_C/BE(3:0), and PAR signals will be driven to zeros
whenever S_RST# is asserted. This is known as bus parking. The signals are driven low within
a few cycles of the falling edge of S_RST#; they are released (placed in the high-Z state) in the
cycle following the rising edge of S_RST#.
The Tsi310 is also required to drive S_REQ64# low for at least ten cycles prior to the
de-assertion of S_RST#, to allow devices to determine whether they are connected on a 64-bit
data path or a 32-bit data path. For convenience, this is done coincident with the broadcasting of
the initialization pattern, as shown in Figure 4 and Table 7.
13350 P_cycles
100 s - 133 s
13347 P_cycles
100 s - 133 s
13359 S_cycles
100 s - 133 s
Tsi310 User Manual
80B6020_MA001_05
Page 54
3.8Power Management and Hot-Plug
The Tsi310 is compliant with the minimum requirements of the PCI Bus Power Management
Interface Specification (Revision 2.0), as it supports the D0 and D3 power management states
and the power management capabilities registers. No other p ower management functions are
implemented by the Tsi310. Power management events (PMEs) are not supported.
The transition into a D3 power management state by the Tsi310 will be the result of either a
software action or the removal of power. The D3 state has two variants that are supported, D3
and D3
signals are driven to their benign state and the bridge only accepts Type 0 configuration
transactions on the primary interface. On the transition from the D3
configuration registers are returned to their reset values without the generation of a secondary
side PCI reset (S_RST#). The generation of a secondary side PCI reset after transitioning to the
DO state is supported by software writing to the bridge control register x'3E' bit 6.
. When the bridge transitions from the D0 state to the D3
cold
3. Clocking and Reset Options54
state, the secondary bus
hot
to the D0 state, all
hot
hot
The transition to the D3
state occurs when power is removed from the device. The Tsi310
cold
will be in the uninitialized D0 state once power is reapplied and the power-on sequences
associated with P_RST# and S_RST# described in Section 3.6.1 on page 50 and Section 3.6.2
on page 51 are complete. These power-on sequences require software to fully initialize and
configure the bridge.
The Tsi310 contains no functions to specifically assist or preclude its use in a hot-plug system.
In such an environment, each hot-plug slot must be independently controlled using an external
hot-plug controller. Such a controller is required to perform the various initialization and reset
functions described above for the slots under its control. In addition, before connecting those
slots to the rest of the bus, it must assure that the capabilities of devices plugged into the slots
match the mode and operating frequency of the bus. Presumably, the hot-plug controller will
need to remember the initialization pattern broadcast at the last bus reset. If it detects a device
with the same or greater capability than what the bus is running, it should initialize the card with
the stored pattern before connecting to the bus. If it detects a lower capability , then a bus reset is
required and the entire bus must be reconfigured.
The Tsi310 I/O and CORE supplies must be completely powered up before any of
its I/O pads — its signal I/O pads or pins — receive power. If an I/O pad is powered
up before VDD, current can be drawn from the source connected to the pad through
the T si310 and i nto VDD. This current may impact the operation or reliability of the
part.
Tsi310 User Manual
80B6020_MA001_05
Page 55
3. Clocking and Reset Options55
3.9Secondary Device Masking
The Tsi310 supports the masking of secondary devices through configuration/power strapping
of the secondary bus private device mask register. The process of converting Type 1
configuration transactions to Type 0 configuration transactions is modified by the contents of
the secondary bus private device mask register. A configuration transaction that tar gets a device
masked by this register is routed to device 15. Secondary bus architectures that are designed to
support masking of devices should not implement a device number 15 (that is, S_AD(31)).
The device mask bit options (device numbers 1, 4, 5, 6, 7, 9, and 13) defined by the bridge
allows architectures to support private device groupings that use a single or multiple interrupt
binding (for more information, see PCI-to-PCI Bridge Architecture Specification (Revision 2.0)).
3.10Handling of Address Phase Parity Errors
When an address parity error is detected by the Tsi310, the transaction will not be claimed (by
not asserting DEVSEL#) and is allowed to terminate with a master abort. The bridge will detect
address parity errors for all transactions on both the primary and secondary interfaces. The
result of an address parity error will be controlled by the parity error response bits in both the
command register and the bridge control register.
3.11Optional Base Address Register
The 64-bit Base Address register located in the Tsi310 configuration space at offsets x'10' and
x'14' can optionally be used to acquire a 1 MB memory region at system initialization. The PCI
2.2 specification calls for the region that is defined by this register to be used by the bridge
itself. The Tsi310 uses this register to claim an additional prefetchable memory region for the
secondary bus. When used in conjunction with the secondary device masking, this allows for the
acquisition of memory space for private devices that are not otherwise viewable by the system
software.
The Optional Base Address Register can be used by primary bus masters to access locations on
the secondary side of the bridge only. Accesses from the secondary interface are ignored by this
BAR whether they fall within or outside the 1 MB memory region.
Tsi310 User Manual
80B6020_MA001_05
Page 56
3. Clocking and Reset Options56
This 64-bit base address register and the memory space defined by it are enabled by the
strapping pin, BAR_EN. When BAR_EN is pulled low, this register location returns zeros for
reads and cannot be written. When BAR_EN is pulled high, the upper memory base address
register and lower memory base address registers combined specify address bits 63:20 of a
memory region. Memory accesses on the primary bus are compared against this register, if
address bits 63:20 are equal to bits 63:20 of the address defined by the combination of the lower
memory base address register and the upper memory base address register, the access is claimed
by the Tsi310 and passed through to the secondary bus. Memory accesses on the secondary bus
are also compared against this register, if address bits 63:20 are equal to bits 63:20 of the
address defined by the combination of the lower memory base address register and the upper
memory base address register, the access is ignored by the Tsi310.
3.12Optional Configuration Register Access from the
Secondary Bus
On the secondary bus, the Tsi310 responds to a Type 0 configuration transaction by accepting
the transaction when the following conditions are met during the address phase:
•S_C/BE(3:0)# command indicates a configuration read or configuration write transaction
•S_AD(1:0) are b‘00’
•S_IDSEL is asserted
•The Bus Master control bit in the Command register must be set to b‘1’ from the Primary
Interface
Applications that do not require access to the bridge configuration registers from the secondary
bus should pull the S_IDSEL pin low.
Tsi310 User Manual
80B6020_MA001_05
Page 57
3. Clocking and Reset Options57
3.13Short Term Caching
Short Term Caching was developed to provide performance improvements where upstream
devices are not able to stream data continuously to meet the prefetching needs of the Tsi310. As
defined in the PCI-to-PCI Bridge Architecture Specification (Revision 2.0), when the master
completes the transaction, the bridge is required to discard the balance of any data that was
prefetched for the master. To prevent performance impacts when dealing with target devices that
can only stream data of from 128 to 512 bytes before disconnecting, the Tsi310 has a feature
called “Short Term Caching”. This feature applies only when the secondary bus is operating in
PCI mode and provides a time limited read data cache in which the bridge will not discard
prefetched read data after the request has been completed on the initiating bus.
Short Term Caching is an optional feature which is enabled by setting the “Miscellaneous
Control Register 2” bits 8 and 15. When enabled, the Tsi310 will not discard the additional
prefetched data when the read transaction has been completed on the initiating bus. As such, the
Tsi310 will continue to prefetch data up to the amount specified by the “Secondary Data
Buffering Control Register” offset x’42’ bits 14:12. Should the initiator generate a new
transaction requesting the previously prefetched data, the Tsi310 will return that data. However,
the Tsi310 will discard the data approximately 64 secondary bus side clocks after some of the
data for a request has been returned to the initiator, and the init iator has not requested addi tional
data.
If this feature is enabled, it will apply to all devices attached to the secondary side of the T si310.
System designers need to ensure that all attached devices have memory region(s) that are
architected to be accessed by only one master and that the additional prefetching will present
data to the initiator in the same state as if the initial transaction were continued. This feature
should only be used in system designs that are able to ensure that the data provided to the master
has not been modified since the initial transaction.
A clear understanding of all the secondary side device’s device drivers and memory
architectures, and ensuring that the PCI-to-PCI Bridge Architecture Specification
(Revision 2.0) as stated in Chapter 5, sections 5.1 Prefetching Read Data and 5.6.2
Stale Data has been strongly adhered to, is required to prevent stale data from being
delivered to the master.
Tsi310 User Manual
80B6020_MA001_05
Page 58
3. Clocking and Reset Options58
Tsi310 User Manual
80B6020_MA001_05
Page 59
4. Transaction Ordering
This chapter discusses the following topics:
•“Overview of Transaction Ordering” on page 59
•“General Ordering Guidelines” on page 59
•“Ordering Rules” on page 60
4.1Overview of Transaction Ordering
To maintain data coherence and consistency, the Tsi310 complies with the ordering rules set
forth in the PCI Local Bus Specification (Revision 2.2) for the PCI mode and the PCI-X Addendum to PCI Local Bus Specification (Revision 1.0a) for the PCI-X mode.
59
This chapter describes the ordering rules that control transaction forwarding across the Tsi310.
For more information on transaction ordering, see Appendix E of the PCI Local Bus
Specification (Revision 2.2) for the PCI mode and Section 8.4.4 of the PCI-X Addendum to PCI
Local Bus Specification (Revision 1.0a) for the PCI-X mode.
4.2General Ordering Guidelines
Independent transactions on the primary and secondary buses have a relationship only when
those transactions cross the Tsi310.
The following general ordering guidelines govern transactions crossing the Tsi310:
•Requests terminated with target retry can be accepted and completed in any order with
respect to other transactions that have been terminated with target retry. If the order of
delayed or split requests is important, the initiator should not start a second delayed or split
transaction until the first transaction has been completed. If more than one delayed or split
transaction is initiated, the initiator should repeat all retried requests, using some fairness
algorithm. Repeating a delayed or split transaction cannot be contingent upon the
completion of another delayed transaction; otherwise, a deadlock can occur.
•Write transactions flowing in one direction have no ordering requirements with respect to
write transactions flowing in the opposite direction. The Tsi310 can accept posted write
transactions on both interfaces at the same time, and also can initiate posted write
transactions on both interfaces at the same time.
Tsi310 User Manual
80B6020_MA001_05
Page 60
•The acceptance of posted memory or memory write transactions as a target can never be
contingent on the completion of a non-locked, non-posted transaction as a master. This is
true of the bridge and must also be true of other bus agents; otherwise, a deadlock can
occur.
•The Tsi310 accepts posted memory or memory write transactions, regardless of the state of
completion of any delayed or split transactions being forwarded across the bridge.
4.3Ordering Rules
Tables 8 and 9 describe the ordering rules for the Tsi310 in the PCI-X and the PCI modes.
Table 8: Tsi310 Ordering Rules — PCI-X Mode
4. Transaction Ordering60
Can Row Pass Column?
Split Read
Bus Operation
Memory WriteNoYesYesYesYes
Split Read
Request
Split Write
Request
Split Read
Completion
Split Write
Completion
a. If the relaxed ordering bit is set in PCI-X-to-PCI-X mode or the enable relaxed ordering bit in the primary and/or
secondary data buffering control register in any other mode, Read completions can pass memory writes. For more
information, see the bit descriptions in Section 5.5.1 on page 105 and Section 5.5.2 on page 108.
b. Split read completions with the same sequence ID must remain in address order.
Memory Write
NoYesYesYesYes
NoYesNoYesYes
1) No
a
2) Yes
NoYesYesYesNo
Request
YesYes1) Yes
Split Write
Request
Split Read
Completion
b
2) No
Split Write
Completion
Yes
Tsi310 User Manual
80B6020_MA001_05
Page 61
4. Transaction Ordering61
Table 9: Tsi310 Ordering Rules — PCI Mode
Can Row Pass Column?
Bus Operation
Posted Memory
Posted Memory
Write
NoYesYesYesYes
Delayed Read
Request
Delayed Write
Request
Delayed Read
Completion
Delayed Write
Completion
Write
Delayed Read
NoYesYesYesYes
Request
Delayed Write
NoYesNoYesYes
Request
Delayed Read
Completion
Delayed Write
1) No
a
2) Yes
NoYesYesYesNo
YesYesYesYes
Completion
a. If the relaxed ordering bit is set in PCI-X-to-PCI-X mode or the enable relaxed ordering bi t in the primary and/or
secondary data buffering control register in any other mode, read completions can pass memory writes. For more
information, see the bit descriptions in Section 5.5.1 on page 105 and Section 5.5.2 on page 108.
Tsi310 User Manual
80B6020_MA001_05
Page 62
4. Transaction Ordering62
Tsi310 User Manual
80B6020_MA001_05
Page 63
5. Configuration Registers
This chapter describes the standard and device specific configuration registers contained within
the bridge. These registers provide various control and status reporting functions. Registers are
accessible from the primary interface using the configuration read and configuration write
commands.
This chapter discusses the following topics:
•“Overview of Registers” on page 63
•“Register Map” on page 65
•“Register Summary” on page 68
•“PCI Configuration Space Header Registers” on page 71
•“Device-Specific Configuration Space Registers” on page 105
63
5.1Overview of Registers
5.1.1Terms and Abbreviations
The following terms are used when describing Tsi310’s registers.
Table 10: Register Terms
TermDescription
RWRead/Write
RORead only
ReservedUnused. Do not write. Read back 0.
Tsi310 User Manual
80B6020_MA001_05
Page 64
5.1.2Configuration Space
The PCI and PCI-X specifications define a separate address space called the configuration space
in which the configuration registers are located. It is a contiguous block of 256 bytes,
subdivided into two regions:
1.The first 64 bytes are the PCI configuration space header region, which provides for
identification, configuration, and recovery capabilities.
2.The remaining 192 bytes are the PCI device dependent region, which provides for device
specific configuration data. Modification of the reserved bits contained within this region
may have serious and unpredictable effects on the operation of the Tsi310.
In addition, there are two versions of the PCI configuration space:
1.The standard configuration is often referred to as a Type 0 PCI configuration space header
because the value x‘00’ is stored in the PCI header type register (at offset x‘0E’).
2.The PCI-to-PCI bridge configuration is often referred to as a Type 1 PCI configuration
space header because the value x‘01’ is stored in the PCI header type register (at offset
x‘0E’). This chapter provides a specification for only the Type 1 PCI configuration space
header.
5. Configuration Registers64
The mandatory PCI configuration space registers perform these operations:
•Detect PCI devices and their functions
•Initialize PCI devices
•Assign system resources to PCI devices
•Support catastrophic error recovery
5.1.3Type 1 PCI Configuration Space Header
The 64-byte PCI configuration space header region has two subregions (see Table 11):
•The first 16 bytes are the PCI device independent region
•The remaining 48 bytes are the PCI Device Header Type region
Tsi310 User Manual
80B6020_MA001_05
Page 65
5. Configuration Registers65
5.2Register Map
The following table contains a map of Tsi310’s registers in the PCI Configuration Space. The
reserved registers and bits return zeros when read.
Table 11: Register Map
Bits/Register Names
Starting
Address
RegionSubregion31:2423:1615:0807:00
Device IDVendor IDx‘00’PCI
StatusCommandx‘04’
Class CodeRevision IDx‘08’
BISTHeader TypeLatency TimerCache Line
Size
Base Address Register 0x‘10’PCI Device
Base Address Register 1x‘14’
The following table provides a list of Tsi310’s registers.
Table 12: Register Summary
Starting
Register Name
PCI Configuration Space Header Registers
Address
5. Configuration Registers68
DescriptionSee Page
Vendor IDx‘00’Manufacturer ID, assigned by the PCI Special Interest
Group
Device IDx‘02’Device ID number72
Commandx‘04’PCI bus configuration parameters73
Statusx‘06’PCI event status75
Revision IDx‘08’Revision ID number77
Class Codex‘09’Class Code designator77
Cache Line Sizex‘0C’PCI cache line size in DWords78
Latency Timerx‘0D’Latency value of bus master79
Header Typex‘0E’Header type80
BISTx‘0F’not supported80
Base Addressx‘10’ x‘14’Optional base address register81
Primary Bus Numberx‘18’Bus number of primary interface PCI segment84
Secondary Bus Numberx‘19’Bus number of secondary interface PCI segment85
Subordinate Bus Numberx‘1A’Bus number of highest PCI segment behind bridge86
71
Secondary Latency Timerx‘1B’Value of secondary latency timer as bus master87
I/O Basex‘1C’Base of I/O address range bits88
I/O Limitx‘1D’Upper address of I/O address range bits89
Secondary Statusx‘1E’Secondary interface event status90
Memory Basex‘20Base of memory mapped I/O address range bits92
Memory Limitx‘22’Upper limit of memory mapped I/O address range bits93
Prefetchable Memory Basex‘24’Base of prefetchable memory address range bits94
Prefetchable Memory Limitx‘26’Upper limit of prefetchable memory address range bits95
Tsi310 User Manual
80B6020_MA001_05
Page 69
5. Configuration Registers69
Table 12: Register Summary (Continued)
Starting
Register Name
Prefetchable Base Upper 32 Bitsx‘28’Base of prefetchable address range bits 63:3296
Prefetchable Limit Upper 32 Bitsx‘2C’Upper limit of prefetchable address range bits 63:3297
I/O Base Upper 16 Bitsx‘30’Base of I/O address range bits 63:3298
I/O Limit Upper 16 Bitsx‘32’Upper limit of I/O address range bits 63:3299
Capabilities Pointerx‘34’Specifies a pointer to a capabilities list item100
Reserved Registersx‘35’Reserved100
Address
DescriptionSee Page
Interrupt Linex‘3C’Communicates interrupt line routing information between
Primary Data Buffering Controlx‘40’Provides controls for primary bus memory operations105
Secondary Data Buffering
Control
Miscellaneous Controlx‘44’Controls miscellaneous functions, such as parity error
Arbiter Modex‘50’Controls secondary bus arbitration logic113
Arbiter Enablex‘54’Enables arbitration for requestors of internal secondary
Arbiter Priorityx‘58’Indicates whether high or low priority is assigned to internal
SERR# Disablex‘5C’Controls asserti on of SERR# on primary bus119
x‘42’Provides controls for secondary bus memory operations108
operations
bus arbitration logic
secondary bus arbitration logic requests
101
111
115
117
Primary Retry Counterx‘60’Defines number of primary bus retries121
Secondary Retry Counterx‘64’Defines number of secondary bus retries123
Discard Timer Controlx‘68’Controls duration and enabling of discard timer125
Retry and Timer Statusx‘6C’Indicates expiration of a retry counter or discard timer127
Opaque Memory Enablex‘70’Enables all opaque memory registers128
Opaque Memory Basex‘74’Specifies base of opaque memory address range (bits
31:20)
Tsi310 User Manual
80B6020_MA001_05
129
Page 70
Table 12: Register Summary (Continued)
Starting
Register Name
Address
5. Configuration Registers70
DescriptionSee Page
Opaque Memory Limitx ‘76’Specifies upper limit of opaque memory address range
(bits 31:20)
Opaque Memory Base Upper 32
Bits
Opaque Memory Limit Upper 32
Bits
PCI-X IDx‘80’Identifies register set in Capabilities List as a PCI-X
Next Capabilities Pointerx‘81’Indicates more list items in Capabilities List134
PCI-X Secondary Statusx‘82’Reports status information about secondary interface135
PCI-X Bridge Statusx‘84’Identifies bridge capabilities and operating mode137
Secondary Bus Upstream Split
Transaction
Primary Bus Downstream Split
Transaction
Power Management IDx‘90’Identifies this register set in Capabilities List as a Power
x‘78’Specifies base of opaque memory address range (bits
63:32)
x‘7C’Specifies upper limit of opaque memory address range
(bits 63:32)
register set
x‘88’Controls bridge buffers for forwarding Split Transactions
from secondary requester to primary completer
x‘8C’Controls bridge buffers for forwarding Split Transactions
from primary requester to secondary completer
Management register set.
130
131
132
133
140
141
142
Next Capabilities Pointerx‘91’Indicates that there are no more items in the Capabilities
List
Power Management Capabilitiesx‘92’Reports secondary interface power management
capabilities
Power Management Control/
Status
PCI-to-PCI Bridge Support
Extensions
Data Registerx‘97’not implemented145
Secondary Bus Private Device
Mask
Miscellaneous Control Register 2x ‘B8’Provides addi tional control over the memory read prefetch
x‘94’Reports status of secondary register144
x‘96’Indicates that clocks are not stopped on a change of power
state
x‘B0’Masks devices on the secondary interface146
algorithm
142
143
145
148
Tsi310 User Manual
80B6020_MA001_05
Page 71
5. Configuration Registers71
5.4PCI Configuration Space Header Registers
These sections describe the individual registers of the entire 64-byte PCI configuration space
header region.
5.4.1Vendor ID Register
This register identifies the manufacturer using a unique vendor ID assigned by the PCI special
interest group.
Address Offsetx‘00’
AccessRead only
Reset Valuex‘1014’
Vendor ID
1514131211109876543210
Bit(s)AccessField Name and Description
15:0ROVendor ID.
This read-only register contains the Vendor ID. The value assigned is x‘1014’.
Note: The original manufacturer of the Tsi310 is IBM Corporation. The device was acquired by
Tundra Semiconductor then Tundra was acquired by IDT.
Tsi310 User Manual
80B6020_MA001_05
Page 72
5.4.2Device ID Register
This register identifies the device using a unique device ID.
Address Offsetx‘02’
AccessRead only
Reset Valuex‘01A7’
Device ID
1514131211109876543210
Bit(s)Access Field Name and Description
15:0RODevice ID.
This read-only register contains the Device ID. This value is x‘01A7’.
Note: The original manufacturer of the Tsi310 is IBM Corporation. The device was acquired by
Tundra Semiconductor then Tundra was acquired by IDT.
5. Configuration Registers72
Tsi310 User Manual
80B6020_MA001_05
Page 73
5. Configuration Registers73
5.4.3Command Register
This register provides a variety of configurable parameters defining the device’s interaction with
the PCI bus.
Address Offsetx‘04’
AccessSee individual bit fields.
Reset Valuex‘0000’
Reserved
1514131211109876543210
Bit(s)Access Field Name and Description
15:10ROReserved
9ROFast Back-to-Back Control
8RWSystem Error Control
7ROWait Cycle Control
Fast Back-to-Back Control
System Error Control
Wait Cycle Control
Parity Error Response
VGA Palette Snoop Control
Memory Write and Invalidate Control
Special Cycles Control
Bus Master Control
Memory Space Control
I/O Space Control
0 = Fast back-to-back transactions are allowed only for the same agent
This bit is ignored in PCI-X mode.
0 = Disable the SERR# output driver.
1 = Enable the SERR# output driver.
0 = Disable Address/Data stepping.
This bit is ignored in PCI-X mode.
Tsi310 User Manual
80B6020_MA001_05
Page 74
Bit(s)Access Field Name and Description
6RWParity Error Response
0 = Ignore detected parity errors.
1 = Respond to detected parity errors.
Controls the response to address and data parity errors on the primary interface. If this bit is
set, the bridge must take its normal action when a parity error is detected. If this bit is cleared,
the bridge must ignore any parity errors that it detects and continue normal operation. In either
case, the parity error detected bit of the Status register gets set if an address or data parity error
is detected.
5RWVGA Palette Snoop Control
0 = Disable palette snooping, treat palette accesses like all other accesses.
1 = Enable palette snooping.
4ROMemory Write and Invalidate Control
0 = Disable MWI.
This bit is ignored in PCI-X mode.
5. Configuration Registers74
3ROSpecial Cycles Control
0 = Ignore special cycle operations.
2RWBus Master Control
0 = Disable generating of the PCI accesses.
1 = Enable generating of the PCI accesses.
Note: A device configured in PCI-X mode is allowed to initiate a split completion transaction
regardless of the state of this bit.
1RWMemory Space Control
0 = Disable memory space accesses.
1 = Enable memory space accesses.
Address Offsetx‘06’
AccessSee individual bit fields. Reads to this register behave
normally . W rites are slightly different in that bits can be reset,
but not set. A bit is reset whenever the register is written, and
the data in the corresponding bit location is a ‘1’.
Reset Valuex‘02B0’ in PCI mode, x‘0230’ in PCI-X mode
Detected Parity Error
Signaled System Error
Received Master Abort
Received Target Abort
Signaled Target Abort
Device Select Timing
Master Data Parity Error
Fast Back-to-Back Capable
Reserved
66 MHz Capable
Capabilities List
Reserved
1514131211109876543210
Bit(s)Access Field Name and Description
15RWDetected Parity Error Status
0 = Device did not detect a parity error.
1 = Device detected a parity error.
14RWSignaled System Error Status
0 = Device did not generate a SERR# signal.
1 = Device generated a SERR# signal.
13RWReceived Master Abort Status
0 = Bus master transaction was not terminated with a bus master abort.
1 = Bus master transaction terminated with bus master abort.
12RWReceived Target Abort Status
0 = Bus master transaction was not terminated by a target abort.
1 = Bus master transaction terminated by a target abort.
11RWSignaled Target Abort S tatus
0 = Target device did not terminate a transaction with a target abort.
1 = Target device terminated a transaction with a target abort.
Tsi310 User Manual
80B6020_MA001_05
Page 76
Bit(s)Access Field Name and Description
10:9RODevice Select (DEVSEL) Timing Status
01 = Medium-speed device
8RWData Parity Status
0 = No data parity errors encountered.
1 = Data parity errors encountered (this bit for bus masters only).
7ROFast Back-to-Back Status
0 = Target not capable of accepting fast back-to-back transactions in PCI-X mode.
1 = Target capable of accepting fast back-to-back transactions in the conventional PCI mode.
This bit is set by hardware when the primary interface is in PCI mode, and is set to a b‘0’ when
the primary interface is in PCI-X mode.
6ROReserved
5RO66 MHz Capable Status
1 = Capable of 66 MHz.
5. Configuration Registers76
4ROCapabilities List
1 = The capabilities linked list is available and the value read at offset x‘34’ is a pointer in
configuration space to a linked list of new capabilities.
3:0ROReserved
Tsi310 User Manual
80B6020_MA001_05
Page 77
5. Configuration Registers77
5.4.5Revision ID Register
This register specifies the Revision ID for the PCI-X to PCI-X Bridge.
Address Offsetx‘08’
AccessRead only
Reset Valuex‘03’
Revision ID
76543210
Bit(s)Access Field Name and Description
7:0ROx‘00’ = Revision 1.0 of the device
x‘01’ = Revision 1.1 of the device
x‘02’ = Revision 2.0 of the device (Tsi310-133CE)
x’03’ = Revision 3.0 of the device (Tsi310A-133CE)
5.4.6Class Code Register
This register specifies the class code for a PCI-to-PCI Bridge device.
Address Offsetx‘09’
AccessRead only
Reset Valuex‘060400’
Class Code
23222120191817161514131211109876543210
Bit(s)Access Field Name and Description
23:0ROx‘060400’ for a PCI-to-PCI Bridge device which does not support subtractive decode.
Tsi310 User Manual
80B6020_MA001_05
Page 78
5.4.7Cache Line Size Register
This register specifies the cache line size in 32-bit DWord units (not used when the interface is
in PCI-X mode).
Address Offsetx‘0C’
AccessRead/Write
Reset Valuex‘00’
RestrictionsOnly one bit can be set at any time, if multiple bits are set or
Cache Line Size
Not supported
Not supported
5. Configuration Registers78
if the bits are in an invalid setting, these bits default to the 32
DWords setting.
76543210
Bit(s)Access Field Name and Description
7:6RWNot supported, must equal b‘00’.
5RWIf ‘1’, Cache Line = 32 DWords.
4RWIf ‘1’, Cache Line = 16 DWords.
3RWIf ‘1’, Cache Line = 8 DWords.
2RWIf ‘1’, Cache Line = 4 DWords.
1:0RWNot supported, must equal b‘00’.
Tsi310 User Manual
80B6020_MA001_05
Page 79
5. Configuration Registers79
5.4.8Latency Timer Register
This register specifies, in PCI bus clock units, the value of the latency timer for this device as a
bus master. Masters that can burst for more than two data phases must implement this register as
Read/Write.
Address Offsetx‘0D’
AccessSee individual fields
Reset Valuex'00' in PCI mode, x' 40' in PCI-X mode
Primary Latency Timer
76543210
Bit(s)Access Field Name and Description
7:3RWRead/Write to set granularity in 8-cycle increments.
2:0ROSet to b‘000’ to force 8-cycle increments for the latency timer.
Tsi310 User Manual
80B6020_MA001_05
Page 80
5.4.9Header Type Register
This read only register specifies that a type x‘01’ header is being used for this device.
Address Offsetx‘0E’
AccessRead only
Reset Valuex‘01’
Header Type
76543210
Bit(s)Access Field Name and Description
7:0ROx‘01’
5. Configuration Registers80
5.4.10BIST Register
This register is not supported by the Tsi310.
Address Offsetx‘0F’
Width8 bits
AccessRead only
Reset Valuex‘00’
RestrictionsNot supported
Tsi310 User Manual
80B6020_MA001_05
Page 81
5. Configuration Registers81
5.4.11Lower Memory Base Address Register
This register and the memory space defined by it are enabled by the strapping pin, BAR_EN.
When the BAR_EN pin is pulled low, this regist er location returns zeros for reads and cannot be
written. When the BAR_EN pin is pulled high, the lower memory base address register specifies
address bits 31:20 of the 64-bit memory base address register. Bits 3:0 are encoded to indicate
that this is part of a 64-bit register, and that it defines a prefetchable memory space.
Memory accesses on the primary bus are compared against this register , if address bits 63:20 are
equal to bits 63:20 of the address defined by the combination of the lower memory base address
register and the upper memory base address register, the access is claimed by the bridge and
passed through to the secondary bus.
Memory accesses on the secondary bus are also compared against this register, if address bits
63:20 are equal to bits 63:20 of the address defined by the combination of the lower memory
base address register and the upper memory base address register, the access is ignored by the
bridge.
The Optional Base Address Register can be used by primary bus masters to access locations on
the secondary side of the bridge only. Accesses from the secondary interface are ignored by this
BAR whether they fall within or outside the 1 MB memory region.
Address Offsetx‘10’
AccessSee individual fields
Reset Valuex‘0000 000C’ When BAR_EN (pin G2) is tied high. For more
information on strapping considerations, see Section 6.4 on
page 157.
x‘0000 0000’ When BAR_EN (pin G2) is tied low . For more
information on strapping considerations, see Section 6.4 on
Address bits 31:20 of the base address for an address range of prefetchable memory
operations that are passed from the primary to the secondary PCI bus.
19:4ROReserved
3ROPrefetchable indicator
Identifies the address range defined by this register as prefetchable.
2:1RODecoder Width
Indicates that this is the lower portion of a 64 bit register.
0RODecoder Type
Indicates that this register is a memory decoder.
5. Configuration Registers82
Tsi310 User Manual
80B6020_MA001_05
Page 83
5. Configuration Registers83
5.4.12Upper Memory Base Address Register
This register and the memory space defined by it are enabled by the strapping pin, BAR_EN.
When the BAR_EN pin is pulled low, this regist er location returns zeros for reads and cannot be
written. When the BAR_EN pin is pulled high, the upper memory base address register specifies
address bits 63:32 of the 64 bit memory base address register.
Memory accesses on the primary bus are compared against this register , if address bits 63:20 are
equal to bits 63:20 of the address defined by the combination of the lower memory base address
register and the upper memory base address register, the access is claimed by the bridge and
passed through to the secondary bus.
Memory accesses on the secondary bus are also compared against this register, if address bits
63:20 are equal to bits 63:20 of the address defined by the combination of the lower memory
base address register and the upper memory base address register, the access is ignored by the
bridge.
The Optional Base Address Register can be used by primary bus masters to access locations on
the secondary side of the bridge only. Accesses from the secondary interface are ignored by this
BAR whether they fall within or outside the 1 MB memory region.
When BAR_EN (pin G2) is tied low this register returns zero and
cannot be written. For more information on strapping considerations,
see Section 6.4 on page 157.
Address bits 63:32 of the base address for an address range of prefetchable memory
operations that are passed from the primary to the secondary PCI bus.
Tsi310 User Manual
80B6020_MA001_05
Page 84
5.4.13Primary Bus Number Register
The Primary Bus Number register records the bus number of the PCI bus segment to which the
primary interface of the bridge is connected. The configuration software programs the value in
this register. The bridge uses this register to decode Type 1 configuration transactions on the
secondary interface that must be converted to special cycle transactions on the primary
interface.
7:0RWSoftware sets this register to the bus number of the bus segment that is attached to the primary
interface of the bridge.
Tsi310 User Manual
80B6020_MA001_05
Page 85
5. Configuration Registers85
5.4.14Secondary Bus Number Register
The secondary bus number register records the bus number of the PCI bus segment to which the
secondary interface of the bridge is connected. The configuration software programs the value
in this register. The bridge uses this register to decode Type 1 configuration transactions on the
primary interface that must be converted to Type 0 configuration transactions on the secondary
interface. The bridge also uses the secondary bus number register and the subordinate bus
number register to determine when to forward Type 1 configuration transactions upstream.
7:0RWSoftware sets this register to the bus number of the bus segment that is attached to the
secondary interface of the bridge.
Tsi310 User Manual
80B6020_MA001_05
Page 86
5.4.15Subordinate Bus Number Register
The subordinate bus number register records the bus number of the highest numbered PCI bus
segment which is behind (or subordinate to) the bridge. The configuration software programs
the value in this register. The bridge uses this register in conjunction with the secondary bus
number register to determine when to respond to a Type 1 configuration transaction on the
primary interface and pass it to the secondary interface. The bridge also uses the secondary bus
number register and the subordinate bus number register to determine when to forward Type 1
configuration transactions upstream.
7:0RWSoftware sets this register to the bus number of the highest numbered bus segment behind (or
subordinate to) the bridge.
Tsi310 User Manual
80B6020_MA001_05
Page 87
5. Configuration Registers87
5.4.16Secondary Latency Timer Register
This register specifies, in PCI bus clock units, the value of the secondary latency timer for this
device as a bus master. Bus masters that can burst for more than two data phases must
implement this register as Read/Write.
Address Offsetx‘1B’
AccessSee individual fields
Reset Valuex'00' in PCI mode, x' 40' in PCI-X mode
Secondary Latency Timer
76543210
Bit(s)Access Field Name and Description
7:3RWRead/Write to set granularity in 8-cycle increments.
2:0ROForced to b‘000’ to force 8-cycle increments for the latency timer.
Tsi310 User Manual
80B6020_MA001_05
Page 88
5.4.17I/O Base Register
The I/O Base register specifies the base of the I/O address range bits 15:12 and is used in
conjunction with the I/O limit register and I/O base upper 16 bits and I/O limit upper 16 bits
registers to specify a range of 32-bit addresses supported for I/O transactions on the PCI bus.
Address bits 11:0 are assumed to be x‘000’ for the base address. This register also specifies that
the bridge supports 32-bit I/O addressing.
Address bits 15:12 of the base address for the address range of I/O operations that are passed
from the primary to the secondary PCI bus.
3:0ROSet to b‘0001’ to indicate that 32-bit I/O addressing is supported.
Tsi310 User Manual
80B6020_MA001_05
Page 89
5. Configuration Registers89
5.4.18I/O Limit Register
This register specifies the upper address of the I/O address range bits 15:12 and is used in
conjunction with the I/O base register and I/O base upper 16 bits and I/O limit upper 16 bits to
specify a range of 32-bit addresses supported for I/O transactions on the PCI bus. Address bits
11:0 are assumed to be x‘FFF’ for the limit address. This register also specifies that the bridge
supports 32-bit I/O addressing.
3:0ROSet to b‘0001’ to indicate that 32-bit I/O addressing is supported.
32-Bit
Addressing
Address bits 15:12 of the limit address for the address range of I/O operations that are passed
from the primary to the secondary PCI bus.
Tsi310 User Manual
80B6020_MA001_05
Page 90
5.4.19Secondary Status Register
This register is similar in function and bit definition to the Status register. However, its bits
reflect status conditions of the secondary interface.
Address Offsetx‘1E’
AccessSee individual bit fields. Writes are slightly different in that
bits can be reset, but not set. A bit is reset whenever the
register is written, and the data in the corresponding bit
location is a ‘1’.
Reset Valuex‘02A0’ in PCI mode, x‘0220’ in PCI-X mode
5. Configuration Registers90
Detected Parity Error
Received SERR#
Received Master Abort
Received Target Abort
Signaled Target Abort
DEVSEL# Timing
Master Data Parity Error
Fast Back-to-Back Capable
Reserved
1514131211109876543210
Bit(s)Access Field Name and Description
15RWDetected Parity Error Status
0 = Device did not detect a parity error.
1 = Device detected a parity error.
14RWSignaled System Error Status
0 = Device did not receive a SERR# signal on the secondary interface.
1 = Device received a SERR# signal on the secondary interface.
13RWReceived Master Abort Status
0 = Bus master transaction was not terminated with bus master abort.
1 = Bus master transaction terminated with bus master abort.
12RWReceived Target Abort Status
0 = Bus master transaction was not terminated by target abort.
1 = Bus master transaction terminated by target abort.
Reserved
66 MHz Capable
Tsi310 User Manual
80B6020_MA001_05
Page 91
5. Configuration Registers91
Bit(s)Access Field Name and Description
11RWSignaled Target Abort S tatus
0 = Target device did not terminate a transaction with target abort.
1 = Target device terminated a transaction with target abort.
10:9RODevice Select (DEVSEL#) Timing S tatus
01 = Medium-speed device
8RWData Parity Status
0 = No data parity errors encountered.
1 = Data parity errors encountered (this bit for bus masters only).
7ROFast Back-to-Back Capable
0 = Target not capable of accepting fast back-to-back transactions in PCI-X mode.
1 = Target capable of accepting fast back-to-back transactions in conventional mode.
This bit is set to a b‘1’ by hardware when the secondary interface is in PCI mode, and is set to
a b‘0’ when the secondary interface is in PCI-X mode.
6ROReserved
5RO66 MHz Capable
1 = Capable of 66 MHz.
4:0ROReserved.
Tsi310 User Manual
80B6020_MA001_05
Page 92
5.4.20Memory Base Register
This register specifies the base of the memory mapped I/O address range bits 31:20 and is used
in conjunction with the Memory Limit register to specify a range of 32-bit addresses supported
for memory mapped I/O transactions on the PCI Bus. Address bits 19:0 are assumed to be
x‘0 0000’ for the base address.
Address bits 31:20 of the base address for the address range of memory mapped I/O
operations that are passed from the primary to the secondary PCI bus.
3:0ROReserved
Reserved
Tsi310 User Manual
80B6020_MA001_05
Page 93
5. Configuration Registers93
5.4.21Memory Limit Register
This register specifies the upper address of the memory-mapped I/O address range bits 31:20
and is used in conjunction with the memory base register to specify a range of 32-bit addresses
supported for memory mapped I/O transactions on the PCI bus. Address bits 19:0 are assumed
to be x‘F FFFF’ for the limit address.
Address bits 31:20 of the limit address for the address range of memory mapped I/O operations
that are passed from the primary to the secondary PCI bus.
3:0ROReserved
Reserved
Tsi310 User Manual
80B6020_MA001_05
Page 94
5.4.22Prefetchable Memory Base Register
This register specifies the base of the prefetchable memory address range bits 31:20 and is used
in conjunction with the prefetchable memory limit register, the prefetchable base upper 32 bits
register, and the prefetchable limit upper 32 bits register to specify a range of 64-bit addresses
supported for prefetchable memory transactions on the PCI bus. Address bits 19:0 are assumed
to be x‘0 0000’ for the base address. This register also specifies that the bridge supports 64-bit
prefetchable memory addressing.
Address bits 31:20 of the base address for the address range of prefetchable memory
operations that are passed from the primary to the secondary PCI bus.
3:0RO64-bit addressing. Set to b‘0001’ to indicate support of 64-bit addressing.
Tsi310 User Manual
80B6020_MA001_05
Page 95
5. Configuration Registers95
5.4.23Prefetchable Memory Limit Register
This register specifies the upper address of the prefetchable memory address range bits 31:20
and is used in conjunction with the prefetchable memory base register, the prefetchable base
upper 32 bits register, and the prefetchable limit upper 32 bits register to specify a range of
64-bit addresses supported for prefetchable memory transactions on the PCI bus. Address bits
19:0 are assumed to be x‘F FFFF’ for the limit address. This register also specifies that the
bridge supports 64-bit prefetchable memory addressing.
Address bits 31:20 of the limit address for the address range of prefetchable memory
operations that are passed from the primary to the secondary PCI bus.
3:0RO64-bit addressing. Set to b‘0001’ to indicate support of 64-bit addressing.
Tsi310 User Manual
80B6020_MA001_05
Page 96
5. Configuration Registers96
5.4.24Prefetchable Base Upper 32 Bits Register
This register specifies the base of the prefetchable memory address range bits 63:32 and is used
in conjunction with the prefetchable memory base register, the prefetchable memory limit
register, and the prefetchable limit upper 32 bits register to specify a range of 64-bit addresses
supported for prefetchable memory transactions on the PCI bus. Address bits 19:0 are assumed
to be x‘0 0000’ for the base address.
31:0RWAddress bits 63:32 of the base address for the address range of prefetchable memory
operations that are passed from the primary to the secondary PCI bus.
Tsi310 User Manual
80B6020_MA001_05
Page 97
5. Configuration Registers97
5.4.25Prefetchable Limit Upper 32 Bits Register
This register specifies the upper address of the prefetchable memory address range bits 63:32
and is used in conjunction with the prefetchable memory base register, the prefetchable memory
limit register, and the prefetchable base upper 32 bits register to specify a range of 64-bit
addresses supported for prefetchable memory transactions on the PCI bus. Address bits 19:0 are
assumed to be x‘F FFFF’ for the limit address.
31:0RWAddress bits 63:32 of the limit address for the address range of prefetchable memory
operations that are passed from the primary to the secondary PCI bus.
Tsi310 User Manual
80B6020_MA001_05
Page 98
5.4.26I/O Base Upper 16 Bits Register
This register specifies the base of the I/O address range bits 31:16 and is used in conjunction
with the I/O base register, the I/O limit register, and I/O limit upper 16 bits register to specify a
range of 32-bit addresses supported for I/O transactions on the PCI bus. Address bits 11:0 are
assumed to be x‘000’ for the base address.
15:0RWAddress bits 31:16 of the base address for the address range of I/O operations that are passed
from the primary to the secondary PCI bus.
Tsi310 User Manual
80B6020_MA001_05
Page 99
5. Configuration Registers99
5.4.27I/O Limit Upper 16 Bits Register
This register specifies the upper address of the I/O address range bits 31:16 and is used in
conjunction with the I/O base register, I/O limit register and I/O base upper 16 bits register to
specify a range of 32-bit addresses supported for I/O transactions on the PCI bus. Address bits
11:0 are assumed to be x‘FFF’ for the limit address.