Presentation is loading. Please wait.

Presentation is loading. Please wait.

August 28, 29, 2006 SATA Protocol Training. NOT TO BE REDISTRIBUTED 2 Agenda SATA Introduction30 minutesSteve SATA Protocol100 minutesEric  Layer Architecture.

Similar presentations

Presentation on theme: "August 28, 29, 2006 SATA Protocol Training. NOT TO BE REDISTRIBUTED 2 Agenda SATA Introduction30 minutesSteve SATA Protocol100 minutesEric  Layer Architecture."— Presentation transcript:

1 August 28, 29, 2006 SATA Protocol Training

2 NOT TO BE REDISTRIBUTED 2 Agenda SATA Introduction30 minutesSteve SATA Protocol100 minutesEric  Layer Architecture Link Layer Physical Layer Phy Layer Frames and the Transport Layer  SATA II Bus Doctor SATA Analyzer Demo30 minutesEric Q&As20 minutes

3 August 28, 29, 2006 Introduction

4 NOT TO BE REDISTRIBUTED 4 Before SAS/SATA Early 2000 and there are two main non-networked storage drive standards (i.e. Fibre Channel)  ATA/IDE The most pervasive storage standard in the world (desktop or enterprise) Renamed to PATA after the introduction of SATA 18” internal cabling Host controls a master and slave drive  SCSI HBA controls up to 15 drives Used on high-performance workstations, servers, and high-end peripherals; and RAID arrays U320 is the end of the road for this parallel interface Host Bus Adapter (HBA) utilizing DMA for maximum I/O Fibre Channel, ATAPI and SAS have their roots and legacy in SCSI

5 NOT TO BE REDISTRIBUTED 5 History of Parallel ATA GenerationStandardYearSpeedKey features IDE1986 Pre-standard ATA1994 PIO modes 0-2, multiword DMA 0 EIDEATA-2199616 MB/sec PIO modes 3-4, multiword DMA modes 1-2, LBAs ATA-3199716 MB/sec SMART ATA/ATAPI-4199833 MB/sec Ultra DMA modes 0- 2, CRC, overlap, queuing, 80- wire Ultra DMA 66ATA/ATAPI-5200066 MB/sec Ultra DMA mode 3-4 Ultra DMA 100ATA/ATAPI-62002100 MB/sec Ultra DMA mode 5, 48-bit LBA Ultra DMA 133ATA/ATAPI-72003133 MB/sec Ultra DMA mode 6

6 NOT TO BE REDISTRIBUTED 6 Where ATA Resides in the PC Architecture CD HD SATA

7 NOT TO BE REDISTRIBUTED 7 Bandwidth limited to 133 MB/s Cyclic Redundancy Checking (CRC) for data but not commands Support attachment of 2 devices per cable Small switch or jumper for drive selection High pin count on signaling interface adds cost to cables, connectors and components Wide cables are cumbersome and inhibit airflow making cooling more difficult and expensive Connectors hard to insert and remove Prone to bent pins Limitations of Parallel ATA

8 NOT TO BE REDISTRIBUTED 8 Benefits of Serial Based Storage Frame-based transaction protocol (OSI model)  Small, inexpensive connectors and cables Legacy support - ATA stack in SATA Ease of integration – cabling, jumpers Point-to-point connections (expanders, port multipliers) Pathway to higher data rates; 6 Gb/s is on the roadmap Improve bandwidth  Wide ports permit several simultaneous connections, allowing for link aggregation (SAS) Lower cost

9 NOT TO BE REDISTRIBUTED 9 PATA and SATA Comparisons Source: SATA Working Group

10 NOT TO BE REDISTRIBUTED 10 History of serial ATA GenerationStandardYearSpeedKey features Serial ATAATA/ATAPI-72002150 MB/sec Serial ATA IIATA/ATAPI-82005300 MB/secNative Command Queuing Serial ATA IIIATA/ATAPI-9??600 MB/sec

11 NOT TO BE REDISTRIBUTED 11 SATA Technology Today SATA has been the most successful recent new storage interface  It has been a multi billion dollar market for several years  In 2006 over 300 million hard disk drives will have SATA interfaces 400 Million Shipped in 2005 (source: Gartner)  Market Leader – Seagate 40% share  SATA has also made its appearance in solid state disks, DVD drives and tape drives In Desktop, notebooks, Consumer Products - DVR In the Enterprise! (thanks to STP)  Challenges SAS in the enterprise  Non-critical data  Near-line and offline storage  FC, SAS, and SATA will co-exist offering consumers with a choice of flexible storage options at varying price-points

12 August 28, 29, 2006 SATA Layer Architecture

13 NOT TO BE REDISTRIBUTED 13 SATA Layer Architecture

14 NOT TO BE REDISTRIBUTED 14 SATA Layer Architecture

15 August 28, 29, 2006 SATA Link Layer

16 NOT TO BE REDISTRIBUTED 16 Link Layer – Summary of Functions Sending/Receiving Frames 8b/10b encoding Scrambling/Unscrambling Flow control CRC calculation

17 NOT TO BE REDISTRIBUTED 17 Link Layer - 8b/10b Encoding Data transferred across the link must first be converted from 8-bit values (bytes) into 10 bit values (symbols) Process is called 8b/10b encoding Invented by IBM Also used in the following protocols: Ethernet, Fibre Channel Purpose for encoding  Clock insertion and recovery  Creates sufficient transition density to limit “Run Length”  DC Balance – main “equal” number of 1’s and 0’s  Ability to encode for special control characters (K)

18 NOT TO BE REDISTRIBUTED 18 Link Layer - 8b/10b Encoding Two encodings for each 8-bit value Dependence on the current running disparity Two lookup tables are provided for in the specifications

19 NOT TO BE REDISTRIBUTED 19 Link Layer – Scrambling/Descrambling SATA frames are scrambled to help with EMI (primitives are not scrambled) Scrambling occurs before 8b/10b “Seeding” resets at the detection of a SOF Descrambled on receive side after the 8b/10b

20 NOT TO BE REDISTRIBUTED 20 SATA Primitives Primitives are used as semaphores. They are fixed in content and meaning Primitive is a dword with one control character followed by 3 data characters Primitives are used in SATA – the equivalent in Fibre Channel is ordered set  First character is K28.3 (for SATA primitives), or K28.6 (special SATA error primitive)  SATA primitives always send the control character first on the wire firstsecondthirdfourth ALIGNK28.5 D10.2 D10.2 D27.3

21 NOT TO BE REDISTRIBUTED 21 SATA Primitives The Align primitives establish dword boundaries within the serial bit stream. They are sent as data during OOB, and every 2048 dwords there after D23.1 D21.5K28.3 3 2 1 0 Sent First SOF

22 NOT TO BE REDISTRIBUTED 22 SATA Primitives 18 primitives defined  ALIGN  CONT  DMAT  EOF  HOLD  HOLDA  PMACK  PMNAK  PMREQ_P  PMREQ_S  R_ERR  R_IP  R_OK  R_RDY  SOF  SYNC  WTRM  X_RDY

23 NOT TO BE REDISTRIBUTED 23 SATA Primitives Primitives are used in a variety of circumstances including:  Indicating intent to send an FIS  Indicating beginning and end of each FIS  Flow Control signaling in response to Transport Layer Buffer state  Reporting Transmission Status

24 August 28, 29, 2006 Physical Layer

25 NOT TO BE REDISTRIBUTED 25 Physical Layer - Summary Defines the connectors and cabling used to transmit and receive SATA signaling and data information

26 NOT TO BE REDISTRIBUTED 26 Physical Layer - SATA Device Connector Serial ATA signal connector (pin S1) Appearance of Serial ATA Connectors (Drawing courtesy of Molex) parallel ATA signals 4-pin power 3.5” Parallel powersignal 2.5" Serial Device connector sizes and locations Device plug connector Host receptacle connector powersignal 3.5” Serial Legacy Power (vendor specific) Serial ATA power connector (pin P1) (5.25” form factor also defined for devices like tape drives and DVDs) in comparison… Graphics courtesy of the SCSI Trade Association and HP

27 NOT TO BE REDISTRIBUTED 27 Physical Layer - SATA Cabling Graphics courtesy of Molex SATA to SATA (1), CO, ST The most common internal for SATA (and SAS); 1 meter maximum length SATA Power To provide legacy power support eSATA Power (2m) External SATA; designed for use with external storage products; bypasses the USB route

28 August 28, 29, 2006 Phy Layer

29 NOT TO BE REDISTRIBUTED 29 Physical Layer - Summary OOB (Out of Band) Signaling Speed Negotiations Byte/dword synchronization

30 NOT TO BE REDISTRIBUTED 30 Phy Layer - (OOB) Most primitive level of communication is OOB They are pattern of idle times and burst times, distinguished by length of time between idles  Idle time (and negation time) are when there are voltage levels Also known as DC idle  Burst time is during the transmission of the ALIGN primitives  Since byte sync has not occurred yet, the actual bits sent are not relevant – 40 bits will always been detected and consider an ALIGN

31 NOT TO BE REDISTRIBUTED 31 Phy Layer - (OOB) COMINIT/COMRESET and COMWAKE are bursts of 6 ALIGN (0) separated by IDLEs Length of the idle time determines the type of OOB signal Senders sends 6 – receiver only need to detect 4 (per spec) COMRESET are sent by hosts COMINIT are sent by devices OOB Signal Idle TimeNegation Time COMWAKE55 to 175 ns> 175 ns COMINIT/COMRESET 175 to 525 ns> 525 ns


33 NOT TO BE REDISTRIBUTED 33 Phy Layer - OOB COMINIT/COMRESET Electrically, COMINIT and COMRESET appear exactly the same, the only difference is the direction in which the ALIGN patterns are being sent. Host to device: COMRESET; device to host: COMINIT

34 NOT TO BE REDISTRIBUTED 34 SATA Power-On Initialization Starts with the assertion of hardware reset Begins Out-Of-Band (OOB) signaling Allows host and device to initialize link communications Ends with successful transmission of ALIGN primitives Then speed negotiations

35 NOT TO BE REDISTRIBUTED 35 Power-On Initialization Process HostDevice

36 NOT TO BE REDISTRIBUTED 36 SATA Power-On Initialization

37 NOT TO BE REDISTRIBUTED 37 Error Situation Example: Host and Device are unable to establish a connection. Continuous transmission errors are seen from both the Host and Device. No COMINITs present. Indicates problem with Device connection

38 NOT TO BE REDISTRIBUTED 38 Primitive Handshaking Sender Receiver X_RDY R_RDY SOF Frame. EOF R_IP R_OK WTRM

39 NOT TO BE REDISTRIBUTED 39 Primitive Handshaking Example: Host sends commands but commands are not completed Trace indicates that Host is not properly handling primitive handshaking and is not receiving frames

40 NOT TO BE REDISTRIBUTED 40 SATA Speed Negotiation Fast to slow progression  SATA target device sends ALIGN primitives at the fastest supported rate  Waits for host to reply with ALIGNs  If no reply after sending 2048 (i.e., the host doesn’t support this speed), step down to next slower speed and try again

41 NOT TO BE REDISTRIBUTED 41 SATA Speed Negotiation When host replies with ALIGNs, it has locked at the current frequency and negotiation is complete Speed Negotiation

42 August 28, 29, 2006 Frames

43 NOT TO BE REDISTRIBUTED 43 Frames and the Transport Layer Frames operate at the Transport Layer Primitives operate at the Link Layer Frames convey variable content. A frame starts with a Start of Frame primitive (SOF). The frame ends with a CRC dword and an End of Frame primitive (EOF). In between the two primitives are dwords that make up the information content

44 NOT TO BE REDISTRIBUTED 44 Frames and the Transport Layer FIS 27 – Used to issue ATA commands to the Device FIS 46 – Used to transmit Data FIS 34 – Used by the Device to indicate command completion status FIS 39 - Used by the device to indicate that it is ready for a DMA transfer FIS 5F – Used by the device to set up a PIO transfer

45 NOT TO BE REDISTRIBUTED 45 Frames Example: Transaction is not completed Trace indicates invalid CRC. R_ERR indicates receiver detected invalid frame.

46 August 28, 29, 2006 From PATA to SATA

47 NOT TO BE REDISTRIBUTED 47 PATA to SATA Task File  In the ATA device  In parallel ATA, accesses to these registers result in parallel ATA traffic In serial ATA, a Shadow Task file register bank is managed by the host (mirrors the ATA device’s task file) Allows accesses to these registers to be grouped into larger, more efficient serial transfers

48 NOT TO BE REDISTRIBUTED 48 PATA to SATA Task file PCI bus Parallel ATA Pass-thru ATA device ATA host Task file PCI bus Serial ATA Shadow task file SATA device SATA host IO Reads/Writes Frame Information Structures

49 August 28, 29, 2006 SATA II

50 NOT TO BE REDISTRIBUTED 50 SATA II Native Command Queuing Port Selector Port Multiplier

51 NOT TO BE REDISTRIBUTED 51 Native Command Queuing For multiple outstanding commands in device Supports reordering of commands (by device! not host) Supports out-of-order data delivery and re-assembly SCSI tagged command queuing Performance of 7200 rpm drive with NCQ is equivalent to that of a standard 10k rpm drive Less wear-and-tear on drives Supported through the FPDMA Read Command and FPDMA Write Command 25% Boost In Performance

52 NOT TO BE REDISTRIBUTED 52 Port Selector SATA typically operates point to point Port selector permits 1 device to communicate with 2 hosts Link Drive Host 1 Host 2

53 NOT TO BE REDISTRIBUTED 53 Port Multiplier SATA typically operates point to point Port multiplier feature permits for one SATA link to connect to many devices Active host with a ratio of 1 host to a maximum of 15 devices – it is acting very much like a hub or repeater Single SATA Link 1 to … 16 SATA drives

54 August 28, 29, 2006 Q&A

55 August 28, 29, 2006 Thank You

Download ppt "August 28, 29, 2006 SATA Protocol Training. NOT TO BE REDISTRIBUTED 2 Agenda SATA Introduction30 minutesSteve SATA Protocol100 minutesEric  Layer Architecture."

Similar presentations

Ads by Google