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 REPRESENTATIONS 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 REPRESENTATIONS 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, INCIDENTAL, INDIRECT, PUNITIVE OR
SPECIAL DAMAGES, HOWEVER THEY MAY ARISE, 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.
CODE DISCLAIMER
LIFE SUPPORT POLICY
Page 3
Notes
®
About This Manual
Introduction
This user manual includes hardware and software information on the 89HPES24T6G2, a member of
IDT’s PRECISE™ family of PCI Express® switching solutions offering the next-generation I/O interconnect
standard.
Finding Additional Information
Information not included in this manual such as mechanicals, package pin-outs, and electrical characteristics can be found in the data sheet for this device, which is available from the IDT website (www.idt.com)
as well as through your local IDT sales representative.
Content Summary
Chapter 1, “PES24T6G2 Device Overview,” provides a complete introduction to the performance
capabilities of the 89HPES24T6G2. Included in this chapter is a summary of features for the device as well
as a system block diagram and pin description.
Chapter 2, “Clocking, Reset, and Initialization,” provides a description of the two differential reference clock inputs that are used internally to generate all of the clocks required by the internal switch logic
and the SerDes.
Chapter 3, “Link Operation,” describes the operation of the link feature including polarity inversion,
link width negotiation, and lane reversal.
Chapter 4, “General Purpose I/O,” describes how the 11 General Purpose I/O (GPIO) pins may be
individually configured as general purpose inputs, general purpose outputs, or alternate functions.
Chapter 5, “SMBus Interfaces,” describes the operation of the 2 SMBus interfaces on the
PES24T6G2.
Chapter 6, “Power Management,” describes the power management capability structure located in the
configuration space of each PCI-PCI bridge in the PES24T6G2.
Chapter 7, “Hot-Plug and Hot-Swap,” describes the behavior of the hot-plug and hot-swap features in
the PES24T6G2.
Chapter 8, “Configuration Registers,” discusses the base addresses, PCI configuration space, and
registers associated with the PES24T6G2.
Chapter 9, “JTAG Boundary Scan,” discusses an enhanced JTAG interface, including a system logic
TAP controller, signal definitions, a test data register, an instruction register, and usage considerations.
Signal Nomenclature
To avoid confusion when dealing with a mixture of “active-low” and “active-high” signals, the terms
assertion and negation are used. The term assert or assertion is used to indicate that a signal is active or
true, independent of whether that level is represented by a high or low voltage. The term negate or negation
is used to indicate that a signal is inactive or false.
To define the active polarity of a signal, a suffix will be used. Signals ending with an ‘N’ should be interpreted as being active, or asserted, when at a logic zero (low) level. All other signals (including clocks,
buses and select lines) will be interpreted as being active, or asserted when at a logic one (high) level.
To define buses, the most significant bit (MSB) will be on the left and least significant bit (LSB) will be on
the right. No leading zeros will be included.
PES24T6G2 User Manual 1April 30, 2013
Page 4
IDT
Notes
1234
high-to-low
transition
low-to-high
transition
single clock cycle
Throughout this manual, when describing signal transitions, the following terminology is used. Rising
edge indicates a low-to-high (0 to 1) transition. Falling edge indicates a high-to-low (1 to 0) transition. These
terms are illustrated in Figure 1.
Figure 1 Signal Transitions
Numeric Representations
To represent numerical values, either decimal, binary, or hexadecimal formats will be used. The binary
format is as follows: 0bDDD, where “D” represents either 0 or 1; the hexadecimal format is as follows:
0xDD, where “D” represents the hexadecimal digit(s); otherwise, it is decimal.
The compressed notation ABC[x|y|z]D refers to ABCxD, ABCyD, and ABCzD.
The compressed notation ABC[x..y]D refers to ABCxD, ABC(x+1)D, ABC(x+2)D,... ABCyD.
Data Units
The following data unit terminology is used in this document.
Ter mWordsBy tesBi ts
Byte1/218
Word1216
Doubleword (Dword)2432
Quadword (Qword)4864
Table 1 Data Unit Terminology
In quadwords, bit 63 is always the most significant bit and bit 0 is the least significant bit. In doublewords, bit 31 is always the most significant bit and bit 0 is the least significant bit. In words, bit 15 is always
the most significant bit and bit 0 is the least significant bit. In bytes, bit 7 is always the most significant bit
and bit 0 is the least significant bit.
The ordering of bytes within words is referred to as either “big endian” or “little endian.” Big endian
systems label byte zero as the most significant (leftmost) byte of a word. Little endian systems label byte
zero as the least significant (rightmost) byte of a word. See Figure 2.
PES24T6G2 User Manual 2April 30, 2013
Page 5
IDT
Notes
0123
bit 0bit 31
Address of Bytes within Words: Big Endian
3210
bit 0bit 31
Address of Bytes within Words: Little Endian
Figure 2 Example of Byte Ordering for “Big Endian” or “Little Endian” System Definition
Register Terminology
Software in the context of this register terminology refers to modifications made by PCIe root configuration writes, writes to registers made through the slave SMBus interface, or serial EEPROM register initialization. See Table 2.
TypeAbbreviationDescription
Hardware InitializedHWINITRegister bits are initialized by firmware or hardware mechanisms
such as pin strapping or serial EEPROM. (System firmware hardware initialization is only allowed for system integrated devices.)
Bits are read-only after initialization and can only be reset (for
write-once by firmware) with reset.
Read Only and ClearRCSoftware can read the register/bits with this attribute. Reading the
value will automatically cause the register/bit to be reset to zero.
Writing to a RC location has no effect.
Read Clear and WriteRCWSoftware can read the register/bits with this attribute. Reading the
value will automatically cause the register/bits to be reset to zero.
Writes cause the register/bits to be modified.
ReservedReservedThe value read from a reserved register/bit is undefined. Thus,
software must deal correctly with fields that are reserved. On
reads, software must use appropriate masks to extract the defined
bits and not rely on reserved bits being any particular value. On
writes, software must ensure that the values of reserved bit positions are preserved. That is, the values of reserved bit positions
must first be read, merged with the new values for other bit positions and then written back.
Read OnlyROSoftware can only read registers/bits with this attribute. Contents
are hardwired to a constant value or are status bits that may be
set and cleared by hardware. Writing to a RO location has no
effect.
Read and WriteRWSoftware can both read and write bits with this attribute.
Table 2 Register Terminology (Sheet 1 of 2)
PES24T6G2 User Manual3April 30, 2013
Page 6
IDT
Notes
TypeAbbreviationDescription
Read and Write ClearRW1CSoftware can read and write to registers/bits with this attribute.
However, writing a value of zero to a bit with this attribute has no
effect. A RW1C bit can only be set to a value of 1 by a hardware
event. To clear a RW1C bit (i.e., change its value to zero) a value
of one must be written to the location. An RW1C bit is never
cleared by hardware.
Read and Write when
Unlocked
Write TransientWTThe zero is always read from a bit/field of this type. Writing of a
ZeroZeroA zero register or bit must be written with a value of zero and
RWLSoftware can read the register/bits with this attribute. Writing to
register/bits with this attribute will only cause the value to be modified if the REGUNLOCK bit in the SWCTL register is set. When
the REGUNLOCK bit is cleared, writes are ignored and the register/bits are effectively read-only.
RWL bits are implicitly “Sitcky.”
one is used to quality the writing of other bits/fields in the same
register.
returns a value of zero when read.
Table 2 Register Terminology (Sheet 2 of 2)
Use of Hypertext
In Chapter 8, Tables 8.2 and 8.3 contain register names and page numbers highlighted in blue under the
Register Definition column. In pdf files, users can jump from this source table directly to the registers by
clicking on the register name in the source table. Each register name in the table is linked directly to the
appropriate register in the register section of the chapter. To return to the source table after having jumped
to the register section, click on the same register name (in blue) in the register section.
Reference Documents
PCI Express Base Specification, Revision 2.0, PCI Special Interest Group.
PCI Power Management Interface Specification, Revision 1.2, PCI Special Interest Group.
PCI to PCI Bridge Architecture Specification, Revision 1.2, PCI Special Interest Group.
SMBus Specification, Revision 2.0.
Revision History
August 8, 2007: Initial publication of preliminary user manual.
September 26, 2007: Updated manual from spec dated September 25, 2007.
November 28, 2007: Updated Chapter 1 to reflect some pins are not available in the 19x19 pinout
package.
December 4, 2007: Added hardwired address locations for MSMBADDR and SSMBADDR to Chapters
1 and 5.
January 7, 2008: In Chapter 1, Table 1.9, MSMBADDR[4:1] pins changed to pull-down. In Chapter 5,
I/O Expanders section, added text explaining legacy compatibility with Gen1 PCIe switches. In Chapter 8,
modified the following fields: L0SEL in PCIELCAP has default value of 0x6, ARIS in PCIEDCAP2 is RO,
and ARIFEN in PCIEDCTL2 is RO.
July 15, 2008: In Chapter 8. added Autonomous Link Reliability Management section and 4 registers.
Removed General Purpose Register (0x40C).
PES24T6G2 User Manual 4April 30, 2013
Page 7
IDT
Notes
August 25, 2008: In Chapter 2, deleted reference to FRSTS pins.
October 24, 2008: In Chapter 1, updated Table 1.2 with additional silicon revisions.
November 3, 2008: Updated the description for the following fields in Chapter 8: LDIS and LRET in the
PCIELCTL register, ULD in the ALRSTS register, and TLW in the PHYLCFG0 register, and changed the last
Reserved field in the PCIEDCTL2 register from 31:6 to 15:6.
May 7, 2009: In Chapter 3, revised the Lane Reversal section.
July 21, 2009: In Chapter 3, revised section Dynamic Link Width Reconfiguration Support in the
PES24T6G2. Also, deleted entire section Software Management of Link Width Upconfiguration and Downconfiguration.
September 15, 2010: In Table 1.9, changed Buffer type for PCI Express from CML to PCIe differential
and changed reference clocks to HCSL.
October 26, 2010: In Chapter 2, revised Clocking section on page 1 to remove reference to REFCLKM.
September 23, 2011: Added DDDNC (Disable Downstream Device Number Checking) bit to Switch
Control register in Chapter 8, Configuration Registers.
February 22, 2012: Added paragraph after Table 5.13 to explain use of DWord addresses.
January 29, 2013: In Figure 5.8, changed No-ack to Ack between DATALM and DATAUM.
April 30, 2013: In Table 1.6, changed description for PxxMERGEN pins to pull-up via 92K ohm resistor.
In Table 1.9, changed PxxMERGEN pins from pull-down to pull-up.
VID - Vendor Identification Register (0x000)...........................................................................................8-10
PES24T6G2 User ManualxiApril 30, 2013
Page 20
IDT Register List
Notes
PES24T6G2 User ManualxiiApril 30, 2013
Page 21
Notes
®
Chapter 1
PES24T6G2 Device Overview
Introduction
The 89HPES24T6G2 is a member of IDT’s PRECISE™ family of PCI Express® switching solutions. The
PES24T6G2 is a 24-lane, 6-port Gen2 peripheral chip that performs PCI Express base switching with a
feature set optimized for high performance applications such as servers, storage, and communications
systems. It provides connectivity and switching functions between a PCI Express upstream port and up to
five downstream ports and supports switching between downstream ports.
5 Gbps and 2.5 Gbps operation
– Up to six switch ports
– Support for Max Payload Size up to 2048 bytes
– Supports one virtual channel and eight traffic classes
– Fully compliant with PCI Express base specification Revision 2.0
Flexible Architecture with Numerous Configuration Options
– Automatic per port link width negotiation to x8, x4, x2, or x1
– Automatic lane reversal on all ports
– Automatic polarity inversion
– Supports in-band hot-plug presence detect capability
– Supports external signal for hot plug event notification allowing SCI/SMI generation for legacy
operating systems
– Dynamic link width reconfiguration for power/performance optimization
– Configurable downstream port PCI-to-PCI bridge device numbering
– Crosslink support
– Supports ARI forwarding defined in the Alternative Routing-ID Interpretation (ARI) ECN for virtu-
alized and non-virtualized environments
– Ability to load device configuration from serial EEPROM
Legacy Support
– PCI compatible INTx emulation
– Supports bus locked transactions, allowing use of PCI Express with legacy software
Highly Integrated Solution
– Requires no external components
– Incorporates on-chip internal memory for packet buffering and queueing
– Integrates twenty-four 5 Gbps / 2.5 Gbps embedded SerDes, 8B/10B encoder/decoder (no sepa-
rate transceivers needed)
Reliability, Availability, and Serviceability (RAS) Features
– Ability to disable peer-to-peer communications
– Supports ECRC and Advanced Error Reporting
– All internal data and control RAMs are SECDED ECC protected
– Supports PCI Express hot-plug on all downstream ports
– Supports upstream port hot-plug
– Hot-swap capable I/O
– External Serial EEPROM contents are checksum protected
– Supports PCI Express Device Serial Number Capability
– Capability to monitor link reliability and autonomously change link speed to prevent link instability
PES24T6G2 User Manual 1 - 1April 30, 2013
Page 22
IDT PES24T6G2 Device Overview
Notes
Power Management
– Utilizes advanced low-power design techniques to achieve low typical power consumption
– Support PCI Power Management Interface specification (PCI-PM 1.1)
• Supports device power management states: D0, D3
– Support for PCI Express Active State Power Management (ASPM) link state
• Supports link power management states: L0, L0s, L1, L2/L3 Ready and L3
– Supports PCI Express Power Budgeting Capability
– Configurable SerDes power consumption
• Supports optional PCI-Express SerDes Transmit Low-Swing Voltage Mode
• Supports numerous SerDes Transmit Voltage Margin settings
– Unused SerDes are disabled
Testability and Debug Features
– Per port link up and activity status outputs available on I/O expander outputs
– Built in SerDes 8-bit and 10-bit pseudo-random bit stream (PRBS) generators
– Numerous SerDes test modes, including a PRBS Master Loopback mode for in-system link
testing
– Ability to read and write any internal register via SMBus and JTAG interfaces, including SerDes
internal controls
– Per port statistics and performance counters, as well as proprietary link status registers
Eleven General Purpose Input/Output Pins
– Each pin may be individually configured as an input or output
– Each pin may be individually configured as an interrupt input
– Some pins have selectable alternate functions
Option A Package: 19mm x 19mm 324-ball Flip Chip BGA with 1mm ball spacing
Option B Package: 27mm x 27mm 676-ball Flip Chip BGA with 1mm ball spacing
and D3
hot
cold
PES24T6G2 User Manual1 - 2April 30, 2013
Page 23
IDT PES24T6G2 Device Overview
TDM Demux
D-Bus
U-Bus
ESP & Arb
ESP & Arb
ESP & Arb
ESP & Arb
ESP & Arb
ESP & Arb
Route Map
Table
Ingress
Processor
TLP
Checker
Egress
Processor
Completion
Processor
Message
Processor
TLP
Generator
Hot-Plug
Controller
Application Layer
Data Link Layer
Physical Layer & SerDes Mux/Demux
SerDesSerDes
Port 0Port 1Port 2Port 3Port 4Port 5
Switch Core
GPIO
Controller
Master
SMBus
Interface
Reset
Controller
Slave
SMBus
Interface
Output &
Replay Buffer
TDM Demux
Route Map
Table
Ingress
Processor
TLP
Checker
Egress
Processor
Completion
Processor
Message
Processor
TLP
Generator
Hot-Plug
Controller
Application Layer
Data Link Layer
Physical Layer & SerDes Mux/Demux
SerDesSerDes
Output &
Replay Buffer
TDM Demux
Route Map
Table
Ingress
Processor
TLP
Checker
Egress
Processor
Completion
Processor
Message
Processor
TLP
Generator
Hot-Plug
Controller
Application Layer
Data Link Layer
Physical Layer & SerDes Mux/Demux
SerDesSerDes
Output &
Replay Buffer
Input
Frame
Buffer
Input
Frame
Buffer
Input
Frame
Buffer
Input
Frame
Buffer
Input
Frame
Buffer
Input
Frame
Buffer
D-Bus
Arbiter
U-Bus
Arbiter
Bus Decoupler
Queue
Figure 1.1 PES24T6G2 Architectural Block Diagram
PES24T6G2 User Manual1 - 3April 30, 2013
Page 24
IDT PES24T6G2 Device Overview
PE0TP[0]
Reference
Clocks
PEREFCLKP
PEREFCLKN
JTAG_TCK
GPIO[10:0]
11
General Purpose
I/O
VDDCORE
V
DD
I/O
V
DD
PEA
Power/Ground
MSMBADDR[4:1]
MSMBCLK
MSMBDAT
4
SSMBADDR[5,3:1]
SSMBCLK
SSMBDAT
4
Master
SMBus Interface
Slave
SMBus Interface
CCLKUS
RSTHALT
System
Pins
JTAG_TDI
JTAG_TDO
JTAG_TMS
JTAG_TRST_N
JTAG Pins
V
SS
SWMODE[2:0]
3
CCLKDS
PERSTN
REFCLKM
MSMBSMODE
PE0RP[0]
PE0RN[0]
PE0RP[3]
PE0RN[3]
PCI Express
Switch
SerDes Input
PE0TN[0]
PE0TP[3]
PE0TN[3]
PCI Express
Switch
SerDes Output
...
Port 0
Port 0
...
PE3RP[0]
PE3RN[0]
PE3RP[3]
PE3RN[3]
PCI Express
Switch
SerDes Input
PE3TP[0]
PE3TN[0]
PE3TP[3]
PE3TN[3]
PCI Express
Switch
SerDes Output
...
Port 3
Port 3
...
PE4RP[0]
PE4RN[0]
PE4RP[3]
PE4RN[3]
PCI Express
Switch
SerDes Input
PE4TP[0]
PE4TN[0]
PE4TP[3]
PE4TN[3]
PCI Express
Switch
SerDes Output
...
Port 4
Port 4
...
PE5RP[0]
PE5RN[0]
PE5RP[3]
PE5RN[3]
PCI Express
Switch
SerDes Input
PE5TP[0]
PE5TN[0]
PE5TP[3]
PE5TN[3]
PCI Express
Switch
SerDes Output
...
Port 5
Port 5
...
PES24T6G2
REFRES0
SerDes
Reference
Resistors
REFRES2
REFRES4
REFRES5
VDDPEHA
Reference Clock
Frequency Selection
PE2RP[0]
PE2RN[0]
PE2RP[3]
PE2RN[3]
PCI Express
Switch
SerDes Input
...
Port 2
PE1RP[0]
PE1RN[0]
PE1RP[3]
PE1RN[3]
PCI Express
Switch
SerDes Input
...
Port 1
PE2TP[0]
PE2TN[0]
PE2TP[3]
PE2TN[3]
PCI Express
Switch
SerDes Output
Port 2
...
PE1TP[0]
PE1TN[0]
PE1TP[3]
PE1TN[3]
PCI Express
Switch
SerDes Output
Port 1
...
REFRES1
REFRES3
VDDPETA
P23MERGEN
P01MERGEN
P45MERGEN
Logic Diagram — PES24T6G2
Note: The following pins are not available in the 19mm package: REFCLKM, MSMBADDR, SSMBADDR, MSMBSMODE, RSTHALT, GPIO[6:3].
PES24T6G2 User Manual1 - 4April 30, 2013
Figure 1.2 PES24T6G2 Logic Diagram
Page 25
IDT PES24T6G2 Device Overview
Notes
Vendor ID
All vendor IDs in the device are hardwired to 0x111D which corresponds to Integrated Device Tech-
nology, Inc.
Device ID
The PES24T6G2 device ID is shown in Table 1.1.
Revision ID
The PES24T6G2 revision ID is shown in Table 1.2.
PCIe DeviceDevice ID
0x60x806E
Table 1.1 PES24T6G2 Device ID
Revision IDDescription
0x00Corresponds to ZA silicon.
0x01Corresponds to ZB silicon.
0x02Corresponds to ZC silicon.
Table 1.2 PES24T6G2 Revision ID
JTAG ID
The JTAG ID is:
– Version: Same value as Revision ID. See Table 1.2.
– Part number: Same value as base Device ID. See Table 1.1.
– Manufacture ID: 0x33
– LSB: 0x1
SSID/SSVID
The PES24T6G2 contains the mechanisms necessary to implement the PCI-to-PCI bridge Subsystem
ID and Subsystem Vendor ID capability structure. However, in the default configuration the Subsystem ID
and Subsystem Vendor ID capability structure is not enabled. To enable the capability, the SSID and SSVID
fields in the Subsystem ID and Subsystem Vendor ID (SSIDSSVID) register must be initialized with the
appropriate ID values. the Next Pointer (NXTPTR) field in one of the other enhanced capabilities should be
initialized to point to this capability. Finally, the Next Pointer (NXTPTR) of this capability should be adjusted
to point to the next capability if necessary.
PES24T6G2 User Manual1 - 5April 30, 2013
Page 26
IDT PES24T6G2 Device Overview
Notes
Pin Description
The following tables list the functions of the pins provided on the PES24T6G2. Some of the functions
listed may be multiplexed onto the same pin. The active polarity of a signal is defined using a suffix. Signals
ending with an “N” are defined as being active, or asserted, when at a logic zero (low) level. All other signals
(including clocks, buses, and select lines) will be interpreted as being active, or asserted, when at a logic
one (high) level.
SignalTypeName/Description
PE0RP[3:0]
PE0RN[3:0]
PE0TP[3:0]
PE0TN[3:0]
IPCI Express Port 0 Serial Data Receive. Differential PCI Express receive
pairs for port 0. Port 0 is the upstream port.
OPCI Express Port 0 Serial Data Transmit. Differential PCI Express transmit
pairs for port 0. Port 0 is the upstream port.
PE1RP[3:0]
PE1RN[3:0]
PE1TP[3:0]
PE1TN[3:0]
PE2RP[3:0]
PE2RN[3:0]
PE2TP[3:0]
PE2TN[3:0]
PE3RP[3:0]
PE3RN[3:0]
PE3TP[3:0]
PE3TN[3:0]
PE4RP[3:0]
PE4RN[3:0]
PE4TP[3:0]
PE4TN[3:0]
PE5RP[3:0]
PE5RN[3:0]
PE5TP[3:0]
PE5TN[3:0]
PEREFCLKP
PEREFCLKN
REFCLKM
1.
REFCLKM is not available in the 19mm package and frequency is set at 100MHz.
1
IPCI Express Port 1 Serial Data Receive. Differential PCI Express receive
pairs for port 1.
OPCI Express Port 1 Serial Data Transmit. Differential PCI Express transmit
pairs for port 1.
IPCI Express Port 2 Serial Data Receive. Differential PCI Express receive
pairs for port 2.
OPCI Express Port 2 Serial Data Transmit. Differential PCI Express transmit
pairs for port 2.
IPCI Express Port 3 Serial Data Receive. Differential PCI Express receive
pairs for port 3.
OPCI Express Port 3 Serial Data Transmit. Differential PCI Express transmit
pairs for port 3.
IPCI Express Port 4 Serial Data Receive. Differential PCI Express receive
pairs for port 4.
OPCI Express Port 4 Serial Data Transmit. Differential PCI Express transmit
pairs for port 4.
IPCI Express Port 5 Serial Data Receive. Differential PCI Express receive
pairs for port 5.
OPCI Express Port 5 Serial Data Transmit. Differential PCI Express transmit
pairs for port 5.
IPCI Express Reference Clock. Differential reference clock pair input. This
clock is used as the reference clock by on-chip PLLs to generate the clocks
required for the system logic and on-chip SerDes. The frequency of the differential reference clock is determined by the REFCLKM signal.
IPCI Express Reference Clock Mode Select. This signal selects the fre-
quency of the reference clock input.
0x0 - 100 MHz
0x1 - 125 MHz
This pin should be static and not change following the negation of
PERSTN.
Table 1.3 PCI Express Interface Pins
PES24T6G2 User Manual1 - 6April 30, 2013
Page 27
IDT PES24T6G2 Device Overview
Notes
SignalTypeName/Description
MSMBADDR[4:1]
MSMBCLKI/OMaster SMBus Clock. This bidirectional signal is used to synchronize
1
IMaster SMBus Address. These pins determine the SMBus address of the
serial EEPROM from which configuration information is loaded.
transfers on the master SMBus.
MSMBDATI/OMaster SMBus Data. This bidirectional signal is used for data on the master
SMBus.
SSMBADDR[5,3:1]
2
ISlave SMBus Address. These pins determine the SMBus address to which
the slave SMBus interface responds.
SSMBCLKI/OSlave SMBus Clock. This bidirectional signal is used to synchronize trans-
fers on the slave SMBus.
SSMBDATI/OSlave SMBus Data. This bidirectional signal is used for data on the slave
SMBus.
Table 1.4 SMBus Interface Pins
1.
MSMBADDR pins are not available in the 19mm package. Address hardwired to 0x50.
2.
SSMBADDR pins are not available in the 19mm package. Address hardwired to 0x77.
SignalTypeName/Description
GPIO[0]I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: P2RSTN
Alternate function pin type: Output
Alternate function: Reset output for downstream port 2
GPIO[1]I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: P4RSTN
Alternate function pin type: Output
Alternate function: Reset output for downstream port 4
GPIO[2]I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: IOEXPINTN0
Alternate function pin type: Input
Alternate function: I/O Expander interrupt 0 input
1
GPIO[3]
I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: IOEXPINTN1
Alternate function pin type: Input
Alternate function: I/O Expander interrupt 1 input
1
GPIO[4]
I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: IOEXPINTN2
Alternate function pin type: Input
Alternate function: I/O Expander interrupt 2 input
1
GPIO[5]
I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: IOEXPINTN3
Alternate function pin type: Input
Alternate function: I/O Expander interrupt 3 input
1
GPIO[6]
I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Table 1.5 General Purpose I/O Pins (Part 1 of 2)
PES24T6G2 User Manual1 - 7April 30, 2013
Page 28
IDT PES24T6G2 Device Overview
Notes
SignalTypeName/Description
GPIO[7]I/OGeneral Purpose I/O.
GPIO[8]I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: GPEN
Alternate function pin type: Output
Alternate function: General Purpose Event (GPE) output
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: P1RSTN
Alternate function pin type: Output
Alternate function: Reset output for downstream port 1
GPIO[9]I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: P3RSTN
Alternate function pin type: Output
Alternate function: Reset output for downstream port 3
GPIO[10]I/OGeneral Purpose I/O.
This pin can be configured as a general purpose I/O pin.
Alternate function pin name: P5RSTN
Alternate function pin type: Output
Alternate function: Reset output for downstream port 5
Table 1.5 General Purpose I/O Pins (Part 2 of 2)
1.
GPIO pins 3, 4, 5, 6 are not available in the 19mm package.
SignalTypeName/Description
CCLKDSICommon Clock Downstream. The assertion of this pin indicates that all
downstream ports are using the same clock source as that provided to
downstream devices.This bit is used as the initial value of the Slot Clock
Configuration bit in all of the Link Status Registers for downstream ports.
The value may be overridden by modifying the SCLK bit in each downstream
port’s PCIELSTS register.
CCLKUSICommon Clock Upstream. The assertion of this pin indicates that the
upstream port is using the same clock source as the upstream device. This
bit is used as the initial value of the Slot Clock Configuration bit in the Link
Status Register for the upstream port. The value may be overridden by modifying the SCLK bit in the P0_PCIELSTS register.
MSMBSMODE
1
IMaster SMBus Slow Mode. The assertion of this pin indicates that the mas-
ter SMBus should operate at 100 KHz instead of 400 KHz. This value may
not be overridden.
P01MERGENIPort 0 and 1 Merge. P01MERGEN is an active low signal. It is pulled high
internally via a 92K ohm resistor.
When this pin is low, port 0 is merged with port 1 to form a single x8 port.
The Serdes lanes associated with port 1 become lanes 4 through 7 of port 0.
When this pin is high, port 0 and port 1 are not merged, and each operates
as a single x4 port.
P23MERGENIPort 2 and 3 Merge. P23MERGEN is an active low signal. It is pulled high
internally via a 92K ohm resistor.
When this pin is low, port 2 is merged with port 3 to form a single x8 port.
The Serdes lanes associated with port 3 become lanes 4 through 7 of port 2.
When this pin is high, port 2 and port 3 are not merged, and each operates
as a single x4 port.
Table 1.6 System Pins (Part 1 of 2)
PES24T6G2 User Manual1 - 8April 30, 2013
Page 29
IDT PES24T6G2 Device Overview
Notes
SignalTypeName/Description
P45MERGENIPort 4 and 5 Merge. P45MERGEN is an active low signal. It is pulled high
PERSTNIFundamental Reset. Assertion of this signal resets all logic inside
RSTHALT
SWMODE[2:0]ISwitch Mode. These configuration pins determine the PES24T6G2 switch
1.
MSMBSMODE is not available in the 19mm package, resulting in the master SMBus operating only at 400 KHz.
2.
RSTHALT is not available in the 19mm package.
internally via a 92K ohm resistor.
When this pin is low, port 4 is merged with port 5 to form a single x8 port.
The Serdes lanes associated with port 5 become lanes 4 through 7 of port 4.
When this pin is high, port 4 and port 5 are not merged, and each operates
as a single x4 port.
PES24T6G2 and initiates a PCI Express fundamental reset.
2
IReset Halt. When this signal is asserted during a PCI Express fundamental
reset, PES24T6G2 executes the reset procedure and remains in a reset
state with the Master and Slave SMBuses active. This allows software to
read and write registers internal to the device before normal device operation begins. The device exits the reset state when the RSTHALT bit is
cleared in the SWCTL register by an SMBus master.
operating mode.
0x0 -Normal switch mode
0x1 -Normal switch mode with Serial EEPROM initialization
0x2 - through 0x7 Reserved
These pins should be static and not change following the negation of
PERSTN.
Table 1.6 System Pins (Part 2 of 2)
SignalTypeName/Description
JTAG_TCKIJTAG Clock. This is an input test clock used to clock the shifting of data into
or out of the boundary scan logic or JTAG Controller. JTAG_TCK is independent of the system clock with a nominal 50% duty cycle.
JTAG_TDIIJTAG Data Input. This is the serial data input to the boundary scan logic or
JTAG Controller.
JTAG_TDOOJTAG Data Output. This is the serial data shifted out from the boundary
scan logic or JTAG Controller. When no data is being shifted out, this signal
is tri-stated.
JTAG_TMSIJTAG Mode. The value on this signal controls the test mode select of the
boundary scan logic or JTAG Controller.
JTAG_TRST_NIJTAG Reset. This active low signal asynchronously resets the boundary
scan logic and JTAG TAP Controller. An external pull-up on the board is recommended to meet the JTAG specification in cases where the tester can
access this signal. However, for systems running in functional mode, one of
the following should occur:
1) actively drive this signal low with control logic
2) statically drive this signal low with an external pull-down on the board
Table 1.7 Test Pins
PES24T6G2 User Manual1 - 9April 30, 2013
Page 30
IDT PES24T6G2 Device Overview
Notes
SignalTypeName/Description
REFRES0I/OPort 0 External Reference Resistor. Provides a reference for the Port 0
REFRES1I/OPort 1 External Reference Resistor. Provides a reference for the Port 1
REFRES2I/OPort 2 External Reference Resistor. Provides a reference for the Port 2
SerDes bias currents and PLL calibration circuitry. A 3 kOhm +/- 1% resistor
should be connected from this pin to ground.
SerDes bias currents and PLL calibration circuitry. A 3 kOhm +/- 1% resistor
should be connected from this pin to ground.
SerDes bias currents and PLL calibration circuitry. A 3 kOhm +/- 1% resistor
should be connected from this pin to ground.
REFRES3I/OPort 3 External Reference Resistor. Provides a reference for the Port 3
SerDes bias currents and PLL calibration circuitry. A 3 kOhm +/- 1% resistor
should be connected from this pin to ground.
REFRES4I/OPort 4 External Reference Resistor. Provides a reference for the Port 4
SerDes bias currents and PLL calibration circuitry. A 3 kOhm +/- 1% resistor
should be connected from this pin to ground.
REFRES5I/OPort 5 External Reference Resistor. Provides a reference for the Port 5
SerDes bias currents and PLL calibration circuitry. A 3 kOhm +/- 1% resistor
should be connected from this pin to ground.
V
COREICore V
DD
I/OII/O V
V
DD
PEAIPCI Express Analog Power. Serdes analog power supply (1.0V).
V
DD
V
PEHAIPCI Express Analog High Power. Serdes analog power supply (2.5V).
DD
PETAIPCI Express Transmitter Analog Voltage. Serdes transmitter analog
V
DD
V
SS
power supply (1.0V).
IGround.
Power supply for core logic.
DD.
LVTTL I/O buffer power supply.
DD.
Table 1.8 Power, Ground, and SerDes Resistor Pins
PES24T6G2 User Manual1 - 10April 30, 2013
Page 31
IDT PES24T6G2 Device Overview
Notes
Pin Characteristics
Note: Some input pads of the PES24T6G2 do not contain internal pull-ups or pull-downs.
Unused inputs should be tied off to appropriate levels. This is especially critical for unused control
signal inputs which, if left floating, could adversely affect operation. Also, any input pin left floating
can cause a slight increase in power consumption.
FunctionPin NameTypeBuffer
PCI Express
Interface
SMBusMSMBADDR[4:1]
PE0RN[3:0]IPCIe
PE0RP[3:0]I
PE0TN[3:0]O
PE0TP[3:0]O
PE1RN[3:0]I
PE1RP[3:0]I
PE1TN[3:0]O
PE1TP[3:0]O
PE2RN[3:0]I
PE2RP[3:0]I
PE2TN[3:0]O
PE2TP[3:0]O
PE3RN[3:0]I
PE3RP[3:0]I
PE3TN[3:0]O
PE3TP[3:0]O
PE4RN[3:0]I
PE4RP[3:0]I
PE4TN[3:0]O
PE4TP[3:0]O
PE5RN[3:0]I
PE5RP[3:0]I
PE5TN[3:0]O
PE5TP[3:0]O
PEREFCLKNIHCSLDiff. Clock
PEREFCLKPI
REFCLKM
MSMBCLKI/OSTI
MSMBDATI/OSTIpull-up on board
SSMBADDR[5,3:1]
SSMBCLKI/OSTIpull-up on board
SSMBDATI/OSTIpull-up on board
3
4
4
Table 1.9 Pin Characteristics (Part 1 of 2)
differential
ILVTTLInputpull-down
ILVTTLInputpull-down
IInputpull-up
2
I/O
Type
Serial Link
Input
5
Internal
Resistor
Notes
1
Refer to Table 9
PES24T6G2
Data Sheet
pull-up on board
in the
PES24T6G2 User Manual1 - 11April 30, 2013
Page 32
IDT PES24T6G2 Device Overview
Notes
FunctionPin NameTypeBuffer
General Pur-
GPIO[10:0]
6
I/OLVTTLSTI,
pose I/O
I/O
Type
High Drive
Internal
Resistor
pull-up
System PinsCCLKDSILVTTLInputpull-up
CCLKUSIInputpull-up
MSMBSMODE
7
IInputpull-down
P01MERGENIpull-up
P23MERGENIpull-up
P45MERGENIpull-up
PERSTNISTI
RSTHALT
7
IInputpull-down
SWMODE[2:0]IInputpull-down
EJTAG / JTAG JTAG_TCKILVTTLSTIpull-up
JTAG_TDIISTIpull-up
JTAG_TDOO
JTAG_TMSISTIpull-up
JTAG_TRST_NISTIpull-up
SerDes Reference Resistors
REFRES0I/OAnalog
REFRES1I/O
REFRES2I/O
REFRES3I/O
REFRES4I/O
REFRES5I/O
Notes
1
1.
Internal resistor values under typical operating conditions are 92K for pull-up and 90K for pull-down.
2.
All receiver pins set the DC common mode voltage to ground. All transmitters must be AC coupled to the media.
3.
REFCLKM is not available in the 19mm package.
4.
SMBus address pins are not available in the 19mm package.
5.
Schmitt Trigger Input (STI).
6.
GPIO pins 3, 4, 5, 6 are not available in the 19mm package.
7.
MSMBSMODE and RSTHALT are not available in the 19mm package.
Port Configuration
The PES24T6G2 contains a total of six ports labeled zero through 5. Port zero is always the upstream
port. Ports one through five are always downstream ports. All ports support both 2.5 Gbps (Gen1) and 5.0
Gbps (Gen2) operation. The adjacent x4 ports can be merged into x8 ports.
An even port n and its odd counterpart, port n+1, may be merged into a single x8 port. When this occurs,
port n is said to be a merged port. When an even port n and its odd counterpart, port n+1, operate independently, then ports n and n+1 are said to be unmerged. The PES24T6G2 supports port merging in a static
manner during a fundamental reset. If the Port x and y Merge (PxyMERGEN) signal is asserted, then the
two x4 ports x and y are merged into a single x8 merged port called port x.
Table 1.9 Pin Characteristics (Part 2 of 2)
PES24T6G2 User Manual1 - 12April 30, 2013
Page 33
IDT PES24T6G2 Device Overview
Notes
PES24T6G2
PCI to PCI
Bridge
PCI to PCI
Bridge
PCI to PCI
Bridge
Dev. 1
Dev. 2
PCI to PCI
Bridge
PCI to PCI
Bridge
Dev. 3
Dev. 4
PCI to PCI
Bridge
Dev. 5
Dev. 0
Port 0
Virtual PCI Bus
x4
Port 1
x4
Port 2
x4
Port 3
x4
Port 4
x4
Port 5
x4
When ports x and y are merged, the switch port, the PCI-to-PCI bridge, and all associated resources
associated with port y are disabled and the following modifications are made to the default PES24T6G2
configuration.
– All of the output signals associated with port y remain in a negated state (e.g., hot plug outputs,
link status signals, port reset output, etc.)
– All input signals associated with port y are ignored by the PES24T6G2 and have no effect on its
operation.
– Configuration read or write transactions to device y on the PES24T6G2’s virtual PCI bus are
treated by the upstream port (port 0) as an unsupported request (i.e., the device no longer exists).
This renders the registers in port y’s configuration space inaccessible to the root.
– All registers associated with port y become inaccessible via the SMBus. Reading or writing an
inaccessible register has an undefined effect.
Reading a port y register returns an undefined value and writing a port y register has an undefined effect.
– All of the SerDes lanes associated with port y become part of port x and are managed by port x
as native SerDes lanes (i.e., port x operates as though it were a x8 port).
– The initial value of the MAXLNKWDTH field in port x’s PCIELCAP register defaults to x8 mode.
Figures 1.3 through 1.5 illustrate three of many possible PES24T6G2 configurations. In Figure 1.3, all of
the ports are unmerged. In this configuration, the PES24T6G2 operates as a 6-port switch with all ports
having a x4 width. In Figure 1.4, port zero and one are merged as are ports three and four. In this configuration, the PES24T6G2 operates as a 4-port switch with some having a x4 width and others having a x8
width. Finally, Figure 1.5 illustrates a PES24T6G2 configuration in which all ports are merged. In this configuration, the PES24T6G2 operates as a 3-port switch with all ports having a x8 width.
Figure 1.3 All Ports Unmerged Configuration
PES24T6G2 User Manual1 - 13April 30, 2013
Page 34
IDT PES24T6G2 Device Overview
Notes
PES24T6G2
PCI to PCI
Bridge
PCI to PCI
Bridge
Dev. 2
PCI to PCI
Bridge
PCI to PCI
Bridge
Dev. 3
Dev. 5
Dev. 0
Port 0
Virtual PCI Bus
x8
Port 2
x4
Port 3
x8
Port 5
x4
PES24T6G2
PCI to PCI
Bridge
PCI to PCI
Bridge
Dev. 2
PCI to PCI
Bridge
Dev. 4
Dev. 0
Port 0
Virtual PCI Bus
x8
Port 2
x8
Port 4
x8
Figure 1.4 Some Ports Merged Configuration
Figure 1.5 All Ports Merged Configuration
PES24T6G2 User Manual1 - 14April 30, 2013
Page 35
Notes
®
Chapter 2
Clocking, Reset and
Initialization
Clocking
The PES24T6G2 has a single differential reference clock input (PEREFCLKP/PEREFCLKN) that is
used internally to generate all of the clocks required by the internal switch logic and the SerDes. The
frequency of the reference clock input is set to 100MHz.
Note: There are no skew requirement between the reference clock inputs.
Initialization
A boot configuration vector consisting of the signals listed in Table 2.1 is sampled by the PES24T6G2
d
uring a Fundamental Reset when PERSTN is negated. The boot configuration vector defines essential
parameters for switch operation. Since the boot configuration vector is sampled only during a Fundamental
Reset sequence, the value of signals which make up the boot configuration vector is ignored during other
times and their state outside of a Fundamental Reset has no effect on the operation of the PES24T6G2.
While basic switch operation may be configured using signals in the boot configuration vector, advanced
switch features require configuration via an external serial EEPROM. The external serial EEPROM allows
modification of any bit in any software visible register. See Chapter 5, SMBus Interfaces, for more information on the serial EEPROM.
The external serial EEPROM and slave SMBus interface may be used to override the function of some
of the signals in the boot configuration vector during a Fundamental Reset. The signals that may be overridden are noted in Table 2.1. The state of all of the boot configuration signals in Table 2.1 sampled during
the most recent Fundamental Reset may be determined by reading the SWSTS register.
Signal
CCLKDSICommon Clock Downstream. The assertion of this pin indicates
CCLKUSICommon Clock Upstream. The assertion of this pin indicates that
MSMBSMODE
P01MERGENIPort 0 and 1 Merge. When this pin is asserted, port 1 is merged with
P23MERGENIPort 2 and 3 Merge. When this pin is asserted, port 3 is merged with
Overridden
1
May Be
that all downstream ports are using the same clock source as that
provided to downstream devices.This bit is used as the initial value
of the Slot Clock Configuration bit in all of the Link Status Registers
for downstream ports. The value may be overridden by modifying
the SCLK bit in each downstream port’s PCIELSTS register.
the upstream port is using the same clock source as the upstream
device. This bit is used as the initial value of the Slot Clock Configuration bit in the Link Status Register for the upstream port. The value
may be overridden by modifying the SCLK bit in the P0_PCIELSTS
register.
IMaster SMBus Slow Mode. The assertion of this pin indicates that
the master SMBus should operate at 100 KHz instead of 400 KHz.
This value may not be overridden.
port 0 to form a single x8 port. The SerDes lanes associated with
port 1 become lanes 4 through 7 of port 0.
port 2 to form a single x8 port. The SerDes lanes associated with
port 3 become lanes 4 through 7 of port 2.
Description
Table 2.1 Boot Configuration Vector Signals
PES24T6G2 User Manual 2 - 1April 30, 2013
Page 36
IDT Clocking, Reset and Initialization
Notes
Signal
P45MERGENIPort 4 and 5 Merge. When this pin is asserted, port 5 is merged with
PERSTNIFundamental Reset. Assertion of this signal resets all logic inside
RSTHALT
SWMODE[2:0]ISwitch Mode. These configuration pins determine the PES24T6G2
1.
MSMBSMODE is not available in the 19mm package, resulting in the master SMBus operating only at 400 KHz.
2.
RSTHALT is not available in the 19mm package.
2
May Be
Overridden
port 4 to form a single x8 port. The SerDes lanes associated with
port 5 become lanes 4 through 7 of port 4.
PES24T6G2 and initiates a PCI Express fundamental reset.
IReset Halt. When this signal is asserted during a PCI Express fun-
damental reset, PES24T6G2 executes the reset procedure and
remains in a reset state with the Master and Slave SMBuses active.
This allows software to read and write registers internal to the device
before normal device operation begins. The device exits the reset
state when the RSTHALT bit is cleared in the SWCTL register by an
SMBus master.
switch operating mode.
0x0 -Normal switch mode
0x1 -Normal switch mode with Serial EEPROM initialization
0x2 - through 0x7 Reserved
These pins should be static and not change following the negation of
PERSTN.
Table 2.1 Boot Configuration Vector Signals
Description
Reset
The PES24T6G2 defines four Conventional Reset categories: Fundamental reset, Hot Reset, Upstream
Secondary Bus Hot-Reset, and Downstream Secondary Bus Hot-Reset.
– A Fundamental Reset causes all logic in the PES24T6G2 to be returned to an initial state.
– A Hot Reset causes all logic in the PES24T6G2 to be returned to an initial state, but does not
cause the state of register fields denoted as “sticky” to be modified.
– An Upstream Secondary Bus Reset causes all devices on the virtual PCI bus to be hot reset
except the upstream port (i.e., upstream PCI to PCI bridge).
– A Downstream Secondary Bus Reset causes a hot reset to be propagated on the corresponding
external secondary bus link.
There are two sub-categories of Fundamental Reset: Cold reset and Warm reset. A Cold Reset occurs
following the PES24T6G2 being powered on and assertion of PERSTN. A Warm Reset is a Fundamental
Reset that occurs without removal of power.
Fundamental Reset
A Fundamental Reset may be initiated by any of the following conditions:
– A cold reset initiated by a power-on and the assertion of the PCI Express Reset (PERSTN) input
pin.
– A warm reset initiated by the assertion of the PCI Express Reset (PERSTN) input pin while power
is on.
– A warm reset initiated by the writing of a one to the Fundamental Reset (FRST) bit in the Switch
Control (SWCTL) register.
PES24T6G2 User Manual2 - 2April 30, 2013
Page 37
IDT Clocking, Reset and Initialization
Notes
When configured to operate in normal mode, the following reset sequence is executed.
1. Wait for the Fundamental Reset condition to clear (e.g., negation of PERSTN). Note that PERSTN
must be asserted for at least 100ms (Tpvperl) after the PES24T6G2 power supplies are stable, and
100µs (Tperst-clk) after the reference clock input is stable.
2. On negation of PERSTN, sample the boot configuration signals listed in Table 2.1. If PERSTN was
not asserted, use the previously sampled boot configuration signal values (e.g., when a Fundamental Reset is the result of setting the Fundamental Reset (FRST) bit in the Switch Control
(SWCTL) register).
3. Examine the state of the sampled SWMODE[2:0] signals to determine the switch operating mode.
4. The PLL and SerDes are initialized (i.e., PLL/CDR reset and lock).
5. Link training begins. While link training is in progress, proceed to step 6.
6. If the Reset Halt (RSTHALT) pin is asserted, the RSTHALT bit in the SWSTS register is set.
7. If the switch operating mode is not a test mode, then the reset signal to the PCI Express stacks and
associated logic is negated but they are held in a quasi-reset state in which the following actions
occur.
• All links enter an active link training state within 20ms of the clearing of the Fundamental Reset
condition.
• Within 100ms of the clearing of the Fundamental Reset condition, all of the stacks are able to
process configuration transactions and respond to these transactions with a configuration
request retry status completion. All other transactions are ignored.
8. The master SMBus operating frequency is determined.
The state of the MSMBSMODE signal is examined. If it is asserted, then the master SMBus is initialized to operate at 100 KHz rather than 400 KHz.
9. The slave SMBus is taken out of reset and initialized. The slave SMBus address specified by the
SSMBADDR[5,3:1] pins is used.
10. The master SMBus is taken out of reset and initialized.
11. If the selected switch operating mode is one that requires initialization from the serial EEPROM, then
the contents of the serial EEPROM are read and the appropriate PES24T6G2 registers are updated.
• If a one is written by the serial EEPROM to the Full Link Retrain (FLRET) bit in any Phy Link
State 0 (PHYLSTATE0) register, then link retraining is initiated on the corresponding port using
the current link parameters.
• If an error is detected during loading of the serial EEPROM, then loading of the serial EEPROM
is aborted and the RSTHALT bit is set in the SWCTL register. Error information is recorded in
the SMBUSSTS register.
When serial EEPROM initialization completes or when an error is detected, the EEPROM Done
(EEPROMDONE) bit in the SMBUSSTS register is set. If the RSTHALT bit is set in the SWCTL register, return to step 11. Otherwise, proceed to step 12.
12. If the Reset Halt (RSTHALT) bit is set in the SWCTL register, all of the logic is held in a reset state
except the master and slave SMBuses, the control/status registers, and the stacks which continue
to be held in a quasi-reset state and respond to configuration transactions with a retry. The device
remains in this state until the RSTHALT bit is cleared via the slave SMBus. In this mode, an external
agent may read and write any internal control and status registers and may access the external
serial EEPROM via the EEPROMINTF register.
13. Normal device operation begins.
The PCIe specification indicates that a device must respond to Configuration Request transactions
within 100 ms from the end of Conventional Reset (cold, warm, or hot). Additionally, the PCIe specification
indicates that a device must respond to Configuration Requests with a Successful Completion within 1.0
second after Conventional Reset of a device. The reset sequence above guarantees that the PES24T6G2
will be ready to respond successfully to configuration request within the 1.0 second period as long as the
serial EEPROM initialization process completes within 200 ms. During EEPROM initialization, the
PES24T6G2 User Manual2 - 3April 30, 2013
Page 38
IDT Clocking, Reset and Initialization
Notes
REFCLK*
Vdd
PERSTN
SerDes
Master SMBus
Slave SMBus
Tpvperl (100ms)
CDR Reset & Lock
Ready for Normal Operation
Ready for Normal Operation
ReadyIdle
Serial EEPROM Initialization
~70s
20 ms max.
Stacks held in Quasi-Reset Mode
Link Training
50 µs max
PLL Lock
Tperst-clk
(100µs)
Notes:
1) Reference Clock (REFCLK) not shown to scale.
2) The PES24T6G2 requires a minimum time for Tperst-clk of 1µs. The PES24T6G2 requires a minimum time for Tpvperl of 1ms.
3) In a system, the values of Tpvperl and Tperst-clk depend on the mechanical form factor in which the PES24T6G2 is used. For example,
the PCIe Card Electromechanical Specification, Revision 2.0, specifies minimum values of Tperst-clk=100µs and Tpvperl=100ms.
PES24T6G2 responds to a Configuration Request with Configuration-Request-Retry-Status Completion.
Under normal circumstances, 200 ms is more than adequate to initialize registers in the device even with a
Master SMBus operating frequency of 100 KHz.
Serial EEPROM initialization may cause writes to register fields that initiate side effects, such as link
retraining. These side effects are initiated at the point where the write occurs. Therefore, serial EEPROM
initialization should be structured in a manner so as to ensure proper configuration prior to initiation of these
side effects.
A warm reset initiated by a configuration request writing a one to the Fundamental Reset (FRST) bit in
the Switch Control (SWCTL) register always results in
to the requesterbefore the warm reset process begins. The PES24T6G2 provides a reset output signal for
each downstream port implemented as a GPIO alternate function. When a Fundamental Reset occurs, all
of the GPIO pins default to GPIO inputs. Therefore, the downstream port resets are tri-stated. A system
designer should use a pull-down on these signals if they are used as reset outputs.
The operation of a Fundamental Reset with serial EEPROM initialization (i.e., SWMODE[2:0] = 0x1) is
illustrated in Figure 2.1.
the PES24T6G2 returning a Successful Completion
Figure 2.1 Fundamental Reset with Serial EEPROM initialization
PES24T6G2 User Manual2 - 4April 30, 2013
The operation of a Fundamental Reset using RSTHALT is illustrated in Figure 2.2.
Page 39
IDT Clocking, Reset and Initialization
Notes
SerDes
Slave SMBus
CDR Reset & Lock
Ready for Normal Operation
Ready for Normal Operation
~70
s
20 ms max.
Stacks held in Quasi-Reset Mode
Link Training
PLL Lock
RSTHALT
RSTHALT bit in SWCTL register is set
RSTHALT bit in SWCTL cleared (i.e., by slave SMBus)
REFCLK*
Vdd
PERSTN
Tpvperl (100ms)
Tperst-clk
(100us)
Notes:
1) Reference Clock (REFCLK) not shown to scale.
2) The PES24T6G2 requires a minimum time for Tperst-clk of 1µs. The PES24T6G2 requires a minimum time for Tpvperl of 1ms.
3) In a system, the values of Tpvperl and Tperst-clk depend on the mechanical form factor in which the PES24T6G2 is used. For example,
the PCIe Card Electromechanical Specification, Revision 2.0, specifies minimum values of Tperst-clk=100µs and Tpvperl=100ms.
Figure 2.2 Fundamental Reset using RSTHALT to keep device in Quasi-Reset state
Hot Reset
A hot reset may be initiated by any of the following conditions:
– Reception of TS1 ordered-sets on the upstream port indicating a hot reset.
– Data link layer of the upstream port transitions to the DL_Down state.
– Writing a one to the Hot Reset (HRST) bit in the Switch Control (SWCTL) register.
The initiation of a hot reset due to the data link layer of the upstream port transitioning to the DL_Down
state may be disabled by setting the Disable Link Down Hot Reset (DLDHRST) bit in the Switch Control
(SWCTL) register. Other hot reset conditions are unaffected by this bit.
When a hot reset occurs, the following sequence is executed.
1. Each downstream port whose link is up propagates the hot reset by transmitting TS1 ordered sets
with the hot reset bit set.
2. All of the logic associated with the PES24T6G2 except the PLLs, SerDes, master SMBus interface,
and slave SMBus interface is reset.
3. All registers fields in all registers, except those denoted as “sticky” or Read and Write when Unlocked
(i.e, RWL), are reset to their initial value. The value of fields denoted as “sticky” or RWL is preserved
across a hot reset.
4. Link training begins. While link training is in progress, proceed to step 6.
5. The PCI Express stacks and associated logic are held in a quasi-reset state in which the following
actions occur.
6. If the selected switch operating mode is one that requires initialization from the serial EEPROM and
the Disable Hot Reset Serial EEPROM Initialization (DHRSTSEI) bit is not set in the Switch Control
(SWCTL) register, the contents of the serial EEPROM are read and the appropriate PES24T6G2
registers are updated.
• All links enter an active link training state within 20ms of the clearing of the hot reset condition.
• Within 100ms of the clearing of the Hot Reset condition, all of the stacks are able to process
configuration transactions and respond to these transactions with a configuration request retry
status completion. All other transactions are ignored.
PES24T6G2 User Manual2 - 5April 30, 2013
Page 40
IDT Clocking, Reset and Initialization
Notes
• If a one is written by the serial EEPROM to the Full Link Retrain (FLRET) bit in any Phy Link
State 0 (PHYLSTATE0) register, link retraining is initiated on the corresponding port using the
current link parameters.
• If an error is detected during loading of the serial EEPROM, then loading of the serial EEPROM
is aborted and the RSTHALT bit is set in the SWCTL register. Error information is recorded in
the SMBUSSTS register.
• When serial EEPROM initialization completes or when an error is detected, the DONE bit in the
SMBUSSTS register is set.
7. If the Reset Halt (RSTHALT) bit is set in the SWCTL register, all of the logic is held in a reset state
except the master and slave SMBuses. The RSTHALT bit is only set if serial EEPROM initialization
is enabled in step 6.
8. Normal device operation begins.
The operation of the slave SMBus interface is unaffected by a hot reset. Using the slave SMBus to
access a register that is reset by a hot reset causes zero to be returned on a read and written data to be
ignored on writes. A hot reset initiated by the writing of a one to the Hot Reset (HRST) bit in the Switch
Control (SWCTL) register always results in
the hot reset process begins. Additionally, the upstream link is fully retrained (i.e., the upstream LTSSM
transitions to the Detect state).
Upstream Secondary Bus Reset
An Upstream Secondary Bus Reset may be initiated by the following condition:
– A one is written to the Secondary Bus Reset (SRESET) bit in the upstream port’s (i.e., port 0)
Bridge Control Register (BCTL).
When an Upstream Secondary Bus Reset occurs, the following sequence is executed.
the PES24T6G2 returning a completion to the requesterbefore
1. Each downstream port whose link is up propagates the reset by transmitting TS1 ordered sets with
the hot reset bit set.
2. All registers fields in all registers associated with downstream ports, except those denoted as “sticky”
or Read and Write when Unlocked (i.e, RWL), are reset to their initial value. The value of fields
denoted as “sticky” or RWL is unaffected by an Upstream Secondary Bus Reset.
3. All TLPs received from downstream ports and queued in the PES24T6G2 are discarded.
4. Logic in the stack, application layer, and switch core associated with the downstream ports are
gracefully reset.
5. Wait for software to clear the Secondary Bus Reset (SRESET) bit in the upstream port’s Bridge
Control Register (BCTL).
6. Normal downstream port operation begins.
The operation of the upstream port is unaffected by a secondary bus reset. The link remains up and
Type 0 configuration read and write transactions that target the upstream port complete normally. During an
Upstream Secondary Bus Reset, all TLPs destined to the secondary side of the upstream port’s PCI-to-PCI
bridge are treated in an undefined manner. The user should ensure no TLPs are sent to the secondary side
of the upstream port’s PCI-to-PCI bridge until the SRESET bit in the BCTL register is cleared.
The operation of the slave SMBus interface is unaffected by an Upstream Secondary Bus Reset. Using
the slave SMBus to access a register that is reset by an Upstream Secondary Bus Reset causes the
register’s default value to be returned on a read and written data to be ignored on writes.
Downstream Secondary Bus Reset
A Downstream Secondary Bus Reset may be initiated by the following condition:
– A one is written to the Secondary Bus Reset (SRESET) bit in a downstream port’s (i.e., port 0)
Bridge Control Register (BCTL).
PES24T6G2 User Manual2 - 6April 30, 2013
Page 41
IDT Clocking, Reset and Initialization
Notes
PxPEP
PxRSTN
T
PWR2RST
T
RST2PWR
When a Downstream Secondary Bus Reset occurs, the following sequence is executed.
1. If the corresponding downstream port’s link is up, TS1 ordered sets with the hot reset bit set are
transmitted.
2. All TLPs received from corresponding downstream port and queued in the PES24T6G2 are
discarded.
3. Wait for software to clear the Secondary Bus Reset (SRESET) bit in the upstream port’s Bridge
Control Register (BCTL).
4. Normal downstream port operation begins.
The operation of the upstream port is unaffected by a Downstream Secondary Bus Reset. The operation
of other downstream ports is unaffected by a Downstream Secondary Bus Reset. During a Downstream
Secondary Bus Reset, Type 0 configuration read and write transactions that target the downstream port
complete normally. During a Downstream Secondary Bus Reset, all TLPs destined to the secondary side of
the downstream port’s PCI-to-PCI bridge are treated as unsupported requests. The operation of the slave
SMBus interface is unaffected by a Downstream Secondary Bus Reset.
Downstream Port Reset Outputs
Individual downstream port reset outputs (P1RSTN, P2RSTN, P3RSTN, P4RSTN, P5RSTN, P6RSTN,
and P7RSTN) are provided as GPIO pin alternate functions. Following a Fundamental Reset, all of the
GPIO pins default to GPIO inputs. Therefore, the downstream port resets are tri-stated. A system designer
should use a pull-down on these signals if they are used as reset outputs.
The PES24T6G2 ensures through hardware that the minimum PxRSTN assertion pulse width is no less
than 200 µs.
Downstream port reset outputs can be configured to operate in one of two modes. These modes are
power enable controlled reset output and power good controlled reset output. The downstream port reset
output mode is determined by the Reset Mode (RSTMODE) field in the Hot-Plug Configuration Control
(HPCFGCTL) register.
Power Enable Controlled Reset Output
In this mode, a downstream port reset output state is controlled as a side effect of slot power being
turned on or off. The operation of this mode is illustrated in Figure 2.3. A downstream port’s slot power is
controlled by the Power Controller Control (PCC) bit in the PCI Express Slot Control (PCIESCTL) register
Figure 2.3 Power Enable Controlled Reset Output Mode Operation
While slot power is disabled, the corresponding downstream port reset output is asserted. When slot
power is enabled by writing a zero to the PCC bit, the Port x Power Enable Output (PxPEP) is asserted and
then power to the slot is enabled and the corresponding downstream port reset output is negated. The time
between the assertion of the PxPEP signal and the negation of the PxRSTN signal is controlled by the
value in the Slot Power to Reset Negation (PWR2RST) field in the HPCFGCTL register.
While slot power is enabled, the corresponding downstream port reset output is negated. When slot
power is disabled by writing a one to the PCC bit, the corresponding downstream port reset output is
asserted and then slot power is disabled. The time between the assertion of the PxRSTN signal and the
negation of the PxPEP signal is controlled by the value in the Reset Negation to Slot Power (RST2PWR)
field in the HPCFGCTL register.
PES24T6G2 User Manual2 - 7April 30, 2013
Page 42
IDT Clocking, Reset and Initialization
Notes
PxPEP
PxPWRGDN
T
PWR2RST
PxRSTN
T
RST2PWR
Power Good Controlled Reset Output
As in the Power Enable Controlled Reset mode, in this mode a downstream port reset output state is
controlled as a side effect of slot power being turned on or off. However, the timing in this mode depends on
the power good state of the slot’s power supply. The operation of this mode is illustrated in Figure 2.4.
The operation of this mode is similar to that of the Power Enable Controlled Reset mode except that
when power is enabled, the negation of the corresponding port reset output occurs as a result of and after
assertion of the slot’s Power Good (PxPWRGDN) signal is observed. The time between the assertion of the
PxPWRGDN signal and the negation of the PxRSTN signal is controlled by the value in the Slot Power to
Reset Negation (PWR2RST) field in the HPCFGCTL register.
When slot power is disabled by writing a one to the PCC bit, the corresponding downstream port reset
output is asserted and then slot power is disabled. The time between the assertion of the PxRSTN signal
and the negation of the PxPEP signal is controlled by the value in the Reset Negation to Slot Power
(RST2PWR) field in the HPCFGCTL register.
If at any point while a downstream port is not being reset (i.e., PxRSTN is negated) a power fault is
detected (i.e., PxPWRGDN is negated), then the corresponding port reset output is immediately asserted.
Since the PxPWRGDN signal is an I/O expander input, it may not be possible to meet a profile’s power level
invalid to reset asserted timing specification (i.e., PxPWRGDN to PxRSTN). Systems that require a shorter
time interval may implement this functionality external to the PES24T6G2.
Figure 2.4 Power Good Controlled Reset Output Mode Operation
PES24T6G2 User Manual2 - 8April 30, 2013
Page 43
Notes
Chapter 3
PExRP[0]
PExRP[1]
PExRP[2]
PExRP[3]
PES24T6G2
lane 0
lane 1
lane 2
lane 3
(a) x4 Port without lane reversal
PExRP[0]
PExRP[1]
PExRP[2]
PExRP[3]
PES24T6G2
lane 3
lane 2
lane 1
lane 0
(b) x4 Port with lane reversal
PExRP[0]
PExRP[1]
PExRP[2]
PExRP[3]
PES24T6G2
lane 0
lane 1
(a) x2 Port without lane reversal
PExRP[0]
PExRP[1]
PExRP[2]
PExRP[3]
PES24T6G2
lane 1
lane 0
(b) x2 Port with lane reversal
PExRP[0]
PExRP[1]
PExRP[2]
PExRP[3]
PES24T6G2
lane 0
(a) x1 Port without lane reversal
PExRP[0]
PExRP[1]
PExRP[2]
PExRP[3]
PES24T6G2
lane 0
(b) x1 Port with lane reversal
Link Operation
®
Introduction
Link operation in the PES24T6G2 adheres to the PCI Express 2.0 Base Specification, supporting
speeds of 2.5 Gbps and 5.0 Gbps. The PES24T6G2 contains six x4 ports which may be merged in pairs to
form x8 ports. The default link width of each port is x4 and the SerDes lanes are statically assigned to a
port. A full link retrain is defined as retraining of a link that transitions through the Detect LTSSM state.
Polarity Inversion
Each port of the PES24T6G2 supports automatic polarity inversion as required by the PCIe specification. Polarity inversion is a function of the receiver and not the transmitter. The transmitter never inverts its
data. During link training, the receiver examines symbols 6 through 15 of the TS1 and TS2 ordered sets for
inversion of the PExAP[n] and PExAN[n] signals. If an inversion is detected, then logic for the receiving lane
automatically inverts received data. Polarity inversion is a lane and not a link function. Therefore, it is
possible for some lanes of link to be inverted and for others to not be inverted.
Lane Reversal
The PCIe specification describes an optional lane reversal feature. The PES24T6G2 offers limited
support for the automatic lane reversal feature outlined in the PCIe specification. Lane reversal mapping for
the various configurations supported by the PES24T6G2 are illustrated in Figures 3.1 and 3.2.
The PES24T6G2 supports the optional link variable width negotiation feature outlined in the PCIe 2.0
specification. The actual link width is determined dynamically during link training. Ports limited to a
maximum link width of x8 are capable of negotiating to a x8, x4, x2, or x1 link width.
Figure 3.2 Merged Port Lane Reversal
The current negotiated width of a link may be determined from the Negotiated Link Width (NLW) field in
the corresponding port’s PCIe Link Status (PCIELSTS) register.
PES24T6G2 User Manual3 - 2April 30, 2013
Page 45
IDT Link Operation
Notes
The Maximum Link Width (MAXLNKWDTH) field in a port’s PCI Express Link Capabilities (PCIELCAP)
register contains the maximum link width of the port. This field is of RWL type and may be modified when
the REGUNLOCK bit is set in the SWCTL register. Modification of this field allows the maximum link width
of the port to be configured. The new link width takes effect the next time full link training occurs.
To force a link width to a smaller width than the default value, the MAXLNKWDTH field could be configured through Serial EEPROM initialization and full link retraining forced by setting the Full Link Retrain
(FLRET) bit in the PHYLSTATE0 register. The value programmed into the MAXLNKWDTH field should not
exceed the port’s width (x4 for the PES24T6G2). When the MAXLNKWDTH field of a port’s PCIELCAP
register is configured to a value higher than the port’s supported link width, the port operates at its default
link width (i.e., default value of MAXLNKWDTH). For example, a port which is initially set to x4 Gen2 must
not have the value of the MAXLNKWDTH programmed to x8. If the MAXLNKWDTH field were to be incorrectly programmed to x8, the port would operate at x4.
When a port is disabled, all SerDes lanes associated with that port are turned off. Unused lanes associated with a x4 port are put into a low power state. When only four lanes associated with a x8 port are used,
the upper four lanes are turned off. When fewer than four lanes associated with a x8 port are used, the
upper four lanes are turned off and the unused lower lanes are put into a low power state.
Dynamic Link Width Reconfiguration
The PCI Express 2.0 specification includes support for dynamic upconfiguration of link widths. This
optional capability allows both components of a link to dynamically downconfigure and upconfigure links
based on implementation specific criteria such as power savings, link bandwidth requirements, or link reliability problems. As an example, a link that initially does a full link train to x4 may be dynamically downconfigured to x1 in order to save power when there is little traffic on the link. As traffic increases, the link may be
dynamically upconfigured to its initial link width of x4. Also, the link width may be downconfigured if a particular lane is determined to be unreliable.
With dynamic link width upconfiguration, the system designer can choose to connect components with
enough lanes to handle worst case bandwidth requirements, yet not waste power when the link is not fully
utilized. This capability offers an additional mechanism for link power reduction on top of the traditional
ASPM link states (L0s, L1, etc.).
Dynamic upconfiguration and downconfiguration is done on a per-link basis, and does not result in the
link going into a DL_Down state. A link can be upconfigured up to the negotiated link width set after a full
link train. For example, a link that trained to a width of x2 after a full link train cannot be upconfigured to a
width above x2. A link can be downconfigured down to x1. When a link is downconfigured to a smaller
width, inactive lanes are kept in Electrical Idle with their receiver terminations enabled. These lanes
continue to be associated with the downconfigured port’s LTSSM.
In order for upconfiguration to occur successfully, both of the link components must support it. Furthermore, the PCIe specification recommends that a link component not initiate downconfiguration unless the
link partner supports link upconfiguration, except for link reliability reasons. The capability to upconfigure a
link is transmitted among components using the in-band TS2 ordered set.
When downconfiguration or upconfiguration of a link occurs, one of the components on the link initiates
the process, while the other component responds to the process. The PCIe specification indicates that both
of these capabilities are optional. Software may be notified of link width re-configuration via the link bandwidth notification mechanism described in the PCIe 2.0 specification. This mechanism is enabled by setting
the Link Bandwidth Management Interrupt Enable (LBWINTEN) bit in the PCIELCTL register of switch
downstream ports.
Dynamic Link Width Reconfiguration Support in the PES24T6G2
The PES24T6G2 supports dynamic link width upconfiguration and downconfiguration in response to link
partner requests. The PES24T6G2 does not initiate autonomous link width upconfiguration and downconfiguration of links, except for downconfiguration due to link reliability reasons. Therefore, the Hardware
Autonomous Width Disable (HAWD) bit in the port’s PCIELCTL register has no effect and is hardwired to
0x0. Additionally, the PES24T6G2 port’s never set the ‘Autonomous Change’ bit in the training sets
PES24T6G2 User Manual3 - 3April 30, 2013
Page 46
IDT Link Operation
Notes
exchanged with the link partner during link training. A Downstream port link partner may autonomously
change link width. When this occurs, the PES24T6G2 downstream port sets the Link Autonomous Bandwidth Status (LABWSTS) bit in the PCIELSTS register.
Link Speed Negotiation
The PCIe 2.0 specification introduces support for 5.0 Gbps data rates per lane (Gen2), in addition to the
2.5 Gbps data rates (Gen1) mandated in previous versions of the specification. Per the PCIe 2.0 specification, all lanes of a link must operate at the same data rate. During full link training, links initially operate at
2.5 Gbps. Once the LTSSM on both components of the link reaches the L0 state, the link speed may be
upgraded to 5.0 Gbps if this capability is advertised and desired by both components. The process of
upgrading the link speed does not result in a DL_Down state.
It is the responsibility of the upstream component of the link (i.e., switch downstream ports) to keep the
link at the target link speed or at the highest common speed supported by both components of the link. In
addition, either link component may request a link speed change due to software requests or link reliability
reasons (i.e., speed downgrade). Downstream components are further permitted to request link speed
changes due to autonomous hardware initiated mechanisms.
A component must only initiate a link speed change when it knows that its link partner supports the
target speed via prior exchange of Training Sets. As stated before, Gen2 support is optional while Gen1
support is mandatory. Also, a component may advertise supported link speeds via the Recovery state,
without necessarily changing the link speed.
If neither component in the link advertises support for Gen2, then the link remains operating in Gen1
speed. If one of the components decides to advertise support for Gen2 (i.e., software sets the Target link
Speed = Gen2), then this component will advertise its support for Gen2 speed via the Recovery state. The
link will continue to operate in Gen1 speed since only one of the components has advertised support for the
higher speed. If one component has advertised support for Gen1 and Gen2, and the other has advertised
support for Gen1 only, then the link will remain operating in Gen1 speed until the lesser-speed component
decides to:
– Advertise support for Gen2 via the Recovery state without modifying the link speed. The link
remains operating at Gen1 speed.
– Transition the link speed to Gen2 via the Recovery.Speed state. The link will operate at Gen2
speed. In this case, the advertisement of Gen2 speed by both components is done implicitly in the
Recovery substates entered while modifying the link speed.
Link Speed Negotiation in the PES24T6G2
The PES24T6G2 ports support per lane data rates of 5.0 Gbps and 2.5 Gbps. The highest data rate of
each link is determined dynamically, and depends on the following factors:
– Maximum link data rate supported by both components of the link
– The Target Link Speed set via the Link Control 2 Register (PCIELCTL2)
– The Hardware Autonomous Speed Disable (HASD) bit in the PCIELCTL2 register
– The reliability of the link at 5.0 Gbps
By default, the Target Link Speed (TLS) of each port is set to 5.0 Gbps. Therefore, the PES24T6G2
ports advertise support for 5.0 Gbps during the link training process via training-sets. After a fundamental
reset, each port link trains to the L0 state at 2.5 Gbps. If the Target Link Speed indicates 5.0 Gbps (default
value), the PHY LTSSM automatically initiates link speed upgrade to 5.0 Gbps using the link speed change
mechanism described in the PCIe 2.0 specification. This occurs regardless of the setting of the Hardware
Autonomous Speed Disable (HASD) bit in the PCIELCTL2 register.
1.
Initial link speed upgrade is not considered an autonomous link speed upgrade, since it is caused by the default
setting of the Target Link Speed field in the PCIELCTL2 register.
PES24T6G2 User Manual3 - 4April 30, 2013
1
Page 47
IDT Link Operation
Notes
Note that in this case the Link Bandwidth Management Status (LBWSTS) bit in the PCIELSTS register
of the downstream port is not set, since the initial link speed upgrade was not caused by a software directed
link retrain or by link reliability issues. The same behavior applies after full link retrain (i.e., when the LTSSM
transitions through the ‘Detect’ state). The current link speed of each port is reported via the Current Link
Speed (CLS) field of the port’s Link Status Register (PCIELSTS).
When a link speed upgrade operation fails, the PHY LTSSM reverts back to the speed before the
upgrade (i.e., 2.5 Gbps) and does not autonomously initiate a subsequent link speed upgrade. The PHY
continues to respond to link partner requests for link speed upgrade or to link speed upgrades triggered by
the software setting the Link Retrain (LRET) bit in the PCIELCTL register.
The PES24T6G2 ports do not autonomously change speed. As a result, the PES24T6G2 ports never
set the ‘Autonomous Change’ bit in the training sets exchanged with the link partner during link training.
Still, a link partner connected to a PES24T6G2 downstream port may autonomously change link speed.
When this occurs, the PES24T6G2 downstream port sets the Link Autonomous Bandwidth Status
(LABWSTS) bit in the PCIELSTS register. A system designer may limit the maximum speed at which each
port operates by changing the target link speed via software or EEPROM and forcing link retraining. Refer
to section Software Management of Link Speed below for further details.
Software Management of Link Speed
Software can interact with the link control and status registers of each port to set the link speed and
receive notification of link speed changes. This gives software the capability to choose the desired link
speed based on system specific criteria. For example, depending on the traffic load expected on a link, software can choose to downgrade link speed to 2.5 Gbps in order to reduce power on a low-traffic link and
later upgrade the link to 5.0 Gbps when the bandwidth is required. Software may also choose to change the
link speed due to link reliability reasons (i.e., a link that has reliability problems at 5.0 Gbps may be downgraded to 2.5 Gbps).
As mentioned above, the Target Link Speed (TLS) field of the Link Control 2 Register (PCIELCTL2) sets
the preferred link speed. By default, the Target Link Speed of each port is set to 5.0 Gbps.
In order to change link speed, software must write to the TLS field of the port’s PCIELCTL2 register and
subsequently force a link retrain by writing to the Link Retrain (LRET) bit of the Link Control (PCIELCTL)
register. Software is notified of link speed changes via the link bandwidth notification mechanism described
in the PCIe specification. This mechanism is enabled by setting the Link Bandwidth Management Interrupt
Enable (LBWINTEN) bit in the PCIELCTL register of switch downstream ports.
When the link speed is changed (i.e., due to reliability reasons or by virtue of software setting the TLS
field and retraining the link), the downstream port’s LTSSM sets the Link Bandwidth Management Status
(LBWSTS) bit in the PCIELSTS register. Software can verify the link speed by reading the Current Link
Speed (CLS) field of the port’s Link Status Register (PCIELSTS). Note that to force link speed to a value
other than the default value, the TLS field could be configured through Serial EEPROM initialization and full
link retraining forced. Finally, note that the Hardware Autonomous Speed Disable (HASD) bit has no effect
on link speed changes triggered by modifications of the TLS field followed by setting the LRET bit.
Link Reliability
An unreliable link is a link that exhibits recurrent errors detected in the physical layer. These errors
include bit-flipping due to electrical problems, SerDes transmitter and receiver problems, lack of synchronization between transmitter and receiver, etc. All of these usually result in LCRC failures at the data-link
layer. In severe cases, link reliability problems cause the link to be automatically retrained (refer to section
Link Retraining on page 3-7). As the link speed increases (i.e., Gen2 in PCI Express 2.0), the link is more
susceptible to link errors due to tighter margins in the data window.
Software may assess the reliability of the link using the PCIe Advanced Error Reporting (AER) structure
or other means offered by the switch or its link partners. In response to an unreliable link, software can
manage the link speed and link width in order to improve the reliability of the link. For additional information,
refer to section Software Management of Link Speed on page 3-5.
PES24T6G2 User Manual3 - 5April 30, 2013
Page 48
IDT Link Operation
Notes
Autonomous Link Reliability Management
As mentioned above, an unreliable link exhibits recurrent errors. When the rate of errors is very high, the
LTSSM will likely be unable to communicate with the link partner and automatically revert to the lowest
possible link speed (i.e., 2.5 Gbps). The mechanism to detect severe link errors and downgrade speed is
part of the PCIe 2.0 specification.
However, if the rate of link errors is low enough to keep the LTSSM operating in Gen2 mode, but high
enough that it adversely affects link bandwidth or compromises link stability (i.e., by constantly retraining
the link through the Recovery state), none of the mechanisms in the PCIe 2.0 specification can detect and
react appropriately.
As an example, a bit error rate of 1.0E-6 in Gen2 mode (i.e., 1 error every 200 usec) may result in a
large number of TLP replays on the link, which impact link bandwidth and potentially result in link retrain
events that move the link repeatedly through the Recovery state. A large number of link retrains not only
make the link bandwidth unpredictable, but can potentially bring the link down, resulting in system instability.
In order to address this, a mechanism is desired that monitors link errors such that when they reach a
programmable rate (i.e., 1.0E-6 as the example above), the mechanism is capable of autonomously downgrading link speed, potentially enhancing link and bandwidth stability. The Autonomous Link Reliability
Management logic in the PES24T6G2 is such a mechanism. Each PES24T6G2 port has the capability to
autonomously detect link unreliability and react by downgrading the link speed to 2.5 Gbps.
This capability is enabled by setting the Enable (EN) bit of the Autonomous Link Reliability Control
register (ALRCTL). Once enabled, it remains enabled until the user clears the EN bit. By default, the ALR
mechanism is disabled. When enabled, the Autonomous Link Reliability logic monitors the rate of errors
in
the link. When the rate of errors crosses an specified threshold, the Phy’s LTSSM downgrades the link
speed to 2.5 Gbps, removes support for 5.0 Gbps from its advertised data rate in training sets, and remains
in this downgraded data rate until the link fully retrains or the Link Retrain (LRET) field of the PCI Express
Link Control (PCIELCTL) register is set, when the target link speed is 5.0 Gbps.
The Autonomous Link Reliability Management logic is capable of monitoring two types of link error
conditions: individual bit errors (i.e., LCRC errors) or link state errors (i.e., Phy LTSSM transitions through
the Recovery state). Only one of these type of errors may be monitored at a time. The type of error monitored is selected by programming the Link Error Type (LET) field in the ALRCTL register. A user who wishes
to count all LCRC errors (which don’t necessarily result in link retraining) can program the LET field appropriately. A user who wishes to count link retraining events caused by link errors can program the LET field to
LTSSM Recovery transitions.
1
As mentioned above, when the rate of errors crosses an specified threshold, the Phy’s LTSSM downgrades the link speed. The threshold is programmed via the Autonomous Link Reliability Error Rate
Threshold (ALRERT) register. This register contains two fields: Error Threshold (ERRT) and Monitoring
Period (PERIOD). The PERIOD field is programmed in units of micro-seconds. The Autonomous Link Reliability logic determines that a link is unreliable when it detects ERRT errors in PERIOD time. When this
occurs, the LTSSM downgrades the link speed to 2.5 Gbps
3
bit in the ALRSTS register
. Additionally, the LTSSM sets the Link Bandwidth Management Status
(LBWSTS) bit in the PCI Express Link Status (PCIELSTS) register.
2
and sets the Unreliable Link Detected (ULD)
4
1.
Note that it is only possible to count link errors that cause the PES24T6G2 port to initiate a link transition to
Recovery. Link errors which cause the link partner to initiate entry into the Recovery state are not counted.
2.
This requires that the PHY LTSSM change its advertisement of supported link speeds to 2.5 Gbps only.
3.
The ULD bit is a status bit set by hardware. Once set, it will remain set until cleared by software. Hardware
never clears the ULD bit.
4.
Note that per the PCIe 2.0 specification, the LBWSTS bit is not set if the link transitions through the DL_Down
state.
PES24T6G2 User Manual3 - 6April 30, 2013
Page 49
IDT Link Operation
Notes
Once the link speed is downgraded, the link speed will remain at 2.5 Gbps until the link fully retrains (i.e.,
the PHY LTSSM transitions through the Detect state) or the LRET bit is set in the PCIELCTL register, with a
target link speed of 5.0 Gbps. If the link partner requests to upgrade the link speed (i.e., via the Recovery
state), the PHY LTSSM enters the Recovery state but the link speed remains at 2.5 Gbps.
The user may determine the current error number and monitoring period counts by reading the Error
Number Count (ENCNT) and Monitoring Period Count (MPCNT) fields in the Autonomous Link Reliability
Count (ALRCNT) register
1
. The MPCNT value is in units of micro-seconds. When the monitoring period
count (MPCNT) reaches the monitoring period (PERIOD field in the ALRERT register), hardware resets the
ENCNT and MPCNT fields to their initial value and re-starts both counts. These counts are also reset when
a full-link retrain occurs or when the LRET bit in the PCIELCTL register is set.
When a link is determined to be unreliable (i.e., ULD bit set in the ALRSTS register), the error number
count and monitor period counts stop (ENCNT and MPCNT fields are not reset and keep their value
unchanged). The user may read these fields to determine the error count and the monitoring period count at
which the link was determined to be unreliable.
2
To re-enable the mechanism, the user must clear the
enable bit (EN) in the ALRCTL register, then clear the ULD bit in the ALRSTS register, and then set the EN
bit again.
The Autonomous Link Reliability mechanism is not affected by the state of the Hardware Autonomous
Speed Disable (HASD) bit in the PCI Express Link Control 2 (PCIELCTL2) register, since this bit does not
apply to speed changes caused by link reliability issues. Additionally, note that when the link speed is downgraded by the ALR mechanism, the Link Bandwidth Management Status (LBWSTS) bit is set in the PCI
Express Link Status (PCIELSTS) register of downstream ports. This may in turn cause an interrupt to be
sent upstream when the Link Bandwidth Management Interrupt Enable (LBWINTEN) bit is set in the PCI
Express Link Control (PCIELCTL) register.
Link Retraining
Per the PCIe 2.0 specification, link retraining can be done autonomously in response to link problems
(i.e., repeated TLP replay attempts) or as a result of software setting the link retrain (LRET) bit in the PCI
Express Link Control (PCIELCTL) register. Writing a one to the Link Retrain (LRET) bit in the upstream
port’s PCI Express Link Control (PCIELCTL) register when the REGUNLOCK bit is set in the SWCTL
register forces the upstream PCIe to retrain. When this occurs the LTSSM transitions directly to the
Recovery state.
Writing a one to the Link Retrain (LRET) bit in a downstream port’s PCI Express Link Control
(PCIELCTL) register regardless of the REGUNLOCK bit state in the SWCTL register forces the downstream PCIe link to retrain. When this occurs, the LTSSM transitions directly to the Recovery state. Writing
a one to the Full Link Retrain (FLRET) bit in the Phy Link State 0 (PHYLSTSE 0) register of any port forces
that port’s PCIe link to retrain. When this occurs, the LTSSM transitions directly to the Detect state.
Link retraining does not result in the link going down, unless the LTSSM transitions through the Detect
state in its retraining attempt. The speed of the link is not necessarily changed as a result of link retraining.
A link that operates at 5.0 Gbps will continue to operate at that speed if the link retraining attempt is
successful at that speed. Otherwise, the link speed is changed to 2.5 Gbps.
When link retraining results in the speed of the link being downgraded from 5.0 Gbps to 2.5 Gbps, the
Link Bandwidth Management Status (LBWSTS) bit is set in the PCI Express Link Status (PCIELSTS)
register (for downstream ports only). Also, the PHY LTSSM remains at the downgraded speed until the link
partner requests a link speed upgrade
3
, software sets the LRET bit in the PCIELCTL register, or the link is
fully retained via the FLRET bit in the PHYLSTATE0 register. Refer to section Link Speed Negotiation in the
1.
Note that these counts are active even when the ALR mechanism is disabled. A user may read these counts to
monitor link reliability, without enabling the ALR mechanism to reduce link speed. Finally, note that the ALR mechanism must be enabled in order for the ULD bit to get set.
2.
When a link is determined to be unreliable, the error count (ENCNT) field will match the value of the error
threshold (ERRT).
3.
If enabled, the Autonomous Link Reliability mechanism described in section 8.7.1 may keep the link speed at
2.5 Gbps in spite of link partner requests to upgrade the link speed.
PES24T6G2 User Manual3 - 7April 30, 2013
Page 50
IDT Link Operation
Notes
PES24T6G2 on page 3-4. When the speed of the link is downgraded as a result of link retraining, the PHY
LTSSM remains at the downgraded speed until the link partner requests a link speed upgrade or software
sets the Link Retrain (LRET) bit in the PCIELCTL register.
Link Down
When a link goes down, all TLPs received by that port and queued in the switch are discarded and all
TLPs received by other ports and destined to the port whose link is down are treated as Unsupported
Requests (UR). While a downstream link is down, it is possible to perform configuration read and write
operations to the PCI-PCI bridge associated with that link. When a link comes up, flow control credits for the
configured size of the IFB queues are advertised. A link down condition on a downstream port’s link may
cause the Surprise Down Error Status (SDOENERR) bit to be set in the port’s AER Uncorrectable Error
Status (AERUES) register. The conditions under which surprise down is reported are described in Section
3.2.1 of the PCIe 2.0 Specification.
Slot Power Limit Support
The Set_Slot_Power_Limit message is used to convey a slot power limit value from a downstream
switch port or root port to the upstream port of a connected device or switch.
Upstream Port
When a Set_Slot_Power_Limit message is received by the upstream switch port, then the fields in the
message are written to the PCI Express Device Capabilities (PCIEDCAP) register of that port:
– Byte 0 bits 7:0 of the message payload are written to the Captured Slot Power Limit Scale
(CSPLS) field.
– Byte 1 bits 1:0 of the message payload are written to the Captured Slot Power Limit Value
(CSPLV) field.
Downstream Port
A Set_Slot_Power_Limit message is sent by downstream switch ports when either of the following
events occur:
– A configuration write is performed to the corresponding PCIESCAP register when the link associ-
ated with the downstream port is up.
– A link associated with the downstream port transitions from a non-operational state to an opera-
tional (i.e., up) state.
Link States
The PES24T6G2 supports the following link states
– L0
• Fully operational link state
– L0s
• Automatically entered low power state with shortest exit latency
– L1
• Lower power state than L0s
• May be automatically entered or directed by software by placing the device in the D3
– L2/L3 Ready
• The L2/L3 state is entered after the acknowledgement of a PM_Turn_Off Message.
• There is no TLP or DLLP communications over a link in this state.
– L3
• Link is completely unpowered and off
– Link Down
hot
state
PES24T6G2 User Manual3 - 8April 30, 2013
Page 51
IDT Link Operation
Notes
L0
L0sL1
L2/L3 Ready
L3
Link Down
Fundamental Reset
Hot Reset
Etc.
• A transitional link down pseudo-state prior to L0. This pseudo-state is associated with the
LTSSM Detect, Polling, Configuration, Disabled, Loopback and Hot-Reset states.
Figure 3.3 PES24T6G2 ASPM Link Sate Transitions
Active State Power Management
The operation of Active State Power Management (ASPM) is orthogonal to power management. Once
enabled by the ASPM field in the PCI Express Link Control (PCIELCTL) register, ASPM link state transitions are initiated by hardware without software involvement. The PES24T6G2 ASPM supports the required
L0s state as well as the optional L1 state. The L0s Entry Timer (L0ET) field in the PCI Power Management
Proprietary Control (PMPC) register controls the amount of time L0s entry conditions must be met before
the hardware transitions the link to the L0s state.
The upstream switch port has the following L0s entry conditions.
– The receive lanes of all of the switch downstream ports which are not in a low power state (i.e.,
D3) and whose link is not down are in the L0s state.
– The switch has no TLPs to transmit on the upstream port or there are no available flow control
credits to transmit a TLP.
– There are no DLLPs pending for transmission on the upstream port.
The downstream switch ports have the following L0s entry conditions.
The L1 Entry Timer (L1ET) field in the PCI Power Management Proprietary Control (PMPC) register
controls the amount of time L1 entry conditions must be met before the hardware transitions the link to the
L1 state. If these conditions are met and the link is in the L0 or L0s state, the hardware will request a transition to the L1 state from its link partner. Note that L1 entry requests are only made by the PES24T6G2
upstream port. If the link partner acknowledges the transition, the L1 state is entered. Otherwise, the L0s
state is entered. Note that the upstream switch port will only request entry into the L1 state when all of the
downstream ports which are not in a low power state (i.e., D3) and whose link is not down are in the L1
state.
– The receive lanes of the switch upstream port are in the L0s state.
– The switch has no TLPs to transmit on the downstream port or there are no available flow control
credits to transmit a TLP.
– There are no DLLPs pending for transmission on the downstream port.
PES24T6G2 User Manual3 - 9April 30, 2013
Page 52
IDT Link Operation
Notes
Link Status
Associated with each port is a Port Link Up (PxLINKUPN) status output and a Port Activity (PxACTIVEN) status output. These outputs are provided on I/O expander 4. See section I/O Expanders on page
5-7 for the operation of the I/O expander and the mapping of these status outputs to I/O expander pins.
The PxLINKUPN and PxACTIVEN status outputs may be used to provide a visual indication of system
state and activity or for debug. The PxLINKUPN output is asserted when the PCIe data link layer is up (i.e.,
when the LTSSM is in the L0, L0s, L1, or recovery states). When the data link layer is down, this output is
negated. The PxACTIVEN output is asserted whenever any TLP, other than a vendor defined message, is
transmitted or received on the corresponding port’s link. Whenever a PxACTIVEN output is asserted, it
remains asserted for at least 200 ms. Since an I/O expander output may change no more frequently than
once every 40 ms, this translates into five I/O expander update periods.
De-emphasis Negotiation
The PCI Express 2.0 specification requires that components support the following levels of deemphasis, depending on the link data rate:
When operating at 5.0 Gbps, the de-emphasis is selected by programming the Selectable De-emphasis
(SDE) field in the PCI Link Control 2 Register (PCIELCTL2). The chosen de-emphasis for the link is the
result of a negotiation between the components of the link. Both components must operate with the same
de-emphasis across all lanes of the link. During normal operation (i.e, not polling.compliance), de-emphasis
selection is done during the Recovery state. The downstream component of the link (i.e., switch upstream
port or endpoint) advertises its desired de-emphasis by transmission of training sets. The upstream component of the link (i.e., switch downstream port or root-complex port) notes its link partner desired deemphasis and makes a decision about the de-emphasis to be used in the link.
The PES24T6G2’s upstream port PHY advertises its desired de-emphasis based on the setting of the
port’s SDE field in the PCIELCTL2 register. The upstream PHY always accepts the link-partners decision
on the de-emphasis to be used in the link. The PES24T6G2’s downstream ports ignore the link partner’s
desired de-emphasis and always choose the de-emphasis setting in the SDE field of the port’s PCIELCTL2
register.
Low-Swing Transmitter Voltage Mode
The PES24T6G2 ports support the optional low-swing transmit voltage mode defined in the PCIe 2.0
specification. In this mode, the transmitter’s voltage level is set to approximately half the value of the fullswing (default) mode. This reduces power consumption in the SerDes. This mode is enabled by setting the
Low-Swing Enable (LSE) bit in the port’s SerDes Control (SERDESCTL) register.
When Low-Swing mode is enabled, the transmitter drive level is reduced and de-emphasis is automatically turned off. Therefore, the Selectable De-emphasis (SDE) and Compliance De-emphasis (CDE) fields
in the PCIELCTL2 register have no effect. In addition, the Current De-emphasis (CDE) field in the
PCIELSTS2 register becomes invalid.
Crosslink
The PES24T6G2 ports support the optional crosslink capability specified in PCI Express 2.0. Per this
specification, a crosslink is established between two downstream ports or two upstream ports. Crosslink is
enabled when the Crosslink Disable (CLINKDIS) bit in the Phy Link Configuration (PHYLCFG) register is
set to 0x0. The initial value of this field is 0x1 in all switch modes except SWMODE[2:0]=0x4 “Normal switch
mode with crosslink enabled (factory use only).” The user may also clear this bit with a configuration write.
PES24T6G2 User Manual3 - 10April 30, 2013
Page 53
IDT Link Operation
Notes
The PES24T6G2 ports are capable of establishing crosslink with any link partner, including another
PES24T6G2 device. Additionally, the PES24T6G2 ports support crosslink-to-self (i.e., transmit lanes to
1
receive lanes of same port)
using a proprietary built-in mechanism in the Phy LTSSM. This mode must be
explicitly enabled by setting the Self Crosslink Enable (SCLINKEN) bit in the PHYLCFG register.
In the case where two PES24T6G2 devices are crosslinked to each other, it is recommended that the
crosslink connection be done among different ports (i.e., the port number of the crosslinked ports should be
different). If this is not the case, software must set the SEED field in the crosslinked port’s Phy PRBS Seed
(PHYPRBS) register to different values in each device. When crosslink is enabled, dynamic link width reconfiguration (Section ) is not supported.
1.
Note that lane reversal is not possible in the crosslink-to-self mode.
PES24T6G2 User Manual3 - 11April 30, 2013
Page 54
IDT Link Operation
Notes
PES24T6G2 User Manual3 - 12April 30, 2013
Page 55
Notes
Chapter 4
General Purpose I/O
®
Introduction
The PES24T6G2 has 11 General Purpose I/O (GPIO) pins that may be individually configured as:
general purpose inputs, general purpose outputs, or alternate functions.GPIO pins are controlled by the
General Purpose I/O Function (GPIOFUNC), General Purpose I/O Configuration (GPIOCFG), and General
Purpose I/O Data (GPIOD) registers in the upstream port’s PCI configuration space. As shown in Table 4.1,
10 GPIO pins are shared with other on-chip functions. The GPIO Function (GPIOFUNC) register controls
whether a GPIO bit operates as a general purpose I/O or as the specified alternate function.
GPIO
Pin
Alternate
Function
Pin Name
0PE2RSTNReset output for downstream port 2Output
1PE4RSTNReset output for downstream port 4Output
2IOEXPINTN0SMBus I/O expander interrupt 0Input
3IOEXPINTN1SMBus I/O expander interrupt 1Input
4IOEXPINTN2SMBus I/O expander interrupt 2Input
5IOEXPINTN3SMBus I/O expander interrupt 3Input
7GPENGeneral purpose event outputOutput
8PE1RSTNReset output for downstream port 1Output
9PE3RSTNReset output for downstream port 3Output
10PE5RSTNReset output for downstream port 5Output
Table 4.1 General Purpose I/O Pin Alternate Function
Alternate Function
Description
Alternate
Function
Pin Type
After reset, all GPIO pins default to the GPIO input function. GPIO pins configured as GPIO inputs are
sampled no more frequently than once every 128 ns and may be treated as asynchronous inputs. When a
GPIO pin is configured to use the GPIO function, the unneeded alternate function associated with the pin is
held in an inactive state by internal logic. Care should be exercised when configuring the GPIO pins as
outputs since an incorrect configuration could cause damage to external components as well as the
PES24T6G2.
GPIO Configuration
Associated with each GPIO pin is a bit in the GPIOFUNC, GPIOCFG and GPIOD registers. Table 4.2
summarizes the configuration of GPIO pins.
GPIOFUNCGPIOCFGPin Function
00GPIO input
01GPIO output
1don’t careAlternate function
Table 4.2 GPIO Pin Configuration
PES24T6G2 User Manual 4 - 1April 30, 2013
Page 56
IDT General Purpose I/O
Notes
GPIO Pin Configured as an Input
register, the GPIO pin is sampled and registered in the GPIOD register. The value of the input pin can be
determined at any time by reading the GPIOD register. Note that the value in this register corresponds to
the value of the pin irrespective of whether the pin is configured as a GPIO input, GPIO output, or alternate
function.
GPIO Pin Configured as an Output
register, the value in the corresponding bit position of the GPIOD register is driven on the pin. System
designers should treat the GPIO outputs as asynchronous outputs. The actual value of the output pin can
be determined by reading the GPIOD register.
GPIO Pin Configured as an Alternate Function
the section associated with that function. The value of the alternate function pin can be determined at any
time by reading the GPIOD register.
When configured as an input in the GPIOCFG register and as a GPIO function in the GPIOFUNC
When configured as an output in the GPIOCFG register and as a GPIO function in the GPIOFUNC
When configured as an alternate function in the GPIOFUNC register, the pin behaves as described by
PES24T6G2 User Manual4 - 2April 30, 2013
Page 57
Notes
Chapter 5
Processor
PES24T6G2
SSMBCLK
SSMBDAT
MSMBCLK
MSMBDAT
SMBus
Master
Other
SMBus
Devices
Serial
EEPROM
Processor
PES24T6G2
SSMBCLK
SSMBDAT
MSMBCLK
MSMBDAT
SMBus
Master
Other
SMBus
Devices
Serial
EEPROM
...
...
(a) Unified Configuration
(b) Split Configuration
Hot-Plug
I/O
Expander
Hot-Plug
I/O
Expander
SMBus Interfaces
®
Introduction
The PES24T6G2 contains two SMBus interfaces. The slave SMBus interface provides full access to all
software visible registers in the PES24T6G2, allowing every register in the device to be read or written by
an external SMBus master. The slave SMBus may also be used to initialize the serial EEPROM used for
initialization. The Master SMBus interface provides connection for an optional external serial EEPROM
used for initialization and optional external I/O expanders.
Six pins make up each of the two SMBus interfaces. These pins consist of an SMBus clock pin, an
SMBus data pin, and 4 SMBus address pins.
Note: MSMBADDR and SSMBADDR address pins are not available in the 19mm package. The
MSMBADDR address is hardwired to 0x50, and the SSMBADDR address is hardwired to 0x77.
As shown in Figure 5.1, the master and slave SMBuses may be used in a unified or split configuration.
Figure 5.1 SMBus Interface Configuration Examples
In the unified configuration, shown in Figure 5.1(a), the master and slave SMBuses are tied together and
the PES24T6G2 acts both as an SMBus master as well as an SMBus slave on this bus. This requires that
PES24T6G2 User Manual 5 - 1April 30, 2013
the external SMBus master or processor that has access to the PES24T6G2 registers support SMBus arbi-
Page 58
IDT SMBus Interfaces
Notes
tration. In some systems, this external SMBus master interface may be implemented using general purpose
I/O pins on a processor or microcontroller, and thus may not support SMBus arbitration. To support these
systems, the PES24T6G2 may be configured to operate in a split configuration as shown in Figure 5.1(b).
In the split configuration, the master and slave SMBuses operate as two independent buses and thus
multi-master arbitration is not required.
Master SMBus Interface
The master SMBus interface is used during a fundamental reset to load configuration values from an
optional serial EEPROM. It is also used to support optional I/O expanders used for hot-plug and other
status signals.
Initialization
Master SMBus initialization occurs during a fundamental reset (see section Fundamental Reset on page
2-2). During a fundamental reset initialization sequence, the state of the Master SMBus Slow Mode
(MSMBSMODE) signal is examined. If this signal is asserted, then the Master SMBus Clock Prescalar
(MSMBCP) field in the SMBus Control (SMBUSCTL) register is initialized to support 100 KHz SMBus operation. If the signal is negated, the MSMBCP field is initialized for 400 KHz SMBus operation.
Serial EEPROM
During a fundamental or hot reset, an optional serial EEPROM may be used to initialize any software
visible register in the device. Serial EEPROM loading occurs if the Switch Mode (SWMODE[2:0]) field
selects an operating mode that performs serial EEPROM initialization. The address used by the SMBus
interface to access the serial EEPROM is specified by the MSMBADDR[4:1] signals as shown in Table 5.1.
Note: MSMBADDR address pins are not available in the 19mm package. The MSMBADDR
address is hardwired to 0x50.
Address
Bit
1MSMBADDR[1]
2MSMBADDR[2]
3MSMBADDR[3]
4MSMBADDR[4]
51
60
71
Table 5.1 Serial EEPROM SMBus Address
Address Bit Value
Device Initialization from a Serial EEPROM
During initialization from the optional serial EEPROM, the master SMBus interface reads configuration
blocks from the serial EEPROM and updates corresponding registers in the PES24T6G2. Any PES24T6G2
software visible register in any port may be initialized with values stored in the serial EEPROM. Each software visible register in the PES24T6G2 has a CSR system address which is formed by adding the PCI
configuration space offset value of the register to the base address of the configuration space in which the
register is located. Configuration blocks stored in the serial EEPROM use this CSR system address shifted
right two bits (i.e., configuration blocks in the serial EEPROM use doubleword CSR system addresses and
not byte CSR system addresses).
Base addresses for the PCI configuration spaces in the PES24T6G2 are listed in Table 8.1, Base
Addresses for Port Configuration Space Register. Since configuration blocks are used to store only the
value of those registers that are initialized, a serial EEPROM much smaller than the total size of all of the
PES24T6G2 User Manual5 - 2April 30, 2013
Page 59
IDT SMBus Interfaces
Notes
Bit
0
Bit
1
Bit
2
Bit
3
Bit
4
Bit
5
Bit
6
Bit
7
Byte 0CSR_SYSADDR[7:0]
CSR_SYSADDR[13:8]
TYPE
0x0
Byte 1
Byte 2DATA[7:0]
Byte 3DATA[15:8]
Byte 4DATA[23:16]
Byte 5DATA[31:24]
configuration spaces may be used to initialize the device. Any serial EEPROM compatible with those listed
in Table 5.2 may be used to store the PES24T6G2 initialization values. Some of these devices are larger
than the total size of all of the PCI configuration spaces in the PES24T6G2 that may be initialized and thus
may not be fully utilized.
Serial EEPROMSize
24C324 KB
24C648 KB
24C12816 KB
24C25632 KB
24C51264 KB
Table 5.2 PES24T6G2 Compatible Serial EEPROMs
During serial EEPROM initialization, the master SMBus interface begins reading bytes starting at serial
EEPROM address zero. These bytes are interpreted as configuration blocks and sequential reading of the
serial EEPROM continues until the end of a configuration done block is reached or the serial EEPROM
address rolls over from 0xFFFF to 0x0.
A blank serial EEPROM contains 0xFF in all data bytes. Therefore, when the PES24T6G2 is configured
to initialize from serial EEPROM and the second byte read from the EEPROM is0xFF, loading of the serial
EEPROM is aborted, the computed checksum is ignored, and normal device operation beings (i.e., the
device operates in the same manner as though i were not configured to initialize from the serial EEPROM).
– This behavior allows a board manufacturing flow that utilizes uninitialized serial EEPROMs. See
section Programming the Serial EEPROM on page 5-6 for information on in-system initialization
of the serial EEPROM.
All register initialization performed by the serial EEPROM is performed in double word quantities.
There are three configuration block types that may be stored in the serial EEPROM. The first type is a
single double word initialization sequence. A double word initialization sequence occupies six bytes in the
serial EEPROM and is used to initialize a single double word quantity in the PES24T6G2. A single double
word initialization sequence consists of three fields and its format is shown in Figure 5.2. The
CSR_SYSADDR field contains the double word CSR system address of the double word to be initialized.
The actual CSR system address, which is a byte address, equals this value with two lower zero bits
appended. The next field is the TYPE field that indicates the type of the configuration block. For single
double word initialization sequence, this value is always 0x0. The final DATA field contains the double word
initialization value.
PES24T6G2 User Manual5 - 3April 30, 2013
Figure 5.2 Single Double Word Initialization Sequence Format
Page 60
IDT SMBus Interfaces
Notes
Bit
0
Bit
1
Bit
2
Bit
3
Bit
4
Bit
5
Bit
6
Bit
7
Byte 0CSR_SYSADDR[7:0]
CSR_SYSADDR[13:8]
TYPE
0x1
Byte 1
Byte 2NUMDW[7:0]
Byte 3NUMDW[15:8]
Byte 4DATA0[7:0]
Byte 5DATA0[15:8]
Byte 6DATA0[23:16]
Byte 7DATA0[31:24]
Byte 4n+4DATAn[7:0]
Byte 4n+ 5DATAn[15:8]
Byte 4n+6DATAn[23:16]
Byte 4n+7DATAn[31:24]
...
...
Bit
0
Bit
1
Bit
2
Bit
3
Bit
4
Bit
5
Bit
6
Bit
7
Byte 0CHECKSUM[7:0]
ReservedTYPE
0x3
Byte 1
(must be zero)
The second type of configuration block is the sequential double word initialization sequence. It is similar
to a single double word initialization sequence except that it contains a double word count that allows
multiple sequential double words to be initialized in one configuration block.
A sequential double word initialization sequence consists of four required fields and one to 65535
double word initialization data fields. The format of a sequential double word initialization sequence is
shown in Figure 5.3. The CSR_SYSADDR field contains the starting double word CSR system address to
be initialized. The next field is the TYPE field that indicates the type of the configuration block. For sequential double word initialization sequences, this value is always 0x1. The NUMDW field specifies the number
of double words initialized by the configuration block. This is followed by the number of DATA fields specified in the NUMDW field.
Figure 5.3 Sequential Double Word Initialization Sequence Format
The final type of configuration block is the configuration done sequence which is used to signify the end
of a serial EEPROM initialization sequence. If during serial EEPROM initialization, an attempt is made to
initialize a register that is not defined in a configuration space (i.e., not defined in chapter 8!!!), then the
PES24T6G2 User Manual5 - 4April 30, 2013
ignored.
CHECKSUM field contains the checksum of all of the bytes in all of the fields read from the serial EEPROM
from the first configuration block to the end of this done sequence. The second field is the TYPE field which
is always 0x3 for configuration done sequences.
Unmapped Register Initialization Attempt (URIA) bit is set in the SMBUSSTS register and the write is
The configuration done sequence consists of two fields and its format is shown in Figure 5.4. The
Figure 5.4 Configuration Done Sequence Format
Page 61
IDT SMBus Interfaces
Notes
The checksum in the configuration done sequence enables the integrity of the serial EEPROM initialization to be verified. Since uninitialized EEPROMs typically have a value of all ones, initialization from an
uninitialized serial EEPROM will result in a checksum mismatch. The checksum is computed in the
following manner. An 8-bit counter is initialized to zero and the 8-bit sum is computed over the configuration
bytes stored in the serial EEPROM, including the entire contents of the configuration done sequence, with
the checksum field initialized to zero.
1
The 1’s complement of this sum is placed in the checksum field.
1.
This includes the byte containing the TYPE field.
PES24T6G2 User Manual5 - 5April 30, 2013
Page 62
IDT SMBus Interfaces
Notes
The checksum is verified in the following manner. An 8-bit counter is cleared and the 8-bit sum is
computed over the bytes read from the serial EEPROM, including the entire contents of the configuration
1
done sequence.
The correct result should always be 0xFF (i.e., all ones). Checksum checking may be
disabled by setting the Ignore Checksum Errors (ICHECKSUM) bit in the SMBus Control (SMBUSCTL)
register.
If an error is detected during loading of the serial EEPROM, then loading of the serial EEPROM is
aborted and the RSTHALT bit is set in the SWCTL register. This allows debugging of the error condition via
the slave SMBus interface but prevents normal system operation with a potentially incorrectly initialized
device. Error information is recorded in the SMBUSSTS register.
Once serial EEPROM initialization completes, or when an error is detected, the EEPROM Done
(EEPROMDONE) bit is set in the SMBus Status (SMBUSSTS) register. A summary of possible errors
during serial EEPROM initialization and specific action taken when detected is summarized in Table 5.3.
ErrorAction Taken
Configuration Done Sequence checksum
mismatch with that computed by the
PES24T6G2
Invalid configuration block type
(only invalid type is 0x2)
An unexpected NACK is observed during a
master SMBus transaction
A misplaced START or STOP condition is
detected by the master SMBus interface
Table 5.3 Serial EEPROM Initialization Errors
- Set RSTHALT bit in SWCTL register
- ICSERR bit is set in the SMBUSSTS register
- Abort initialization, set DONE bit in the SMBUSSTS register
- Set RSTHALT bit in SWCTL register
- ICSERR bit is set in the SMBUSSTS register
- Abort initialization, set DONE bit in the SMBUSSTS register
- Set RSTHALT bit in SWCTL register
- NAERR bit is set in the SMBUSSTS register
- Abort initialization, set DONE bit in the SMBUSSTS register
- Set RSTHALT bit in SWCTL register
- LAERR bit is set in the SMBUSSTS register
- Abort initialization, set DONE bit in the SMBUSSTS register
- Set RSTHALT bit in SWCTL register
- OTHERERR bit is set in the SMBUSSTS register
- Abort initialization, set DONE bit in the SMBUSSTS register
Programming the Serial EEPROM
The serial EEPROM may be programmed prior to board assembly or in-system via the slave SMBus
interface or a PCIe root. Programming the serial EEPROM via the slave SMBus is described in section
Serial EEPROM Read or Write Operation on page 5-17.
A PCIe root may read and write the serial EEPROM by performing configuration read and write transactions to the Serial EEPROM Interface (EEPROMINTF) register. To read a byte from the serial EEPROM, the
root should configure the Address (ADDR) field in the EEPROMINTF register with the byte address of the
serial EEPROM location to be read and the Operation (OP) field to “read.” The Busy (BUSY) bit should then
be checked. If the EEPROM is not busy, then the read operation may be initiated by performing a write to
the Data (DATA) field. When the serial EEPROM read operation completes, the Done (DONE) bit in the
EEPROMINTF register is set and the busy bit is cleared. When this occurs, the DATA field contains the byte
data of the value read from the serial EEPROM.
To write a byte to the serial EEPROM, the root should configure the ADDR field with the byte address of
the serial EEPROM location to be written and set the OP field to “write.” If the serial EEPROM is not busy
(i.e., the BUSY bit is cleared), then the write operation may be initiated by writing the value to be written to
the DATA field. When the write operation completes, the DONE bit is set and the busy bit is cleared. Initiating a serial EEPROM read or write operation when the BUSY bit is set produces undefined results.
1.
This includes the checksum byte as well as the byte that contains the type and reserved field.
PES24T6G2 User Manual5 - 6April 30, 2013
Page 63
IDT SMBus Interfaces
Notes
SMBus errors may occur when accessing the serial EEPROM. If an error occurs, then it is reported in
the SMBus Status (SMBUSSTS) register. Software should check for errors before and after each serial
EEPROM access.
I/O Expanders
The PES24T6G2 utilizes external SMBus/I
2
C-bus I/O expanders connected to the master SMBus interface for hot-plug and port status signals. The PES24T6G2 is designed to work with Phillips PCA9555
compatible I/O expanders (i.e., PCA9555, PCA9535, and PCA9539). See the Phillips PCA9555 data sheet
for details on the operation of this device. An external SMBus I/O expander provides 16 bit I/O pins that
may be configured as inputs or outputs.
The PES24T6G2 supports up to five external I/O expanders. Table 5.4 summarizes the allocation of
functions to I/O expanders. I/O expanders zero through three are used to provide hot-plug I/O signals while
I/O expander four is used to provide link status and activity LED control. I/O expander signals associated
with LED control (i.e., link status and activity) are active low (i.e., driven low when an LED should be turned
on). I/O expander signals associated with hot-plug signals are not inverted.
SMBus I/O
Expander
0LowerPort 2 hot-plug
1LowerPort 3 hot-plug
2LowerUnused
3LowerUnused
4LowerLink status
During the PES24T6G2 initialization process, the SMBus/I
SectionFunction
UpperPort 4 hot-plug
UpperPort 5 hot-plug
UpperPower good inputs
UpperPort 1 hot-plug
UpperLink activity
Table 5.4 I/O Expander Function Allocation
2
C-bus address allocated to each I/O
expander used in that system configuration should be written to the corresponding IO Expander Address
(IOE[0:4]ADDR) field. The IOE[0:3]ADDR fields are contained in the I/O Expander Address 0
(IOEXPADDR0) register while the IOE[4]ADDR fields are contained in the SMBus I/O Expander Address 1
(IOEXPADDR1) register.
Hot-plug outputs and I/O expanders may be initialized via serial EEPROM. Since the I/O expanders and
serial EEPROM both utilize the master SMBus, no I/O expander transactions are initiated until serial
EEPROM initialization completes.
– Since no I/O expander transactions are initiated until serial EEPROM initialization completes, it is
not possible to toggle a hot-plug output through serial EEPROM initialization (i.e., it is not possible
to cause a 0 -> 1 -> 0 transition or a 1 -> 0 -> 1 transition).
Whenever the value of an IOEXPADDR field is written, SMBus write transactions are issued to the
corresponding I/O expander by the PES24T6G2 to configure the device. This configuration initializes the
direction of each I/O expander signal and sets outputs to their default value. Outputs for ports that are
disabled are set to their negated value (e.g., the power indicator is turned off, the link is down, there is no
activity, etc.).
PES24T6G2 User Manual5 - 7April 30, 2013
Page 64
IDT SMBus Interfaces
Notes
The default value of I/O expander outputs is shown in Table 5.5. Note that this default value may be
modified via serial EEPROM or SMBus configuration prior to SMBus initialization by changing the state of
the PCI Express Slot Control Register (PCIESCTL) or Hot-Plug Configuration Control (HPCFGCTL).
Table 5.5 I/O Expander Default Output Signal Value
Default
Value
The following I/O expander configuration sequence is issued by the PES24T6G2 to I/O expanders zero,
one and three (i.e., the ones that contain hot-plug signals).
– Write the default value of the outputs bits on the lower eight I/O expander pins (i.e., I/O-0.0 through
I/O-0.7) to I/O expander register 2.
– Write the default value of the outputs bits on the upper eight I/O expander pins (i.e., I/O-1.0
through I/O-1.7) to I/O expander register 3.
– write value 0x0 to I/O expander register 4 (no inversion in IO-0)
– write value 0x0 to I/O expander register 5 (no inversion in IO-1)
– Write the configuration value to select inputs/outputs in the lower eight I/O expander bits (i.e., I/O-
0.0 through I/O-0.7) to I/O expander register 6.
– Write the configuration value to select inputs/outputs in the upper eight I/O expander bits (i.e., I/
O-1.0 through I/O-1.7) to I/O expander register 7.
– Read value of I/O expander register 0 to obtain the current state of the lower eight I/O expander
bits (i.e., I/O-0.0 through I/O-0.7)
– Read value of I/O expander register 1 to obtain the current state of the upper eight I/O expander
bits (i.e., I/O-1.0 through I/O-1.7)
The following I/O expander configuration sequence is issued by the PES24T6G2 to I/O two (i.e., the one
that contains power good inputs).
– Write the default value of the outputs bits on the lower eight I/O expander pins (i.e., I/O-0.0 through
I/O-0.7) to I/O expander register 2.
– write value 0x0 to I/O expander register 4 (no inversion in IO-0)
– write value 0x0 to I/O expander register 5 (no inversion in IO-1)
– Write the configuration value to select inputs/outputs in the lower eight I/O expander bits (i.e., I/O-
0.0 through I/O-0.7) to I/O expander register 6.
– Write the configuration value to select all inputs upper eight I/O expander bits (i.e., I/O-1.0 through
I/O-1.7) to I/O expander register 7.
– Read value of I/O expander register 0 to obtain the current state of the lower eight I/O expander
bits (i.e., I/O-0.0 through I/O-0.7)
– read value of I/O expander register 1 to obtain the current state of the upper eight I/O expander
bits (i.e., I/O-1.0 through I/O-1.7)
PES24T6G2 User Manual5 - 8April 30, 2013
Page 65
IDT SMBus Interfaces
Notes
The following I/O expander configuration sequence is issued by the PES24T6G2 to I/O expander four
(i.e., the one that contains link up and link activity status).
– Write link up status for all ports to the lower eight I/O expander pins (i.e., I/O-0.0 through I/O-0.7)
to I/O expander register 2.
– Write link activity status for all ports to the upper eight I/O expander pins (i.e., I/O-1.0 through I/O-
1.7) to I/O expander register 3.
– write value 0x0 to I/O expander register 4 (no inversion in IO-0)
– write value 0x0 to I/O expander register 5 (no inversion in IO-1)
– Write the configuration value to select all outputs in the lower eight I/O expander bits (i.e., I/O-0.0
through I/O-0.7) to I/O expander register 6.
– Write the configuration value to select all outputs in the upper eight I/O expander bits (i.e., I/O-1.0
through I/O-1.7) to I/O expander register 7.
While the I/O expander is enabled, the PES24T6G2 maintains the I/O bus expander signals and the
PES24T6G2 internal view of the hot-plug signals in a consistent state. This means that whenever that I/O
bus expander state and the PES24T6G2 internal view of the signal state differs, an SMBus transaction is
initiated by the PES24T6G2 to resolve the state conflict. An example of an event that may lead to a state
conflict is a hot reset. When a hot reset occurs, one or more hot-plug register control fields may be re-initialized to its default value. When this occurs, the internal PES24T6G2 state of the hot-plug signals is in
conflict with the state of I/O expander hot-plug output signals. In such a situation, the PES24T6G2 will
initiate an SMBus transaction to modify the state of the I/O expander hot-plug outputs
The PES24T6G2 has one combined I/O expander interrupt input, labeled IOEXPINTN0, which is an
alternate function of GPIO[2]. Associated with each I/O expander is an open drain interrupt output that is
asserted when an I/O expander input pin changes state. The open drain I/O expander interrupt output of all
I/O expanders should be tied together on the board and connected to GPIO[2]. Whenever IOEXPINTN0 is
asserted, the PES24T6G2 reads the state of all I/O expanders.
For compatibility with legacy Gen. 1 PCIe switches, the PES24T6G2 supports individual I/O expander
interrupt inputs (i.e., IOEXPINTN[3:0]) as GPIO alternate functions. New designs should use the combined
I/O expander interrupt input.
In legacy applications, each interrupt output from an I/O expander should be connected to the corresponding PES24T6G2 I/O expander interrupt input. For Legacy Gen 1 switch compatibility, the
PES24T6G2 internally logically “ORs” the legacy I/O expander interrupts on GPIO alternate functions and
presents a single combined interrupt value to internal logic in the same manner as the external combined I/
O expander interrupt input. Therefore, the PES24T6G2 behaves in the same manner in applications that
use a single external combined I/O expander interrupt input as it does in applications that use legacy individual I/O expander interrupt inputs. In both cases, the assertion of any I/O expander interrupt results in a
status read of all I/O expanders. Since the PES24T6G2 I/O expander interrupt input(s) are GPIO alternate
functions, the corresponding GPIO(s) should be initialized during configuration to operate in alternate function mode. See Chapter 4, General Purpose I/O.
Whenever the PES24T6G2 needs to change the state of an I/O expander signal output, a master
SMBus transaction is initiated to update the state of the I/O expander. This write operation causes the
corresponding I/O expander to change the state of its output(s). The PES24T6G2 will not update the state
of an I/O expander output more frequently than once every 40 milliseconds. This 40 millisecond time
interval is referred to as the I/O expander update period.
Whenever an input to the I/O expander changes state from the value previously read, the interrupt
output of the I/O expander is asserted. This causes the PES24T6G2 to issue a master SMBus transaction
to read the updated state of all I
read the state of the I/O expander that asserted the interrupt. Whenever any I/O expander interrupt is
asserted, the PES24T6G2 reads and updates the state of all I/O expander inputs.
/O expander inputs. In legacy Gen1 devices, the PCIe switch would only
PES24T6G2 User Manual5 - 9April 30, 2013
Page 66
IDT SMBus Interfaces
Notes
Regardless of the state of the interrupt output of the I/O expander, the PES24T6G2 will not issue a
master SMBus transaction to read the updated state of the I/O expander inputs more frequently than once
every 40 milliseconds (i.e., the I/O expander update period). This delay in sampling may be used to eliminate external debounce circuitry. The I/O expander interrupt request output is negated whenever the input
values are read or when the input pin changes state back to the value previously read.
The PES24T6G2 ensures that I/O expander transactions are initiated on the master SMBus in a fair
manner. This guarantees that all I/O expanders have equal service latencies. Any errors detected during I/
O expander SMBus read or write transactions is reflected in the status bits of the SMBus Status
(SMBUSSTS) register.
The I/O Expander Interface (IOEXPINTF) register allows direct testing and debugging of the I/O
expander functionality. The Select (SEL) field in the IOEXPINTF register selects the I/O expander number
on which other fields in the register operate. The I/O Expander Data field in the IOEXPINTF register reflect
the current state, as viewed by the PES24T6G2, of the I/O expander inputs and outputs selected by the
SEL field.
Writing a one to the Reload I/O Expander Signals (RELOADIOEX) bit in the IOEXPINTF register causes
the PES24T6G2 to generate SMBus write and read transactions to the I/O expander number selected in the
SEL field. This results in the value of the IOEDATA field being updated to reflect the current state of the
corresponding I/O expander signals. This feature may be used to aid in debugging I/O expander operation.
For example, a user who neglects to configure a GPIO as an alternate function may use this feature to
determine that master SMBus transactions to the I/O expander function properly and that the issue is with
the interrupt logic.
The IO Expander Test Mode (IOEXTM) bit in the IOEXPTINF register allows an I/O expander test mode
to be entered. When this bit is set, the PES24T6G2 core logic outputs are ignored and the values written to
the I/O expander for output bits are the values in the IOEDATA field. In this mode, the PES24T6G2 issues a
transaction to update the state of the I/O expander whenever a bit corresponding to an I/O expander output
changes state due to a write to the IOEDATA field.
Bits in the IOEDATA field that correspond to outputs are dependent on the I/O expander number
selected in the SEL field in the IOEXPINTF register. The outputs for each I/O expander number are shown
in Table 5.6 through 5.10.
IDT suggests the following system design recommendations:
– I/O expander addresses and default output values may be configured during serial EEPROM
initialization. If I/O expander addresses are configured via the serial EEPROM, then the
PES24T6G2 will initialize the I/O expanders when normal device operation begins following the
completion of the fundamental reset sequence.
– If the I/O expanders are initialized via serial EEPROM, the data value for output signals during the
SMBus initialization sequence will correspond to those at the time the SMBus transactions are
initiated. It is not possible to toggle SMBus I/O expander outputs by modifying data values during
serial EEPROM initialization.
– During a fundamental reset and before the I/O expander outputs are initialized, all I/O expander
output signals default to inputs. Therefore, pull-up or pull-down resistors should be placed on
outputs to ensure that they are held in the desired state during this period.
– All hot-plug data value modifications that correspond to hot-plug outputs result in SMBus transac-
tions. This includes modifications due to upstream secondary bus resets and hot-resets.
– I/O expander outputs are not modified when the device transitions from normal operation to a
fundamental reset. In systems where I/O expander output values must be reset during a fundamental reset, a PCA9539 I/O expander should be used.
I/O-x.y corresponds to the notation used for PCA9555 port x I/O pin y.
Table 5.9 I/O Expander 3 Signals (Part 2 of 2)
I/O Expander 4
SMBus I/O
Expander
Bit
0 (I/O-0.0)
1 (I/O-0.1)OP1LINKUPNPort 1 link up status output
2 (I/O-0.2)OP2LINKUPNPort 2 link up status output
3 (I/O-0.3)OP3LINKUPNPort 3 link up status output
4 (I/O-0.4)OP4LINKUPNPort 4 link up status output
5 (I/O-0.5)OP5LINKUPNPort 5 link up status output
6 (I/O-0.6)O-Unused
7 (I/O-0.7)O-Unused
8 (I/O-1.0)OP0ACTIVENPort 0 activity output
9 (I/O-1.1)OP1ACTIVENPort 1 activity output
10 (I/O-1.2)OP2ACTIVENPort 2 activity output
11 (I/O-1.3)OP3ACTIVENPort 3 activity output
12 (I/O-1.4)OP4ACTIVENPort 4 activity output
1
TypeSignalDescription
OP0LINKUPNPort 0 link up status output
13 (I/O-1.5)OP5ACTIVENPort 5 activity output
14 (I/O-1.6)O-Unused
15 (I/O-1.7)O-Unused
1.
I/O-x.y corresponds to the notation used for PCA9555 port x I/O pin y.
Table 5.10 I/O Expander 4 Signals
Slave SMBus Interface
The slave SMBus interface provides the PES24T6G2 with a configuration, management, and debug
interface. Using the slave SMBus interface, an external master can read or write any software visible
register in the device.
PES24T6G2 User Manual5 - 14April 30, 2013
Page 71
IDT SMBus Interfaces
Notes
Bit
6
Bit
7
Bit
0
Bit
1
Bit
2
Bit
3
Bit
4
Bit
5
ENDSTARTFUNCTIONSIZEPEC
Initialization
Slave SMBus initialization occurs during a fundamental reset (see section Fundamental Reset on page
2-2). During the fundamental reset initialization sequence, the slave SMBus address is initialized. The
address is specified by the SSMBADDR[5,3:1] signals as shown in Table 5.11.
Note: SSMBADDR address pins are not available in the 19mm package. The SSMBADDR
address is hardwired to 0x77.
Address BitAddress Bit Value
1SSMBADDR[1]
2SSMBADDR[2]
3SSMBADDR[3]
40
5SSMBADDR[5]
61
71
Table 5.11 Slave SMBus Address When a Static Address is Selected.
SMBus Transactions
The slave SMBus interface responds to the following SMBus transactions initiated by an SMBus master
(see the SMBus 2.0 specification for a detailed description of these transactions):
– Byte and Word Write/Read
– Block Write/Read
Initiation of any SMBus transaction other than those listed above to the slave SMBus interface produces
undefined results. Associated with each of the above transactions is a command code. The command code
format for operations supported by the slave SMBus interface is shown in Figure 5.5 and described in Table
5.12.
Figure 5.5 Slave SMBus Command Code Format
Bit
Field
NameDescription
0ENDEnd of transaction indicator. Setting both START and END signifies a
single transaction sequence
0 - Current transaction is not the last read or write sequence.
1 - Current transaction is the last read or write sequence.
1STARTStart of transaction indicator. Setting both START and END signifies a
single transaction sequence
0 - Current transaction is not the first of a read or write sequence.
1 - Current transaction is the first of a read or write sequence.
0 - CSR register read or write operation
1 - Serial EEPROM read or write operation
2 through 7 - Reserved
0 - Byte
1 - Word
2 - Block
3 - Reserved
rent SMBus transaction.
0 - Packet error checking disabled for the current SMBus transaction.
1 - Packet error checking enabled for the current SMBus transaction.
The FUNCTION field in the command code indicates if the SMBus operation is a CSR register read/
write or a serial EEPROM read/write operation. Since the format of these transactions is different. They will
be described individually in the following sections. If a command is issued while one is already in progress
or if the slave is unable to supply data associated with a command, the command is NACKed. This indicates to the master that the transaction should be retried.
CSR Register Read or Write Operation
Table 5.13 indicates the sequence of data as it is presented on the slave SMBus following the byte
address of the Slave SMBus interface.
Byte
Position
0CCODECommand Code. Slave Command Code field described in Table 5.12.
1BYTCNTByte Count. The byte count field is only transmitted for block type SMBus transac-
2CMDCommand. This field encodes fields related to the CSR register read or write opera-
3ADDRLAddress Low. Lower 8-bits of the doubleword CSR system address of register to
4ADDRUAddress Upper. Upper 6-bits of the doubleword CSR system address of register to
5DATALLData Lower. Bits [7:0] of data doubleword.
6DATALMData Lower Middle. Bits [15:8] of data doubleword.
7DATAUMData Upper Middle. Bits [23:16] of data doubleword.
8DATAUUData Upper. Bits [31:24] of data doubleword.
Field
NameDescription
tions. SMBus word and byte accesses do not contain this field. The byte count field
indicates the number of bytes following the byte count field when performing a write
or setting up for a read. The byte count field is also used when returning data to indicate the number of following bytes (including status). Note that the byte count field
does not include the PEC byte if PEC is enabled.
tion.
access.
access. Bits 6 and 7 in the byte must be zero and are ignored by the hardware.
Table 5.13 CSR Register Read or Write Operation Byte Sequence
Table 5.13 indicates the sequence of data as it is presented on the slave SMBus following the byte
address of the Slave SMBus interface. Dword addresses and not byte addresses must be used to access
all visible software registers. ADDRL and ADDUL represent the lower 8-bit of the doubleword system
PES24T6G2 User Manual5 - 16April 30, 2013
Page 73
IDT SMBus Interfaces
Notes
Bit
6
Bit
7
Bit
0
Bit
1
Bit
2
Bit
3
Bit
4
Bit
5
BELLBELMWERRBEUMBEUUOPRERR0
address and upper 6-bit doubleword system address, respectively. For example, use ADDRU = x00 and
ADDRL = 0x00 to access system address 0x00000 (port 0’s Vendor/Device ID register). Use ADDRU = x00
and ADDRL = 0x01 to access system address 0x00004 (port 0’s Command/Status register).
The format of the CMD field is shown in Figure 5.6 and described in Table 5.14.
Figure 5.6 CSR Register Read or Write CMD Field Format
Bit
Field
NameTypeDescription
0BELLRead/Write Byte Enable Lower. When set, the byte enable for bits [7:0] of the data word
is enabled.
1BELMRead/Write Byte Enable Lower Middle. When set, the byte enable for bits [15:8] of the
data word is enabled.
2BEUMRead/Write Byte Enable Upper Middle. When set, the byte enable for bits [23:16] of the
data word is enabled.
3BEUURead/Write Byte Enable Upper. When set, the byte enable for bits [31:24] of the data
word is enabled.
4OPRead/Write CSR Operation. This field encodes the CSR operation to be performed.
0 - CSR write
1 - CSR read
500Reserved. Must be zero
6RERRRead-Only
and Clear
Read Error. This bit is set if the last CSR read SMBus transaction was not
claimed by a device. Success indicates that the transaction was claimed and
not that the operation completed without error.
7WERRRead-Only
and Clear
Write Error. This bit is set if the last CSR write SMBus transaction was not
claimed by a device. Success indicates that the transaction was claimed and
not that the operation completed without error.
Table 5.14 CSR Register Read or Write CMD Field Description
Serial EEPROM Read or Write Operation
Table 5.14 indicates the sequence of data as it is presented on the slave SMBus following the byte
address of the Slave SMBus interface.
Byte
Position
0CCODECommand Code. Slave Command Code field described in Table 5.12.
1BYTCNTByte Count. The byte count field is only transmitted for block type SMBus transac-
2CMDCommand. This field contains information related to the serial EEPROM transaction
PES24T6G2 User Manual5 - 17April 30, 2013
Field
NameDescription
tions. SMBus word and byte accesses to not contain this field. The byte count field
indicates the number of bytes following the byte count field when performing a write
or setting up for a read. The byte count field is also used when returning data to indicate the number of following bytes (including status).
Table 5.15 Serial EEPROM Read or Write Operation Byte Sequence (Part 1 of 2)
Page 74
IDT SMBus Interfaces
Notes
Bit
6
Bit
7
Bit
0
Bit
1
Bit
2
Bit
3
Bit
4
Bit
5
OPUSA0NAERRLAERROTHERERR0
Byte
Position
Field
NameDescription
3EEADDRSerial EEPROM Address. This field specifies the address of the Serial EEPROM
on the Master SMBus when the USA bit is set in the CMD field. Bit zero must be
zero and thus the 7-bit address must be left justified.
4ADDRLAddress Low. Lower 8-bits of the Serial EEPROM byte to access.
5ADDRUAddress Upper. Upper 8-bits of the Serial EEPROM byte to access.
6DATAData. Serial EEPROM value read or to be written.
Table 5.15 Serial EEPROM Read or Write Operation Byte Sequence (Part 2 of 2)
The format of the CMD field is shown in Figure 5.7 and described in Table 5.16.
Figure 5.7 Serial EEPROM Read or Write CMD Field Format
Bit
Field
NameType
1
Description
0OPRWSerial EEPROM Operation. This field encodes the serial EEPROM oper-
ation to be performed.
0 - Serial EEPROM write
1 - Serial EEPROM read
1USARWUse Specified Address. When this bit is set the serial EEPROM SMBus
address specified in the EEADDR is used instead of that specified in the
ADDR field in the EEPROMINTF register.
When this bit is set the serial EEPROM SMBus address specified in the
EEADDR is used instead of that specified in the MSMBADDR field in the
SMBUSSTS register.
2ReservedReserved
3NAERRRCNo Acknowledge Error. This bit is set if an unexpected NACK is observed
during a master SMBus transaction when accessing the serial EEPROM.
This bit has the same function as the NAERR bit in the SMBUSSTS register.
The setting of this bit may indicate the following: that the addressed
device does not exist on the SMBus (i.e., addressing error), data is
unavailable or the device is busy, an invalid command was detected by
the slave, invalid data was detected by the slave.
4LAERRRCLost Arbitration Error. This bit is set if the master SMBus interface loses
16 consecutive arbitration attempts when accessing the serial EEPROM.
This bit has the same function as the LAERR bit in the SMBUSSTS register.
Table 5.16 Serial EEPROM Read or Write CMD Field Description
PES24T6G2 User Manual5 - 18April 30, 2013
Page 75
IDT SMBus Interfaces
Notes
DATAUU
N
DATAUM
A
BYTCNT=7
A
ADDRLCMD (status)
S
PES24T6G2 Slave
SMBus Address
Wr AA
BYTCNT=3
A
CMD=read
A
ADDRL
A
ADDRU
A P
CCODE
START,END
S
PES24T6G2 Slave
SMBus Address
Wr AA
CCODE
START,END
S
PES24T6G2 Slave
SMBus Address
Rd
DATALMDATALL
AAA
AAP
ADDRU
A
S
PES24T6G2 Slave
SMBus Address
Wr A
N
CCODE
START,END
P
(PES24T6G2 not ready with data)
S
PES24T6G2 Slave
SMBus Address
Wr A
A
BYTCNT=4
A
CMD=read
A
EEADDR
A
ADDRL
A
P
CCODE
START,END
S
PES24T6G2 Slave
SMBus Address
Wr A
A
CCODE
START,END
S
PES24T6G2 Slave
SMBus Address
Rd
ADDRU
A
BYTCNT=5
A
EEADDRCMD (status)
AAA
N
DATAADDRU
AP
ADDRL
A
S
PES24T6G2 Slave
SMBus Address
Wr A
N
CCODE
START,END
P
(PES24T6G2 not ready with data)
Bit
Field
NameType
1
Description
5OTHERERRRCOther Error. This bit is set if a misplaced START or STOP condition is
detected by the master SMBus interface when accessing the serial
EEPROM. This bit has the same function as the OTHERERR bit in the
SMBUSSTS register.
7:6Reserved0Reserved. Must be zero
Table 5.16 Serial EEPROM Read or Write CMD Field Description
1.
See Table Table 2 in the About This Manual chapter for a definition of these abbreviations.
Sample Slave SMBus Operation
This section illustrates sample Slave SMBus operations. Shaded items are driven by the PES24T6G2’s
slave SMBus interface and non-shaded items are driven by an SMBus host.
Figure 5.8 CSR Register Read Using SMBus Block Write/Read Transactions with PEC Disabled
Figure 5.9 Serial EEPROM Read Using SMBus Block Write/Read Transactions with PEC Disabled
PES24T6G2 User Manual5 - 19April 30, 2013
Page 76
IDT SMBus Interfaces
Notes
S
PES24T6G2 Slave
SMBus Address
Wr AA
BYTCNT=7
A
CMD=write
A
ADDRL
A
ADDRU
A
CCODE
START,END
DATALL
A
DATALM
A
DATAUM
A
DATAUU
A P
S
PES24T6G2 Slave
SMBus Address
Wr A
CCODE
START,END
N
P
(PES24T6G2 busy with previous command, not ready for a new command)
S
PES24T6G2 Slave
SMBus Address
Wr A
CCODE
START,END
N P
(PES24T6G2 busy with previous command, not ready for a new command)
S
PES24T6G2 Slave
SMBus Address
Wr A
A
BYTCNT=5
A
CMD=write
A
EEADDR
A
ADDRL
A
CCODE
START,END
ADDRU
A
DATA
A P
S
PES24T6G2 Slave
SMBus Address
Wr AA
BYTCNT=5
A
CMD=write
A
EEADDR
A
ADDRL
A
CCODE
START,END
ADDRU
A
DATA
AP
PEC
A
Figure 5.10 CSR Register Write Using SMBus Block Write Transactions with PEC Disabled
Figure 5.11 Serial EEPROM Write Using SMBus Block Write Transactions with PEC Disabled
Figure 5.12 Serial EEPROM Write Using SMBus Block Write Transactions with PEC Enabled
PES24T6G2 User Manual5 - 20April 30, 2013
Page 77
IDT SMBus Interfaces
Notes
ADDRU
N
A
ADDRLCMD (status)
S
PES24T6G2 Slave
SMBus Address
Wr A
A
CMD=read
A
ADDRL
A
CCODE
START, Word
S
PES24T6G2 Slave
SMBus Address
Wr A
CCODE
START,Word
S
PES24T6G2 Slave
SMBus Address
Rd
DATALMDATALL
AN
P
P
S
PES24T6G2 Slave
SMBus Address
Wr A
A
ADDRU
A
CCODE
END, Byte
P
A
S
PES24T6G2 Slave
SMBus Address
Wr
A
CCODE
Byte
A
P
AS
PES24T6G2 Slave
SMBus Address
Rd
A P
S
PES24T6G2 Slave
SMBus Address
Wr
A
CCODE
Word
A
S
PES24T6G2 Slave
SMBus Address
Rd
AA
S
PES24T6G2 Slave
SMBus Address
Wr
A
CCODE
START,Word
N
P
(PES24T6G2 not ready with data)
N
DATAUUDATAUM
P
S
PES24T6G2 Slave
SMBus Address
Wr
A
CCODE
END, Word
A
S
PES24T6G2 Slave
SMBus Address
Rd
AA
Figure 5.13 CSR Register Read Using SMBus Read and Write Transactions with PEC Disabled
PES24T6G2 User Manual5 - 21April 30, 2013
Page 78
IDT SMBus Interfaces
Notes
PES24T6G2 User Manual5 - 22April 30, 2013
Page 79
Notes
Chapter 6
D0
Uninitialized
D0
Active
D3
hot
Power-On Reset
D3
cold
Power Management
®
Introduction
Located in configuration space of each PCI-PCI bridge in the PES24T6G2 is a power management
capability structure. The power management capability structure associated with a PCI-PCI bridge of a
downstream port only affects that port. Entering the D3
enter the L1 state.
– The link associated with a port in the D3
spective of the link or power management state of any other switch port.
The power management capability structure associated with the upstream port (i.e., Port 0) affects the
entire device. When the upstream port enters a low power state and the PME_TO_Ack messages are
received, then the entire device is placed into a low power state. The PES24T6G2 supports the following
device power management states: D0 Uninitialized, D0 Active, D3
state transition diagram for the states supported by the PES24T6G2 is provided in Figure 6.1 and described
in Table 6.1.
Transitioning a port’s power management state from D3
being reset or re-initialization of register values. Thus, the default value of the No Soft Reset
(NOSOFTRST) bit in the PCI Power Management Control and Status (PMCSR) register corresponds to the
functional context being maintained in the D3
hot
state.
state allows the link associated with the bridge to
Hot
state will attempt to transition into L1 link state irre-
Hot
hot
to D0
, and D3
Hot
uninitialized
. A power management
Cold
does not result in any logic
PES24T6G2 User Manual 6 - 1April 30, 2013
Figure 6.1 PES24T6G2 Power Management State Transition Diagram
Page 80
IDT Power Management
Notes
From StateTo StateDescription
anyD0 UninitializedPower-on Fundamental Reset.
D0 UninitializedD0 ActivePCI-PCI bridge configured by software
D0 ActiveD3
D3
D3
hot
hott
D0 UninitializedThe Power Management State (PMSTATE) field in the PCI Power Man-
D3
Table 6.1 PES24T6G2 Power Management State Transition Diagram
hot
cold
The Power Management State (PMSTATE) field in the PCI Power Management Control and Status (PMCSR) register is written with the value
that corresponds to the D3
agement Control and Status (PMCSR) register is written with the value
that corresponds to D0 state.
Power is removed from the device.
hot
state.
The PES24T6G2 PCI-to-PCI bridges (i.e., ports) have the following behavior when in the D3
management state.
– A bridge accepts, processes, and completes all type 0 configuration read and write requests.
– A bridge accepts and processes all message requests that target the bridge.
– All requests received by the bridge on the primary interface, except as noted above, are treated
as unsupported requests (UR).
– Any error message resulting from the receipt of a TLP is reported in the same manner as when
the bridge is not in D3
(e.g, generation of an ERR_NONFATAL message to the root).
hot
– Error messages resulting from any event other than the receipt of a TLP are discarded (i.e., no
error message is generated).
– All completions that target the bridge are treated as unexpected completions (UC).
– Completions flowing in either direction through the bridge are routed as normal. This behavior of
the bridge does not differ from that of the bridge when it is in the D0 power management state.
– All request TLPs received on the secondary interface are treated as unsupported requests (UR).
hot
power
PME Messages
The PES24T6G2 does not support generation of PME messages from the D3
ports (i.e., PCI-PCI bridges associated with downstream ports) support the generation of hot-plug PME
events (i.e., a PM_PME power management message) from the D3
when the downstream port is in the D3
state or the entire switch is in the D3
hot
state. This includes both the case
hot
hot
The generation of a PME message by downstream ports necessitates the implementation of a PME
service time-out mechanism to ensure that PME messages are not lost. If the PME Status (PMES) bit in the
a downstream port’s PCI Power Management Control and Status (PMCSR) register is not cleared within the
time-out period specified in the PM_PME Time-Out (PMPMETO) field in the ports PM_PME Timer
(PMPMETIMER) register after a PM_PME message is transmitted, then the PM_PME message is retransmitted and the timer is restarted.
state. Downstream
cold
state.
PCI-Express Power Management Fence Protocol
The Root complex takes the following steps to turn off power to a system:
– The root places all devices in the D3 state
– Upon entry to D3, all devices transition their links to the L1 state
– The root broadcasts a PME_Turn_Off message.
– Devices acknowledge the PME_Turn_Off message by returning a PME_TO_ACK message.
PES24T6G2 User Manual6 - 2April 30, 2013
Page 81
IDT Power Management
Notes
The PME_Turn_Off / PME_TO_Ack protocol may be initiated by the root when the switch is in any
power management state. When the PES24T6G2 receives a PME_Turn_Off message, it broadcasts the
PME_Turn_Off message on all active downstream ports. The PES24T6G2 transmits a PME_TO_Ack
message on its upstream port and transitions its link state to L2/L3 Ready after it has received a
PME_TO_Ack message on each of its active downstream ports. This process is called PME_TO_Ack
aggregation.
The aggregation of PME_TO_Ack messages on downstream ports is abandoned by the PES24T6G2
when it receives a TLP on its upstream port after it has received a PME_Turn_Off message on that port but
before it has responded with a PME_TO_Ack message. Once a PME_TO_Ack message has been scheduled for transmission on the upstream port and the PME_TO_Ack aggregation process has completed,
received TLPs at that point may be discarded.
If the TLP that causes PME_TO_Ack aggregation to be abandoned targets the PES24T6G2, the
PES24T6G2 responds to the TLP normally. If the TLP that causes aggregation to be abandoned targets a
downstream port and the port is in L0, the TLP is transmitted on the downstream port. If the downstream
port is not in L0 (i.e., it is in L2/L3 Ready), the switch transitions the link to Detect and then to L0. Once the
link is reaches L0, the TLP is transmitted on the downstream port.
When PME_TO_Ack aggregation is abandoned, the PES24T6G2 makes no attempt to abandon the
PME_Turn_Off and PME_TO_Ack protocol on downstream ports. Devices downstream from the
PES24T6G2 are allowed to respond with a PME_TO_Ack and transition to L2/L3 Ready. When a TLP is
received that targets the downstream port, the switch transitions the link to Detect and then to L0. Once the
link reaches L0, the TLP is transmitted on the downstream port.
In order to avoid deadlock, a downstream port that does not receive a PME_TO_Ack message in the
time-out period specified in the PME_TO_Ack Time-Out (PMETOATO) field in its corresponding
PME_TO_Ack Timer (PMETOATIMER) register declares a time-out, transitions its link to L2/L3 Ready, and
signals to the upstream port that a PME_TO_Ack message has been received. If instead of being transitioned to the D3
resumes generation of PM_PME messages.
state the PES24T6G2 is transitioned to the D0
cold
uninitialized
state, the PES24T6G2
Power Budgeting Capability
The PES24T6G2 contains the mechanisms necessary to implement the PCI-Express power budgeting
enhanced capability. However, by default, these mechanisms are not enabled. To enable the power
budgeting capability, registers in this capability should be initialized and the Next Pointer (NXTPTR) field in
one of the other enhanced capabilities should be initialized to point to the power budgeting capability. The
Next Pointer (NXTPTR) of the power budgeting capability should be adjusted if necessary.
The power budgeting capability consists of the four power budgeting capability registers defined in the
PCIe 2.0 base specification and eight general purpose read-write registers. See section Power Budgeting
Enhanced Capability on page 8-55 for a description of these registers.
The Power Budgeting Capabilities (PWRBCAP) register contains the PCI-Express enhanced capability
header for the power budgeting capability. By default, this register has an initial read-only value of zero. To
enable the power budgeting capability, this register should be initialized via the serial EEPROM. The Power
Budgeting Data Value [0..7] (PWRBDV[0..7) registers are used to hold the power budgeting information for
that port in a particular operating condition.
The PWRBDV registers may be read and written when the Power Budgeting Data Value Unlock
(PWRBDVUL) bit is set in the Switch Control (SWCTL) register. When the PWRBDVUL bit is cleared, these
registers are read-only and writes to these registers are ignored. To enable the power budgeting capability,
the PWRBDV registers should be initialized with power budgeting information via the serial EEPROM.
PES24T6G2 User Manual6 - 3April 30, 2013
Page 82
IDT Power Management
Notes
PES24T6G2 User Manual6 - 4April 30, 2013
Page 83
Notes
Chapter 7
PES24T6G2
Port 0
Port x
Slot
Port x
Port y
Master
SMBus
SMBus I/O
Expander
Port y
Slot
Upstream
Link
Hot-Plug Signals
...
......
Hot-Plug and Hot-Swap
®
Hot-Plug
As illustrated in Figures 7.1 through 7.3, a PCIe switch may be used in one of three hot-plug configurations. Figure 7.1 illustrates the use of the PES24T6G2 in an application in which two downstream ports are
connected to slots into which add-in cards may be hot-plugged. Figure 7.2 illustrates the use of the
PES24T6G2 in an add-in card application. Here the downstream ports are hardwired to devices on the addin card and the upstream port serves as the add-in card’s PCIe interface. In this application the upstream
port may be hot-plugged into a slot on the main system. Finally, Figure 7.3 illustrates the use of the
PES24T6G2 in a carrier card application. In this application, the downstream ports are connected to slots
which may be hot-plugged and the entire assembly may be hot-plugged into a slot on the main system.
Since this application requires nothing more than the functionality illustrated in both Figures 7.1 through 7.2,
it will not be discussed further.
PES24T6G2 User Manual 7 - 1April 30, 2013
Figure 7.1 Hot-Plug on Switch Downstream Slots Application
Page 84
IDT Hot-Plug and Hot-Swap
Notes
PES24T6G2
Port 0
Port x
Port y
Upstream
Link
PCI Express
Device
PCI Express
Device
Add-In Card
...
......
PES24T6G2
Port 0
Port x
Slot
Port x
Port y
Master
SMBus
SMBus I/O
Expander
Port y
Slot
Upstream
Link
Hot-Plug Signals
Carrier
Card
...
......
Figure 7.2 Hot-Plug with Switch on Add-In Card Application
Figure 7.3 Hot-Plug with Carrier Card Application
The PCI Express Base Specification revision 1.0a allowed a hot-plug attention indicator, power indicator
and attention button to be located on the board on which the slot is implemented or on the add-in board.
When located on the add-in board, state changes are communicated between the hot-plug controller associated with the slot and the add-in card via hot-plug messages. This capability was removed in revision 1.1
of the PCI Express Base Specification and is not supported in the PES24T6G2.
PES24T6G2 User Manual7 - 2April 30, 2013
Page 85
IDT Hot-Plug and Hot-Swap
Notes
The remainder of this section discusses the use of the PES24T6G2 in an application in which one or
more of the downstream ports are used in an application in which an add-in card may be hot-plugged into a
downstream slot. Associated with each downstream port in the PES24T6G2 is a hot-plug controller. The
hot-plug controller may be enabled by setting the HPC bit in the PCI Express Slot Capabilities (PCIESCAP)
register associated with that port during configuration (e.g., via serial EEPROM). The PES24T6G2 allows
sensor inputs and indicator outputs to be located next to the slot or on the plug in module. Regardless of the
physical location, the indicators are controlled by the PES24T6G2’s downstream port.
Table 7.1 lists the hot-plug inputs and outputs that may be associated with a slot. When enabled during
configuration in the PCIESCAP register, these inputs and outputs are made available to external logic using
an external I/O expander located on the master SMBus interface. When the IO Expander is initialized (i.e.,
the HPC bit in the port’s PCIESCAP register transitions from 0 to 1, or the IOEXPADDR field in the
IOEXPADDR0/1 registers is written to), the hot-plug controller for the corresponding port initiates an SMBus
access to configure the IO Expander and updates the status bits in the PCI Express Slot Status
(PCIESSTS) register. During this initial access, the Presence Detect Changed (PDC) and MRL Sensor
Changed (MRLSC) bits in the PCIESSTS register are not
initial state of the IO Expander signals.
The PES24T6G2 supports presence detect signalling via assertion of the Presence Detect Input signal
in the external I/O Expander module and through “in-band” presence detect. The Presence Detect Control
(PDETECT) field in the Hot-Plug Configuration Control (HPCFGCTL) register may be used to control the
mechanism used for presence detect.
set, since this access is used to determine the
SignalTypeName/Description
PxAPNIPort x
PxPDNIPort x Presence Detect Input.
1
Attention Push button Input.
PxPFNIPort x Power Fault Input.
PxMRLNIPort x Manually-operated Retention Latch (MRL) Input.
PxAINOPort x Attention Indicator Output.
PxPINOPort x Power Indicator Output.
PxPEPOPort x Power Enable Output.
PxILOCKPOPort x Electromechanical Interlock.
PxPWRGDNIPort x Power Good Input (asserted when slot power is good).
2
PxRSTN
1.
x corresponds to downstream port number (i.e., 1 through 7).
2.
This signal is a GPIO pin alternate function and is not available as an I/O expander output.
OPort x Reset Output.
Table 7.1 Downstream Port Hot Plug Signals
Since the polarity of hot-plug signals has been defined differently in various specifications, each hot plug
signal has a corresponding control bit in the Hot-Plug Configuration Control (HPCFGCTL) that allows the
polarity of that signal to be inverted. Inversion affects the corresponding signal in all ports. When a one is
written to the EIC bit in the PCIESCTL register, then the PxILOCKP signal is pulsed for a length greater
than 100 ms and less than 150 ms (i.e., it transactions from negated to asserted, maintains an asserted
state for 100 to 150 ms, and then transitions back to negated). When the Toggle Electromechanical Interlock Control. (TEMICTL) bit in the HPCFGCTL register is set, writing a one to the EIC bit inverts the state of
the PxILOCKP signal.
When the Replace MRL Status with EMIL Status (RMRLWEMIL) bit is set in the HPCFGCTL register,
the port’s PxMRLN input is used as the electromechanical state input. The state of this input is used as the
state of the electromechanical interlock state obtained by reading the Electromechanical Interlock Status
(EIS) bit in the PCI Express Slot Status (PCIESSTS) register. In this mode, the state of the Manually-oper-
PES24T6G2 User Manual7 - 3April 30, 2013
Page 86
IDT Hot-Plug and Hot-Swap
Notes
ated Retention Latch Sensor State (MRLSS) status is always reported as closed (i.e., zero). When the
RMRLWEMIL bit is cleared, the EIS bit state in the PCIESSTS register always returns the value of the
corresponding PxILOCKP I/O expander signal output.
When the MRL Automatic Power Off (MRLPWROFF) bit is set in the HPCFGCTL register and the
Manual Retention Latch Present (MRLP) bit is set in the PCI Express Slot Capability (PCIESCAP) register,
power to the slot is automatically turned off when the MRL sensor indicates that the MRL is open. This
occurs regardless of the state of the Power Controller Control (PCC) bit in the PCI Express Slot Control
(PCIESCTL) register.
The state of a port’s Power Fault (PxPFN) input is not latched by the PES24T6G2. For proper operation
the system designer should ensure that once the PxPFN signal is asserted, it remains asserted until the
power enable (PxPEP) signal is toggled. This is required adapter behavior for the PCI Express ExpressModule form factor.
Downstream port reset outputs are described in section Downstream Port Reset Outputs on page 2-7.
The default value of hot-plug registers following a hot or fundamental reset may be configured via serial
EEPROM initialization. Since hot-plug I/O expander initialization occurs after serial EEPROM initialization,
the Command Completed (CC) bit is not set in the PCI Express Slot Status (PCIESSTS) register as a result
of serial EEPROM initialization. Following a Hot-Reset to the Entire Device (see section Hot Reset on page
2-5) or an Upstream Secondary Bus Hot-Reset (see section Upstream Secondary Bus Reset on page 2-6),
each downstream port’s PHY will transition the links to the Hot-Reset state and subsequently re-train the
link starting from the Detect state. When this occurs, the Hot-Plug controller for the port does not
Presence Detect Changed (PDC) bit in the PCIESSTS register.
set the
Hot-Plug I/O Expander
2
The PES24T6G2 utilizes external SMBus/I
C-bus I/O expanders connected to the master SMBus interface for hot-plug related signals associated with downstream ports. See section I/O Expanders on page 5-7
for details on the operation of the I/O expanders and for the mapping of downstream hot-plug signals to I/O
expander inputs and outputs.
Hot-Plug Interrupts and Wake-up
The hot-plug controller associated with a downstream slot may generate an interrupt or wakeup event.
Hot-plug interrupts are only generated when the Hot Plug Interrupt Enable (HPIE) bit is set in the corresponding port’s PCI Express Slot Control (PCIESCTL) register. The following bits, when set in the PCI
Express Slot Status (PCIESSTS) register, generate an interrupt if not masked by the corresponding bit in
the PCI Express Slot Control (PCIESCTL) register or by the HPIE bit:
When an unmasked hot-plug interrupt is generated, the action taken is determined by the MSI Enable
(EN) bit in the MSI Capability (MSICAP) register and the Interrupt Disable (INTXD) bit in the PCI Command
(PCICMD) register. When the downstream port or the entire switch is in a D3
state, the hot-plug controller
hot
generates a wakeup event using a PM_PME message instead of an interrupt if the event interrupt is not
masked in the slot control (PCIESCTL) register and hot-plug interrupts are disabled by the HPIE bit. If the
event interrupt is not masked and hot-plug interrupts are enabled, both a PM_PME and an interrupt are
generated. If the event interrupt is masked, then neither a PM_PME nor an interrupt is generated. Note that
a command completed (CC bit) interrupt will not generate a wakeup event.
PES24T6G2 User Manual7 - 4April 30, 2013
Page 87
IDT Hot-Plug and Hot-Swap
Notes
Legacy System Hot-Plug Support
Some systems require support for operating systems that lack PCIe hot-plug support. The PES24T6G2
supports these systems by providing a General Purpose Event (GPEN) output as an alternate function of
GPIO[7] that can be used instead of the INTx, MSI, and PME mechanisms defined by PCI Express hotplug. Associated with each downstream port’s hot-plug controller is a bit in the General Purpose Event
Control (P0_GPECTL) register. When this bit is set, then the corresponding PCIe base 1.1 hot plug event
notification mechanisms are disabled for that port and INTx, MSI and PME events will not be generated by
that port due to hot-plug events. Instead, hot-plug events are signaled through assertion of the GPEN
signal. GPEN is an alternate function of GPIO[7] and GPIO[7] will not be asserted when GPEN is asserted
unless it is configured to operate as an alternate function.
Whenever a port signals a hot-plug event through assertion of the GPEN signal, the corresponding
port’s status bit in the General Purpose Event Status (P0_GPESTS) register is set. A bit in the P0_GPESTS
register can only be set if the corresponding port’s hot plug controller is configured to signal hot-plug events
using the general purpose event (GPEN) signal assertion mechanism. The hot-plug event signalling mechanism is the only thing that is affected when a port is configured to use general purpose events instead of
the PCIe defined hot-plug signalling mechanisms (i.e., INTx, MSI and PME). Thus, the PCIe defined capability, status and mask bits defined in the PCIe slot capabilities, status and control registers operate as
normal and all other hot-plug functionality associated with the port remains unchanged. INTx, MSI and PME
events from other sources are also unaffected.
The enhanced hot-plug signalling mechanism supported by the PES24T6G2 is graphically illustrated in
Figure 7.4. This figure provides a conceptual summary of the enhanced hot-plug signalling mechanism in
the form of a pseudo logic diagram. Logic gates in this diagram are intended for conveying general
concepts, and not for direct implementation.
PES24T6G2 User Manual7 - 5April 30, 2013
Page 88
IDT Hot-Plug and Hot-Swap
Notes
Command
Completed
RW1C
Attention Button
Pressed
Power Fault
Detected
MRL Sensor State
Changed
Presence Detected
Changed
Data Link Layer
State Changed
Command
Completed Enable
RW
Attention Button
Pressed Enable
Power Fault
Detected Enable
MRL Sensor State
Changed Enable
Presence Detected
Changed Enable
Data Link Layer
State Changed Enable
RW1C
RW1C
RW1C
RW1C
RW1C
RW1C
RW1C
RW1C
RW1C
RW1C
RW1C
RW
RW
RW
RW
RW
PME Enable
Bit
RW
Activate Wakeup
Mechanism
Hot-Plug Interrupt
Enable
RW
RW
MSI Enable
Activate MSI
Mechanism
Activate INTx
Mechanism
RW
Interrupt
Disable
General Purpose Event
Enable
RW
General Purpose
Event Mechanism
Slot Control
Register
Slot Status
Register
Bit
Figure 7.4 PES24T6G2 Hot-Plug Event Signalling
PES24T6G2 User Manual7 - 6April 30, 2013
Hot-Swap
The PES24T6G2 is hot-swap capable and meets the following requirements:
– All of the I/Os are tri-stated on reset (i.e., SerDes, GPIO, SMBuses, etc.)
– All I/O cells function predictably from early power. This means that the device is able to tolerate a
non-monotonic ramp-up as well as a rapid ramp-up of the DC power.
– All I/O cells are able to tolerate a precharge voltage
– Since no clock is present during physical connection, the device will maintain all outputs in a high-
impedance state even when no clock is present.
– The I/O cells meet VI requirements for hot-swap.
– The I/O cells respect the required leakage current limits over the entire input voltage range.
In summary, the PES24T6G2 meets all of the I/O requirements necessary to build a PICMG compliant
hot-swap board or system. The hot-swap I/O buffers of the PES24T6G2 may also be used to construct
proprietary hot-swap systems. See the PES24T6G2 Data Sheet for a detailed specification of I/O buffer
characteristics.
Page 89
Notes
Chapter 8
Configuration Registers
Configuration Space Organization
Each software visible register in the PES24T6G2 is contained in the PCI configuration space of one of
the ports. Thus, there are no registers in the PES24T6G2 that cannot be accessed by the root. Each software visible register in the PES24T6G2 has a system address. The system address is formed by adding the
PCI configuration space offset value of the register to the base address of the port in which it is located. The
system address is used for serial EEPROM register initialization and slave SMBus register accesses.
The base address for each PES24T6G2 port is listed in Table 8.1. The PCI configuration space offset
addresses for registers in the upstream port are listed in Table 8.2 while the PCI configuration space offset
addresses for registers in downstream ports are listed Table 8.3.
Base
Address
0x0000Port 0 configuration space (upstream port)
0x1000Port 1 configuration space (downstream port)
0x2000Port 2 configuration space (downstream port)
0x3000Port 3 configuration space (downstream port)
0x4000Port 4 configuration space (downstream port)
0x5000Port 5 configuration space (downstream port)
Table 8.1 Base Addresses for Port Configuration Space Register
As shown in Figure 8.1, upstream and downstream ports share a similar PCI configuration space
register layout. The upstream port contains global switch control and status registers as well as test mode
registers which are not present in the configuration space of downstream ports. Because of their ability to
generate MSIs as a result of hot-plug events, the downstream ports contain an MSI capability structure. The
upstream port also supports MSI Capability structure to report internal memory errors. Since memory error
reporting via interrupts is an optional capability, the MSI capability structure associated with the upstream
port is not by default part of the PCI capability structure linked list.
Reading from an upstream port offset not defined in Table 8.2 or a downstream offset not defined in
Table 8.3 returns a value of zero. Writes to such an offset complete successfully but modify no data and
have no other effect.
Software visible configuration registers exist with one or more fields that perform a side-effect action
when written. These side-effect actions may affect the ability of the switch to respond with a completion. For
example, writing a one to the Hot Reset (HRST) bit in the Switch Control (SWCTL) register initiates a hot
reset of the entire switch. Other examples are the FRST bit in SWCTL, the Link-Disable (LDIS) and LinkRetrain (LRET) bits in the PCI Express Link Control register, as well as the Full Link Retrain (FLRET) field
that in the PHY Link State 0 (PHYLSTATE0) register. A configuration write to such a register returns a
completion to the Root before the side-effect action is performed. This is implemented by delaying the sideeffect action by 1 ms following generation of the completion. Thus, if the completion is not accepted by the
upstream port link partner in this time interval, then the completion will be lost.
PCI Configuration Space
PES24T6G2 User Manual 8 - 1April 30, 2013
Page 90
IDT Configuration Registers
Notes
PCI
Configuration Space
(64 DWords)
Phy Layer Control
& Status Registers
Switch Control
& Status Registers
Power Budgeting
Enhanced Capability
PCIe Virtual Channel
Enhanced Capability
Device Serial Number
Enhanced Capability
Advanced Error Reporting
Enhanced Capability
0x000
0x040
0x0D0
0x0F0
Type 1
Configuration Header
PCI Express
Capability Structure
Extended Config Access
MSI
Capability Structure
0x0FF
0x100
0x000
0x180
0x200
0x280
0x400
0x4E0
0x500
0xFFF
0x0C0
PCI Power Management
Capability Structure
Reserved
0x560
SSID/SSVID
Reserved
Figure 8.1 Port Configuration Space Organization
Upstream Port (Port 0)
Cfg.
Offset
0x000WordP0_VIDVID - Vendor Identification Register (0x000) on page 8-10
Size
Register
Mnemonic
Register Definition
0x002WordP0_DIDDID - Device Identification Register (0x002) on page 8-10
0x004WordP0_PCICMDPCICMD - PCI Command Register (0x004) on page 8-10
0x006WordP0_PCISTSPCISTS - PCI Status Register (0x006) on page 8-11
0x008ByteP0_RIDRID - Revision Identification Register (0x008) on page 8-12
0x0093 BytesP0_CCODECCODE - Class Code Register (0x009) on page 8-12
0x00CByteP0_CLSCLS - Cache Line Size Register (0x00C) on page 8-13
0x00DByteP0_PLTIMERPLTIMER - Primary Latency Timer (0x00D) on page 8-13
Table 8.2 Upstream Port 0 Configuration Space Registers (Part 1 of 5)
PES24T6G2 User Manual8 - 2April 30, 2013
Page 91
IDT Configuration Registers
Notes
Cfg.
Offset
0x00EByteP0_HDRHDR - Header Type Register (0x00E) on page 8-13
0x00FByteP0_BISTBIST - Built-in Self Test Register (0x00F) on page 8-13
0x010DWordP0_BAR0BAR0 - Base Address Register 0 (0x010) on page 8-13
0x014DWordP0_BAR1BAR1 - Base Address Register 1 (0x014) on page 8-14
0x018ByteP0_PBUSNPBUSN - Primary Bus Number Register (0x018) on page 8-14
0x019ByteP0_SBUSNSBUSN - Secondary Bus Number Register (0x019) on page 8-14
0x01AByteP0_SUBUSNSUBUSN - Subordinate Bus Number Register (0x01A) on page 8-14
0x01BByteP0_SLTIMERSLTIMER - Secondary Latency Timer Register (0x01B) on page 8-14
0x01CByteP0_IOBASEIOBASE - I/O Base Register (0x01C) on page 8-15
0x01DByteP0_IOLIMITIOLIMIT - I/O Limit Register (0x01D) on page 8-15
0x01EWordP0_SECSTSSECSTS - Secondary Status Register (0x01E) on page 8-15
0x020WordP0_MBASEMBASE - Memory Base Register (0x020) on page 8-16
0x022WordP0_MLIMITMLIMIT - Memory Limit Register (0x022) on page 8-16
0x024WordP0_PMBASEPMBASE - Prefetchable Memory Base Register (0x024) on page 8-
0x026WordP0_PMLIMITPMLIMIT - Prefetchable Memory Limit Register (0x026) on page 8-17
0x028DWordP0_PMBASEUPMBASEU - Prefetchable Memory Base Upper Register (0x028) on
0x02CDWordP0_PMLIMITUPMLIMITU - Prefetchable Memory Limit Upper Register (0x02C) on
Size
Register
Mnemonic
Register Definition
16
page 8-17
page 8-17
0x030WordP0_IOBASEUIOBASEU - I/O Base Upper Register (0x030) on page 8-17
0x032WordP0_IOLIMITUIOLIMITU - I/O Limit Upper Register (0x032) on page 8-18
0x034ByteP0_CAPPTRCAPPTR - Capabilities Pointer Register (0x034) on page 8-18
0x038DWordP0_EROMBASEEROMBASE - Expansion ROM Base Address Register (0x038) on
page 8-18
0x03CByteP0_INTRLINEINTRLINE - Interrupt Line Register (0x03C) on page 8-18
0x03DByteP0_INTRPININTRPIN - Interrupt PIN Register (0x03D) on page 8-19
0x03EWordP0_BCTLBCTL - Bridge Control Register (0x03E) on page 8-19
0x040DWordP0_PCIECAPPCIECAP - PCI Express Capability (0x040) on page 8-20
0x044DWordP0_PCIEDCAPPCIEDCAP - PCI Express Device Capabilities (0x044) on page 8-21
0x048WordP0_PCIEDCTLPCIEDCTL - PCI Express Device Control (0x048) on page 8-22
0x04AWordP0_PCIEDSTSPCIEDSTS - PCI Express Device Status (0x04A) on page 8-23
0x04CDWordP0_PCIELCAPPCIELCAP - PCI Express Link Capabilities (0x04C) on page 8-24
0x050WordP0_PCIELCTLPCIELCTL - PCI Express Link Control (0x050) on page 8-25
0x052WordP0_PCIELSTSPCIELSTS - PCI Express Link Status (0x052) on page 8-27
0x204DWordPx_PVCCAP1PVCCAP1- Port VC Capability 1 (0x204) on page 8-49
0x208DWordPx_PVCCAP2PVCCAP2- Port VC Capability 2 (0x208) on page 8-50
0x20CWordPx_PVCCTLPVCCTL - Port VC Control (0x20C) on page 8-50
0x20EWordPx_PVCSTSPVCSTS - Port VC Status (0x20E) on page 8-50
0x210DWordPx_VCR0CAPVCR0CAP- VC Resource 0 Capability (0x210) on page 8-51
0x214DWordPx_VCR0CTLVCR0CTL- VC Resource 0 Control (0x214) on page 8-51
Size
Register
Mnemonic
Register Definition
47
47
48
48
48
(0x200) on page 8-49
0x218DWordPx_VCR0STSVCR0STS - VC Resource 0 Status (0x218) on page 8-52
0x280DwordPx_PWRBCAPPWRBCAP - Power Budgeting Capabilities (0x280) on page 8-55
0x284DwordPx_PWRBDSELPWRBDSEL - Power Budgeting Data Select (0x284) on page 8-55
0x288DwordPx_PWRBDPWRBD - Power Budgeting Data (0x288) on page 8-56
0x28CDwordPx_PWRBPBCPWRBPBC - Power Budgeting Power Budget Capability (0x28C) on
page 8-56
0x300DwordPx_PWRBDV0PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
0x304DwordPx_PWRBDV1PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
0x308DwordPx_PWRBDV2PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
0x30CDwordPx_PWRBDV3PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
0x310DwordPx_PWRBDV4PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
0x314DwordPx_PWRBDV5PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
0x318DwordPx_PWRBDV6PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
on page 8-56
Table 8.3 Downstream Ports 1 through 5 Configuration Space Registers (Part 4 of 5)
PES24T6G2 User Manual8 - 9April 30, 2013
Page 98
IDT Configuration Registers
Notes
Cfg.
Offset
0x31CDwordPx_PWRBDV7PWRBDV[7:0] - Power Budgeting Data Value [7:0] (0x300 - 0x31C)
0x500DwordPx_SERDESCTLSERDESCTL- SerDes Control (0x500) on page 8-68
0x530DwordPx_PHYLCFG0PHYLCFG0 - Phy Link Configuration 0 (0x530) on page 8-68
0x538DwordPx_PHYLSTS0PHYLSTS0 - Phy Link Status 0 (0x538) on page 8-69
0x540DwordPx_PHYLSTATE0 PHYLSTATE0 - Phy Link State 0 (0x540) on page 8-71
0x55CDwordPx_PHYPRBSPHYPRBS - Phy PRBS Seed (0x55C) on page 8-72
0x560DwordPx_ALRCTL
0x564DwordPx_ALRSTS
0x568DwordPx_ALRERT
0x56CDwordPx_ALRCNT
Size
Table 8.3 Downstream Ports 1 through 5 Configuration Space Registers (Part 5 of 5)
Register
Mnemonic
Register Definition
on page 8-56
ALRCTL - Autonomous Link Reliability Control (0x560) on page 8-72
ALRSTS - Autonomous Link Reliability Status (0x564) on page 8-73
ALRERT - Autonomous Link Reliability Error Rate Threshold
(0x5680) on page 8-73
ALRCNT - Autonomous Link Reliability Counter (0x56C) on page 874
Register Definitions
Type 1 Configuration Header Registers
VID - Vendor Identification Register (0x000)
Bit
Field
15:0VIDRO0x111DVendor Identification. This field contains the 16-bit vendor ID
Field
Name
Type
Default
Value
Description
value assigned to IDT.
See section Vendor ID on page 1-5.
DID - Device Identification Register (0x002)
Bit
Field
15:0DIDRO-Device Identification. This field contains the 16-bit device ID
Field
Name
Type
Default
Value
Description
assigned by IDT to this bridge.
See section Device ID on page 1-5.
PCICMD - PCI Command Register (0x004)
Bit
Field
Field
Name
Type
Default
Value
Description
0IOAERW0x0I/O Access Enable. When this bit is cleared, the bridge does not
respond to I/O accesses from the primary bus specified by
IOBASE and IOLIMIT.
0x0 - (disable) Disable I/O space.
0x1 - (enable) Enable I/O space.
PES24T6G2 User Manual8 - 10April 30, 2013
Page 99
IDT Configuration Registers
Notes
Bit
Field
1MAERW0x0Memory Access Enable. When this bit is cleared, the bridge
2BMERW0x0Bus Master Enable. When this bit is cleared, the bridge does not
3SSERO0x0Special Cycle Enable. Not applicable.
4MWIRO0x0Memory Write Invalidate. Not applicable.
5VGASRO0x0VGA Palette Snoop. Not applicable.
6PERRERW0x0Parity Error Enable. Not applicable.
Field
Name
Type
Default
Value
Description
does not respond to memory and prefetchable memory space
access from the primary bus specified by MBASE, MLIMIT,
PMBASE and PMLIMIT.
0x0 - (disable) Disable memory space.
0x1 - (enable) Enable memory space.
issue requests (e.g., memory, I/O and MSIs since they are inband writes) on behalf of subordinate devices and handles these
as Unsupported Requests (UR). Additionally, the bridge handles
non-posted transactions in the upstream direction with a Unsupported Request (UR) completion. This bit does not affect completions in either direction or the forwarding of non memory or I/O
requests.
0x0 - (disable) Disable request forwarding.
0x1 - (enable) Enable request forwarding.
7ADSTEPRO 0x0Address Data Stepping. Not applicable.
8SERRERW0x0SERR Enable. Non-fatal and fatal errors detected by the bridge
are reported to the Root Complex when this bit is set or the bits in
the PCI Express Device Control register are set (see PCIEDCTL
- PCI Express Device Control (0x048)).
In addition, when this bit is set it enables the forwarding of
ERR_NONFATAL and ERR_FATAL error messages from the
secondary to the primary interface. ERR_COR messages are
unaffected by this bit and are always forwarded.
0x0 -(disable) Disable non-fatal and fatal error reporting if also
disabled in Device Control register.
0x1 -(enable) Enable non-fatal and fatal error reporting.
9FB2BRO0x0Fast Back-to-Back Enable. Not applicable.
10INTXDRW0x0INTx Disable. Controls the ability of the PCI-PCI bridge to gener-
ate an INTx interrupt message.
When this bit is set, any interrupts generated by this bridge are
negated. This may result in a change in the resolved interrupt
state of the bridge.
This bit has no effect on interrupts forwarded from the secondary
to the primary interface.
15:11ReservedRO0x0Reserved field.
PCISTS - PCI Status Register (0x006)
Bit
Field
2:0ReservedRO0x0Reserved.
PES24T6G2 User Manual8 - 11April 30, 2013
Field
Name
Type
Default
Value
Description
Page 100
IDT Configuration Registers
Notes
Bit
Field
3INTSRO0x0INTx Status. This bit is set when an INTx interrupt is pending
4CAPLRO0x1Capabilities List. This bit is hardwired to one to indicate that the
5C66MHZRO 0x066 MHz Capable. Not applicable.
6ReservedRO0x0Reserved.
7FB2BRO0x0Fast Back-to-Back (FB2B). Not applicable.
8MDPEDRO0x0Master Data Parity Error Detected. Not applicable.
10:9DEVTRO0x0DEVSEL# TIming. Not applicable.
11STASRO0x0Signalled Target Abort. Not applicable since a target abort is
12RTASRO0x0Received Target Abort. Not applicable.
Field
Name
Type
Default
Value
Description
from the device.
INTx emulation interrupts forwarded by switch ports from devices
downstream of the bridge are not reflected in this bit.
For downstream ports, this bit is set if an interrupt has been
“asserted” by the corresponding port’s hot-plug controller.
For upstream ports, this bit is set if internal memory error is
detected and the memory error reporting is not masked.
bridge implements an extended capability list item.
never signalled.
13RMASRO0x0Received Master Abort. Not applicable.
14SSERW1C0x0Signalled System Error. This bit is set when the bridge sends a
ERR_FATAL or ERR_NONFATAL message and the SERR
Enable (SERRE) bit is set in the PCICMD register.
0x0 -(noerror) no error.
0x1 - (error) This bit is set when a fatal or non-fatal error is sig-
nalled.
15DPERW1C0x0Detected Parity Error. This bit is set by the bridge whenever it
receives a poisoned TLP on the primary side regardless of the
state of the PERRE bit in the PCI Command register.
RID - Revision Identification Register (0x008)
Bit
Field
7:0RIDRWL-Revision ID. This field contains the revision identification number
Field
Name
Type
Default
Value
Description
for the device.
See section Revision ID on page 1-5.
CCODE - Class Code Register (0x009)
Bit
Field
7:0INTFRO0x00Interface. This value indicates that the device is a PCI-PCI
PES24T6G2 User Manual8 - 12April 30, 2013
Field
Name
Type
Default
Value
Description
bridge that does not support subtractive decode.
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.