Home > Articles

SATA, the Next Generation

  • Print
  • + Share This
Understanding Native Command Queuing
Like this article? We recommend

SATA, the Next Generation

Understanding Native Command Queuing

Introduction

Serial ATA (SATA) is the emerging replacement for ATA/IDE drive interfacing. While early SATA drives did not provide performance significantly faster than ATA/IDE drives, the newest SATA drives feature support for command queuing, which can provide better real-world performance in some cases. This article discusses how command queuing works and helps you determine which products support which types of command queuing.

Serial ATA, a Mainstream Data Storage Solution

In the last two years, Serial ATA (SATA) hard drives and host adapters (see my article http://www.quepublishing.com/articles/article.asp?p=339070

for examples) have finally become common in high-performance systems. As I discuss in Chapter 7 of Upgrading and Repairing PCs, 16th Edition, http://www.quepublishing.com/promotion/1634#_, SATA drives are designed to transfer data at up to 150MBps, which is significantly faster than the 133MBps transfer rate supported by the fastest ATA/IDE standard, ATA-133 (also known as ATA-7). However, real-world performance of SATA drives has been about the same as ATA/IDE drives.

Now that SATA has proven itself in the marketplace, with most recent mid-range and high-end motherboards using Intel, nVIDIA and VIA chipsets including two or more SATA host adapters, hard disk drive manufacturers have gone back to the drawing board to make the promises of SATA become a reality.

Native Command Queuing

The most important improvement in new SATA drive designs is the introduction of a technology called native command queuing (NCQ). NCQ works by enabling the drive to re-sequence data read/write commands in the most efficient order of execution. It uses direct memory access (DMA) to improve data transfer performance, and it uses an always-available channel to indicate which commands have been completed.

When an SATA drive using NCQ is given commands to read or write data, it uses an algorithm called Rotational Position Ordering (RPO). RPO takes into account the location of the read/write heads relative to the data and the seek distance. When necessary, the order of commands is changed to enable the drive to access the data in the shortest amount of time. This is comparable to taking your shopping list and rewriting it so that the items in aisle one are listed first, those in aisle two are listed next, and so on.

Seek latency optimization enables the hard disk to accept new commands and continue to reorder them for best performance, just as an elevator can accept new floor requests at each stop, but continues to go to the highest or lowest floor requested before reversing order.

When data is being retrieved, the data might also be retrieved from the disk in an order different than it was requested by the host. This feature, known as out-of-order data delivery, enables an SATA hard disk to retrieve data more quickly than if it read the data in sequence.

By using NCQ, the latest SATA drives have performaned as much as 33% faster than SATA drives without NCQ, according to Seagate benchmarks (available at http://www.seagate.com/products/interface/sata/benchmark.html). However, NCQ's benefits in the real world are primarily found in RAID applications, rather than in single-drive installations.

NCQ Not the Only Command Queuing Solution

NCQ, as the name implies, requires a native SATA interface in the hard disk to function. Seagate was the first vendor to introduce drives with a native SATA interface, and Maxtor also offers NCQ in its newest desktop SATA drives. Some vendors, such as Western Digital, manufacture SATA drives which contain an ATA/IDE (parallel ATA) to SATA bridge. At first glance, it might appear that bridged drives could not support command queuing, however, a subset of NCQ known as tagged command queuing (TCQ) has been available ever since the ATA/4 standard was released in 1996. Although TCQ has been widely used in SCSI drives for some years, TCQ was not widely used in ATA/IDE drives because its benefits were minimal in desktop computers.

Western Digital uses TCQ in its Raptor enterprise-level SATA drives, which are designed for SATA RAID server installations in place of the traditional SCSI RAID arrays, but does not support TCQ in its desktop Caviar SE drives. None of WD's products currently support NCQ.

Who's Who in Next-Generation Serial ATA Drives

Use Table 1 to compare current drives which support some form of command queuing.

Table 1 – Serial ATA Drives with Command Queuing Support

Vendor

Hard Disk Model#

Capacities

Onboard Cache

RPM

Maxtor

Ultra16

250GB

300GB

16MB

7200

Seagate

Barracuda 7200.8

250GB

300GB

400GB

8MB, 16MB

7200

Western Digital

Raptor

36.7GB

74GB

8MB

10,000


Chipset and BIOS Support Requirements

For command queuing to function, drives with NCQ/TCQ must be connected to host adapters which support command queuing. PCs using motherboards with one of the following South Bridge or I/O Controller Hub chips support command queuing in their integrated Serial ATA host adapters:

  • Intel ICH6 family

  • VIA VT8251

In addition to using a chipset with command queuing support, you also need to enable a new SATA configuration BIOS setting known as Advanced Host Control Interface (AHCI), which supports command queuing as well as hot-plugging of SATA drives. If your system has a supported SB/ICH chip but the BIOS does not offer the AHCI option, contact your motherboard or system vendor for information about a BIOS upgrade. If you enable AHCI after you install Windows XP, you need to reinstall Windows to enable support for this feature.

Some third-party SATA host adapter cards and chips also support NCQ/TCQ. These are listed in Table 2.

Table 2 – Third Party SATA Products Supporting Command Queing

Vendor / Website

Model #

SATA RAID

NCQ

TCQ

Form Factor

High Point http://www.highpoint-tech.com

RocketRAID 1820A

0,1, 0+1, 5, 10

Yes

Yes

PCI card

Promise http://www.promise.com

FastTrak TX4200

0, 1, 0+1

Yes

Yes

PCI card

FastTrak TX4200

0, 1

Yes

Yes

PCI card

Silicon Image http://www.siliconimage.com

Sil3124-1,

Sil3124-2

0, 1, 0+1, 5

Yes

Yes

Chip for PCI-X OEM products


Do You Need Command Queing Support?

Although drive manufacturers which support NCQ or TCQ are enthusiastic about the benefits of these features, most current computer users can't use NCQ or TCQ without a motherboard or host adapter upgrade. And, because NCQ and TCQ are designed to handle high volumes of randomized data retrieval, a single drive installation, even with many programs running, doesn't stress the disk subsystem enough to make the expense worthwhile.

The story is different when you look at RAID installations, particularly RAID 0 (striping), RAID 0+1 (striping and mirroring) or higher levels. In RAID arrays, command queuing does make a significant difference in performance.

If you're planning a motherboard or system upgrade which will include SATA RAID, you should look for motherboards and drives which support command queuing. However, if you've decided to skip SATA-150 drives altogether and wait for the 300MBps SATA-300 drives, they'll start arriving in 2005, and NCQ is an integral part of that specification.

For Further Research

Drive Vendor Websites

Learn more about NCQ-enabled drives from Seagate at http://www.seagate.com

Learn more about NCQ-enabled drives from Maxtor at http://www.maxtor.com

Learn more about TCQ-enabled drives from Western Digital at http://www.wdc.com

SATA Specifications

Serial ATA Working Group http://www.serialata.org/

Performance Tests

The following websites also provide additional details about the real-world differences between NCQ, TCQ, and drives lacking these features.

Gamer's Depot review of Seagate 160GB with NCQ

http://www.gamers-depot.com/hardware/storage/seagate/ncq/160/001.htm

Best Price Computers face off of Maxtor (NCQ) vs Western Digital (TCQ) http://www.bestpricecomputers.co.uk/reviews/NCQ/index.htm

Storage Review's discussion of SCSI, SATA, NCQ and TCQ http://www.storagereview.com/articles/200406/20040625TCQ_1.html

  • + Share This
  • 🔖 Save To Your Account