Download presentation
Presentation is loading. Please wait.
Published byAron Carpenter Modified over 9 years ago
1
Improving Networks Worldwide. UNH InterOperability Lab Serial Attached SCSI (SAS) Clause 6
2
Improving Networks Worldwide.
3
3 SAS Clause 6 Presentation Topics OOB State Machine Speed Negotiation 8b10B Encoding –Conventions –Running Disparity Synchronization State Machine
4
4 SAS Clause 6 OOB Signals Review Definition: Out of band (OOB) signals are low- speed signal patterns that do not appear in normal data streams. OOB signals consist of defined amounts of idle time followed by defined amounts of burst time
5
5 SAS Clause 6 OOB State Machine
6
6 SAS Clause 6 SAS OOB Sequence Source: HP, STA SAS Overview Presentation
7
7 SAS Clause 6 SAS OOB Sequence Source: SAS Standard
8
8 SAS Clause 6 SAS OOB Sequence PHY B misses PHY A’s Initialization Attempt Source: SAS Standard
9
9 SAS Clause 6 SAS-SATA OOB Sequence Source: HP, STA, SAS Overview Presentation
10
10 SAS Clause 6 Speed Negotiation -- SAS 1.1 Goal: Find a commonly supported speed between two link partners Covers 1.5 and 3.0 Gbps speeds – SAS 2.0 Speed Negotiation will be covered separately Devices that support 3.0 Gbps typically also support 1.5 Gbps
11
11 SAS Clause 6 Speed Negotiation Comprised of 4 “Speed Negotiation Windows” –SNW-1, SNW-2, SNW-3, SNW-F Each window is divided into two parts Rate Change Delay Speed Negotiation Transit
12
12 SAS Clause 6 Speed Negotiation Times Rate Change Delay Time: The time a transmitted shall transmit D.C. idle between rates during speed negotiation –750 000 OOBI Speed Negotiation Transit Time: The time during which ALIGN (0) or ALIGN (1) is transmitted at the specified physical link rate for the given window –163 840 OOBI
13
13 SAS Clause 6 Speed Negotiation Times Speed Negotiation Lock Time: The maximum time during the speed negotiation window for a transmitted device to replay with ALIGN (1) primitives –153 000 OOBI Speed Negotiation Window Time: The duration of the entire speed negotiation window. Equal to RCDT + SNTT –913 840 OOBI
14
14 SAS Clause 6 Generic SNW
15
15 SAS Clause 6 SNW-1 Following successful exchange of COMSAS between two Phys: –If a device supports 1.5Gbps speeds then after one RCDT it will being transmitting ALIGN (0) primitives –If a device detects ALIGN (0) primitives in return, it will be being transmitting ALIGN (1) Primitives to indicate a lock
16
16 SAS Clause 6 SNW-2 After the SNWT has lapsed for SNW-1, devices will stop transmitting ALIGN primitives and being transmitting D.C. Idle for one RCDT again –If a device supporst 3.0 Gbps, then it will begin transmitting ALIGN (0) primitives at that speed –If a device detects ALIGN (0) primitives in return, it will begin transmitting ALIGN (1) primitives to indicate a lock
17
17 SAS Clause 6 SNW-3 SNW-3 is unused in SAS 1.1 After the SNWT has lapsed for SNW-2, devices will stop transmitting ALIGN primitives and being transmitting D.C. Idle for the entire SNWT for SNW-3.
18
18 SAS Clause 6 SNW-F After the SNWT has lapsed for SNW-D, devices will continue to transmit D.C. Idle for one more RCDT. –A device will then transmit ALIGN (0) primitives at the highest speed for which it obtained lock during the previous SNWs. –If a device receives ALIGN (0) primitives at the same speed in return, it will begin transmitting ALIGN (1) primitives to indicate a lock –If a lock is obtained within the SNWT, control of the transmitter and receiver is handed over to the link layer applications
19
19 SAS Clause 6 Speed Negotiation Example 1 The following example provides a demonstration of the Speed Negotiation Procedures for SAS 1.1 Phy A supports 1.5, 3.0, and an unspecified higher speed Phy B supports only 3.0 Gbps Link is negotiated to 3.0 Gbps
20
20 SAS Clause 6 Speed Negotiation Example 1
21
21 SAS Clause 6 Speed Negotiation Example 2 The following example provides a demonstration of the Speed Negotiation Procedures for SAS 1.1 Phy A supports 1.5, 3.0, and an unspecified higher speed Phy B supports 1.5 and 3.0 Gbps Speed Negotiation fails due to Phy B being unable to obtain lock in SNW-F
22
22 SAS Clause 6 Speed Negotiation Example 2
23
23 SAS Clause 6 SAS 2.0 Changes to Speed Negotiation SNW-1, SNW-2, and SNW-F remain unchanged to provide backwards compatibility with non-SAS2.0 devices SNW-3 used to communicate capabilities between phys while remaining ‘Out-Of-Band’ SNW-3 and SNW-F used to allow devices to negotiate to speeds higher than 3.0 Gbps
24
24 SAS Clause 6 SAS 2.0 SNW-3 ALIGN Primitives are NOT transmitted at 6.0 Gbps Instead, a series of COMWAKE signals and periods of D.C. Idle are transmitted –Called: “Phy Capabilities Bits” –32 Bits long – One complete COMWAKE signal (six bursts) = 1 Bit –Absense of a COMWAKE = 0 Bit –Used to indicate the speeds and signal settings supported by the transmitter
25
25 SAS Clause 6 Phy Capabilities Bits Start Bit - always set to one; used to lock on to beginning of transmission of the Phy Capabilities Bits
26
26 SAS Clause 6 Phy Capabilities Bits TX SSC Type – Type of SSC used by the device –0 indicates down spreading, 1 indicates center spreading
27
27 SAS Clause 6 Phy Capabilities Bits Request Logical Link Rate –Multiplexing related setting used to determine the link speed of any logical connections made across the phy
28
28 SAS Clause 6 Phy Capabilities Bits Bits 1:2 though 1:7 –Capabilities bits –Only 1.5, 3.0, and 6.0 Gbps currently defined –One bit for each speed and SSC setting
29
29 SAS Clause 6 Phy Capabilities Bits Reserved Bits –A COMWAKE asserted in any bit that is Reserved will be considered an error condition by the Link Partner and the entire SNW will be rejected
30
30 SAS Clause 6 Phy Capabilities Bits Parity Bit –The Parity Bit shall be set such that the total number of bits set to one is even, including the Start Bit and the Parity Bit
31
31 SAS Clause 6 8b10b Encoding All information transferred in SAS is encoded into 10-bit characters using 8b10b encoding 1024 possible 10-bit characters
32
32 SAS Clause 6 8b10b Encoding 256 possible 8b characters –Mapped to 512 different 10b characters Two for each 8b character, + and – running disparity –12 control characters defined Used for sending Primitives The rest of the characters are invalid
33
33 SAS Clause 6 Data Characters...
34
34 SAS Clause 6 Control Characters
35
35 SAS Clause 6 DWords All characters transferred in SAS are grouped into four-character sequences called DWords Data DWords are built from 4 data characters Example: –D10.4 D20.2 D28.5 D03.0
36
36 SAS Clause 6 DWords Primitives are DWords are built from a control character and three data characters Example: –K28.5 D16.7 D16.7 D16.7 Always starts with the control character –Control character in any other position is a “Misaligned K-Code” error
37
37 SAS Clause 6 Running Disparity To further reduce the likely hood that long strings of 0s or 1s will occur, running disparity is implented Recall, each 8b character is mapped to 2 10b characters, one positive running disparity, one negative
38
38 SAS Clause 6 Running Disparity Each 10b character is divided in to two parts (sub-blocks) –First 6 bits –Last 4 bits Changes in running disparity are determined by the last sub-block transmitted
39
39 SAS Clause 6 Running Disparity Changes Running disparity at the beginning of 6- bit sub-block is determined by the end of the previous character Running disparity at the beginning of the 4-bit sub-block is determined by the end of the 6-bit sub-block Running disparity at the end of the character is what is determined at the end of the 4-bit sub-block
40
40 SAS Clause 6 Running Disparity Changes Running disparity is made positive if: –The sub block contains more 1s than 0s –If the sub-block is 6-bits and contains 000111b –If a sub-block is 4-bits and contains 0011b
41
41 SAS Clause 6 Running Disparity Changes Running disparity is made negative if: –The sub block contains more 0s than 1s –If the sub-block is 6-bits and contains 111000b –If a sub-block is 4-bits and contains 1100b
42
42 SAS Clause 6 Running Disparity Changes Running disparity is not changed if a sub-block contains an equal number of 0s and 1s and is not 000111b, 111000b, 1100b, or 0011b
43
43 SAS Clause 6 Synchronization State Machine Errors Four Basic Error Types –Invalid Transmission Character –Running Disparity Error –Incorrect Special Character –Misaligned Special Character
44
44 SAS Clause 6 Invalid Transmission Character Character transmitted is not: –One of the 512 valid data characters –One of the 12 valid control characters Normally involves a long string of either 0s or 1s
45
45 SAS Clause 6 Running Disparity Error Character transmitted contained an incorrect running disparity transition –Made a + to – transition or a – to + transition unexpectedly –Failed to maintain running disparity
46
46 SAS Clause 6 Incorrect Special Character The only valid control character used in SAS are: –K28.5 –K28.6 –K28.3 Any other special character is considered an error
47
47 SAS Clause 6 Misaligned Special Character A Control character that does not appear at the beginning of a Dword Example: –D10.3 K28.5 D16.7 D16.7
48
48 SAS Clause 6 Synchronization State Machine
49
49 SAS Clause 6 Synchronization State Machine Basics: –After 4 errors are received synchronization is considered lost –Synchronization can be regained upon reception of primitives from the link partner –If in a loss of synchronization state for more than 1ms, a device MAY transmit COMINIT
50
50 SAS Clause 6 Synchronization State Machine Device may only respond to frames/primitives when in the Sync Acquired State
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.