EXAR XRS10L220IV-F

EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
AUGUST 2008
REV. 1.02
FEATURES
GENERAL FEATURES
• Four independent 3/1.5Gbps SATA ports.
• Connects 2 host ports to 2 device ports.
• Supports 3/1.5Gbps rate detection/speed
negotiation.
• Supports power down modes - Active, partial,
slumber and power down.
• Advanced features configurable through MDIO
bus.
PORT MULTIPLIER/SELECTOR LOGIC FEATURES
• Low latency architecture.
• Supports OOB signaling for SATA applications.
Internal OOB detectors
COMINIT and COMWAKE.
for
COMRESET/
HIGH SPEED I/O FEATURES
• High speed outputs with programmable preemphasis to drive long interconnects.
• Selectable high speed input equalization for
optimum reception.
• Compliant with SATA Gen-2i & Gen-2m
specification.
• Enables reliable data transmission over 1 meter
of FR-4 and 4 meters or more of unequalized
copper cable.
• Supports spread spectrum clocking (SSC) to
reduce EMI.
PHYSICAL FEATURES
• CMOS 0.13 Micron Technology
• Single 1.2 V Power Supply
• -40°C to 85°C Industrial Temperature Range
• No heatsink or airflow required
• 100-Pin LQFP Package
1.0
INTRODUCTION
The XRS10L220 provides the combined advantages
of the Serial ATA II Port Selector and Port Multiplier
implementations for Serial ATA II systems at 3.0
Gbps and 1.5 Gbps. Combining the capability to
address two Serial ATA devices from one external link
with support for a failover path from two independent
hosts, the XRS10L220 offers a leading solution for
propagation of high data rate Serial ATA products in a
wide variety of applications. The integration of Serial
ATA PHY links, a variety of digital logic capabilities,
rate adjust FIFOs, integrated low-cost clock oscillator
support, test and loopback features is achieved in a
low cost and lower power implementation.
The port selector function is used when dual hosts,
such as I/O controllers, must access single-port disk
drives in high availability storage subsystems where
redundancy and load sharing are important. The
outputs from the I/O controllers are multiplexed to a
Serial ATA drive through the port selector block of the
XRS10L220. Active/passive port selector in
XRS10L220 allows two different host ports to connect
to the same target in order to create a redundant path
to that target. In combination with RAID, the
XRS10L220 allows system providers to build fully
redundant solutions. This avoids the presence of a
single point of failure, and enables a fail-over path in
the case of host failure.
This port multiplier function is used when one active
host has to communicate with multiple SATA drives.
The XRS10L220 supports up to 2 SATA drives and
utilizes the full bandwidth of the host connection.
The XRS10L220 includes enhanced features such as
staggered HDD spin-up, power management control,
hot plug capability and support for legacy software.
The XRS10L220 acts as a retimer, maintaining
independent signaling domains between the drives,
hosts and the external interconnect.
The high-speed serial input feature:
selectable
equalization adjustment and the high-speed serial
output feature: programmable pre-emphasis can be
used to compensate for ISI (Inter-Symbol
Interference) and increase maximum cable distances.
XRS10L220 meets tight jitter budgets in SATA
applications. Exar's serial I/O technology enables
reliable data transmission over 1 meter of FR-4 and 4
meters of unequalized copper cable.
Host and drive port speeds can be mixed and
matched, based upon inherent data rate negotiation
present in the SATA II specifications.
The MDIO bus allows simple configuration of the
XRS10L220 when needed. Receive equalization,
transmit amplitude and pre-emphasis and SSC
control are all configurable via the 2-wire MDIO
interface.
To summarize, the port multiplier functionality in the
XRS10L220 allows the system designer to increase
the number of serial ATA connections in an enclosure
that does not have a sufficient number of serial ATA
Exar Corporation 48720 Kato Road, Fremont CA, 94538 • (510) 668-7000 • FAX (510) 668-7017 • www.exar.com
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
connections for all of the drives in the enclosure. The port selector functionality in the XRS10L220 allows
replacement for expensive Fibre Channel drives with cost effective and high capacity SATA drives in enterprise
class applications without compromising on redundancy or performance.
STANDARDS COMPLIANCE
The XRS10L220 is compliant with the following industry specifications:
• Serial ATA, Revision 1.0a
• Serial ATA II: Extensions to Serial ATA 1.0a, Revision 1.2
• Serial ATA II PHY Electrical Specifications, Revision 1.0
• Serial ATA II: Port Selector, Revision 1.0
• Serial ATA II: Port Multiplier, Revision 1.2
• Serial ATA II: Revision 2.6
APPLICATIONS
• Serial ATA Enclosures
• Other Serial ATA link replicator applications
• Buffers for externally connected links
• High density storage boxes
• RAID Subsystems
APPLICATION EXAMPLE
The XRS10L220 is ideally suited for use within an external drive enclosure as a means of providing redundant
host access to ensure system availability and reliability, while enabling access to up to two target devices per
XRS10L220. This application is shown in Figure 1. Other applications for the XRS10L220 include use in fixedcontent or network attached storage systems, storage arrays, desktop applications or entry-level servers,
RAID storage or disk-to-disk backup.
FIGURE 1. SYSTEM BLOCK DIAGRAM FOR XRS10L220 IN A DRIVE ENCLOSURE APPLICATION
DRIVE ENCLOSURE
XRS10L220
SATA
Port
Selector
SATA
Port
Multiplier
2
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
RESETB
DRACT0
DRACT1
NC
NC
VSS
SOTN0
SOTP0
VDD
SORN0
SORP0
VSS
VSSA
VDDA
VSS
SORP1
SORN1
VDD
SOTP1
SOTN1
VSS
VDD
VSS
PWRDNB
ANTEST
FIGURE 2. PINOUT OF THE XRS10L220
XRS10L220
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
TRST
PORTSEL
MDC
VSS
MDIO
VSS
NC
NC
VDD
NC
NC
VSS
VSSA
VDDA
VSS
NC
NC
VDD
NC
NC
VSS
VSS
VDD
CLKSTN
CLKSTP
HBACT
PS_SIDEBAND_B
VSS
VDD
VSS
SiTN1
SiTP1
VDD
SiRN1
SiRP1
VSS
VDDA
VSSA
VSS
SiRP0
SiRN0
VDD
SiTP0
SiTN0
VSS
TCK
TMS
VDD
TDO
TDI
3
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
VDDA
RBias
VSSA
CMU_REFN
CMU_REFP
VDDA
XOG
XOD
VSSA
SCANMODE
NC
NC
VDD
NC
NC
VSS
VDDA
VSSA
VSS
NC
NC
VDD
NC
NC
VSS
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
2.0 PIN DESCRIPTIONS
TABLE 1: XRS10L220 PIN DESCRIPTIONS
PIN NAME
PIN NUMBER
I/O
TYPE
DESCRIPTION
DATA INTERFACE
SOTP0/SOTN0
68, 69
SOTP1/SOTN1
57, 56
SORP0/SORN0
65, 66
SORP1/SORN1
60, 59
SITP0/SITN0
93, 94
SITP1/SITN1
82, 81
SIRP0/SIRN0
90, 91
SIRP1/SIRN1
85, 84
O
CML
AC
Coupled
Serial ATA Output Transmitters. These ports communicate
from the XRS10L220 to downstream devices
I
Serial ATA Input Receivers. These ports receive signals
from downstream devices
O
Serial ATA Output Transmitters. These ports communicate
from the XRS10L220 to upstream hosts.
I
Serial ATA Input Receivers. These ports receive signals
from upstream hosts.
CLOCK INTERFACE
CMU_REFP/
CMU_REFN
46,
47
I
CML
AC
Coupled
Reference clock input
XOD
43
0
Analog
Crystal oscillator output
XOG
44
I
Analog
Crystal oscillator input, 1.26V max
MDIO INTERFACE SIGNALS
MDC
3
I
LVCMOS
MDIO clock input, +3.3V LVCMOS
MDIO
5
I/O
LVCMOS
MDIO data port, +3.3V LVCMOS. Open drain
JTAG INTERFACE SIGNALS
TCK
96
I
LVCMOS
JTAG test clock, +3.3V LVCMOS
TDI
100
I
JTAG test data in, +3.3V LVCMOS
TDO
99
O
JTAG test data out, +3.3V LVCMOS. Open drain If used to
daisy chain JTAG devices, pull up externally using
3.3KOhm resistor.
TMS
97
I
JTAG mode select, +3.3V LVCMOS
TRST
1
I
JTAG test reset, +3.3V LVCMOS. Pull low externally using
3.3KOhm resistor for normal operation of the device.
GENERAL CONTROL AND CONFIGURATION SIGNALS (CMOS)
RBIAS
49
I
Analog
Connection point for calibration termination resistor.
RESETB
75
I
LVCMOS
Active low reset pin, +3.3V LVCMOS.
PWRDNB
52
I
LVCMOS
Active low power down signal for chip, +3.3V LVCMOS.
DRACT[1:0]
73, 74
O
LVCMOS
Drive activity port for external LED. Active Low, 3.3V LVCMOS, open drain
4
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 1: XRS10L220 PIN DESCRIPTIONS
PIN NAME
PIN NUMBER
I/O
TYPE
DESCRIPTION
HBACT
76
O
LVCMOS
0 = Host 0 selected (status)
1 = No host selected (status)
0-1-0-1 Toggle = Host 1 selected (1 sec stay at each
state)
3.3V LVCMOS
PS_SIDEBAND_
B
77
I
LVCMOS
+3.3V LVCMOS
PORTSEL
2
Please refer to Table 2, “Host Port Selection,” on
page 6
I
LVCMOS
Port selector external input pin when this mode is set in
the register. Low selects host port 0, otherwise port 1.
+3.3V LVCMOS
TEST PIN
ANTEST
51
O
Analog
Analog test pin
CLKSTN/
CLKSTP
24, 25
O
CML
AC
Coupled
Output clock test pin
RESERVED PINS
NC
7, 8, 10, 11, 16,
17, 19, 20, 27,
28, 30, 31, 36,
37, 39, 40, 71,
72
SCANMODE
41
No Connect
I
LVCMOS
For factory use only. connect to ground.
POWER AND GROUND SIGNALS
VDD
9, 18, 23, 29,
38, 54, 58, 67,
79, 83, 92, 98
I
1.2V supply.
VDDA
14, 34, 45, 50,
62, 87
I
1.2V Analog supply.
VSS
4, 6, 12, 15, 21,
22, 26, 32, 35,
53, 55, 61, 64,
70, 78, 80, 86,
89, 95
I
Ground.
VSSA
13, 33, 42, 48,
63, 88
I
Analog Ground.
5
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 2: HOST PORT SELECTION
HARDWARE PINS
PS_SIDEBAND_
B
PIN 77
REGISTER SETTINGS - REGISTER 0.009A
COMMENTS
PORTSEL
PIN 2
P_SEL_MTHD
P_SIDE_MTHD
P_HOST_SEL
BIT 0
BIT 1
BIT 2
0
"Selects host port
0 = Host port 0
1 = Host port 1
x
0
x
Host port is selected by hardware PORTSEL pin
x
"Selects host port
0 = Host port 0
1 = Host port 1
1
0
x
Host port is selected by hardware PORTSEL pin
0
x
x
1
"Selects host
port
0 = Host port
0
1 = Host port
1
"Host port is selected by register
0x0.009A bit 2
x
x
1
1
"Selects host
port
0 = Host port
0
1 = Host port
1
"Host port is selected by register
0x0.009A bit 2
1
x
0
x
x
Host port is selected by protocol
based selection
6
3.3V LVCMOS
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
FUNCTIONAL DESCRIPTION
3.0
A top-level view of the XRS10L220 is shown in Figure 3 outlining the interfaces to the device and the required
support components. The data path can be seen at the top of the device. This includes the two output transmit
and input receive paths at the top left, providing the upstream interface to the host, and the two output transmit
and input receive paths at the top right, providing the downstream interface to the target devices. The clocking,
control, and configuration interfaces are shown below the dotted line.
FIGURE 3. XRS10L220 INTERFACES
Serial A TA U pstream
Interface to H B As
S IT _P /N [1:0]
S O T _P/N [1:0]
Serial A TA D ow nstream
S IR _P/N [1:0]
SO R _P/N [1:0]
Interface to D evices
D R A C T[1:0]
R eference C lock
C M U _R E F_P /N
HBACT
C ontrol and
Status
Interface
P S_S ID E B AN D _B
XOD
C rystal O scillator I/O
PO R TS EL
XOG
R ES E TB
PWRDNB
TC K
TD I
M DC
C onfiguration
Interface
JTA G
Interface
TD O
M D IO
TM S
TR S T
R BIA S
VDDA
C alibration R esistor
49.9 Ω ± 0.5%
The XRS10L220 incorporates identical instantiations of a dual-channel Serial ATA II 3 Gbps PHY macro. This
common building block provides a uniform implementation with common characteristics and a common
register map, but provides a functional implementation of independent PHY blocks. Digital logic
implementations of Serial ATA link layer blocks along with port selector and port multiplier logic provide the
remainder of the data path within the XRS10L220. In addition, management and control interfaces including an
MDIO interface for register control, a JTAG interface for boundary scan purposes, and a resistor calibration
circuit complete the device. A block diagram of the XRS10L220 is shown in Figure 4.
FIGURE 4. XRS10L220 BLOCK DIAGRAM
SIR0
SIT0
SIR1
SIT1
SATA II
3G PHY
SATA II
LINK
LAYER
SATA II
3G PHY
RATE
ADJUST
FIFO
PORT
SELECTOR
PORT
MULTIPLIER
7
SATA II
LINK
LAYER
SATA II
3G PHY
SOT0
SATA II
LINK
LAYER
SATA II
3G PHY
SOT1
SOR0
SOR1
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
3.1
REV. 1.02
Out Of Band Feature
Each Serial ATA link provides full support for the three Out Of Band (OOB) signals supported by Serial ATA:
COMRESET, COMINIT and COMWAKE. These sequences must be separated by idle periods as shown in
Figure 5. The sequences are comprised of 106.7ns bursts of activity that are interleaved with varying length
stretches of electrical idle. This alternating sequence must be repeated four times to be recognized.
FIGURE 5. COMWAKE AND COMRESET/COMINIT SEQUENCES
106.7ns
COMWAKE
106.7ns
COMRESET
COMINIT
320ns
An example OOB sequence and the resulting burst and idle widths are shown in Figure 6. If the sequence of
burstWidth and idleWidth counts falls within the range specified in the MDIO registers for four consecutive
burst/idle sequences, then the link will assert COMINIT or COMWAKE. This OOB signal will remain asserted
for as long as the corresponding sequence on the input pins continues.
FIGURE 6. EXAMPLE OOB SEQUENCE
rxdP, rxdN
squelchClock
burstWidth
idleWidth
15
15
17
15
17
COMINT = (MaxBurstWidth≥burstWidth≥MinBurstWidth) && (MaxInitWidth≥idleWidth≥MinInitWidth)
COMWAKE = (MaxBurstWidth≥burstWidth≥MinBurstWidth) && (MaxWakeWidth≥idleWidth³MinWakeWidth)
8
17
EXSTOR - 1 XRS10L220
REV. 1.02
3.2
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
Power Down Modes
The XRS10L220 features independent support for the 3 power modes, as follows:
• Active: All parts of the link are active. All power-down signals are de-asserted.
• Partial: In partial mode, the input and output pipelines are shut down, but the PLL and the OOB generation
circuits are active.
• Slumber: In slumber mode, the PLL is also shut down, saving additional power but adding latency on exit.
The XRS10L220 transceiver components (transmitter, receive CDR, PLL, etc.) can be powered down through
MDIO register settings. Please refer to Table 13, “Powerdown Registers (MDIO Devices 1, 2),” on page 27
• Please refer to “XRS10L220/120 Errata Sheet” for details regarding Link Power Management.
3.3
Speed Negotiation
The XRS10L220 will automatically perform speed negotiation with the host and devices in order to verify
whether the second generation Serial ATA 3.0 Gbps data rate is available or whether the system will need to
fall back upon the first generation Serial ATA 1.5 Gbps data rate. Speed negotiation is performed on an
independent basis by each of the dual-channel macros. Speed negotiation is done independently on all host
and device ports by default. MDIO configuration can request a common negotiated speed on the host and
device ports if such a speed exists. To perform speed negotiation with a downstream device, the XRS10L220
will first perform a COMRESET/COMINIT handshake with the device and then performs a calibrate/
COMWAKE handshake. Following receipt of the device COMWAKE signal, the XRS10L220 will continually
send out a D10.2 signal while awaiting receipt of the device ALIGN primitive. Depending on the speed of the
ALIGN primitive, the XRS10L220 will be able to determine the PHY generation of the device, and provide the
appropriate 1.5 Gbps or 3.0 Gbps ALIGN primitive in return to the device, thus completing speed negotiation.
This process is outlined in Figure 7.
FIGURE 7. SERIAL ATA SPEED NEGOTIATION
For speed negotiation with an upstream host, after the COMRESET/COMINIT and COMWAKE handshake is
complete, the XRS10L220 will initially send out an ALIGN primitive at the 2nd generation 3.0 Gbps data rate. If
no confirming 3.0 Gbps ALIGN primitive is received from the host, the XRS10L220 will then step down and
attempt negotiation at the lower 1.5 Gbps data rate.
3.4
Port selector Implementation
The XRS10L220 provides full support for the Serial ATA II Port Selector specification. A Serial ATA Port
Selector is a mechanism that allows two different host ports to connect to the same device in order to create a
redundant path to that device. Only one host connection to the device is active at a time.
9
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
The two host ports are responsible for coordination of access to the XRS10L220 by one of two separate
means: protocol-based port selection or sideband port selection. Each method is described in detail in the next
two sections.
3.4.1
Protocol Based Port Selection
Protocol-based port selection makes use of a sequence of Serial ATA OOB signals to select the active host
port. The port selection signal is based on a pattern of COMRESET OOB signals transmitted from the host to
the XRS10L220. The port selection signal is composed of a series of COMRESET signals with the timing from
one COMRESET signal to the next as shown in Table 3 and Figure 8. The XRS10L220 selects the port, if
inactive, on the de-assertion of COMRESET after receiving two complete back-to-back sequences with this
defined inter-burst spacing. This can also be identified as two sequences of two COMRESET intervals
comprising a total of five COMRESET bursts with four inter-burst delays. Once a port is designated as active,
reception of additional COMRESET signals is propagated directly to the device, even if the COMRESET
signals constitute a port selection signal.
Note that when protocol based selection mode has been enabled, following the initial hardware reset, a single
COMRESET burst will select the active host port. After this intial host port selection, only COMRESET OOB
observing the protocol timing given below will change the active host.
TABLE 3: PORT SELECTOR SIGNAL INTER-RESET TIMING REQUIREMENTS
NOMINAL
MIN.
MAX
UNITS
COMMENTS
T1
2.0
1.6
2.4
ms
Inter-reset assertion delay for first
event of the selection sequence
T2
8.0
7.6
8.4
ms
Inter-reset assertion delay for second
event of the selection sequence
FIGURE 8. PORT SELECTION SIGNAL - TRANSMITTED COMRESET SIGNALS
3.4.2
Sideband Based Port Selection
The XRS10L220 also features support for a sideband port selection mechanism. This is implemented via the
MDIO register settings. This is implemented using a combination of the MDIO register settings and device pins
including PS_SIDEBAND_B and PORTSEL. Refer to Table 2 for a sideband port selection settings.
3.5
Port Multiplier Implementation
The XRS10L220 provides full support for the functionality outlined in the Serial ATA II Port Multiplier
specification. This Port Multiplier functionality follows the Port Selector implementation, and only one link can
be active at any time.
A Serial ATA II Port Multiplier is a mechanism for one active host connection to communicate with multiple
devices. A Port Multiplier is conceptually a simple multiplexer in which one active host connection is
multiplexed to multiple device connections.
The XRS10L220 uses four bits, known as the PM Port field in all Serial ATA frame types, to route frames
between the selected host and the appropriate device. PM ports 0 through 1 are valid device ports within the 2-
10
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
output XRS10L220, while PM port 15 is designated for communication between the host and the XRS10L220
itself. For host-to-device transactions, the PM Port field is designated by the host in order to specify which
device the frame is intended for. For device-to-host transactions, the XRS10L220 fills in the PM Port field with
the port address of the device that is transmitting the frame.
The PM Port field is defined in the Serial ATA port multiplier specification to be the first 32-bit Dword in the
Frame Information Structure (FIS) for all FIS types, as shown in Figure 9.
FIGURE 9. PORT SELECTION SIGNAL - TRANSMITTED COMRESET SIGNALS
As defined in Serial ATA1.0
3.5.1
PM Port
FIS Type
Transmission from a host to a device
A host indicates the target device for receipt of a transmitted frame by setting the PM Port field in the frame to
the device's port address. When an XRS10L220 receives a frame as selected from one of the two available
hosts by the port selector, it checks the PM Port field in the frame to determine which port address should be
used. If the frame is set for transmission to the control port (15), the XRS10L220 receives the frame and
performs the command or operation requested. If the frame is designated for a device port, the XRS10L220
obeys the following procedure:
1. The XRS10L220 first determines if the device port is valid. If the device port is not valid, the XRS10L220
will issue a SYNC primitive to the host and terminate reception of the frame.
2. The XRS10L220 determines if the X bit is set in the device port's PSCR[1] (SError) register. If the X bit is
set, the XRS10L220 issues a SYNC primitive to the host and terminates reception of the frame.
3. The XRS10L220 determines if a collision has occurred. A collision occurs when a reception is already in
progress from the device that the host wants to transmit to. If a collision has occurred, the XRS10L220 will
finish receiving the frame from the host and will then issue an R_ERR primitive to the host as the ending
status. The XRS10L220 will then discard the frame, but will not return an R_RDY primitive to the host until
the frame from the affected device port has been transmitted to the host, thus indicating to the host when it
can retry to send the frame. The transmission from the device will proceed as requested, as the device will
always take collision precedence over the host.
4. The XRS10L220 initiates a transfer with the device by issuing an X_RDY primitive to the device. A collision
may occur as the XRS10L220 is issuing the X_RDY to the device if the device has started transmitting an
X_RDY primitive to the XRS10L220, indicating a decision to start a transmission to the host. In this case,
the XRS10L220 will finish receiving the frame from the host and then issue an R_ERR primitive to the host
to indicate an unsuccessful transmission. The transmission from the device will proceed as requested, as
the device will always take collision precedence over the host.
5. After the device issues an R_RDY primitive to the XRS10L220, the XRS10L220 will transmit the frame
from the host to the device. The XRS10L220 will not send an R_OK status primitive to the host until the
device has issued an R_OK primitive to indicate successful frame reception. In this way, the R_OK status
handshake is interlocked from the device to the host.
If an error is detected during any part of the frame transfer, the XRS10L220 will ensure that the error condition
is propagated to the host and the device. If no error occurs during frame transfer, the XRS10L220 will not alter
the contents of the frame, or modify the CRC in any way.
3.5.2
Transmission from a device to a host
A device indicates a transmit to a host in the same way as would be done if the host and device were attached
directly. This transaction obeys the following procedure:
1. After receiving an X_RDY primitive from the device, the XRS10L220 will determine if the X bit is set in the
device port's PSCR[1] (SError) register. The XRS10L220 will not issue an R_RDY primitive to the device
until this bit is cleared to zero.
11
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
2. The XRS10L220 will then receive the frame from the device. The XRS10L220 will fill in the PM Port field
with the port address of the transmitting device. The XRS10L220 will then check the CRC received from
the device, and if valid, it will recalculate the CRC based upon the new PM Port field. If the CRC calculated
from the device is incorrect, the XRS10L220 will corrupt the CRC sent to the host to ensure propagation of
the error condition
3. The XRS10L220 will issue an X_RDY primitive to the host to start the transmission of the frame to the host.
After the host issues an R_RDY primitive to the XRS10L220, the frame from the device, with the updated
CRC, will then be transmitted to the host. The XRS10L220 will not send an R_OK status primitive to the
device until the host has issued an R_OK primitive to indicate successful frame reception. In this way, the
R_OK status handshake will be interlocked from the device to the host.
If an error is detected during any part of the frame transfer, the XRS10L220 will ensure that the error condition
is propagated to the host and the device.
12
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
Clocking
3.6
The XRS10L220 allows the use of either an external reference clock or of a low cost crystal oscillator to act as
a reference clock. Separate device inputs are available for each approach, with full rate reference clock inputs
provided on pins CMU_REFP and CMU_REFN, and crystal oscillator inputs provided on pins XOD and XOG.
Supported data rates and their appropriate PLL divide factors are outlined in Table 4.
TABLE 4: PLL DIVIDE FACTORS
MODE
SYSCLK
/REF
/FB
DINCLK
RXCLK
SERIAL
CLOCK
DATA
RATE
SATA Gen. 2
25MHz
1
60
300MHz
1.5GHz
3.0Gbps
SATA Gen. 2
50MHz
1
30
300MHz
1.5GHz
3.0Gbps
SATA Gen. 2
75MHz
1
20
300MHz
1.5GHz
3.0Gbps
SATA Gen. 2
100MHz
2
30
300MHz
1.5GHz
3.0Gbps
SATA Gen. 2
150MHz
1
10
300MHz
1.5GHz
3.0Gbps
NOTE: * All links start with 3.0Gbps, then negotiate down to 1.5Gbps for SATA Generation 1 devices.
3.6.1
Spread Spectrum Clocking
The XRS10L220 provides full support for receipt and generation of signals that have been configured for
Spread Spectrum Clocking (SSC) support. The spread technique is implemented by down-spreading the data
rate by 0.5% as a means of reducing EMI. Generation of the down-spread clock is performed within the
XRS10L220. An example of the resultant spectral fundamental frequency before and after SSC can be seen in
Figure 10.
FIGURE 10. SPREAD SPECTRUM CLOCKING
13
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
4.0
REV. 1.02
ELECTRICAL SPECIFICATIONS
This section contains the electrical specifications for the XRS10L220.
4.1
Serial ATA Specifications
The XRS10L220 electrical transmit and receive specifications are outlined in this section. The XRS10L220 is
fully compliant to the Serial ATA II specification for Gen2i, Gen2x, Gen2m, Gen1i, Gen1x and Gen1m
variations at 3.0 and 1.5 Gbps.
4.1.1
Serial ATA Transmitter
A simplified version of the output circuit and test fixture for each of the 4 Serial ATA transmit output pairs on the
XRS10L220 is shown in Figure 11. The output differential pair is terminated to the supply VDD. The circuit is
designed to be AC coupled.
FIGURE 11. SERIAL ATA EQUIVALENT OUTPUT CIRCUIT
The XRS10L220 Serial ATA outputs include a simple one-tap equalizer, that is useful in driving longer printed
circuit traces and is a required component in second generation Serial ATA PHYs. This equalizer preemphasizes the output signal whenever there is a data transition. The amount of pre-emphasis can vary
between 0 and 45.5%, and is configured via MDIO register settings. Note that pre-emphasis doesn't increase
the overall swing, but instead reduces the output amplitude when there is no transition.
14
EXSTOR - 1 XRS10L220
REV. 1.02
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
FIGURE 12. EFFECTS OF TRANSMIT PRE-EMPHASIS
The overall swing level can also be modified via MDIO register settings. The XRS10L220 transmit mask is
shown in Figure 13.
FIGURE 13. TRANSMIT EYE MASK FOR SERIAL ATA OUTPUT
15
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
4.1.2
REV. 1.02
Serial ATA Receiver
An equivalent circuit for the XRS10L220 Serial ATA inputs is shown in Figure 14. The device receiver mask is
shown in Figure 15. This circuit is designed to be AC coupled. The termination resistors are not connected
during power-up
FIGURE 14. SERIAL ATA EQUIVALENT INPUT CIRCUIT
FIGURE 15. RECEIVE EYE MASK FOR SERIAL ATA INPUT
16
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 5: SERIAL ATA LINK SPECIFICATIONS
NAME
MIN.
NOM
MAX
UNITS
Bit Time
670
-
333
ps
JXR1
Input Jitter Tolerance Mask at signal crossover
0.32
-
-
UI
JXR1,DJ
Deterministic jitter tolerance at signal crossover
0.18
-
-
UI
Output jitter mask at signal crossover
-
-
0.15
UI
Deterministic output jitter at signal crossover
-
-
0.07
UI
Input signal rise/fall times (20% - 80%)
0.2
-
0.46
UI
tQR/tQF
Output signal rise/fall times (20% - 80%)
0.2
-
0.41
UI
tTOL,RX1
RX to sysclock frequency offset tolerance
-5350
0
350
ppm
Input swing, differential peak-peak
175
-
1600
mV
Output swing, differential peak-peak
800
-
1200
mV
VIN,IDLE
No swing detection threshold
65
120
155
mV
RIN,DIFF
Differential mode input resistance
85
100
115
Ω
RIN,CM3
Common mode input resistance
40
50
60
Ω
RIN,OFF
Common mode input resistance, no power
200
-
-
kΩ
RIN,XS
Output termination resistance
40
50
60
Ω
S11,IN,DIFF
Differential input return loss, 50MHz - 1.5GHz
12
-
-
dB
S11,IN,CM
Common mode input return loss 50MHz-1.5GHz
6
-
-
dB
S22,OUT,DIFF Differential output return loss 50MHz-1.5GHz
12
-
-
dB
S22,OUT,CM
6
-
-
dB
tBIT,XS
JXT1
JXT1,DJ
tR/tF
VIN
VSW2
DESCRIPTION
Common mode output return loss 50MHz-1.5GHz
tS,REG
Setup time for register port
1.5
-
-
ns
tH,REG
Hold time for register port
1.5
-
-
ns
tQ,REG
Clock to Q time for register port
0
-
2
ns
tCYC,REG
Register port clock cycle time
10
-
-
ns
tHI,REG
R register port clock high time
4
-
-
ns
tLO,REG
Register port clock low time
4
-
-
ns
tRF,REG
Register port input rise/fall time
-
-
0.5
ns
NOTES:
1.
This value includes 0.5% downspread Spread Spectrum clocking, plus 350ppm tolerance around the center
frequency.
2.
This is measured at the package ball and does not include any board or connector loss.
3.
This valu can be as low as 5Ω during power on.
17
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
4.2
REV. 1.02
CMOS Interface
AC and DC specifications for the CMOS inputs and outputs are listed in Table 6. Since all these signals are
asynchronous, there are no setup or hold times defined. The CMOS pins are defined in the General Control
and Configuration portion of Table 1 in Section 3, "Pin Descriptions".
TABLE 6: CMOS I/O SPECIFICATIONS
NAME
tDR/tDF,CMOS
DESCRIPTION
CMOS input signal rise/fall times (20% - 80%)
tQR/tQF,CMOS1 CMOS output signal rise/fall times (20% - 80%)
MIN
NOM
MAX
UNITS
0.2
-
5
ns
0.2
-
5
ns
VIL,CMOS
CMOS input low voltage
-0.3
0
0.8
V
VIH,CMOS
CMOS input high voltage
1.7
3.3
3.6
V
VOL,CMOS
CMOS output low voltage
-0.3
0
0.4
V
VPULLUP
Open Drain Pull-up Voltage
2.3
3.6
V
IOL,CMOS
Output current for VOL = 0.4V
10
-
20
mA
dIOL/dt,CMOS
Output current rate of change
-10
-
10
mA/ns
LI,CMOS
CMOS I/O inductance
-
-
8
nH
CI,CMOS
CMOS I/O capacitance
-
-
5
pF
150
uA
ILEAKAGE2
CMOS I/O Leakage Current
NOTE: .1. This value is measured driving a load of 20pF.
NOTE: .2. This values is measured at 2.5 VDC.
4.3
MDIO Interface
The Management Data Input/Output (MDIO) port complies with Clause 45 of the IEEE 802.3ae specification. A
representative MDIO driver/receiver is shown in Figure 16. MDIO uses an open drain driver with a pullup
resistor.
18
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
FIGURE 16. REPRESENTATIVE MDIO CIRCUIT
2.5V/3.3V
Pin
To other MDIO Devices
Open Drain
Driver
Representative MDIO Read and Write waveforms are shown in Figure 17. The XRS10L220 samples MDIO on
the rising edge of MDC for input and drives MDIO after the rising edge of MDC for output. Note that setup,
hold, and output timings are defined from the maximum VIL and minimum VIH levels.
FIGURE 17. MDIO INPUT AND OUTPUT WAVEFORMS
Values for MDIO parameters are shown in Table 7
19
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 7: MDIO DC AND AC CHARACTERISTICS
NAME
DESCRIPTION
MIN
NOM
MAX
UNITS
tCYCLE,MDIO
MDC cycle time
400
-
-
ns
tLOW,MDC
MDC low time
160
-
-
ns
tHIGH,MDC
MDC high time
160
-
-
ns
tS,MDIO1
MDIO input to MDC setup time
10
-
-
ns
tH,MDIO2
MDC to MDIO input hold time
10
-
-
ns
tQ,MDIO3
MDC to MDIO output time
0
-
150
ns
tDR/tDF,MDIO
MDIO input signal rise/fall times (20% - 80%)
0.2
-
100
ns
tQR/tQF,MDIO4
MDIO output signal rise/fall times (20% - 80%)
0.2
-
80
ns
VIL,MDIO
MDIO input low voltage
-0.3
0
0.8
V
VIH,MDIO
MDIO input high voltage
1.7
3.3
3.6
V
VOL,MDIO4
MDIO output low voltage
-0.3
0
0.4
V
Open Drain Pull-up Voltage
2.3
3.6
V
VPULLUP
IOL,MDIO
MDIO Output current for VOL = 0.4V
10
-
20
mA
dIOL/dt,MDIO
MDIO Output current rate of change
-10
-
10
mA/ns
LI,MDIO
MDIO input inductance
-
-
8
nH
CI,MDIO
MDIO input capacitance
-
-
5
pF
NOTES:
1.
Measured from minimum MDIO VIH to maximum MDC VIL for MDIO rising edge.
2.
Measured from minimum MDC VIH to maximum MDIO VIL for MDIO rising edge.
Measured from maximum MDIO VIL to maximum MDC VIL for MDIO falling edge.
Measured from minimum MDC VIH to minimum MDIO VIH for MDIO falling edge.
3.
Measured from minimum MDC VIH to maximum MDIO VIL for MDIO rising edge and MDC rising edge.
4.
Measured from minimum MDC VIH to minimum MDIO VIH for MDIO falling edge and MDC rising edge.
Measured from maximum MDC VIL to maximum MDIO VIL for MDIO rising edge and MDC falling edge.
Measured from maximum MDC VIL to minimum MDIO VIH for MDIO falling edge and MDC falling edge.
Measured driving a load of 470pF.
TABLE 8: OPERATING CONDITIONS
Name
Min
Nom
Max
Units
Ambient temperature under bias
-40
25
85
°C
VDD
Core power supply voltage
1.14
1.2
1.26
V
IDD
Core power supply current
-
300
400
mA
TA
Description
20
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 8: OPERATING CONDITIONS
Name
Description
Min
Nom
Max
Units
VESD1
Electrostatic discharge tolerance, Human Body Model Any pin with respect to any other pin except VDDA pins
(pins 14, 34, 45, 50, 62, and 87)
-1400
1400
V
VESD2
Electrostatic discharge tolerance, Human Body Model Any pin with respect to VDDA pins (pins 14, 34, 45, 50,
62, and 87)
-300
300
V
θJA
Junction-to-ambient thermal resistance
38.5
21
0
C/W
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
5.0 REGISTER DESCRIPTIONS
The XRS10L220 provides a variety of registers for the purpose of device configuration, testing and monitoring.
These registers are accessed through the MDIO interface, outlined in “Section 4.3, MDIO Interface” on
page 18. Operational registers available to the customer are given below. Note that all other address space
should be left unmodified in order to ensure proper behaviour of the device.
5.1
Register Overview
The XRS10L220 port address is hardwired to 0; this field should be set to 0 in all packets.The XRS10L220
contains two identical instantiations of a dual Serial ATA PHY macro. A common set of registers exists within
each of these macros, and are outlined in “Section 5.2, Macro Registers” on page 23. MDIO device
designations 1-2 are used for each of these macros as shown in Table 9. Registers relating to the XRS10L220
as a whole are outlined in “Section 5.3, XRS10L220 Device Generic Registers” on page 29 and make use
of MDIO device 0.
TABLE 9: MDIO DEVICE DESIGNATIONS
MDIO DEVICE DESIGNATION
MACRO
RELEVANT PINS
0
XRS10L220 Device Generic Registers
N/A
1
Serial ATA Input Macro
SI0, SI1
2
Serial ATA Output Macro 0
SO0, SO1
The XRS10L220 registers are arranged as 8-bit fields with 8-bit addresses. These are mapped into the 16-bit
MDIO address and data fields by setting the most significant byte of each to be 0. An example mapping from a
macro address/data combination to an MDIO address & data combination is shown in Table 10.
TABLE 10: MDIO ADDRESSING
MACRO ADDRESS
MACRO DATA
MDIO ADDRESS
MDIO DATA
0x40
abcde
0x0040
00000000000abcde
NOTE: The unused upper 3 bits in FBDIV are also set to 0 during MDIO writes and are undefined during MDIO reads.
In the description of each register field, there is an entry describing its read/write status. This may fall into one
of the following categories:
• RW- register field is read/write
• RO - register field is read only
• LL - Latching Low - Used with bits that monitor some state internal to the XRS10L220. When the condition
for the bit to go low is reached, the bit stays low until the next time it is read. Once it is read, its value reverts
to the cur-rent state of the condition it monitors.
• LH - Latching High - When the condition for the bit to go high is reached, the bit stays high until the next time
it is read. Once it is read, its value reverts to the current state of the condition it monitors.
• SC - When an SC bit is set, some action is initiated; once the action is complete, the bit is cleared.
22
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
5.2
Macro Registers
The registers outlined in this section are common to each of the two Serial ATA dual PHY macros as described
in the previous section. As such, each listed register is present in each of the 1, and 2 MDIO register spaces,
and will perform the stated function on the specified Serial ATA lane.
The registers within each dual PHY macro are split into the following sections:
Transmit/Receive lane 0 registers:
Address range 000*****
Transmit/Receive lane 1 registers:
Address range 001*****
PLL registers:
Address range 010*****
Bias generator registers:
Address range 011*****
TABLE 11: TRANSMIT/RECEIVE LANE REGISTERS (MDIO DEVICE 1, 2)
ADDRESS
HEX
N.0000
N.0020
N.0001
N.0021
BIT(S)
NAME
R/W
DEFAULT
7
Reserved
RW
0
DO NOT MODIFY
6
SATAPCIEXB_G1
RW
0
Tx output swing booster bit (Gen 1)
0 = boost swing by 15%
1 = nominal swing
5:1
Reserved
RW
00001
0
SATAPCIEXB_G2
RW
0
7:3
Reserved
RW
00000
2:0
Transmit_Eq0[2:0]
Transmit_Eq1[2:0]
RW
011
23
DESCRPTION
DO NOT MODIFY
Tx output swing booster bit (Gen 2)
0 = boost swing by 15%
1 = nominal swing
DO NOT MODIFY
Transmit pre-emphasis control
000 = 0% transmit preemphasis
001 = 6.5% transmit preemphasis
010 = 13% transmit preemphasis
011 = 19.5% transmit preemphasis
100 = 26% transmit preemphasis
101 = 32.5% transmit preemphasis
110 = 39% transmit preemphasis
111 = 45.5% transmit preemphasis
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 11: TRANSMIT/RECEIVE LANE REGISTERS (MDIO DEVICE 1, 2)
ADDRESS
HEX
BIT(S)
NAME
R/W
DEFAULT
N.0002
N.0022
7:6
7:6
mscProg0[1:0]
mscProg1[1:0]
RW
01
Receive equalization control – boost at 1.5GHz
00 = Lowest boost level
01 = 2nd boost level
10 = 3rd boost level
11 = Highest boost level
5:3
5:3
Beacon_Swing0[2:0]
Beacon_Swing1[2:0]
RW
100
Transmit swing size for OOB Signals
000 = 800mV
001 = 700mV
010 = 600mV
011 = 500mV
100 = 400mV
101 = 300mV
110 = 200mV
111 = 0mV
2:0
2:0
Output_Swing0[2:0]
Output_Swing1[2:0]
RW
100
Transmit swing size in normal operation
000 = 800mV
001 = 700mV
010 = 600mV
011 = 500mV
100 = 400mV
101 = 300mV
110 =200mV
111 = 0mV
7
enEqB
RW
0
6:0
Reserved
RW
7
Reserved
RO
-
6:4
sysclk25divsel0[2:0]
sysclk25divsel1[2:0]
RW
000
Divider selection for sysclk-> sysclk25
000 = divide by 1 (sysclk is 25MHz)
001 = divide by 2 (sysclk is 50MHz)
010 = divide by 3 (sysclk is 75MHz)
011 = divide by 4 (sysclk is 100MHz)
100 = divide by 5 (sysclk is 125MHz)
101 = divide by 6 (sysclk is 150MHz)
110 = divide by 10 (sysclk is 250MHz)
111 = divide by 12 (sysclk is 300MHz)
3:0
Reserved
RW
0101
DO NOT MODIFY
N.0003
N.0023
N.0015
N.0035
DESCRPTION
Enable receive equalization
0 = enable equalization
1 = disable equalization
0010000 DO NOT MODIFY
24
Reserved
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 11: TRANSMIT/RECEIVE LANE REGISTERS (MDIO DEVICE 1, 2)
ADDRESS
HEX
N.0018
N.0038
BIT(S)
NAME
R/W
DEFAULT
7:3
Reserved
RW
00100
2:0
txbiasbuffsela0[2:0]
txbiasbuffsela1[2:0]
RW
100
25
DESCRPTION
DO NOT MODIFY
Tx Predriver swing size in normal operation
000 = 800mV
001 = 700mV
010 = 600mV
011 = 500mV
100 = 400mV (sata default)
101 = 300mV
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 12: PLL CONFIGURATION (MDIO DEVICE 1, 2)
ADDRESS
HEX
BIT(S)
NAME
TYPE
DEFAULT
N.0040
7:6
Reserved
RO
-
5:0
FBDIV[5:0]
RW
101101
7:6
Reserved
RO
-
5:0
REFDIV[5:0]
RW
010000
7:6
Reserved
RO
-
5:0
SSCMax
RW
00000
N.0041
N.0044
26
DESCRIPTION
Reserved
Divide value for feedback clock
110000 = divide by 5
100000 = divide by 10
100001 = divide by 15
100010 = divide by 20
100011 = divide by 25
100101 = divide by 30
100111 = divide by 50
101101 = divide by 60 (default for 25MHz Ref))
Other - reserved
Reserved
Divide values for system clock
010000 = divide by 1 (default for 25MHz Ref))
000000 = divide by 2
000001 = divide by 3
000010 = divide by 4
000011 = divide by 5
000101 = divide by 6
000110 = divide by 8
000111 = divide by 10
001101 = divide by 12
001110 = divide by 16
001111 = divide by 20
Others - reserved
Reserved
Maximum value for spread (set to 45, 0x2D when
SSCBypass is set to ’0’)
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 12: PLL CONFIGURATION (MDIO DEVICE 1, 2)
ADDRESS
HEX
N.0045
Note 1
BIT(S)
NAME
7:5
TYPE
DEFAULT
DESCRIPTION
RO
-
Reserved
4
SSCmode
RW
0
Selects position of spreading interpolator
0 = Interpolator in feedback path
1 = Interpolator in feedforward path
(Set to ’1’ when SSCBypass = ’0’)
3
Reserved
RW
0
DO NOT MODIFY
2
SSCInvert
RW
0
Inverting SSC profile - Setting for downspread per
SATA spec
Set to ’0’ when SSCmode = ’0’
Set to ’1’ when SSCmode = ’1’
1
Reserved
RW
0
DO NOT MODIFY
0
SSCBypass
RW
1
Bypass the saw generator and pulse density modulator and get increment from SSCMax (set SSCMax
to 45 [0x2D] when SSCBypass is set to 0)
NOTE: 1) In order to enable SSC generation, set register N.0044 to 0x2D, N.0045 to 0x14 and then reset the PLL by
writing register 0.0004 to 0x0 then 0xF.
TABLE 13: POWERDOWN REGISTERS (MDIO DEVICES 1, 2)
ADDRESS
HEX
1.0080
2.0080
BIT(S)
NAME
TYPE
RESET VALUE
DESCRIPTION
7:6
SIpwrdnDetB[1:0]
SO01pwrdnDetB[1:0]
RW
11
Powers down the signal detector and COM*
circuits
1 = normal operation
0 = power down
5:4
SIpwrdnRxB[1:0]
SO01pwrdnRxB[1:0]
RW
11
Powers down the receivers and CDR
1 = normal operation
0 = power down
3:2
SIpwrdnTxDrvB[1:0]
SO01pwrdnTxDrvB[1:0]
RW
11
Powers down the transmitter
1 = normal operation
0 = power down
1:0
SIpwrdnTxB[1:0]
SO01pwrdnTxB[1:0]
RW
11
Powers down the transmit pipes and clock
1 = normal operation
0 = power down
27
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 13: POWERDOWN REGISTERS (MDIO DEVICES 1, 2)
ADDRESS
HEX
1.0081
2.0081
BIT(S)
NAME
TYPE
RESET VALUE
DESCRIPTION
7:2
Reserved
RO
-
Reserved
1
SIpwrdnBiasGen
SO01pwrdnBiasGen
RW
0
Powers down the bandgap.
1 = power down
0 = normal operation
0
SIpwrdnPLLB
SO01pwrdnPLLB
RW
1
Powers down the PLL
1 = normal operation
0 = power down
TABLE 14: BIAS GENERATOR CONFIGURATION (MDIO DEVICE 1, 2)
ADDRESS
HEX
BIT(S)
NAME
TYPE
RESET VALUE
N.0064
7:4
pr100Tx[3:0]
RW
0x0
Transmit pre-driver current bias
1010=50uA
0010=75uA
0000=100uA
0001=125uA
1100=150uA
0111=175uA
1111=200uA
3:0
Reserved[3:0]
RW
0x0
DO NOT MODIFY
7:4
Reserved
RW
0x0
DO NOT MODIFY
3:0
prcal100Tx[3:0]
RW
0x0
Transmit driver current bias
1010=50uA
0010=75uA
0000=100uA
0001=125uA
1100=150uA
0111=175uA
1111=200uA
N.0065
28
DESCRIPTION
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
5.3
XRS10L220 Device Generic Registers
This section outlines generic registers relating to the XRS10L220 as a whole. These registers are accessed
through MDIO device 0.
TABLE 15: RESET CONTROL SIGNALS
ADDRESS
HEX
BIT(S)
NAME
TYPE
RESET VALUE
DESCRIPTION
0.0004
3:0
resetPLLB_reg[3:0]
RW
0x0F
Resets the PLL portion of the macros
0x00 = PLL reset
0x0F = clears PLL reset
0.0030
7:0
revision_id[7:0]
R/O
0x01
Deivice Revision ID
0.0031
7:0
device_id [15:8]
R/O
0x83
Device ID MSB
0.0032
7:0
device_id [7:0
R/O
0x07
Device ID LSB
TABLE 16: SATA PORT SELECTOR REGISTERS
ADDRESS
HEX
BIT(S)
NAME
TYPE
RESET VALUE
0.009A
7:3
Reserved
RW
00100
2
p_host_sel
RW
0
Side band port selection
1 = Select Host port 1
0 = Select Host port 0
1
p_side_mthd
RW
0
1 = p_host_sel based sideband selection
0 = external pin based sideband selection
0
p_sel_mthd
RW
0
Please refer to Table 2, “Host Port
Selection,” on page 6
DESCRIPTION
DO NOT MODIFY
TABLE 17: PORT MULTIPLIER SATA STANDARD REGISTERS
REGISTER
BIT(S)
NAME
TYPE
DEFAULT
VALUE
GSCR(0)
Product
Identifier
31 - 16
Device ID
R/O
0x8307
Device ID allocated by the vendor.
15 - 0
Vendor ID
R/O
0x13A8
Vendor ID allocated by the PCI-SIG of the vendor
that produced the Port Multiplier.
29
DESCRIPTION
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 17: PORT MULTIPLIER SATA STANDARD REGISTERS
REGISTER
BIT(S)
NAME
TYPE
DEFAULT
VALUE
GSCR(1)
Revision
Information
31 - 16
Reserved
R/O
0x0000
15 - 8
REV_LEV
R/O
0x01
15-8 Revision level of the Port Multiplier.
7:4
Reserved
R/O
0x0
7-4 Reserved
3
PM_1,2
R/O
1
1=Supports Port Multiplier specification 1.2.
2
PM_1.1
R/O
1
1=Supports Port Multiplier specification 1.1.
1
PM_1.0
R/O
1
1=Supports Port Multiplier specification 1.0.
0
Reserved
R/O
0
Reserved
7:4
Reserved
R/O
0x0
Reserved
3-0
DEV_FAN_OUT_
PORTS
R/O
0x2
Number of exposed device fan-out ports.
31 - 15
Reserved
R/O
0x0
14
Reserved
R/O
0
Unused
13
Reserved
R/O
0
Unused
12
Reserved
R/O
0
Unused
11
Reserved
R/O
0
Unused
10
Reserved
R/O
0
Unused
9
Reserved
R/O
0
Unused
8
Reserved
R/O
0
Unused
7
Reserved
R/O
0
Unused
6
Reserved
R/O
0
Unused
5
Reserved
R/O
0
Unused
4
Reserved
R/O
0
Unused
3
OR_PORT-3
R/O
0
OR of selectable bits in Port 3 PSCR[1] (SError)
2
OR_PORT-2
R/O
0
OR of selectable bits in Port 2 PSCR[1] (SError)
1
OR_PORT-1
R/O
0
OR of selectable bits in Port 1 PSCR[1] (SError)
0
OR_PORT-0
R/O
0
OR of selectable bits in Port 0 PSCR[1] (SError)
31 - 0
ERR_INFO_EN
R/O
0x400FFFF
GSCR(2)
Port
Information
GSCR(32)
Error
Information
GSCR(33)
Error Information Bit
Enable
30
DESCRIPTION
31-16 Reserved
If set, bit is enabled for use in GSCR[32]
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 17: PORT MULTIPLIER SATA STANDARD REGISTERS
REGISTER
BIT(S)
NAME
TYPE
DEFAULT
VALUE
GSCR(64)
Port Multiplier Revision 1.X
Features
Support
31 - 5
Reserved
R/O
0x0
4
PHY_EVENT
R/O
0
1 = Supports Phy event counters
3
ASYNC
R/O
1
1 = Supports asynchronous notification
2
SSC
R/O
0
1 = Supports dynamic SSC transmit enable
1
PMREQP
R/O
1
1 = Supports issuing PMREQP to host
0
BIST
R/O
0
1 = Supports BIST
31 - 4
Reserved
R/O
0x0
3
ASYNC_EN
R/W
0
1 = Asynchronous notification enabled
2
SSC_EN
R/W
0
1 = Dynamic SSC transmit is enabled
1
PMREQP_EN
R/W
0
1 = Issuing PMREQP to host is enabled
0
BIST_EN
R/W
0
1 = BIST support is enabled
GSCR(96)
Port Multiplier Revision 1.X
Features
Enable
31
DESCRIPTION
Reserved
Reserved
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
TABLE 18: SATA STANDARD REGISTERS - DEVICE PORT (0 TO 1) - STATUS AND CONTROL
NOTE: Registers designated as WC are write clear. In order to clear a particular bit or bit field within a WC designated
register, write a ‘1’ to that bit or bit field.
REGISTER
BIT(S)
NAME
TYPE
DEFAULT
VALUE
PSCR(0)
(SStatus)
31 - 12
Reserved
R/O
0x0
Reserved
11 - 8
IPM
R/O
0x0
The IPM value indicates the current interface power management state
0000b = Device not present or communication not established
0001b = Interface in active state
0010b= Interface in Partial power management state
0110b = Interface in Slumber power management state
All other values reserved
7 -4
SPD
R/O
0x0
The SPD value indicates the negotiated interface communication speed established
0000b = No negotiated speed (device not present or communication not established)
0001b = Generation 1 communication rate negotiated
0010b = Generation 2 communication rate negotiated
All other values reserved
3-0
DET
R/O
0x0
The DET value indicates the interface device detection and
Phy state.
0000b = No device detected and Phy communication not
established
0001b = Device presence detected but Phy communication
not established
0011b = Device presence detected and Phy communication
established
0100b = Phy in offline mode as a result of the interface being
disabled or running in a BIST loopback mode
All other values reserved
PSCR(1)
(SError)
31 - 16
DIAG
R/WC
0x40
See description below
15 - 0
ERR
R/WC
0x0
See description below
PSCR(2)
(SControl)
31 - 19
Reserved
R/O
0x0
Reserved All reserved fields shall be cleared to zero.
20 - 16
Reserved
R/W
0x0
Reserved All reserved fields shall be cleared to zero
15 - 12
SPM
R/W
0x0
See description below
11 - 8
IPM
R/W
0x0
See description below
7-4
SPD
R/W
0x0
See description below
3-0
DET
R/W
0x4
See description below
DESCRIPTION
32
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
SError register SCR(1) The Serial ATA interface Error register - SError - is a 32-bit register that conveys supplemental Interface error
information to complement the error information available in the Shadow Register Block Error register. The
register represents all the detected errors accumulated since the last time the SError register was cleared
(whether recovered by the interface of not). Set bits in the error register are explicitly cleared by a write
operation to the SError register, or a reset operation. The value written to clear set error bits shall have 1’s
encoded in the bit positions corresponding to the bits that are to be cleared. Host software should clear the
Interface SError register at appropriate checkpoints in order to best isolate error conditions and the commands
they impact.
Bits [31:16] DIAG
The DIAG field contains diagnostic error information for use by diagnostic software in validating correct
operation or isolating failure modes. The field is bit significant as defined in the following figure.
DIAG
R
R
R
R
A
X
F
T
S
H
C
D
B
W
I
N
A
Port Selector presence detected: This bit is set to one when COMWAKE is received while the host is
in state HP2: HR_AwaitCOMINIT. On power-up reset this bit is cleared to zero. The bit is cleared to zero when
the host writes a one to this bit location.
B
10b to 8b Decode error: When set to a one, this bit indicates that one or more 10b to 8b decoding
errors occurred since the bit was last cleared to zero.
C
CRC Error: When set to one, this bit indicates that one or more CRC errors occurred with the Link
layer since the bit was last cleared to zero.
D
Disparity Error: When set to one, this bit indicates that incorrect disparity was detected one or more
times since the last time the bit was cleared to zero.
F
Unrecognized FIS type: When set to one, this bit indicates that since the bit was last cleared one or
more FISes were received by the Transport layer with good CRC, but had atype field that was not recognized.
I
Phy Internal Error: When set to one, this bit indicates that the Phy detected some internal error since
the last time this bit was cleared to zero.
N
PHYRDY change: When set to one, this bit indicates that the PHYRDY signal changed state since the
last time this bit was cleared to zero.
H
Handshake error: When set to one, this bit indicates that one or more R_ERRPhandshake response
was received in response to frame transmission. Such errors may be the result of a CRC error detected by the
recipient, a disparity or 10b/8b decoding error, or other error condition leading to a negative handshake on a
transmitted frame.
R
Reserved bit for future use: Shall be cleared to zero.
S
Link Sequence Error: When set to one, this bit indicates that one or more Link state machine error
conditions was encountered since the last time this bit was cleared to zero. The Link layer state machine
defines the conditions under which the link layer detects an erroneous transition.
T
Transport state transition error: When set to one, this bit indicates that an error has occurred in the
transition from one state to another within the Transport layer since the last time this bit was cleared to zero.
W
COMWAKE Detected: When set to one this bit indicates that a COMWAKE signal was detected by the
Phy since the last time this bit was cleared to zero.
X
Exchanged: When set to one this bit indicates that device presence has changed since the last time
this bit was cleared to zero. The means by which the implementation determines that the device presence has
changed is vendor specific. This bit may be set to one anytime a Phy reset initialization sequence occurs as
determined by reception of the COMINIT signal whether in response to a new device being inserted, in
response to a COMRESET having been issued, or in response to power-up.
33
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
Bits [15:0] ERR
The ERR field contains error information for use by host software in determining the appropriate response to
the error condition. The field is bit significant as defined in the following figure.
ERR
R
R
R
R
E
P
C
T
R
R
R
R
R
R
M
I
C
Non-recovered persistent communication or data integrity error: A communication error that was not
recovered occurred that is expected to be persistent. Since the error condition is expected to be persistent the
operation need not be retried by host software. Persistent communications errors may arise from faulty
interconnect with the device, from adevice that has been removed or has failed, or a number of other causes.
E
Internal error: The host bus adapter experienced an internal error that caused the operation to fail and
may have put the host bus adapter into an error state. Host software should reset the interface before re-trying
the operation. If the condition persists, the host bus adapter may suffer from a design issue rendering it
incompatible with the attached device.
I
Recovered data integrity error: A data integrity error occurred that was recovered by the interface
through a retry operation or other recovery action. This may arise from a noise burst in the transmission, a
voltage supply variation, or from other causes. No action is required by host software since the operation
ultimately succeeded, however, host software may elect to track such recovered errors in order to gauge
overall communications integrity and potentially step down the negotiated communication speed.
M
Recovered communications error: Communications between the device and host was temporarily lost
but was re-established. This may arise from a device temporarily being removed, from a temporary loss of Phy
synchronization, or from other causes and may be derived from the PHYRDYn signal between the Phy and
Link layers. No action is required by the host software since the operation ultimately succeeded, however, host
software may elect to track such recovered errors in order to gauge overall communications integrity and
potentially step down the negotiated communication speed.
P
Protocol error: A violation of the Serial ATA protocol was detected. This may arise from invalid or
poorly formed FISes being received, from invalid state transitions, or from other causes. Host software should
reset the interface and retry the corresponding operation. If such an error persists, the attached device may
have a design issue rendering it incompatible with the host bus adapter.
R
Reserved bit for future use: Shall be cleared to zero.
T
Non-recovered transient data integrity error: A data integrity error occurred that was not recovered by
the interface. Since the error condition is not expected to be persistent the operation should be retried by host
software.
SControl register SCR(2)
The Serial ATA interface Control register - SControl - is a 32-bit read-write register that provides the interface
by which software controls Serial ATA interface capabilities. Writes to the SControl register result in an action
being taken by the host adapter or interface. Reads from the register return the last value written to it.
Bits [19:16] PMP
The Port Multiplier Port (PMP) field represents the 4-bit value to be placed in the PM Port field of all transmitted
FISes. This field is ‘0000’ upon power-up. This field is optional and an HBA implementation may choose to
ignore this field if the FIS to be transmitted is constructed via an alternative method.
Bits [15:12] SPM
The Select Power Management (SPM) field is used to select a power management state. Anon-zero value
written to this field shall cause the power management state specified to be initiated. A value written to this
field is treated as a one-shot. This field shall be read as 0000b.
■
0000b = No power management state transition requested
34
EXSTOR - 1 XRS10L220
REV. 1.02
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
■
0001b = Transition to the Partial power management state initiated
■
0010b = Transition to the Slumber power management state initiated
■
0100b = Transition to the active power management state initiated
■
All other values reserved
Bits [11:8] IPM
The IPM field represents the enabled interface power management states that may be invoked via the Serial
ATA interface power management capabilities
■
0000b = No interface power management state restrictions
■
0001b = Transitions to the Partial power management state disabled
■
0010b = Transitions to the Slumber power management state disabled
■
0011b = Transitions to both the Partial and Slumber power management states disabled
■
All other values reserved
Bits [7:4]SPD
The SPD field represents the highest allowed communication speed the interface is allowed to negotiate when
interface communication speed is established
■
0000b = No speed negotiation restrictions
■
0001b = Limit speed negotiation to a rate not greater than Gen 1 communication rate
■
0010b = Limit speed negotiation to a rate not greater than Gen 2 communication rate
■
All other values reserved
Bits [3:0] DET
The DET field controls the host adapter device detection and interface initialization.
■
0000b = No device detection or initialization action requested
■
0001b = Perform interface communication initialization sequence to establish communication. This is
functionally equivalent to a hard reset and results in the interface being reset and communications
reinitialized. Upon a write to the SControl register that sets the DET field to 0001b, the host interface
shall transition to the HP1: HR_Reset state and shall remain in that state until the DET field is set to a
value other than 0001b, by a subsequent write to the SControl register.
■
0100b = Disable the Serial ATA interface and put Phy in offline mode.
■
All other values reserved
35
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
PRODUCT ORDERING INFORMATION
PRODUCT NUMBER
PACKAGE TYPE
OPERATING TEMPERATURE RANGE
XRS10L220IV-F
100 Pin LQFP (Lead Free)
-40°C to +85°C
XRS10L220IV
100 Pin LQFP
-40°C to +85°C
36
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
100 LEAD LOW-PROFILE QUAD FLAT PACK
(14 X 14 X 1.4 mm LQFP, 1.0 mm FORM)
D
D1
75
51
76
50
D1
100
26
1
β
B
e
C
A2
A
Seating Plane
25
α
A1
L
NOTE: The control dimension is in millimeters
INCHES
MILLIMETERS
SYMBOL
MIN
MAX
MIN
MAX
A
0.055
0.063
1.40
1.60
A1
0.002
0.006
0.05
0.15
A2
0.053
0.057
1.35
1.45
B
0.010
0.014
0.17
0.27
C
0.004
0.008
0.09
0.20
D
0.622
0.638
15.80
16.20
D1
0.390
0.555
13.90
14.10
e
0.0197 BSC
0.50 BSC
L
0.018
0.030
0.45
0.75
α
0°
7°
0°
7°
β
7° typ
7° typ
37
D
EXSTOR - 1 XRS10L220
SERIAL ATA II: PORT MULTIPLIER / PORT SELECTOR
REV. 1.02
REVISIONS
REV #
DATE
DESCRIPTION OF CHANGES
1.00
January 2008
1.01
March 2008
Revised to operational registers.
1.02
August 2008
Update device ESD ratings & Link Power Management support
1.03
January 2009
Corrected HBACT pin definition
Released.
NOTICE
EXAR Corporation reserves the right to make changes to the products contained in this publication in order to
improve design, performance or reliability. EXAR Corporation assumes no responsibility for the use of any
circuits described herein, conveys no license under any patent or other right, and makes no representation that
the circuits are free of patent infringement. Charts and schedules contained here in are only for illustration
purposes and may vary depending upon a user’s specific application. While the information in this publication
has been carefully checked; no responsibility, however, is assumed for inaccuracies.
EXAR Corporation does not recommend the use of any of its products in life support applications where the
failure or malfunction of the product can reasonably be expected to cause failure of the life support system or
to significantly affect its safety or effectiveness. Products are not authorized for use in such applications unless
EXAR Corporation receives, in writing, assurances to its satisfaction that: (a) the risk of injury or damage has
been minimized; (b) the user assumes all such risks; (c) potential liability of EXAR Corporation is adequately
protected under the circumstances.
Copyright 2008 EXAR Corporation
Datasheet August 2008.
Reproduction, in part or whole, without the prior written consent of EXAR Corporation is prohibited.
38