Serial ATA

From Infogalactic: the planetary knowledge core
(Redirected from MSATA)
Jump to: navigation, search

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

Lua error in package.lua at line 80: module 'strict' not found.

Serial ATA (SATA)
120px
Year created 2003
Supersedes Parallel ATA (PATA)
Speed 1.5, 3.0, 6.0 and 16 Gbit/s
Style Serial
Hotplugging interface Yes[1]
External interface Optional (eSATA)

Serial ATA (SATA, abbreviated from Serial AT Attachment[2]) is a computer bus interface that connects host bus adapters to mass storage devices such as hard disk drives and optical drives. Serial ATA succeeded the older Parallel ATA (PATA) standard,[lower-alpha 1] offering several advantages over the older interface: reduced cable size and cost (seven conductors instead of 40 or 80), native hot swapping, faster data transfer through higher signaling rates, and more efficient transfer through an (optional) I/O queuing protocol.

SATA host adapters and devices communicate via a high-speed serial cable over two pairs of conductors. In contrast, parallel ATA (the redesignation for the legacy ATA specifications) used a 16-bit wide data bus with many additional support and control signals, all operating at much lower frequency. To ensure backward compatibility with legacy ATA software and applications, SATA uses the same basic ATA and ATAPI command sets as legacy ATA devices.

SATA has replaced parallel ATA in consumer desktop and laptop computers, and has largely replaced PATA in new embedded applications. SATA's market share in the desktop PC market was 99% in 2008.[3] PATA remains widely used in industrial and embedded applications that use CompactFlash (CF) storage, which is designed around the legacy PATA standard, even though the new CFast standard is based on SATA.[4][5]

Serial ATA industry compatibility specifications originate from the Serial ATA International Organization (SATA-IO). The SATA-IO group collaboratively creates, reviews, ratifies, and publishes the interoperability specifications, the test cases and plugfests. As with many other industry compatibility standards, the SATA content ownership is transferred to other industry bodies: primarily the INCITS T13 subcommittee ATA, the INCITS T10 subcommittee (SCSI), a subgroup of T10 responsible for Serial Attached SCSI (SAS). The remainder of this article will try to use the terminology and specifications of SATA-IO.

Features

SATA 6 Gbit/s controller, a PCI Express ×1 card with Marvell chipset

Hotplug

The Serial ATA Spec includes logic for SATA device hotplugging. Devices and motherboards that meet the interoperability specification are capable of hot plugging.

Advanced Host Controller Interface

Advanced Host Controller Interface (AHCI) is an open host controller interface published and used by Intel, which has become a de facto standard. It allows the use of advanced features of SATA such as hotplug and native command queuing (NCQ). If AHCI is not enabled by the motherboard and chipset, SATA controllers typically operate in "IDE[lower-alpha 2] emulation" mode, which does not allow access to device features not supported by the ATA (also called IDE) standard.

Windows device drivers that are labeled as SATA are often running in IDE emulation mode unless they explicitly state that they are AHCI mode, in RAID mode, or a mode provided by a proprietary driver and command set that allowed access to SATA's advanced features before AHCI became popular. Modern versions of Microsoft Windows, Mac OS X, FreeBSD, Linux with version 2.6.19 onward,[6] as well as Solaris and OpenSolaris, include support for AHCI, but older operating systems such as Windows XP do not. Even in those instances, a proprietary driver may have been created for a specific chipset, such as Intel's.[7]

Revisions

SATA revision 1.0 (1.5 Gbit/s, 150 MB/s)

Revision 1.0a was released on January 7, 2003. First-generation SATA interfaces, now known as SATA 1.5 Gbit/s, communicate at a rate of 1.5 Gbit/s, and do not support Native Command Queuing (NCQ). Taking 8b/10b encoding overhead into account, they have an actual uncoded transfer rate of 1.2 Gbit/s (150 MB/s). The theoretical burst throughput of SATA 1.5 Gbit/s is similar to that of PATA/133, but newer SATA devices offer enhancements such as NCQ, which improve performance in a multitasking environment.

During the initial period after SATA 1.5 Gbit/s finalization, adapter and drive manufacturers used a "bridge chip" to convert existing PATA designs for use with the SATA interface. Bridged drives have a SATA connector, may include either or both kinds of power connectors, and, in general, perform identically to their native-SATA equivalents.[8] However, most bridged drives lack support for some SATA-specific features such as NCQ. Native SATA products quickly took over the bridged products with the introduction of the second generation of SATA drives.[citation needed]

As of April 2010, the fastest 10,000 rpm SATA hard disk drives could transfer data at maximum (not average) rates of up to 157 MB/s,[9] which is beyond the capabilities of the older PATA/133 specification and also exceeds the capabilities of SATA 1.5 Gbit/s.

SATA revision 2.0 (3 Gbit/s, 300 MB/s)

SATA revision 2.0 was released in April 2004, introducing Native Command Queuing (NCQ). It is backward compatible with SATA 1.5 Gbit/s.[10]

Second-generation SATA interfaces run with a native transfer rate of 3.0 Gbit/s that, when accounted for the 8b/10b encoding scheme, equals to the maximum uncoded transfer rate of 2.4 Gbit/s (300 MB/s). The theoretical burst throughput of the SATA revision 2.0, which is also known as the SATA 3 Gbit/s, doubles the throughput of SATA revision 1.0.

All SATA data cables meeting the SATA spec are rated for 3.0 Gbit/s and handle modern mechanical drives without any loss of sustained and burst data transfer performance. However, high-performance flash-based drives can exceed the SATA 3 Gbit/s transfer rate; this is addressed with the SATA 6 Gbit/s interoperability standard.

SATA revision 3.0 (6 Gbit/s, 600 MB/s)

Serial ATA International Organization (SATA-IO) presented the draft specification of SATA 6 Gbit/s physical layer in July 2008,[11] and ratified its physical layer specification on August 18, 2008.[12] The full 3.0 standard was released on May 27, 2009.[13]

Third-generation SATA interfaces run with a native transfer rate of 6.0 Gbit/s; taking 8b/10b encoding into account, the maximum uncoded transfer rate is 4.8 Gbit/s (600 MB/s). The theoretical burst throughput of SATA 6.0 Gbit/s is double that of SATA revision 2.0. It is backward compatible with SATA 3 Gbit/s.[10]

The SATA 3.0 specification contains the following changes:

  • 6 Gbit/s for scalable performance.
  • Continued compatibility with SAS, including SAS 6 Gbit/s. "A SAS domain may support attachment to and control of unmodified SATA devices connected directly into the SAS domain using the Serial ATA Tunneled Protocol (STP)" from the SATA Revision 3.0 Gold specification.
  • Isochronous Native Command Queuing (NCQ) streaming command to enable isochronous quality of service data transfers for streaming digital content applications.
  • An NCQ Management feature that helps optimize performance by enabling host processing and management of outstanding NCQ commands.
  • Improved power management capabilities.
  • A small low insertion force (LIF) connector for more compact 1.8-inch storage devices.
  • A 7 mm optical disk drive profile for the slimline SATA connector (in addition to the existing 12.7 mm and 9.5 mm profiles).
  • Alignment with the INCITS ATA8-ACS standard.

In general, the enhancements are aimed at improving quality of service for video streaming and high-priority interrupts. In addition, the standard continues to support distances up to one meter. The newer speeds may require higher power consumption for supporting chips, though improved process technologies and power management techniques may mitigate this. The later specification can use existing SATA cables and connectors, though it was reported in 2008 that some OEMs were expected to upgrade host connectors for the higher speeds.[14]

SATA revision 3.1

Released in July 2011, SATA revision 3.1 introduced or changed the following features:[15][16]

  • mSATA, SATA for solid-state drives in mobile computing devices, a PCI Express Mini Card-like connector that is electrically SATA.[17]
  • Zero-power optical disk drive, idle SATA optical drive draws no power.
  • Queued TRIM Command, improves solid-state drive performance.
  • Required Link Power Management, reduces overall system power demand of several SATA devices.
  • Hardware Control Features, enable host identification of device capabilities.
  • Universal Storage Module (USM), a new standard for cableless plug-in (slot) powered storage for consumer electronics devices.[18][19]

SATA revision 3.2 (16 Gbit/s, 1969 MB/s)

Released in August 2013, SATA revision 3.2 introduced the following features:[20]

  • SATA Express specification defines an interface that combines both SATA and PCI Express buses, making it possible for legacy SATA and PCI Express storage devices to coexist; see the SATA Express section below for a more detailed summary.[21][22]
  • SATA M.2 standard is a small form factor implementation of the SATA Express interface, with the addition of an internal USB 3.0 port; see the M.2 (NGFF) section below for a more detailed summary.[23]
  • microSSD introduces a ball grid array electrical interface for miniaturized, embedded SATA storage.[24]
  • USM Slim reduces thickness of Universal Storage Module (USM) from 14.5 millimetres (0.57 inches) to 9 millimetres (0.35 inches).[25]
  • DevSleep enables lower power consumption for always-on devices while they are in low-power modes such as InstantGo (which is formerly known as Connected Standby).[26]
  • Hybrid Information allows higher performance for solid-state hybrid drives.[27][28]

Cables, connectors, and ports

2.5-inch SATA drive on top of a 3.5-inch SATA drive, close-up of data and power connectors

Connectors and cables present the most visible differences between SATA and parallel ATA drives. Unlike PATA, the same connectors are used on 3.5-inch (89 mm) SATA hard disks (for desktop and server computers) and 2.5-inch (64 mm) disks (for portable or small computers).[29]

Standard SATA connectors for both data and power have a conductor pitch of 1.27 mm (0.050 inches). Low insertion force is required to mate a SATA connector. A smaller mini-SATA or mSATA connector is used by smaller devices such as 1.8-inch SATA drives, some DVD and Blu-ray drives, and mini SSDs.[30]

A special eSATA connector is specified for external devices, and an optionally implemented provision for clips to hold internal connectors firmly in place. SATA drives may be plugged into SAS controllers and communicate on the same physical cable as native SAS disks, but SATA controllers cannot handle SAS disks.

Female SATA ports (on motherboards for example) are for use with SATA data cables that have locks or clips to prevent accidental unplugging. Some SATA cables have right- or left-angled connectors to ease connection to circuit boards.

Data connector

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

Standard connector, data segment[31]
Pin # Mating Function
1 1st Ground
2 2nd A+ (transmit)
3 2nd A− (transmit)
4 1st Ground
5 2nd B− (receive)
6 2nd B+ (receive)
7 1st Ground
 — Coding notch

The SATA standard defines a data cable with seven conductors (3 grounds and 4 active data lines in two pairs) and 8 mm wide wafer connectors on each end. SATA cables can have lengths up to 1 metre (3.3 ft), and connect one motherboard socket to one hard drive. PATA ribbon cables, in comparison, connect one motherboard socket to one or two hard drives, carry either 40 or 80 wires, and are limited to 45 centimetres (18 in) in length by the PATA specification; however, cables up to 90 centimetres (35 in) are readily available. Thus, SATA connectors and cables are easier to fit in closed spaces, and reduce obstructions to air cooling. Although they are more susceptible to accidental unplugging and breakage than PATA, users can purchase cables that have a locking feature, whereby a small (usually metal) spring holds the plug in the socket.

SATA connectors may be straight, right-angled, or left angled. Angled connectors allow lower profile connections. Right-angled (also called 90 degree) connectors lead the cable immediately away from the drive, on the circuit board side. Left-angled (also called 270 degree) connectors lead the cable across the drive towards its top.

One of the problems associated with the transmission of data at high speed over electrical connections is described as noise, which is due to electrical coupling between data circuits and other circuits. As a result, the data circuits can both affect other circuits, and be affected by them. Designers use a number of techniques to reduce the undesirable effects of such unintentional coupling. One such technique used in SATA links is differential signaling. This is an enhancement over PATA, which uses single-ended signaling. The use of fully shielded twin-ax conductors, with multiple ground connections, for each differential pair improves isolation between the channels and reduces the chances of lost data in difficult electrical environments.

Power connectors

Standard connector

Standard connector, power segment
Pin # Mating Function
 — Coding notch
1 3rd 3.3 V
2 3rd
3 2nd
4 1st Ground
5 2nd
6 2nd
7 2nd 5 V
8 3rd
9 3rd
10 2nd Ground
11 3rd Staggered spinup/activity
(in supporting drives)
12 1st Ground
13 2nd 12 V
14 3rd
15 3rd
A 15-pin SATA power connector; this particular connector is missing the 3.3 V (orange) wire.

SATA specifies a different power connector than the decades-old four-pin Molex connector used on Parallel ATA (PATA) devices. It is a wafer-type connector, like the SATA data connector, but much wider (15 pins versus seven) to avoid confusion between the two. Some early SATA drives included the old 4-pin Molex power connector together with the new 15-pin connector, but most SATA drives now have only the latter.

The new SATA power connector contains many more pins for several reasons:[32]

  • 3.3 V is supplied along with the traditional 5 V and 12 V supplies. However, very few drives actually use it, so they may be powered from an old 4-pin Molex connector with an adapter.
  • To reduce impedance and increase current capability, each voltage is supplied by three pins in parallel, though one pin in each group is intended for precharging (see below). Each pin should be able to carry 1.5 A.
  • Five parallel pins provide a low-impedance ground connection.
  • Two ground pins, and one pin for each supplied voltage, support hot-plug precharging. Ground pins 4 and 12 in a hot-swap cable are the longest, so they make contact first when the connectors are mated. Drive power connector pins 3, 7, and 13 are longer than the others, so they make contact next. The drive uses them to charge its internal bypass capacitors through current-limiting resistances. Finally, the remaining power pins make contact, bypassing the resistances and providing a low-impedance source of each voltage. This two-step mating process avoids glitches to other loads and possible arcing or erosion of the SATA power connector contacts.
  • Pin 11 can function for staggered spinup, activity indication, both, or nothing. It is an open collector signal, that may be pulled down by the connector or the drive. If pulled down at the connector (as it is on most cable-style SATA power connectors), the drive spins up as soon as power is applied. If left floating, the drive waits until it is spoken to. This prevents many drives from spinning up simultaneously, which might draw too much power. The pin is also pulled low by the drive to indicate drive activity. This may be used to give feedback to the user through an LED.

Passive adapters are available that convert a 4-pin Molex connector to a SATA power connector, providing the 5 V and 12 V lines available on the Molex connector, but not 3.3 V. There are also 4-pin-Molex-to-SATA power adapters which include electronics to provide 3.3 V power additionally.[33] However, most drives do not require the 3.3 V power line.[34]

Slimline connector

Slimline connector, power segment
Pin # Mating Function
 — Coding notch
1 3rd Device presence
2 2nd 5 V
3 2nd
4 2nd Manufacturing diagnostic
5 1st Ground
6 1st

SATA 2.6 is the first revision that defined the slimline connector, intended for smaller form-factors such as notebook optical drives. Pin #1 of the slimline signal connector, denoting device presence, is shorter than the others to allow hot-swapping. The slimline signal connector is identical and compatible with the standard version, while the power connector is reduced to six pins so it supplies only +5 V, and not +12 V or +3.3 V.[35]

Low-cost adapters exist to convert between standard SATA to slimline SATA.

Micro connector

Micro connector, power segment
Pin # Mating Function
1 3rd 3.3 V
2 2nd
3 1st Ground
4 1st
5 2nd 5 V
6 3rd
7 3rd Reserved
 — Coding notch
8 3rd Vendor specific
9 2nd
A 1.8" (46 mm) micro SATA hard drive with numbered data and power pins on the connector.

The micro connector (sometimes uSATA or μSATA[36]), originated with SATA 2.6. It is intended for 1.8-inch (46 mm) hard drives. There is also a micro data connector, similar in appearance to but slightly thinner than the standard data connector.

eSATA

The official eSATA logo
SATA (left) and eSATA (right) connectors
eSATA ports

Standardized in 2004, eSATA (e standing for external) provides a variant of SATA meant for external connectivity. It uses a more robust connector, longer shielded cables, and stricter (but backward-compatible) electrical standards. The protocol and logical signaling (link/transport layers and above) are identical to internal SATA. The differences are:

  • Minimum transmit amplitude increased: Range is 500–600 mV instead of 400–600 mV.
  • Minimum receive amplitude decreased: Range is 240–600 mV instead of 325–600 mV.
  • Maximum cable length increased to 2 metres (6.6 ft) (USB and FireWire allow longer distances.)
  • The eSATA cable and connector is similar to the SATA 1.0a cable and connector, with these exceptions:
    • The eSATA connector is mechanically different to prevent unshielded internal cables from being used externally. The eSATA connector discards the "L"-shaped key and changes the position and size of the guides.
    • The eSATA insertion depth is deeper: 6.6 mm instead of 5 mm. The contact positions are also changed.
    • The eSATA cable has an extra shield to reduce EMI to FCC and CE requirements. Internal cables do not need the extra shield to satisfy EMI requirements because they are inside a shielded case.
    • The eSATA connector uses metal springs for shield contact and mechanical retention.
    • The eSATA connector has a design-life of 5,000 matings; the ordinary SATA connector is only specified for 50.

Aimed at the consumer market, eSATA enters an external storage market served also by the USB and FireWire interfaces. The SATA interface has certain advantages. Most external hard-disk-drive cases with FireWire or USB interfaces use either PATA or SATA drives and "bridges" to translate between the drives' interfaces and the enclosures' external ports; this bridging incurs some inefficiency. Some single disks can transfer 157 MB/s during real use,[9] about four times the maximum transfer rate of USB 2.0 or FireWire 400 (IEEE 1394a) and almost twice as fast as the maximum transfer rate of FireWire 800. The S3200 FireWire 1394b spec reaches ~400 MB/s (3.2 Gbit/s), and USB 3.0 has a nominal speed of 5 Gbit/s. Some low-level drive features, such as S.M.A.R.T., may not operate through some USB [37] or FireWire or USB+FireWire bridges; eSATA does not suffer from these issues provided that the controller manufacturer (and its drivers) presents eSATA drives as ATA devices, rather than as "SCSI" devices, as has been common with Silicon Image, JMicron, and NVIDIA nForce drivers for Windows Vista. In those cases SATA drives do not have low-level features accessible.

The eSATA version of SATA 6G operates at 6.0 Gbit/s (the term SATA III is being avoided by the SATA-IO organization to prevent confusion with SATA II 3.0 Gbit/s, which was colloquially referred to as "SATA 3G" [bps] or "SATA 300" [MB/s] since 1.5 Gbit/s SATA I and 1.5 Gbit/s SATA II were referred to as both "SATA 1.5G" [b/s] or "SATA 150" [MB/s]).

Therefore, eSATA connections operate with negligible differences between them.[38] Once an interface can transfer data as fast as a drive can handle them, increasing the interface speed does not improve data transfer. Most newer computers, including netbooks/laptops, have external SATA (eSATA) connectors, in addition to USB 2.0 and sometimes USB 3.0 ports, though relatively few have built-in FireWire ports.

There are some disadvantages, however, to the eSATA interface:

  • Devices built before the eSATA interface became popular lack external SATA connectors.
  • For small form-factor devices (such as external 2.5-inch (64 mm) disks), a PC-hosted USB or FireWire link can usually supply sufficient power to operate the device. However, eSATA connectors cannot supply power, and require a power supply for the external device. The related eSATAp (but mechanically incompatible, sometimes called eSATA/USB) connector adds power to an external SATA connection, so that an additional power supply is not needed.[39]

Desktop computers without a built-in eSATA interface can install an eSATA host bus adapter (HBA); if the motherboard supports SATA, an externally available eSATA connector can be added. Notebook computers can be upgraded with Cardbus[40] or ExpressCard[41] versions of an eSATA HBA. With passive adapters, the maximum cable length is reduced to 1 metre (3.3 ft) due to the absence of compliant eSATA signal-levels.

eSATAp

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

eSATAp stands for powered eSATA. It is also known as Power over eSATA, Power eSATA, eSATA/USB Combo, or eSATA USB Hybrid Port (EUHP). An eSATAp port combines the 4 pins of the USB 2.0 (or earlier) port, the 7 pins of the eSATA port, and optionally two 12-volt power pins.[42] Both SATA traffic and device power are integrated in a single cable, as is the case with USB but not eSATA. Power at 5 volts is provided through two USB pins; power at 12 Volts may optionally be provided. Typically desktop, but not notebook, computers provide 12 volt power, so can power devices requiring this voltage, typically 3.5" disk and CD/DVD drives, in addition to 5 volt devices such as 2.5" drives.

Both USB and eSATA devices can be used with an eSATAp port, when plugged in with a USB or eSATA cable, respectively. An eSATA device cannot be powered via an eSATAp cable, but cables are available which make available both SATA or eSATA and power connectors from an eSATAp port.

An eSATAp connector can be built into a computer with internal SATA and USB, by fitting a bracket with connections for internal SATA, USB, and power connectors and an externally accessible eSATAp port. Though eSATAp connectors have been built into several devices, manufacturers do not refer to an official standard.

Pre-standard implementations

  • Prior to the final eSATA 3 Gbit/s specification, a number of products were designed for external connection of SATA drives. Some of these use the internal SATA connector, or even connectors designed for other interface specifications, such as FireWire. These products are not eSATA compliant. The final eSATA specification features a specific connector designed for rough handling, similar to the regular SATA connector, but with reinforcements in both the male and female sides, inspired by the USB connector. eSATA resists inadvertent unplugging, and can withstand yanking or wiggling, which could break a male SATA connector (the hard-drive or host adapter, usually fitted inside the computer). With an eSATA connector, considerably more force is needed to damage the connector—and if it does break, it is likely to be the female side, on the cable itself,[citation needed] which is relatively easy to replace.
  • Prior to the final eSATA 6 Gbit/s specification many add-on cards and some motherboards advertised eSATA 6 Gbit/s support because they had 6 Gbit/s SATA 3.0 controllers for internal-only solutions. Those implementations are non-standard, and eSATA 6 Gbit/s requirements were ratified in the July 18, 2011 SATA 3.1 specification.[43] Some products might not be fully eSATA 6 Gbit/s compliant.

Mini-SATA (mSATA)

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

An mSATA SSD on top of a 2.5-inch SATA drive

Mini-SATA (abbreviated as mSATA), which is distinct from the micro connector,[36] was announced by the Serial ATA International Organization on September 21, 2009.[44] Applications include netbooks, laptops and other devices that require a solid-state drive in a small footprint.

The connector is similar in appearance to a PCI Express Mini Card interface,[45] but is not electrically compatible; the data signals (TX±/RX± SATA, PETn0 PETp0 PERn0 PERp0 PCI Express) need a connection to the SATA host controller instead of the PCI Express host controller.

SFF-8784 connector

SFF-8784 pin assignments[46]
Bottom Top
Pin Function Pin Function Pin Function Pin Function
1 Ground 6 Unused 11 Ground 16 +5 V
2 Ground 7 +5 V 12 B+ (transmit) 17 Ground
3 Ground 8 Unused 13 B− (transmit) 18 A− (receive)
4 Ground[lower-alpha 3] 9 Unused 14 Ground 19 A+ (receive)
5 LED 10 Ground 15 +5 V 20 Ground

Slim 2.5-inch SATA devices, 5 mm (0.20 inches) in height, use the 20-pin SFF-8784 edge connector to save space. By combining the data signals and power lines into a slim connector that effectively enables direct connection to the device's printed circuit board (PCB) without additional space-consuming connectors, SFF-8784 allows further internal layout compaction for portable devices such as ultrabooks.[46]

Pins 1 to 10 are on the connector's bottom side, while pins 11 to 20 are on the top side.[46]

SATA Express

Two SATA Express connectors (light gray) on a computer motherboard; to the right of them are common SATA connectors (dark gray)

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

SATA Express, initially standardized in the SATA 3.2 specification,[47] is an interface that supports either SATA or PCI Express storage devices. The host connector is backward compatible with the standard 3.5-inch SATA data connector, allowing up to two legacy SATA devices to be connected.[48] At the same time, the host connector provides up to two PCI Express 3.0 lanes as a pure PCI Express connection to the storage device, allowing bandwidths of up to 2 GB/s.[20][49]

Instead of the otherwise usual approach of doubling the native speed of the SATA interface, PCI Express was selected for achieving data transfer speeds greater than 6 Gbit/s. It was concluded that doubling the native SATA speed would take too much time, too many changes would be required to the SATA standard, and would result in a much greater power consumption when compared to the existing PCI Express bus.[50]

In addition to supporting legacy Advanced Host Controller Interface (AHCI), SATA Express also makes it possible for Non-Volatile Memory Express (NVMe) to be used as the logical device interface for connected PCI Express storage devices.[51]

M.2 (Next Generation Form Factor; NGFF)

Size comparison of mSATA (left) and M.2 (size 2242, right) SSDs

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

M.2, formerly known as the Next Generation Form Factor (NGFF), is a specification for computer expansion cards and associated connectors. It is intended to replace mSATA, which uses the PCI Express Mini Card physical layout. Having a smaller and more flexible physical specification, together with more advanced features, the M.2 is more suitable for solid-state storage applications in general, especially when used in small devices like ultrabooks or tablets.[52]

The M.2 standard is designed as a revision and improvement to the mSATA standard, allowing for larger printed circuit boards (PCBs) to be manufactured. While mSATA took advantage of the existing PCI Express Mini Card form factor and connector, M.2 has been designed to maximize usage of the card space, while minimizing the footprint.[52][53][54]

Supported host controller interfaces and internally provided ports are a superset to those defined by the SATA Express interface. Essentially, the M.2 standard is a small form factor implementation of the SATA Express interface, with the addition of an internal USB 3.0 port.[52]

Protocol

The SATA specification defines three distinct protocol layers: physical, link, and transport.

Physical layer

The physical layer defines SATA's electrical and physical characteristics (such as cable dimensions and parasitics, driver voltage level and receiver operating range), as well as the physical coding subsystem (bit-level encoding, device detection on the wire, and link initialization).

Physical transmission uses differential signaling. The SATA PHY contains a transmit pair and receive pair. When the SATA-link is not in use (example: no device attached), the transmitter allows the transmit pins to float to their common-mode voltage level. When the SATA-link is either active or in the link-initialization phase, the transmitter drives the transmit pins at the specified differential voltage (1.5 V in SATA/I).

SATA physical coding uses a line encoding system known as 8b/10b encoding. This scheme serves multiple functions required to sustain a differential serial link. First, the stream contains necessary synchronization information that allows the SATA host/drive to extract clocking. The 8b/10b encoded sequence embeds periodic edge transitions to allow the receiver to achieve bit-alignment without the use of a separately transmitted reference clock waveform. The sequence also maintains a neutral (DC-balanced) bitstream, which allows the transmit drivers and receiver inputs to be AC-coupled. Generally, the actual SATA signalling is half-duplex, meaning that it can only read or write data at any one time.

Also, SATA uses some of the special characters defined in 8b/10b. In particular, the PHY layer uses the comma (K28.5) character to maintain symbol-alignment. A specific 4-symbol sequence, the ALIGN primitive, is used for clock rate-matching between the two devices on the link. Other special symbols communicate flow control information produced and consumed in the higher layers (link and transport).

Separate point-to-point AC-coupled low voltage differential signaling (LVDS) links are used for physical transmission between host and drive.

The PHY layer is responsible for detecting the other SATA/device on a cable, and link initialization. During the link-initialization process, the PHY is responsible for locally generating special out-of-band signals by switching the transmitter between electrical-idle and specific 10b-characters in a defined pattern, negotiating a mutually supported signalling rate (1.5, 3.0, or 6.0 Gbit/s), and finally synchronizing to the far-end device's PHY-layer data stream. During this time, no data is sent from the link-layer.

Once link-initialization has completed, the link-layer takes over data-transmission, with the PHY providing only the 8b/10b conversion before bit transmission.

Link layer

After the PHY-layer has established a link, the link layer is responsible for transmission and reception of Frame Information Structures (FISs) over the SATA link. FISs are packets containing control information or payload data. Each packet contains a header (identifying its type), and payload whose contents are dependent on the type. The link layer also manages flow control over the link.

Transport layer

Layer number three in the serial ATA specification is the transport layer. This layer has the responsibility of acting on the frames and transmitting/receiving the frames in an appropriate sequence. The transport layer handles the assembly and disassembly of FIS structures, which includes, for example, extracting content from register FISs into the task-file and informing the command layer. In an abstract fashion, the transport layer is responsible for creating and encoding FIS structures requested by the command layer, and removing those structures when the frames are received.

When DMA data is to be transmitted and is received from the higher command layer, the transport layer appends the FIS control header to the payload, and informs the link layer to prepare for transmission. The same procedure is performed when data is received, but in reverse order. The link layer signals to the transport layer that there is incoming data available. Once the data is processed by the link layer, the transport layer inspects the FIS header and removes it before forwarding the data to the command layer.

Topology

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

SATA topology: host (H), multiplier (M), and device (D).

SATA uses a point-to-point architecture. The physical connection between a controller and a storage device is not shared among other controllers and storage devices. SATA defines multipliers, which allows a single SATA controller port to drive up to 15 storage devices. The multiplier performs the function of a hub; the controller and each storage device is connected to the hub.[55] This is conceptually similar to SAS expanders.

Modern PC systems have SATA controllers built into the motherboard, typically featuring 2 to 8 ports. Additional ports can be installed through add-in SATA host adapters (available in variety of bus-interfaces: USB, PCI, PCIe).

Backward and forward compatibility

SATA and PATA

At the device level, SATA and PATA (Parallel AT Attachment) devices remain completely incompatible—they cannot be interconnected. At the application level, SATA devices can be specified to look and act like PATA devices.[56] Many motherboards offer a "legacy mode" option, which makes SATA drives appear to the OS like PATA drives on a standard controller. This eases OS installation by not requiring a specific driver to be loaded during setup but sacrifices support for some features of SATA and, in general, disables some of the boards' PATA or SATA ports, since the standard PATA controller interface supports only four drives. (Often, which ports are disabled is configurable.)

The common heritage of the ATA command set has enabled the proliferation of low-cost PATA to SATA bridge-chips. Bridge-chips were widely used on PATA drives (before the completion of native SATA drives) as well as standalone "dongles."[57] When attached to a PATA drive, a device-side dongle allows the PATA drive to function as a SATA drive. Host-side dongles allow a motherboard PATA port to function as a SATA host port.

The market has produced powered enclosures for both PATA and SATA drives that interface to the PC through USB, Firewire or eSATA, with the restrictions noted above. PCI cards with a SATA connector exist that allow SATA drives to connect to legacy systems without SATA connectors.

SATA 1.5 Gbit/s and SATA 3 Gbit/s

The designers of SATA aimed for backward and forward compatibility with future revisions of the SATA standard.[citation needed] To prevent interoperability problems that could occur when next generation SATA drives are installed on motherboards with standard legacy SATA 1.5 Gbit/s host controllers, many manufacturers have made it easy to switch those newer drives to the previous standard's mode. For example, Seagate/Maxtor has added a user-accessible jumper-switch, known as the "force 150", to enable the drive switch between forced 1.5 Gbit/s and 1.5/3 Gbit/s negotiated operation. Western Digital uses a jumper setting called "OPT1 enabled" to force 1.5 Gbit/s data transfer speed (OPT1 is enabled by putting the jumper on pins 5 and 6). Samsung drives can be forced to 1.5 Gbit/s mode using software that may be downloaded from the manufacturer's website. Configuring some Samsung drives in this manner requires the temporary use of a SATA-2 (SATA 3.0 Gbit/s) controller while programming the drive.

The "force 150" switch (or equivalent) is also useful for attaching SATA 3 Gbit/s hard drives to SATA controllers on PCI cards, since many of these controllers (such as the Silicon Image chips) run at 3 Gbit/s, even though the PCI bus cannot reach 1.5 Gbit/s speeds. This can cause data corruption in operating systems that do not specifically test for this condition and limit the disk transfer speed.[citation needed]

SATA 3 Gbit/s and SATA 6 Gbit/s

Lua error in package.lua at line 80: module 'strict' not found. SATA 3 Gbit/s and SATA 6 Gbit/s are compatible with each other. Most devices which are only SATA 3 Gbit/s can connect with devices that are SATA 6 Gbit/s, and vice versa, though SATA 3 Gbit/s devices only connect with SATA 6 Gbit/s devices at the slower 3 Gbit/s speed.

SATA 1.5 Gbit/s and SATA 6 Gbit/s

Lua error in package.lua at line 80: module 'strict' not found. SATA 1.5 Gbit/s and SATA 6 Gbit/s are compatible with each other. Most devices which are only SATA 1.5 Gbit/s can connect with devices that are SATA 6 Gbit/s, and vice versa, though SATA 1.5 Gbit/s devices only connect with SATA 6 Gbit/s devices at the slower 1.5 Gbit/s speed.

Comparison to other interfaces

SATA and SCSI

Parallel SCSI uses a more complex bus than SATA, usually resulting in higher manufacturing costs. SCSI buses also allow connection of several drives on one shared channel, whereas SATA allows one drive per channel, unless using a port multiplier. Serial Attached SCSI uses the same physical interconnects as SATA, and most SAS HBAs also support SATA devices.

SATA 3 Gbit/s theoretically offers a maximum bandwidth of 300 MB/s per device which is only slightly lower than the rated speed for SCSI Ultra 320 with a maximum of 320 MB/s in total for all devices on a bus.[58] SCSI drives provide greater sustained throughput than multiple SATA drives connected via a simple (i.e. command-based) port multiplier because of disconnect-reconnect and aggregating performance.[59] In general, SATA devices link compatibly to SAS enclosures and adapters, whereas SCSI devices cannot be directly connected to a SATA bus.

SCSI, SAS, and fibre-channel (FC) drives are more expensive than SATA, so they are used in servers and disk arrays where the better performance justifies the additional cost. Inexpensive ATA and SATA drives evolved in the home-computer market, hence there is a view that they are less reliable. As those two worlds overlapped, the subject of reliability became somewhat controversial. Note that, in general, the failure rate of a disk drive is related to the quality of its heads, platters and supporting manufacturing processes, not to its interface.

Use of serial ATA in the business market increased from 22% in 2006 to 28% in 2008.

Comparison with other buses

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

Name Raw bandwidth Transfer speed Max. cable length Power provided Devices per channel
eSATA 6 Gbit/s 600 MB/s 2 m with eSATA HBA (1 m with a passive adapter) No 1 (15 with a port multiplier)
eSATAp 3 Gbit/s 300 MB/s 2 m with eSATA HBA (1 m with a passive adapter) 5 V; optionally 12 V[60] 1 (15 with a port multiplier)
SATA revision 3.2 16 Gbit/s 1.97 GB/s[lower-alpha 4] 1 m No 1 (15 with a port multiplier)
SATA revision 3.0 6 Gbit/s 600 MB/s[61] 1 m No 1 (15 with a port multiplier)
SATA revision 2.0 3 Gbit/s 300 MB/s 1 m No 1 (15 with a port multiplier)
SATA revision 1.0 1.5 Gbit/s 150 MB/s[62] 1 m No 1
PATA (IDE) 133 1.064 Gbit/s 133.3 MB/s[lower-alpha 5] 0.46 m (18 in) 5 V (2.5-inch drive 44-pin connector only) 2
SAS-3 12 Gbit/s 1.2 GB/s 10 m No 1–8 (> 65k with expanders)
SAS-2 6 Gbit/s 600 MB/s 10 m No 1 (> 65k with expanders)
SAS 300 3 Gbit/s 300 MB/s 10 m No 1 (> 65k with expanders)
SAS 150 1.5 Gbit/s 150 MB/s 10 m No 1 (> 65k with expanders)
IEEE 1394 (FireWire) 3200 3.144 Gbit/s 393 MB/s 100 m (more with special cables) 15 W, 12–25 V 63 (with a hub)
IEEE 1394 (FireWire) 800 786 Mbit/s 98.25 MB/s 100 m[63] 15 W, 12–25 V 63 (with a hub)
IEEE 1394 (FireWire) 400 393 Mbit/s 49.13 MB/s 4.5 m[63][64] 15 W, 12–25 V 63 (with a hub)
USB 3.1 10 Gbit/s 1.21 GB/s[lower-alpha 6] 3 m 100 W, 5, 12 or 20 V[65] 127 (with a hub)
USB 3.0[lower-alpha 7] 5 Gbit/s 400 MB/s or more (excl. protocol
overhead, flow control, framing)[66]
3 m[67] 4.5 W, 5 V 127 (with a hub)[67]
USB 2.0 480 Mbit/s 35 MB/s 5 m[68] 2.5 W, 5 V 127 (with a hub)[67]
USB 1.1 12 Mbit/s 1.5 MB/s 3 m Yes 127 (with a hub)[67]
SCSI Ultra-320 2.56 Gbit/s 320 MB/s 12 m No 15 incl. the host bus adapter/host
10GFC Fibre Channel 10.52 Gbit/s 1.195 GB/s 2 m – 50 km No 126 (16,777,216 with switches)
4GFC Fibre Channel 4.25 Gbit/s 398 MB/s 12 m No 126 (16,777,216 with switches)
InfiniBand
Quad Rate
10 Gbit/s 0.98 GB/s <templatestyles src="Plainlist/styles.css"/>
  • 5 m (copper)[69][70]
  • <10 km (fiber)
No 1 with point-to-point,
many with switched fabric
Thunderbolt 10 Gbit/s 1.22 GB/s 3 m (copper)
100 m (fiber)
10 W (copper only) 7
Thunderbolt 2 20 Gbit/s 2.44 GB/s 3 m (copper)
100 m (fiber)
10 W (copper only) 7
Thunderbolt 3 40 Gbit/s 4.88 GB/s 3 m (copper)
100 m (fiber)
100 W (copper only) 7

Unlike PATA, both SATA and eSATA support hot-swapping by design. However, this feature requires proper support at the host, device (drive), and operating-system levels. In general, all SATA devices (drives) support hot-swapping (due to the requirements on the device-side), also most SATA host adapters support this command.[1]

SCSI-3 devices with SCA-2 connectors are designed for hot-swapping. Many server and RAID systems provide hardware support for transparent hot-swapping. The designers of the SCSI standard prior to SCA-2 connectors did not target hot-swapping, but, in practice, most RAID implementations support hot-swapping of hard disks.

See also

<templatestyles src="Div col/styles.css"/>

Notes

  1. AT Attachment (ATA) interface was initially developed as Integrated Drive Electronics (IDE) for use in early PC AT equipment. With the introduction of SATA, the AT Attachment interface was renamed to Parallel ATA (PATA).
  2. Integrated Drive Electronics
  3. Drive present
  4. 16 Gbit/s raw bit rate, with 128b/130b encoding.
  5. 15 ns cycles, 16-bit transfers.
  6. 10 Gbit/s raw bit rate, with 128b/132b encoding.
  7. USB 3.0 specification was released to hardware vendors on 17 November 2008.

References

  1. 1.0 1.1 Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Intel® Matrix Storage Technology - Unattended Installation Instructions Under Windows* XP
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. 9.0 9.1 Lua error in package.lua at line 80: module 'strict' not found.
  10. 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. 20.0 20.1 Lua error in package.lua at line 80: module 'strict' not found.
  21. Enabling Higher Speed Storage Applications with SATA Express, Serial ATA International Organization.
  22. SATA-IO announces 16Gb/s SATA 3.2 specification
  23. Lua error in package.lua at line 80: module 'strict' not found.
  24. SATA µSSD, Serial ATA International Organization.
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. Lua error in package.lua at line 80: module 'strict' not found.
  27. Lua error in package.lua at line 80: module 'strict' not found.
  28. First specifications leaked from SATA-IO, Serial ATA International Organization, GuruHT.com
  29. Lua error in package.lua at line 80: module 'strict' not found.
  30. Lua error in package.lua at line 80: module 'strict' not found.
  31. Lua error in package.lua at line 80: module 'strict' not found.
  32. Lua error in package.lua at line 80: module 'strict' not found.
  33. Example of active power adapter
  34. Lua error in package.lua at line 80: module 'strict' not found.
  35. Lua error in package.lua at line 80: module 'strict' not found.
  36. 36.0 36.1 Lua error in package.lua at line 80: module 'strict' not found.
  37. Lua error in package.lua at line 80: module 'strict' not found.
  38. Lua error in package.lua at line 80: module 'strict' not found.
  39. Lua error in package.lua at line 80: module 'strict' not found.
  40. Lua error in package.lua at line 80: module 'strict' not found.
  41. Lua error in package.lua at line 80: module 'strict' not found.
  42. Lua error in package.lua at line 80: module 'strict' not found.
  43. Lua error in package.lua at line 80: module 'strict' not found.
  44. Lua error in package.lua at line 80: module 'strict' not found.
  45. Lua error in package.lua at line 80: module 'strict' not found.
  46. 46.0 46.1 46.2 Lua error in package.lua at line 80: module 'strict' not found.
  47. Lua error in package.lua at line 80: module 'strict' not found.
  48. Lua error in package.lua at line 80: module 'strict' not found.
  49. Lua error in package.lua at line 80: module 'strict' not found.
  50. Lua error in package.lua at line 80: module 'strict' not found.
  51. Lua error in package.lua at line 80: module 'strict' not found.
  52. 52.0 52.1 52.2 Lua error in package.lua at line 80: module 'strict' not found.
  53. Lua error in package.lua at line 80: module 'strict' not found.
  54. Lua error in package.lua at line 80: module 'strict' not found.
  55. Lua error in package.lua at line 80: module 'strict' not found.
  56. Lua error in package.lua at line 80: module 'strict' not found.
  57. Lua error in package.lua at line 80: module 'strict' not found.
  58. Ultra-640 is specified, but devices do not exist
  59. FIS-based switching is comparable to SCSI's tagged command queueing
  60. Lua error in package.lua at line 80: module 'strict' not found.
  61. Lua error in package.lua at line 80: module 'strict' not found.
  62. Lua error in package.lua at line 80: module 'strict' not found.
  63. 63.0 63.1 Lua error in package.lua at line 80: module 'strict' not found.
  64. 16 cables can be daisy chained up to 72 m
  65. Lua error in package.lua at line 80: module 'strict' not found.
  66. Lua error in package.lua at line 80: module 'strict' not found.
  67. 67.0 67.1 67.2 67.3 Lua error in package.lua at line 80: module 'strict' not found.
  68. USB hubs can be daisy chained up to 25 m
  69. Lua error in package.lua at line 80: module 'strict' not found.
  70. Lua error in package.lua at line 80: module 'strict' not found.

External links

Lua error in package.lua at line 80: module 'strict' not found.