Author: David Allen
Vitesse Semiconductor
With the advent of new technology often comes new terminology and updated definitions for familiar concepts. Engineering and standards communities strive to precisely define concepts and functions using terminology applicable to the technology. The Serial Attached SCSI (SAS) standards community is no different, and has defined specific terminology for the physical and link layer functions surrounding SAS links. Addressed in this article is a clarification of the definitions and terminology surrounding SAS connections.
A SAS Phy Defined
A phy, as defined in SAS, is a combination of the physical layer, phy layer and link layer functions. A minimum of two phys (one at the initiator, the other at the target) is required to complete a SAS physical connection pathway, as shown in Figure 1.
Figure 1: Phys are Required to Complete a SAS Physical Connection
SAS initiators, expanders and targets contain SAS phys, which provide the low-level communication interface between these devices. Often, multiple phys are connected between endpoints to provide a connection with redundancy. Implementing redundant links between endpoints ensures that there is no single point of failure. There has been some confusion in the industry regarding the term “phy” as referenced by SAS, since it has been used in the past to designate Serializer/Deserializers (SERDES) and transceiver devices. SERDES are primarily used for physical layer connections, and drive differential electrical signals down a twisted-pair wire. For SAS, the term “phy” encompasses additional low-level protocol functions used in creating a SAS connection. Not only is the SERDES included in the SAS phy, but the phy also includes functions like speed negotiation, data encoding and error handling.
SAS silicon product descriptions use the term “phy” to indicate the amount of connectivity provided. Controllers, expanders and hard disk drives use the term “phy” to indicate the number of single connections that can be made between these devices. Common SAS controllers support 4-phy and 8-phy configurations, targeted at different price points. SAS expanders are available in several phy configurations, with the most common being 12-phy, 24-phy and 36-phy devices. Targets, such as SAS hard disk drives, usually incorporate two phys, but are referred to as “dual-port” drives because each phy reports a unique SAS address. This allows for simplified dual/redundant storage architectures.
SAS “Ports” and “Wide Ports”
The term, “SAS port,” is used to designate a single SAS connection between a target and initiator. The SAS standard defines a port layer in the protocol stack that interfaces to both single and multiple SAS phy layers. The term “port” is used to identify a single connection point between devices, while the term “wide port” defines a group of individual phys used as a single connection point between SAS initiators, expanders and/or targets. Exclusive to SAS, a wide port is made up of a group of autonomous redundant phys. Increasing the number of links in a wide port incrementally increases the bandwidth of a SAS connection. Each connection between phys is independent, and if a phy contained within a wide port fails, the SAS connection pathway is still maintained by the remaining phys and only the bandwidth is affected. Common wide ports use two or four links to create the redundant path. Figure 2 shows typical SAS components implementing both ports and wide ports between endpoints.
Figure 2: SAS Components Implementing Ports and Wide Ports Between Endpoints
Other storage technologies actually stripe data over multiple links to increase bandwidth. However, striping data across the wide connection does not provide redundancy, and if a single link goes down the entire connection is compromised. SAS provides the best of both worlds, enabling an easy bandwidth upgrade with redundancy by merely adding additional links between devices.
Conclusion
SAS protocol developers, through their work on phy and port layer definitions, have provided an excellent framework for connecting endpoints with serial links. They’ve taken the next evolutionary step in serial communication by providing end-users with mechanisms for both increasing bandwidth and providing redundancy in the same connection pathway.