Skip to content

Technology card

Shipping

Serial ATA

SATA · Serial AT Attachment

SATA link rates, AHCI and command queuing: how to read the interface label without mistaking it for application performance.

Glossary entry on hesela.dev · JSON record · AHCI · Native Command Queuing · SATA link error evidence

Related

In one minute

Serial ATA is a serial storage attachment that carries ATA commands between a host controller and a device, distinct from the AHCI software interface used by many host controllers.

SATA changed the physical attachment without replacing the ATA command family. The final 1.0 specification was announced on 29 August 2001, initially targeting 1.5 Gbit/s. That is a specification milestone, not a first-shipment date: the announcement described products as still forthcoming. The later 1.0a revision should not be used as SATA's origin. [2]

A 6 Gbit/s link does not carry 750 MB/s of file contents. SATA uses 8b/10b encoding: each eight data bits occupy ten transmitted bits. The coding-only ceiling is therefore 6 billion x (8/10) / 8 = 600 million bytes per second, or 600 MB/s in decimal units. Protocol traffic and device behavior reduce useful throughput further. The table applies the same calculation to all three rates; it is not a benchmark. [3]

Specification revision and signaling rate are different labels. SATA-IO recommends identifying the 6 Gbit/s interface explicitly rather than relying on the ambiguous phrase SATA 3.0. A faster-generation drive can connect to an older compatible interface, but it does not make that interface faster. Check the negotiated rate, not only the drive's advertised maximum. [4]

AHCI describes how host software programs a controller through registers and memory structures. It is not a cable format or a synonym for SATA. The specification permits fewer than 32 command slots; CAP.NCS encodes the implemented count minus one, while CAP.SNCQ reports NCQ support separately. Supported, configured and negotiated link speeds are also distinct observations. [5]

NCQ lets a supporting device schedule outstanding tagged commands. On an HDD this can reduce unnecessary head movement, but host, drive and software support are all required. A workload with little concurrency may gain little. Queue depth is an outstanding-command count, not a link rate or a promise of lower latency for each request. [6]

Historical scheduling evidence needs a boundary: Riska, Larkby-Lahet and Riedel (2007) studied three SCSI HDDs using Postmark and Linux builds. Their queue-depth results changed with cache policy and workload; request merging also changed the request sizes behind latency averages. This is not a SATA NCQ benchmark or a universal queue-depth recommendation. Compare application throughput and latency at a stated observation boundary. [1]

A direct SATA link is point-to-point; a compatible port multiplier can place several devices behind a host port. The shared upstream path does not become one independent full-bandwidth link per drive. Hot-plug support likewise needs a suitable platform and connection: a controller capability is not permission to unplug arbitrary internal hardware. [5]

USB enclosures add another layer. Smartmontools documents SCSI / ATA Translation and bridge-specific pass-through restrictions, including commands unavailable on particular bridges. An inaccessible SMART log through USB is therefore not proof that the SATA drive lacks that log. Record the adapter and access path before comparing diagnostic output. [7]

Compared to neighbors

Compare like with like: SATA is a device attachment, AHCI a host-controller programming interface, and NCQ a command-queuing capability. An interface limit alone cannot predict application throughput.

SATA rate conversion: coding-only ceilings before protocol overhead, not measured throughput.
Signaling rateAfter 8b/10bDecimal byte rate
1.5 Gbit/s1.2 Gbit/s150 MB/s
3 Gbit/s2.4 Gbit/s300 MB/s
6 Gbit/s4.8 Gbit/s600 MB/s

Uncertainty notes

  • The firstSeen date marks the final 1.0 specification release, not invention, shipment or mass adoption.
  • The rate table is a deterministic conversion with decimal units. It does not measure a particular disk, filesystem or USB enclosure.
  • The cited SATA-IO FAQs provide historical encoding and compatibility evidence; their market forecasts are not used as present-day facts.

Sources

  1. 01Riska, Larkby-Lahet and Riedel (USENIX ATC 2007): Evaluating Block-level Optimization through the IO Path, sections 2, 5 and 6 · accessed 2026-10-17
  2. 02Intel: Serial ATA final 1.0 specification release, 29 August 2001 · accessed 2026-10-17
  3. 03SATA-IO FAQ: SATA 8b/10b encoding and 6 Gb/s versus 0.6 GB/s · accessed 2026-10-17
  4. 04SATA-IO: SATA Revision 3.0 FAQ, compatibility and naming guidance · accessed 2026-10-17
  5. 05Intel AHCI 1.3.1: sections 1.1, 3.1.1, 7, 9 and 10.5 · accessed 2026-10-17
  6. 06Seagate: SATA Native Command Queuing requirements and workload dependence · accessed 2026-10-17
  7. 07Smartmontools 7.5: smartctl device types, SAT and USB bridge limitations · accessed 2026-10-17

Published by Hesela team

Report a correction · Editorial standards · Reuse guidance

Cite this page
Hesela team. Serial ATA. Hesela. https://hesela.com/tech/sata/