原生指令排序

原生命令佇列（英语：，簡稱：NCQ），原先是改善伺服器硬碟存取控制技術，應用在SCSI和SATA 1.0/2.0/3.0介面硬碟讀寫加速技術，其介面開啟磁碟陣列RAID亦能加速。透過硬碟韌體、硬碟控制器以及作業系統三者的互相配合，改善硬碟內部磁區的讀取順序，可以提高硬碟效能，亦能夠輕微減輕硬碟損耗的速率。NCQ對用於伺服器上的硬碟的效率提昇尤為明顯。

 原理 

一般硬碟使用的硬碟格式通常為Windows 98核心所使用的FAT32系列，或是Windows NT所使用的NTFS，此種硬碟格式在存取資料時，時常會出現散亂的情況，導致一個文件被不規則的分散成許多的區塊存放於磁盤上面，時間一久，文件散亂的程度會日趨嚴重，由於傳統的硬碟讀取方式，會從文件的開頭依序讀取到結尾，若文件散亂的程度愈嚴重，則讀取頭需要來回移動的距離就越長，導致硬碟讀寫效能逐漸下降。一旦發生這樣的問題，解決方案便是使用磁碟重組軟體來進行硬碟重組，將散亂的文件重新排列為連續的區塊，但由於執行磁碟重組可能會需要搬動大量的磁碟區塊，如果太常執行磁碟重組，除了會提高系統負載，亦將會縮短磁碟機的使用壽命，NCQ即為了解決此種情況而誕生。NCQ的概念原本是應用在伺服器上常見的SCSI介面上，在SCSI的規格中即包含此項技術，只是不叫做NCQ，將此項技術經過些許修改後稱為NCQ，並將其應用在SATA介面上，後來的SAS介面也支持此項技術。啟用NCQ技術的硬碟，在讀取文件時，會依照文件在硬碟上的分佈，將存取的順序作最有效率的排序，以減少機械臂移動的距離，進而達到省時以及延長硬碟壽命的效果。

 優勢 

於SATA II NCQ協定中，新增3個功能，分別是：
无竞争状态返回机制（Race-free status return mechanism）：
硬碟在完成任一指令後，可以無須再進行Handshake即可繼續另一個指令，以便讓多個指令快速接序或同時執行。
中断聚合（Interrupt aggregation）：
硬碟由於以NCQ模式執行多個指令，所以原本每一個指令完成後必須中斷（interrupt）以便讓系統接續處理的模式，轉成可以在多個指令完成後再一次提出（interrupt），故介面控制器（host controller）對於多個指令只須處理一次中斷即可。
First party (第一方）DMA（FPDMA）：
當硬碟完成資料讀取後，無須靠host controller的DMA動作取得特定記憶體位置，而是由硬碟本身建立DMA安装FIS（Frame Information Structure；框架信息结构）直接對主控送出記憶體存取通知，如此無須驅動程式的運作，可以有效提升存取效率。

 條件 

開啟NCQ，除硬碟本身必須支持NCQ外，作業系統（OS）與介面控制器（controller）的支持也是不可或缺的條件。舉例說，在Microsoft Windows平台上，從Windows Vista開始才支持NCQ，而Windows XP若要使用NCQ，則要額外安裝支持軟件。

 支持晶片 
（舊資料）
以下是支持NCQ的硬碟控制器，曾经被广泛使用，然而一些现在已经被淘汰:
JMicron
JMB360
JMB361
JMB362
JMB363
JMB365
JMB366
Silicon Image
SiI 3124
SiI 3132
SiI 3531
nVIDIA
nForce 4 Ultra, nForce 4 SLI
nForce 410
nForce 430
nForce 550
nForce 570 Ultra, nForce 570 SLI
nForce 590 SLI
nForce 650i Ultra, nForce 650i SLI
nForce 680i SLI
nForce 780i SLI
Intel  
ESB2
ICH6M, ICH6R
ICH7DH, ICH7M, ICH7MDH, ICH7R
ICH8DH, ICH8DO, ICH8M, ICH8M-E, ICH8R
ICH9DO, ICH9M, ICH9M-E, ICH9R
ICH10D, ICH10DO, ICH10R
5 Series
6 Series
7 Series
3400 Series
VIA
VT 8237S
VT 8251
ATI
SB 600
SB 700
SB 750
ALi／ULi
M1573
M1575
M1567
M1697
SiS
SiS966/SiS966L
SiS968
Marvell
88SE9130

 參看 
 TCQ（Tagged Command Queuing）
 Intel組合儲存技術軟件（Intel Matrix Storage Manager）

Category:Serial ATA
Category:SCSI