Untitled Document
www.expresscomputeronline.com WEEKLY INSIGHT FOR TECHNOLOGY PROFESSIONALS
13 December 2004  
Untitled Document
Sections

Market
Management
Technology
Technology Life
Colour In Office

Columns

Between The Bytes

Services
Subscribe/Renew
Archives
Search
Contact Us
Network Sites
Network Magazine India
Exp. Hotelier & Caterer
Exp. Travel & Tourism
feBusiness Traveller
Exp. Pharma Pulse
Exp. Healthcare Mgmt.
Exp. Textile
Group Sites
ExpressIndia
Indian Express
Financial Express
Home - Technology - Article

Tech Primer

What is Native Command Queuing?

Native Command Queuing (NCQ) is a command protocol in Serial Advanced Technology Attachment (SATA) that allows multiple commands to queue up within a hard disk drive at the same time. Drives that support NCQ have an internal queue where outstanding commands can be dynamically rescheduled or re-ordered, along with the necessary tracking mechanisms for outstanding and completed portions of the workload. NCQ also has a mechanism that lets the host issue additional commands to the drive while it is seeking data for another command. Operating systems such as Microsoft Windows and Linux are increasingly multi-threaded. Combine that with processor-based hyper-threading technology on high-performance desktops and these features have the potential to create workloads where multiple commands are in a hard drive queue at the same time.

How does SATA Native Command Queuing (NCQ) compare with ATA Tagged Command Queuing (TCQ)?

Native Command Queuing is an efficient protocol that has a race-free status return mechanism, low interrupt overhead (less than 1 interrupt per command), and supports First Party DMA. The SATA NCQ addresses the shortcomings of ATA TCQ, which include high overhead, two interrupts per command, a large number of host handshakes, and no support for First Party DMA. The issues with ATA TCQ can cause performance degradation in lightly queued workloads where the benefit of queuing is outweighed by the significant overhead of the protocol.

Is there a substantial advantage to using NCQ?

NCQ results in higher performance with multiple-command workloads, improved drive endurance and less mechanical wear and tear. NCQ complements several performance-boosting features that are components of the native SATA protocol. The performance boost provided by NCQ can be compared to that derived from using a 10K-RPM SATA drive. A 7200 RPM SATA NCQ drive can equal or exceed the performance of a 10,000-RPM SATA drive without NCQ.

How does NCQ improve performance?

Serial ATA NCQ achieves high performance and efficiency through efficient command re-ordering. In addition, there are three new capabilities that are built into the Serial ATA protocol to enhance NCQ performance including race-free status return, interrupt aggregation, and First Party DMA. The race-free status return mechanism feature lets the status of any command be communicated at any point of time. There is no ‘handshake’ required with the host for this status return to take place. The drive may issue command completions for multiple commands back-to-back or even at the same time. By interrupt aggregation, the drive interrupts the host each time it completes a command. The more interrupts, the bigger the host processing burden. However, with NCQ, the average number of interrupts per command can be less than one. If the drive completes multiple commands in a short time span, a frequent occurrence with a highly queued workload, the individual interrupts may be aggregated. In that case, the host controller only has to process one interrupt for multiple commands.

What about data transfer rates?

NCQ has a mechanism that lets the drive set up the Direct Memory Access (DMA) operation for a data transfer without host software intervention. This mechanism is called First Party DMA. The drive selects the DMA context by sending a DMA Setup FIS (Frame Information Structure) to the host controller. This FIS specifies the tag of the command for which the DMA is being set up. Based on the tag value, the host controller will load the PRD table pointer

for that command into the DMA engine, and the transfer can proceed without any software intervention. This is the means by which the drive can effectively re-order commands since it can select the buffer to transfer on its own initiative.

Who are the vendors supplying NCQ SATA drives?

Seagate, Maxtor, Samsung and Intel are some of the vendors who are providing support for NCQ SATA drives. Many hard disc drive vendors have or are planning to bring out SATA based products with NCQ capabilities.

For more information log on to www.serialata.org

 


UNSUBSCRIBE HERE
Untitled Document
© Copyright 2001: Indian Express Newspapers (Bombay) Limited (Mumbai, India). All rights reserved throughout the world. This entire site is compiled in Mumbai by the Business Publications Division (BPD) of the Indian Express Newspapers (Bombay) Limited. Site managed by BPD.