Question
4.4.2.1
p.78 What if HARD RESET after IDENTIFY
Architecture
Names and Identifiers
Overview
Device name
Worldwide unique names for devices within a transport protocol.
Prot name
Worldwide unique names for ports within a transport protocol
Port identifier
The value by which ports are identified within a domain
Phy identifier
The value by which phys are identified within a device
SAS address
Should use the NAA IEEE Registered format
00000000_00000000h indicates an invalid identifier
Hashed SAS address
BCH(63,39,9) code
Device name
SAS
Should include a SAS address as its device name
Should not be used as any other name or identifier
Except: the SAS address of an expander device = the one of the SMP port in that expander device
Report their device name by IDENTIFY address frame
SATA
Port name
Not defined in SAS
Port identifier
Should include a SAS address as its port identifier
Shall not be used as any other name or identifier
Except
Used as a port identifier in one or more other SAS domains
The SAS address of an SMP port in an expander device = the one of the expander device containing that SMP port
Expander ports do not have port idenitifiers
Report its own port identifier
SAS ports in end devices
IDENTIFY address frame
Expander devices containing SAS ports
SMP DISCOVER response
As source and destination SAS addresses in the OPEN address frame
Phy identifier
Unique within the SAS device and/or expander device
Each SAS/(expander) logical phy within a SAS(expander) phy shall use the same phy identifier
Used for managemetn functions
Range: 00h~FEh
Start from 00h
A device with SMP target port
< the NUMBER OF PHYS field in SMP REPORT GENERAL response
A device with SSP target port
< the NUMBER OF PHYS field in the Phy Control And Discover mode page
State Machine
Reset
I_T Nexus Loss
Occur when
I_T nexus loss timer expires
SAS port receives an abandon-class OPEN_REJECT
Handled by port layer state machine
SSP port
Send a Nexus Loss event notification to SCSI app. layer
SSP initiator port
a SCSI application client send an I_T NEXUS RESET to SSP target port during the next connection
STP initiator
Send a Transport Event Notification to ATA app. client
STP target port
Abort all outstanding commands for the lost STP initiator port
SMP initiator port
Stop attempting to establish connections to the lost SMP target
Expander device model
Containing
An expander function
An expander connection manager (ECM)
Mapping
Direct
Subtractive
Table routing
Arbitration
Configure the ECR
An expander connection router (ECR)
Route messages between pairs of expander logical phys as configured by ECM
Rate matching
May discard dwords
A Broadcast propagation processor (BPP)
Receive Broadcasts from
each expander logical phy
the management device sever
On behave of an expander logical phy
Requests transmission of those Broadcasts on all expander ports except the expander port from which the Broadcast was received
Two or more physical expander phys
An expander port available per phy
An SMP target port and a management device server
Optional
An SMP initiator port and a management application client
SAS devices with SSP ports, STP ports, and/or SMP ports and their associated device servers and/or application clients
Expander Port
Each phy in the expander device has the same
SAS address
routing attribute
zone phy information
A set of expander phys with
table routing attributes in an expander device
Supporting table-to-table attachments using the same external connector ?
O: Enclosure universal port
X: Enclosure out port
subtractive routing attribute using the same external connector
Enclosure in port
Each expander logical phy contains an expander link layer with
an XL state machine
process connection requests independently of those in other expander logical phys
one set of SL_IR state machines
An internal expander port contains a virtual phy with
an expander link layer
a protocol-specific transport layer
Each expander device shall include one internal SMP port using the expander device's SAS address
Each STP/SATA bridge shall have a unique SAS address
Any additional internal SAS ports
Shall be inside SAS devices contained in the expander device
Have SAS addresses different from that of the expander device
Expander Device Interfaces
Arbitrate and route between expander logical phys
All routing occurs between expander logical phys
Not expander ports
Definition
Interactions between an XL state machine and the expander function
Request
Confirmation
Indication
Response
Expander Device Routing
ECM determine routing method by the routing attributes(RAs)
Attached to an End Device ?
O
Direct
X
RA: Direct
Direct
RA: Table
Direct for SAS address of the expander device
Table for SAS addresses beyond the expander device
RA: Subtractive
Subtractive
Restrictions
If an expander device not support table-to-table attachment
Its routing phys shall not be attached to table routing phys in other expander devices
If multiple phys within an expander device have subtractive routing attribute and are attached to expander devices
shall be attached to phys with identical SAS address
Connection request routing
Determination
The destination expander logical phy is enabled?
Operating at a valid logical link rate?
Not exclued because of zoning?
Precedence
(1) When the destination SAS address matches the attached SAS address
Direct routing attrivute
Table routing attribute
(2) When the destination SAS address matches an enabled SAS address in the expander route table
Table routing attribute
(3) Subtractive routing attribute ; and
(4) Return Arb Reject confirmation to source expander logical phy
If only matches an expander logical phy in the same expander port
ECM return Arb Reject confirmation
If match a disabled SAS address in an expander table
ECM ignore the mathc
Expander routing table
Provide an association between
Destination SAS address
i.e., routed SAS address
The expander phys to which connection requests to those destination SAS address are forward
Type
Phy-based (M×N)
Expander route index
M ≦(EXPANDER ROUTE INDEXES field value in the REPORT GENERAL resonse) -1
Phy identifier
N ≦ (# of PHYS field value in the REPORT GENERAL response) -1
Expander route entry
ROUTED SAS ADDRESS field
DISABLE EXPANDER ROUTE ENTRY bit
Access
SMP REPORT ROUTE INFORMATION
SMP CONFIGURE ROUTE INFORMATION
Expander-based
Access
REPORT EXPANDER ROUTE TABLE LIST
Phy bit map
Indicate the expander phy(s) to which connection requests to the routed SAS address may be forwareded
1
The expander phy is used for forwarding connection requests
0
Not used for forwarding connection requests
Reduced functionality
REDUCED FUNCTIONALITY bit in the REPORT GENERAL response
The reduced functionality delay timer
Discover Process
Overview
Performer
Management application client
Determination
Device types
SAS addresses
Supported protocols
Usage
SAS initiator
Establish connection and select connection rate
Self-configuring expander
Ffill in its expander route table
When to start?
SAS initiator
After a link reset sequence
Discover all the devices in the SAS domain
After receiving a Broadcast(Change)
Determine which device have been added to or removed from the SAS domain
Self-configuring expander
After link reset sequence
Discover all the devices in the SAS domain
After receiving a Broadcast(Change
Determine which device have been added to or removed from the SAS domain
Discover process traversal
Breadth-first
Completion
All expanders have been traversed
Not required to perform the configuration subprocess
End device
Self-configuring expander
Direct attached to a self-configuring expander device B
CONFIGURES OTHERS bit set to one in the REPORT GENERAL response
Determine device type
Expander device
DEVICE TYPE field in the IDENTIFY address frame
SAS device
ATTACHED DEVICE TYPE TYPE field in the SMP DISCOVER response
If Expander attached
Determine how many phys
SMP REPORT GENERAL FUNCTION
Determine what is attached to each expander phy
SMP DISCOVER LIST
IF SAS device attached
Determine additional information
SMP target port
Use SMP function
SSP target port
Transmit SCSI commands
STP target port
Transmit ATA connmads
Result
The management application client has the necessary information to communicate with
Each SAS device
Expander deivce in the SAS domain
Each externally configurable expander device
Configured with the necessary expander route entries to allow routing of connection requests through the SAS domain
Abortion
If using incorrect information
Discover process in a self-configuring expander device
Descriptor?
Enabling multiplexing
If SAS domain contains
All 6 Gbps SAS phys
Disable multiplexing on every phys
All 3 Gbps SAS phys
Multiplex each 6 Gbps physical link into two 3 Gbps logical links
Not multiplex 3 Gbps physical links
All 1.5 Gbps SAS phys
Multiplex each 3 Gbps physical link into two 3 Gbps logical links
Multiplex each 3 Gbps physical link into two 1.5 Gbps logical links
Configuration subprocess
A single discover process performs the configuration subprocess at least once per externally configurable expander
Optimization
The method used to enable and disable the route table optimization is vendor specific
If enabled
Exclude discovered SAS addresses from the expander route table
FUNCTION RESULT field is set to a non-zero value (Not SMP FUNCTION ACCEPTED)
FUNCTION RESULT field is set to zero (SMP FUNCTION ACCEPTED)
ROUTING ATRIBUTE field is dset to 1h or 2h (Subtracrive or table)
ATTACHED DEVICE TYPE field is set to zero (No device attached)
ATTACHED DEVICE TYPE is set to a non-zero value (End device or expander device)
ATTACHED SAS ADDRESS field contains the SAS address of the expander device being configured (A self-referencing address)
ATTACHED SAS ADDRESS field contains the SAS address of of a device directly attached to the expander device being configured
ATTACHED SAS ADDRESS field contains the SAS address of that already exists in the expander route table
If inconsistency is detected
Report an error
Disable route table optimization
The management application client should re-initiate a discover process with route table optimization disabled
If disabled
All SAS addresses shall be qualified for insertion in the expander route table
If supports
Check the following situations
An I_T nexus loss occurs for a destination port that is expected to be present
A discover process has been completed
Another SMP initiator port is discovered in the SAS domain
A self-configuring expander device is discovered in the SAS domain
Index order
Each expander phy with a table routing attribute shall be configured.
Expander phy attached to an exapnder device ?
X
Every expander route entry for taht expander phy shall be disabled
O
The expander route table shall be configured
Assigned levels
The expander device in which the expander route table is level 0
The attached expander device is levle 1
Device attached to level n-1 expander devices, except for level n-2 expander devices, are considered level n
Zoning
The zoning expander devices control whether a phy is permitted to participate in a connection to another phy
All phys in a wide port shall be assigned to the same zone group
All phys in an expander port shall have the same zone phy information
INSIDE ZPSDS bit
Zero or One
REQUESTED INSIDE ZPSDS
Used to establish the boundary of the ZPSDS
INSIDE ZPSDS PERSISTENT
Used to determine the value of the INSIDE ZPSDS bit after a link reset sequence
Zone Permission Table
Zero
Rejected
One
Permitted
Confiugration
Overview
Only accept
SMP zone configuration function requests
SMP ZONE ACTIVATE requests
SMP ZONE UNLOCK requests while it is locked
Only accept those from
The zone manager that locked the zoning expander device
i.e., the active zone manager
Change zoning expander shadow values
Lock
Ensure that the same zone manager locks each zoning expander device
Cpmplete condition
A zone manager receives a successful SMP ZONE LOCK response from all required zoning expader devices
Load
Store SMP zone configuration information as zoning expander shadow values
Zoning expander device only processes SMP zone configuration function requests from active zone manager while it is locked
Zoning expander device
SMP zone configuration function
Contains
SMP CONFIGURE ZONE PHY INFORMATION
SMP CONFIGURE ZONE PERMISSION TABLE
SMP ENABLE DISABLE ZONING
Change the zoning shadow value
Not affect the coning expander current values
Skipped when a lock zoning expander device is unlocked
By a zone manager with a higher SAS address during the lock step
Because the zone lock inactivity timer expires
Activate
Copy the zoning expander shadow register values to the zoning expander current values
Save the zoning expander shadow values, if saving was requested
Active zone manager originates (one of two)
Broadcast (Zone Activate)
SMP ZONE ACTIVATE request to all locked zoning expander devices
Skipped when a locked zoning expander device is unlocked
By a zone manager with a higher SAS address during the lock step
Because the zone lock inactivvity timer expires
Unlock
Ensure
The active one manager unlocks the locked zoning expander devices
If the zone manager fails
Zone lock inactivity time expires
Zoning expander devices unlock
Zone lock inactivity timer
Ensure that if the zone manager disappears without performing the unlock step
All locked zoning expander devices are unlocked
Default value
ZONE LOCK INACTIVITY TIME LIMTI field
If expires while the zoning expander device is processing an SMP configuration function
Complete the request successfully or
Return a function result of ZONE LOCK VIOLATION
Phy Test Functions
Each phy test function is optional
For phy and interconnect characterization and diagnosis
The phy test function on one phy may affect the previously negotiated settings on other phys
While a phy is performing a phy test function
The link receivers
Ignore all incoming dwords
the OOB signal detector
detect COMINIT
The phy
Ignore any other OOB signals
If a specific phy test pattern and/or phy test function physical link rate required
The mechanism for invoking the phy test function specifies
The phy test pattern
Phy test function physical link rate
After a phy stops performing a phy test function
Link reset sequence
While a phy is performing the transmit pattern phy test function
The test equipment attached to that phy shall not transmit
COMSAS or COMWAKE
COMINIT except to stop the phy test function
While performing the transmit pattern phy teset function
A phy shall
Ignore all dwords received
Repeatedly transmit the specified pattern at the specified physical link rate
Phy Events
Saturating counter (32-bit) counts
Invalid dwords received
Dwords received with running disparity errors
Loss of dword synchronization
Phy reset problems
The management device server
Shall maintain phy events for the last vendor-specific number of events
Should maintain at least one phy event per phy
Shall assign descriptors to the events sequentially starting at 0001h
Shall return the descriptors in the
SMP REPORT PHY EVENT LIST response
Shall return the index of the descriptor for the last event in
SMP REPORT GENERAL response
SMP REPORT PHY EVENT LIST response
SMP DISCOVER LIST response