The SATA specification was released in three parts: SATA 1.5 Gb/s, SATA 1.5 Gb/s with
extensions, and SATA 3.0 Gb/s. The 10-year roadmap for Serial ATA allows it to scale eventually to
SATA 1.5 Gb/s
The SATA specification was introduced with a maximum theoretical bandwidth of 1.5 Gb/s, or 150
MB/s, factoring 20 percent encoding overhead (see "Signal integrity"). SATA 1.5 Gb/s focuses on
increasing the bandwidth and mitigating the design problems associated with the parallel ATA
architecture. SATA 1.5 Gb/s is designed to replace parallel ATA, mainly in desktop PCs (non-hot
plug). Serial ATA is not hardware compatible with legacy Ultra ATA; however, it is fully compliant
with the ATA protocol and, thus, software compatible with existing ATA drivers.
SATA 1.5 Gb/s (with extensions)
SATA 1.5 Gb/s (with extensions) addresses the needs of the lower cost server and non-mission critical
enterprise storage markets. SATA 1.5 Gb/s (with extensions) enhances SATA 1.5 Gb/s with features
such as native command queuing, out-of-order execution and delivery, and data scatter/gather lists
(each described below). Any or all of these optional extensions can be implemented.
Native command queuing enables a hard drive to take multiple requests for data from the processor
and rearrange the order of those requests to maximize throughput. SATA 3.0-Gb/s hard drives will
be able to queue and execute requests without any assistance from the CPU.
Out-of-order execution and delivery keeps execution resources as busy as possible. In the native
command queuing model, this feature allows the last half of the data requested by a command to be
delivered and executed before the first half of the data. Out of order data delivery within commands
requires support for non-zero buffer offsets.
A data scatter/gather list is a data structure that assists the direct memory access (DMA) engine in
locating memory regions that comprise the complete transfer buffer. This assistance is beneficial
because virtual memory mapping mechanisms may scatter the buffer across several noncontiguous,
physical memory pages.
The SATA 3.0 Gb/s specification doubles the previous data transfer rate and adds other extensions
to improve the capabilities of SATA devices for server and networked storage applications.
Theoretically, with the use of port multipliers, each port on a SATA 3.0 Gb/s host controller can
connect up to 15 SATA drives.
SATA devices include initiators (SATA controllers), port multipliers, and targets (SATA drives) as
shown in Figure 5. Port multipliers connect initiators to targets in a SATA domain. SATA devices in a
domain do not need to be assigned an ID. All SATA devices have unique worldwide names (SATA
addresses) assigned at manufacturing to simplify identifying initiator devices, port multipliers, and
target devices. These devices, and the cabling that connect them, are described in this section.