In-Depth SAS-2 and SATA - Training Course Description  
 

The newly revised and updated “In-Depth Serial Attached SCSI-2” course provides students with an updated and expanded comprehensive insight into the operation of the Serial Attached SCSI (SAS-2) interface. The class examines, and explores in detail, the operation of SAS at all architectural levels.

You will learn how SCSI functions in a SAS environment, which SCSI commands have changed and what has changed in those commands. If you are an implementer, this gives you information you need to know in order to change or develop implementations to support SAS. In addition, the Management Application (MA) layer is covered so that you will be able to design and implement your own Management Application client. All of the Serial Management Protocol (SMP) functions are covered as are each of the SAS information units.

This course examines each layer and function of the SAS architecture. Whether you need to know about the Application Layer, the Transport Layer, the Port Layer, the Link Layer, the Phy Layer or the Physical Layer, it is all covered in this course. You will learn the essential information such as the operation of each of the different SAS protocols, the format and structure of each of the SAS information units, Out-of-Band (OOB) signaling, resets, speed negotiation, and how devices are interconnected in typical configurations and electrical design considerations like pre-emphasis and equalization.

In the SATA section, topics will include all layers of the SATA architecture and how SATA enables tiered storage applications when coupled with SAS infrastructures.

This course is designed for any engineer or person who has to design, develop, architect, program, write software, test, or troubleshoot SAS and SATA technologies. This course may be accompanied by demonstrations using real test equipment, analyzers, and disk drives. Through demonstrations of the technology you will gain knowledge on how to design and troubleshoot every aspect of a SAS and/or SATA implementation.

Course Outline (SAS Section 4 Days)

Introduction to SAS
 What is Serial Attached SCSI?
 A Brief History of SCSI
 Why Serial Attached SCSI?
 The SAS and SCSI Architectures
 SAS Names and Addresses
 SAS Structure and Layers
 SAS, the SCSI Bus, Fibre Channel and SATA
SAS Connections and Protocols
 Serial SCSI Protocol (SSP)
 Serial Management Protocol (SMP)
 SATA Tunneled Protocol (STP)
SAS Configurations
 Expanders
 Wide Port Configurations
 SAS JBOD with Integrated Expanders
Service Delivery Subsystem Overview
 SAS Physical Links
 8b10b Encoding
 Dwords and Primitives
 Frame Transmission
 Out-of-Band Signaling (OOB)
 SAS Resets and Identification
 Pathways and Connections
SAS and SCSI Standards
SCSI Application Layer
 SCSI Architecture Model
 SCSI-3 Primary Commands
 SCSI Addressing and Names
 SCSI Data Transfer Model
 SCSI Execute Command Model
 Task Management Functions
 Application Layer Items Affected By SAS
Serial SCSI Protocol (SSP) Transport Layer
 SCSI Transport Protocol Services
 SSP Information Units:
  COMMAND Information Unit
  TASK Information Unit
  XFER_RDY Information Unit
  DATA Information Unit
  RESPONSE Information Unit
 SSP Frame Format
 SSP Frame Sequence Examples
SSP Link Layer
 SSP Flow Control
 SSP Frame Acknowledgement
 Closing an SSP Connection
 SSP Link Layer Timers
 SSP Done Timeout Trace Example
SSP Error Handling
 SCSI Application Layer Error Handling
 Transport Layer Handling of Link Layer Errors
 Transport Layer Error Handling
 SCSI Transport Protocol Event Notifications
SSP Trace Examples
 Test Unit Ready Command
 Read Command
 Write Command
Serial Management Protocol (SMP)
 SMP Commands
 Serial Management Protocol (SMP) Services
 SMP Transport Layer and Frame Format
 SMP Link Layer Operation
Discovery Process
 Attached Device Awareness
 Discovery Process Initiation
 

 Level-Order Traversal
 Discovery Process Example
 Route Table Optimization
 Expander Route Index Order
SATA Tunneled Protocol (STP)
 STP Application and Transport Layers
 SATA Frame Characteristics
 SATA Flow Control
 STP Connections and STP Affiliations
 SATA Port Multipliers and Port Selectors
 STP Differences Versus Native SATA
SAS Port Layer
 Port Layer Example Scenario
 Port Layer Interfaces
SAS Link Layer
 What are Primitives?
 Primitive Sequences & Usage
 Primitive Encoding
 Clock Skew
 ALIGN/NOTIFY Insertion
 Elasticity Buffer
 Scrambling Overview
 IDENTIFY & OPEN Address Frames
 Identification and Hard Reset Sequence
SAS Connections
 Connection Setup
 Processing During an Open Connection
 Closing a Connection
SAS Expanders
 Expander Structure and Addressing
 Expander Routing
 Expander Internal Interface Model
 Expander Connection Manager Arbitration
 Path Contention
 Deadlock Detection and Recovery
 Expander Connection Router
 Broadcast Primitive Processor
Zoning (SAS-2)
 What is Zoning?
 Zoning Configurations
 Zone Groups and Zone Permission Table
 Zoning Expander Route Table
 Zoning Enforcement
 Zoning Control Bits
Rate Matching and Multiplexing
 What is Rate Matching?
 Pros and Cons of Rate Matching
 Connection Rate vs. Physical Link Rate
 What is Multiplexing?
 Enabling Multiplexing
 PHY Reset Sequence and Multiplexing
 Multiplexing Considerations
SAS PHY Layer Details
 SAS Dwords
 8b10b Encoding and Error Detection
 Out-of-Band (OOB) Signals
 Reset Sequences and Hot Plug Detection
 SATA PHY Reset and Speed Negotiation
 SAS and SATA Cables and Connectors
 SAS Physical Links
 Differential Electrical Signaling
 Timing Requirements and Clocking
 Bit Error Rate (BER) Requirements
 Countering Cable and Connector Losses
 SAS vs. SATA Considerations
 SAS Extended Distance Considerations 
 

Course Outline (SATA Section 1 Day)

SATA Technical Overview
 Serial Links
 Encoding
 Primitives and Data Words
 Frame transmission
 Link Layer Protocol
 Transport Layer Protocol
Application Layer
 SATA Layer Functions
 Command Sets and Command Descriptions
 Overview of all Set Commands
 PACKET General Feature Set Commands
SATA Transport Layer
 Transport Layer Services
 Frame Information Structure (FIS)
 Register - Host to Device FIS
 Register - Device to Host FIS
 Set Device Bits FIS
 First Party DMA Setup FIS
 Hot-Plug Considerations
Error Handling (all Layers)
SCSI/ATA Translation
Port Multipliers and Port Selectors
SATA Future
 SATA II and Port Multipliers
 DMA Activate FIS
 SATA II Changes to DMA Transport
 Data FIS
 BIST Activate FIS
 PIO Setup FIS
  

 Changes to FISes for Port Multipliers
 SStatus, SError and SControl registers
Command Examples
 Legacy DMA read/write
 PIO data read/write
 READ/WRITE DMA QUEUED
 ATAPI PACKET commands
 First Party DMA read/write
Native Command Queuing (NCQ)
 Benefits of Native Command Queuing
 Detailed Description of NCQ
 NCQ Example
 Command Queuing and Errors
SATA Link Layer
 Frame Transmission/Reception
 Primitive Descriptions/Encoding
 Scrambling
 Encoding Method
Physical Layer
 Out of band signaling
 COMINIT/COMRESET
 COMWAKE
 SATA Speed Negotiation
 Resets and Signatures
 Elasticity buffer management
 Interface power states
 Electrical specifications
 Connectors
 SATA & eSATA Cabling
 

Who Should Attend: This in-depth technical seminar is targeted towards hardware and software engineers involved in the design, development, integration, deployment, test, and maintenance of Serial Attached SCSI storage devices, storage subsystems and servers.
Prerequisites: The attendee should have previous experience or training with the SCSI architecture and command behavior. While this course has provides an overview of SCSI operation, having a prior understanding SCSI will make the course easier. Due to the similarities between the interfaces, a prior understanding of Fibre Channel will greatly assist you in understanding SAS.
Course Length:

5 days