パラレルATA(PATA)は、元々はAT Attachment、別名Integrated Drive Electronics(IDE)と呼ばれ、IBM PC互換コンピュータ向けに設計された標準インターフェースです。これは、1986年にWestern DigitalとCompaqによって、互換性のあるハードドライブやCD/DVDドライブ向けに初めて開発されました。この接続は、ハードディスク、大容量フロッピーディスク、光ディスク[ 1 ] [ 2 ]、テープなどのコンピュータストレージに使用されます。
この規格はX3/ INCITS委員会によって維持されています。[ 3 ]基盤となるATアタッチメント(ATA)およびATアタッチメントパケットインターフェース(ATAPI)規格を使用しています。
Parallel ATA規格は、初期のPC AT機器で使用するために開発されたオリジナルのAT Attachmentインターフェースから始まった、長年にわたる漸進的な技術開発の成果です。ATAインターフェース自体は、Western DigitalのオリジナルのIntegrated Drive Electronics(IDE)インターフェースからいくつかの段階を経て進化しました。そのため、ATA/ATAPIとその以前のバージョンには、現在でも非公式に広く使われている同義語が数多くあり、特にExtended IDE(EIDE)やUltra ATA(UATA)などが挙げられます。 2003年にSATAが導入された後、オリジナルのATAはParallel ATA、略してPATAと改名されました。
パラレルATAケーブルの最大許容長は18インチ(460mm )です。[ 4 ] [ 5 ]この制限のため、この技術は通常、コンピュータの内部ストレージインターフェースとして使用されます。長年にわたり、ATAはこの用途で最も一般的で安価なインターフェースを提供してきましたが、2000年代半ばにSATAに置き換えられたため、現在は廃止されています。
この規格は当初「AT Bus Attachment」として構想され、正式には「AT Attachment」と呼ばれ、略称は「ATA」でした[ 6 ] [ 7 ]。これは、主な特徴がIBM PC/ATで導入された16ビットISAバスへの直接接続であったためです[ 8 ]。標準化委員会によって公開された最初のATA仕様では、「AT Attachment」という名前が使用されています[ 9 ] [ 10 ] [ 11 ]。IBM PC/ATの「AT」は「Advanced Technology」を指していたため、ATAは「Advanced Technology Attachment」とも呼ばれています[ 12 ] [ 6 ] [ 13 ] [ 14 ]。 2003年に新しいSerial ATA(SATA)が導入されたとき、元のATAはParallel ATA、略してPATAに改名されました[ 15 ] 。
物理ATAインターフェースは、当初はホストバスアダプタ、時にはサウンドカードに搭載され、最終的にはマザーボード上のサウスブリッジチップに組み込まれた2つの物理インターフェースとして、PCの標準コンポーネントとなった。これらは「プライマリ」および「セカンダリ」ATAインターフェースと呼ばれ、ISAバスシステムではI/Oベースアドレス0x1F0~0x1F7および0x170~0x177に割り当てられていた。これらは後にSATAインターフェースに置き換えられた。

現在ATA/ATAPIインターフェースと呼ばれるものの最初のバージョンは、Western DigitalがIntegrated Drive Electronics(IDE)という名称で開発しました。Compaq (最初の顧客)とともに、さまざまなディスクドライブメーカーと協力して、既存のIBM PCハードドライブインターフェースとのソフトウェア互換性を維持することを目標に、初期製品を開発および出荷しました。[ 16 ]このようなドライブの最初のものは、1986年にCompaq PCに内蔵され[ 17 ] [ 18 ] 、1987年6月にConner PeripheralsからCP342として初めて単体で提供されました。 [ 19 ]
統合ドライブエレクトロニクスという用語は、ドライブコントローラがドライブに統合されていることを指し、ドライブへの接続ケーブルの反対側に独立したコントローラが配置されているのとは対照的です。IBM PC互換機、 CP/Mマシン、または同様のマシンでは、これは通常、マザーボードに搭載されたカードでした。パラレルATAドライブをISAスロットなどに接続するために使用されるインターフェースカードは、ドライブコントローラではなく、ホストバスとATAインターフェース間の単なるブリッジです。オリジナルのATAインターフェースは基本的に16ビットISAバスであるため、ATAコネクタがISAインターフェースカード上にある場合は、ブリッジは特に単純でした。統合コントローラは、比較的単純なコマンドインターフェースを備えた512バイトブロックの配列としてドライブをホストコンピュータに提示しました。これにより、以前のST-506およびESDIハードドライブで必要だった、ディスクヘッドアームのステップ、ヘッドアームの出し入れなどの処理が、ホストコンピュータのメインボードとインターフェースカードから解放されました。ドライブの機械的な動作に関するこうした低レベルな詳細はすべて、ドライブ自体のコントローラによって処理されるようになった。これにより、コントローラをドライブごとに固有のものにできるため、多くの異なるタイプのドライブに対応できる単一のコントローラを設計する必要もなくなった。ホストは、特定のセクターまたはブロックの読み取りまたは書き込みを要求し、ドライブからデータを受け取るか、ドライブにデータを送信するだけで済む。
これらのドライブで使用されるインターフェースは、1994 年に ANSI 規格 X3.221-1994、AT Attachment Interface for Disk Drivesとして標準化されました。この規格の後のバージョンが開発されると、これは「ATA-1」として知られるようになりました。[ 20 ] [ 21 ]
IBM XTやISAバスの8ビット版を使用する同様のマシン向けに、短命でほとんど使用されなかったATAの実装が作成されました。これは「XT-IDE」、「XTA」、または「XT Attachment」と呼ばれています。 [ 22 ]
1994年、ATA-1規格が採用されたのとほぼ同時期に、Western DigitalはEnhanced IDE(EIDE)という新しい名称のドライブを発表しました。これには、当時登場予定だったATA-2規格のほとんどの機能に加え、いくつかの追加機能が搭載されていました。他のメーカーも、「Fast ATA」や「Fast ATA-2」など、ATA-1の独自のバリエーションを発表しました。
ANSI規格の新バージョンであるATアタッチメントインターフェース拡張機能ATA-2(X3.279-1996)は1996年に承認されました。これにはメーカー固有のバリアントのほとんどの機能が含まれていました。[ 23 ] [ 24 ]
ATA-2はまた、ハードドライブ以外のデバイスもインターフェースに接続できることを初めて指摘した規格でもあった。
3.1.7 デバイス:デバイスとは、記憶周辺機器のことです。従来、ATAインターフェース上のデバイスはハードディスクドライブでしたが、この規格に準拠していれば、どのような形式の記憶デバイスでもATAインターフェース上に配置できます。
ATAは元々、ハードディスクドライブとそのエミュレーションが可能なデバイス向けに設計され、それらとのみ連携して動作しました。しかし、スモールフォームファクタ委員会(SFF)によるATAPI(ATAパケットインターフェース)の導入により、ATAはハードディスクドライブに必要な機能以外にも様々な機能を必要とするデバイスで使用できるようになりました。例えば、リムーバブルメディアデバイスには「メディア取り出し」コマンドと、ホストがメディアの存在を確認する方法が必要ですが、これらはATAプロトコルには含まれていませんでした。
ATAPIは、ATAインターフェースでSCSIコマンドとレスポンスを伝送するためのプロトコルです。そのため、ATAPIデバイスは、電気インターフェース以外では実質的に「SCSI通信」を行っています。SCSIコマンドとレスポンスは「パケット」(そのため「ATAパケットインターフェース」と呼ばれます)に埋め込まれ、ATAケーブルを介して伝送されます。これにより、SCSIコマンドセットが定義されているあらゆるデバイスクラスをATA/ATAPI経由で接続することが可能になります。
ATAPI デバイスは、パケットの送信に ATA 物理インターフェースとプロトコルが引き続き使用されるため、「ATA と通信」します。一方、ATA ハードドライブとソリッドステートドライブは ATAPI を使用しません。原則として、適切なアダプタとドライバのサポートがあれば、SCSI コマンドセットで制御されるデバイスはすべて ATAPI でサポートできますが、実際には、主に CD ストレージドライブ[ 25 ] 、 DVD ストレージドライブ[ 26 ] 、およびZip ドライブやSuperDisk ドライブなどの大容量フロッピードライブで採用されました。
各クラスのATAPIデバイスで使用されるSCSIコマンドと応答は、それぞれのデバイスクラスに固有の他の文書または仕様で説明されており、ATA/ATAPIまたはT13委員会の管轄範囲外です。一般的に使用されるコマンドセットの1つは、 MMC SCSIコマンドセットで定義されています。
ATAPIはINCITS 317-1998 「AT Attachment with Packet Interface Extension (ATA/ATAPI-4)」においてATAの一部として採用された。[ 27 ] [ 28 ] [ 29 ]
ATA/ATAPI-4規格では、いくつかの「Ultra DMA」転送モードも導入されました。当初は16~33MB /sの速度をサポートしていましたが、後のバージョンではより高速なUltra DMAモードが追加され、クロストークを低減するために新しい80芯ケーブルが必要となりました。最新バージョンのParallel ATAは最大133MB /sの速度をサポートしています。
Ultra ATA(UATAと略される)は、主にWestern DigitalがATA/ATAPI規格のさまざまな速度向上に使用してきた名称です。たとえば、2000年にWestern Digitalは「Ultra ATA/100」を説明する文書を公開し、当時のATA/ATAPI-5規格のParallel ATAインターフェースの最大速度を66MB/sから100MB /sに向上させることで、パフォーマンスの向上を実現しました。[ 30 ] Western Digitalによる変更のほとんどは、他の変更とともにATA/ATAPI-6規格(2002年)に含まれました。
当初、ATA ドライブのサイズは、システムx86 BIOS にタイプ番号 (1 ~ 45) を使用して格納され、C/H/S パラメータ[ 31 ]と、ドライブ ヘッドが使用されていないときに格納されるランディング ゾーンが事前に定義されていました。その後、 C/H/S またはシリンダ、ヘッド、セクタと呼ばれる「ユーザー定義可能」フォーマット[ 31 ]が利用可能になりました。これらの数値は、初期の ST-506 インターフェースでは重要でしたが、ATA では一般的に意味がありませんでした。後の ATA 大容量ドライブの CHS パラメータでは、ドライブの内部物理レイアウトを実際には定義しない、あり得ないほど大きなヘッド数またはセクタ数を指定することがよくありました。最初から、ATA-2 までは、すべてのユーザーが接続されているドライブのサイズを明示的に指定する必要がありました。ATA-2 以降は、送信してすべてのドライブ パラメータを返すことができる「ドライブ識別」コマンドが実装されました。
マザーボードメーカーの先見性の欠如により、システムBIOSは、特定の値が特定の数値の最大値を超えることはないというメーカーの想定に基づき、人為的なC/H/Sサイズ制限によってしばしば制約を受けていた。
これらのBIOS制限の最初のものは、ATAドライブのサイズが504 MiBを超えたときに発生しました。これは、一部のマザーボードBIOSが、 1024シリンダ、16ヘッド、63セクタを超えるC/H/S値を許可しなかったためです。1セクタあたり512バイトを掛けると、合計は528,482,304バイトになり、これを1 MiBあたり1,048,576バイトで割ると、504 MiB(528 MB )になります。
BIOSの制限のうち2つ目は、1024シリンダ、256ヘッド、63セクタの時点で発生し、MS-DOSの問題によりヘッド数が255に制限されていました。合計すると8,422,686,720バイト(8,032.5 MiB )となり、一般に8.4ギガバイトの壁と呼ばれています。これもまた、x86 BIOSによって課せられた制限であり、ATAインターフェースによって課せられた制限ではありません。
最終的に、これらの容量制限は、ハードディスクのブートセクタから起動時にロードされる小さなプログラムによって解除できることが判明しました。Western Digitalなどの一部のハードディスクメーカーは、これらの問題を解決するために、大容量ハードディスクにこの解除ユーティリティを同梱し始めました。しかし、特別なユーティリティをロードせずにコンピュータを別の方法で起動した場合、無効なBIOS設定が使用され、ドライブにアクセスできなくなったり、オペレーティングシステムから破損していると認識されたりする可能性がありました。
その後、x86 BIOSディスク サービスに「拡張ディスク ドライブ」(EDD)と呼ばれる拡張機能が提供され、 264セクターまでのドライブをアドレス指定できるようになりました。[ 32 ]
最初のドライブインターフェースは22ビットアドレッシングモードを使用しており、その結果、最大ドライブ容量は2ギガバイトでした。その後、最初の正式なATA仕様では、 LBA28を介して28ビットアドレッシングモードを使用し、2 28 (268 435 456 ) 512 バイトのセクタ (ブロック) で構成され、最大容量は 128 GiB (137 GB ) になります。
ATA-6では48ビットアドレッシングが導入され、容量の上限が128 PiB(144 PB)に引き上げられました。そのため、約137 GBを超える容量のATAドライブは、ATA-6以降の規格のドライブでなければなりません。このようなドライブをATA-5以前のインターフェースを持つホストに接続すると、使用可能な容量はインターフェースの最大値に制限されます。
Windows XP SP1以前やWindows 2000 SP3以前など、一部のオペレーティングシステムではLBA48がデフォルトで無効になっているため、約137ギガバイトを超えるATAドライブの全容量を使用するには、ユーザーが追加の手順を実行する必要があります。[ 33 ]
Windows 98などの古いオペレーティングシステムは、48 ビット LBA をまったくサポートしていません。しかし、サードパーティ グループ MSFN [ 34 ]のメンバーは、Windows 98 ディスク ドライバを修正して、 Windows 95 OSR2、Windows 98、Windows 98 Second Edition 、およびWindows MEに 48 ビット LBA の非公式サポートを追加しました。
LBA48をサポートする一部の16ビットおよび32ビットオペレーティングシステムでは、32ビット演算のみを使用しているため、 2 TiBを超えるディスクはサポートされていません。この制限は多くのブートセクタにも適用されます。
パラレルATA(当時は単にATAまたはIDEと呼ばれていた)は、登場後まもなくPCの主要なストレージデバイスインターフェースとなった。一部のシステムでは、3番目と4番目のマザーボードインターフェースが提供され、最大8台のATAデバイスをマザーボードに接続できるようになった。これらの追加コネクタは、多くの場合、安価なRAIDコントローラによって実現されていた。
2003年にシリアルATA (SATA)が導入されて間もなく、パラレルATAの使用は減少した。当時の一部のPCやノートパソコンには、SATAハードディスクとPATA接続の光学ドライブが搭載されていた。
2007年時点で、Intel ICH10などの一部のPCチップセットはPATAのサポートを終了していました。これらのチップセットでパラレルATAを提供したいマザーボードメーカーは、追加のインターフェースチップを搭載する必要がありました。最近のコンピュータでは、パラレルATAインターフェースが搭載されていても、マザーボード上に4つ以上のシリアルATAコネクタが用意されていることが多く、あらゆる種類のSATAデバイスが普及しているため、ほとんど使用されていません。
Western DigitalがPATA市場から撤退したため、2013年12月以降、特殊用途以外ではPATAインターフェースを備えたハードディスクドライブは生産されなくなった。[ 35 ]
パラレルATAケーブルは、一度に16ビットのデータを転送します。従来のケーブルは、 40芯または80芯のリボンケーブルに接続された40ピンのメス絶縁変位コネクタ(IDC)を使用します。各ケーブルには2つまたは3つのコネクタがあり、そのうちの1つはコンピュータシステムの他の部分とインターフェースするホストアダプタに接続されます。残りのコネクタは、ストレージデバイス(最も一般的なのはハードディスクドライブまたは光ディスクドライブ)に接続されます。各コネクタには、2列(2.54 mm、1 / 10インチピッチ)に配置された39本の物理ピンがあり、20番目のピンにギャップまたはキーがあります。初期のコネクタにはこのギャップがなく、40本のピンすべてが使用可能です。したがって、ギャップが埋められた後期のケーブルは、以前のコネクタとは互換性がありませんが、以前のケーブルは後期のコネクタと互換性があります。
丸型のパラレルATAケーブル(リボンケーブルとは対照的に)は、見た目の美しさや、コンピューターの冷却性能の向上、取り扱いの容易さといった理由から、最終的に「ケースモッダー」向けに提供されるようになりました。しかし、ATA規格でサポートされているのはリボンケーブルのみです。

ノートパソコンに搭載される2.5インチドライブには、44ピンのPATAコネクタが使用されています。ピン間隔は 40ピンコネクタよりも狭く(2.0mmピッチ)、コネクタ自体も小型です。追加されたピンは電源供給用です。

薄型光学ドライブ(ノートパソコンによく使われる)は、50個の接点を持つコンパクトなジャパン・アビエーション・エレクトロニクス製のKX15プラグ(ホストコンピュータのKX14レセプタクルに差し込む)を使用する(通称JAE-50またはSlim50)[ 38 ]。追加の接点は電源とアナログオーディオ出力を担う。[ 39 ]


ATAケーブルは、その歴史のほとんどにおいて40本の導体で構成されていましたが、UDMA/66モードの導入に伴い80本の導体を持つバージョンが登場しました。新しいケーブルでは、追加された導体はすべてグランドであり、信号導体と交互に配置することで、隣接する信号導体間の容量結合の影響を軽減し、クロストークを低減しています。容量結合は転送速度が速いほど問題となるため、この変更はUDMA4の66メガバイト/秒(MB/s)の転送速度を確実に動作させるために必要でした。より高速なUDMA5およびUDMA6モードでも、80本の導体を持つケーブルが必要です。
導体の数は2倍になったものの、コネクタのピン数とピン配置は40芯ケーブルと同じで、コネクタの外観も同一です。内部構造は異なり、80芯ケーブルのコネクタはより多くの接地導体を接地ピンに接続しますが、40芯ケーブルのコネクタは接地導体を接地ピンに1対1で接続します。80芯ケーブルは通常、3つの異なる色のコネクタ(コントローラ、マスタードライブ、スレーブドライブそれぞれに青、黒、グレー)を備えていますが、40芯ケーブルのコネクタは均一な色(一般的にすべてグレー)です。80芯ケーブルのグレーのコネクタはピン28 CSELが接続されていないため、ケーブルセレクトが設定されたドライブのスレーブ位置になります。
2 つのデバイスが 1 つのケーブルに接続されている場合、一方をデバイス 0 (以前は一般的にマスターとして指定されていました)、もう一方をデバイス 1 (以前は一般的にスレーブとして指定されていました) として指定する必要があります。[ 40 ]この区別は、両方のドライブが競合することなくケーブルを共有できるようにするために必要です。デバイス 0ドライブは、通常、コンピュータのBIOSやオペレーティングシステムに「最初に」表示されるドライブです。ほとんどのパーソナル コンピュータでは、ドライブは、それぞれに 1 つのアクティブなプライマリ パーティションがあることを示すために、デバイス 0には「C:」、デバイス 1には「D:」として指定されることがよくあります。
デバイスが使用するモードは、多くの場合、デバイス本体のジャンパー設定によって決定され、これをデバイス0(マスター)またはデバイス1(スレーブ)に手動で設定する必要があります。ケーブル上にデバイスが1台しかない場合は、デバイス0として構成する必要があります。ただし、特定の時代のドライブには、この構成用に「シングル」と呼ばれる特別な設定があります(特にWestern Digital)。また、利用可能なハードウェアとソフトウェアによっては、ケーブル上のシングルドライブがデバイス1ドライブとして構成されていても、正常に動作することがよくあり、これはセカンダリATAインターフェースに光学ドライブのみが接続されている場合によく見られます。
プライマリとセカンダリという言葉は通常、2本のIDEケーブルを指し、それぞれに2台のドライブを接続できます(プライマリマスター、プライマリスレーブ、セカンダリマスター、セカンダリスレーブ)。
同じケーブル上の低速デバイスが高速デバイスのパフォーマンスにどの程度影響を与えるかについては、多くの議論があります。初期の ATA ホストアダプタでは、速度の異なる 2 つのデバイスが同じケーブル上にある場合、両方のデバイスのデータ転送は低速デバイスの速度に制限される可能性があります。最新の ATA ホストアダプタでは、これは当てはまりません。最新の ATA ホストアダプタは、独立したデバイスタイミングをサポートしているためです。これにより、ケーブル上の各デバイスは、それぞれの最適な速度でデータを転送できます。独立したタイミングを持たない以前のアダプタでも、この効果は読み取りまたは書き込み操作のデータ転送フェーズにのみ適用されます。[ 41 ]これは、ほとんどのパラレル ATA 製品からオーバーラップ機能とキュー機能の両方が省略されていることが原因です。ケーブル上のデバイスは一度に 1 つしか読み取りまたは書き込み操作を実行できません。したがって、同じケーブル上の低速デバイスが酷使されている場合、高速デバイスは低速デバイスが先にタスクを完了するまで待たなければなりません。しかし、最新のデバイスのほとんどは、データが(低速な)磁気ストレージに書き込まれる前に、オンボードのキャッシュメモリにデータが格納されると、書き込み操作が完了したと報告します。これにより、ケーブル上の他のデバイスにコマンドを送信できるため、「一度に1つの操作」という制限の影響が軽減されます。これがシステムのパフォーマンスに与える影響は、アプリケーションによって異なります。たとえば、ソフトウェアのインストール時などに、光学ドライブからハードドライブにデータをコピーする場合、この影響は問題にならないでしょう。このような作業は、光学ドライブがどこにあっても、その速度によって必然的に制限されます。しかし、問題のハードドライブが同時に他のタスクに対しても十分なスループットを提供する必要がある場合は、光学ドライブと同じケーブルに接続すべきではないでしょう。
ケーブルセレクトと呼ばれるドライブモードは、ATA-1ではオプションとして説明されていましたが、ATA-5以降では広く普及しています。ケーブルセレクトに設定されたドライブは、ケーブル上の位置に応じて、自動的にデバイス0またはデバイス1として構成されます。ケーブルセレクトはピン28で制御されます。ホストアダプタはこのピンを接地します。デバイスがピンが接地されていることを検出すると、デバイス0(マスター)デバイスになります。ピン28がオープンであることを検出すると、デバイス1(スレーブ)デバイスになります。
この設定は通常、ドライブ上の「ケーブルセレクト」と呼ばれるジャンパー設定(通常はCSと表記)によって選択され、デバイス0/1の設定とは別個のものです。
2台のドライブをデバイス0とデバイス1として手動で設定した場合、この設定はケーブル上の位置と一致させる必要はありません。ピン28は、ドライブがケーブル上の位置を認識するためだけに使用され、ホストがドライブと通信する際には使用されません。つまり、ドライブ上のジャンパーを使用した手動のマスター/スレーブ設定が優先され、ドライブをリボンケーブルのどちらのコネクタにも自由に配置できます。
40芯ケーブルの場合、ケーブルセレクトを実現するには、2つのデバイスコネクタ間のピン28のワイヤを切断するだけでよく、スレーブデバイス1をケーブルの端に、マスターデバイス0を中央のコネクタに接続していました。この構成は、後のバージョンで標準化されました。しかし、欠点が1つありました。2ドライブケーブルにマスターデバイスが1つしかない場合、中央のコネクタを使用すると、ケーブルの未使用のスタブが発生し、物理的な利便性と電気的な理由から好ましくありません。このスタブは、特に高速転送時に信号反射を引き起こします。
ATAPI5/UDMA4で使用するために定義された80芯ケーブルから始めると、マスターデバイス0は、 18インチ(460mm )ケーブルのホストから遠い方の端にある黒色のコネクタに接続され、スレーブデバイス1は灰色の中央のコネクタに接続され、青色のコネクタはホスト(マザーボードのIDEコネクタやIDEカードなど)に接続されます。したがって、 2つのドライブを持つケーブルにデバイス0が1つしかない場合、黒色のコネクタを使用することで、反射を引き起こすケーブルスタブはなくなります(未使用のコネクタがリボンの中央に配置されます)。また、ケーブルセレクトは、灰色の中央のデバイスコネクタで実装され、通常はコネクタ本体からピン28の接点を省略するだけで実現されます。
ATA-3までの並列ATAプロトコルでは、ATAインターフェースでコマンドが一度発行されると、後続のコマンドを発行する前にそのコマンドが完了する必要があると規定されています。デバイスに対する操作は、ATAホストインターフェースに関して、一度に1つの操作のみがシリアル化する必要があります。分かりやすいイメージとしては、ホストATAインターフェースは最初の要求の処理に全期間従事しているため、最初の要求が完了するまで他の要求を通知できないというものです。インターフェースへの要求をシリアル化する機能は、通常、ホストオペレーティングシステム内のデバイスドライバによって実行されます。
ATA-4以降の仕様では、オプション機能として「オーバーラップ機能セット」と「キュー機能セット」が追加され、どちらも「タグ付きコマンドキューイング」(TCQ)という名称が付けられました。これは、ATA版がエミュレートしようとしているSCSIの機能セットへの言及です。しかし、これらの機能セットは元々ISAバスの拡張として開発されたため、ソフトウェアの互換性を維持するように実装されており、実際のパラレルATA製品やデバイスドライバでは、これらの機能のサポートは極めて稀です。この実装ではCPU使用率が過剰になり、コマンドキューイングの利点がほとんど失われてしまいました。対照的に、オーバーラップ操作とキューイング操作は他のストレージバスでは一般的です。特に、SCSIのタグ付きコマンドキューイングはISA用に設計されたAPIとの互換性を必要としなかったため、PCIのようなファーストパーティDMAをサポートするバス上で、オーバーヘッドを抑えつつ高いパフォーマンスを実現できました。これは長らくSCSIの大きな利点とされてきました。
Serial ATA規格は、最初のリリースからネイティブコマンドキューイング(NCQ)をサポートしていますが、ホストアダプタとターゲットデバイスの両方にとってオプション機能です。多くの旧式PCマザーボードはNCQをサポートしていませんが、最新のSATAハードディスクドライブとSATAソリッドステートドライブは通常NCQをサポートしています。ただし、リムーバブルドライブ(CD/DVDドライブ)は、制御に使用されるATAPIコマンドセットがキューイング操作を禁止しているため、サポートされていません。
ATA デバイスは、ATA 仕様で定義されているオプションのセキュリティ機能をサポートしている場合があります。これは、特定のブランドやデバイスに限定されるものではありません。セキュリティ機能は、ドライブに特別な ATA コマンドを送信することで有効または無効にできます。デバイスがロックされている場合、ロックが解除されるまでアクセスはすべて拒否されます。デバイスには、ユーザー パスワードとマスター パスワードの 2 つのパスワードを設定できます。どちらか一方、または両方を設定できます。マスター パスワード識別機能があり、サポートされ使用されている場合は、現在のマスター パスワードを(公開せずに)識別できます。マスター パスワードが設定されている場合、エンド ユーザーがユーザー パスワードを忘れた場合に、管理者はマスター パスワードを使用してユーザー パスワードをリセットできます。一部のノートパソコンやビジネス コンピュータでは、BIOSでATA パスワードを制御できます。[ 42 ]
デバイスは、高セキュリティモードまたは最大セキュリティモードの 2 つのモードでロックできます。IDENTIFY 応答のワード 128 のビット 8 は、ディスクがどのモードになっているかを示します。0 = 高、1 = 最大。高セキュリティモードでは、ATA コマンド「SECURITY UNLOCK DEVICE」を使用して、ユーザー パスワードまたはマスター パスワードのいずれかでデバイスのロックを解除できます。試行回数には制限があり、通常は 5 回に設定されています。この制限を超えると、ロック解除を再度試みる前に、ディスクの電源を再投入するか、ハード リセットする必要があります。また、高セキュリティモードでは、SECURITY ERASE UNIT コマンドをユーザー パスワードまたはマスター パスワードのどちらでも使用できます。最大セキュリティモードでは、デバイスはユーザー パスワードでのみロックを解除できます。ユーザー パスワードが利用できない場合、少なくともハードウェアを使用可能な状態に戻す唯一の方法は、SECURITY ERASE PREPARE コマンドを発行し、その直後に SECURITY ERASE UNIT コマンドを発行することです。最大セキュリティモードでは、SECURITY ERASE UNIT コマンドにはマスター パスワードが必要で、ディスク上のすべてのデータが完全に消去されます。IDENTIFY 応答のワード 89 は、操作にかかる時間を示します。[ 43 ] ATA ロックは有効なパスワードなしでは解除できないように設計されていますが、デバイスのロックを解除するための回避策があるとされています。
NVMeドライブの場合、ロックパスワードなどのセキュリティ機能はOPAL規格で定義されています。[ 44 ]
ディスク全体を消去するには、組み込みのセキュア消去コマンドが正しく実装されていれば効果的です。[ 45 ]一部またはすべてのデータの消去に失敗した事例がいくつか報告されています。[ 46 ] [ 47 ] [ 45 ]一部のラップトップやビジネス用コンピュータには、セキュア消去を使用してディスク上のすべてのデータを消去できるBIOSが搭載されています。

ケーブル長の仕様が短く、シールドの問題もあるため、PATAを直接コンピュータに接続する外部PATAデバイスは非常にまれです。外部接続されたデバイスは、コンピュータケースの横または上に配置できるように、U字型の曲げを形成するために追加のケーブル長が必要ですが、標準のケーブル長ではこれができません。マザーボードからデバイスへの接続を容易にするため、コネクタはコンピュータケースの前面から突き出たデバイスに接続できるように、マザーボードの前面端に配置される傾向があります。この前面端の位置により、背面から外部デバイスにケーブルを延長することがさらに困難になります。リボンケーブルはシールドが不十分であり、規格ではRF放射制限を満たすために、ケーブルをシールドされたコンピュータケース内に設置することを前提としています。
内部にPATAインターフェースを備えた外付けハードディスクドライブや光ディスクドライブは、外部デバイスとコンピュータ間の接続に別のインターフェース技術を使用します。最も一般的な外部インターフェースはUSBで、次いでFireWireが使われています。外部デバイス内部のブリッジチップがUSBインターフェースをPATAに変換し、通常はケーブルセレクトやマスター/スレーブ機能なしで単一の外部デバイスのみをサポートします。
以下の表は、ATA規格の各バージョン名と、それぞれがサポートする転送モードおよび転送速度を示しています。各モードの転送速度(例えば、 ATA-5で定義されたUDMA4(一般に「Ultra-DMA 66」と呼ばれる)の66.7 MB/s)は、ケーブル上での理論上の最大転送速度を表しています。これは、実効クロック周波数に2バイトを乗じた値であり、すべてのクロックサイクルがエンドユーザーデータの転送に使用されることを前提としています。実際には、プロトコルのオーバーヘッドによってこの値は低下します。
ATAアダプタが接続されているホストバスの混雑も、最大バースト転送速度を制限する可能性があります。例えば、従来のPCIバスの最大データ転送速度は133MB /秒で、これはバス上のすべてのアクティブなデバイス間で共有されます。
さらに、 2005年当時、 80MB/秒を超える持続的な転送速度を測定できるATAハードドライブは存在しませんでした。また、持続的な転送速度テストは、ほとんどのワークロードに対して現実的なスループットの期待値を与えるものではありません。これらのテストでは、シーク時間や回転遅延による遅延がほとんど発生しないように特別に設計されたI/O負荷が使用されるためです。ほとんどのワークロードにおけるハードドライブのパフォーマンスは、まずこの2つの要因によって制限され、バス上の転送速度は重要度において3番目に低いものです。したがって、66MB/秒を超える転送速度制限が実際にパフォーマンスに影響を与えるのは、ハードドライブが内部キャッシュからの読み取りによってすべてのI/O要求を満たすことができる場合のみです。これは非常にまれな状況であり、特にそのようなデータは通常、オペレーティングシステムによって既にバッファリングされていることを考えると、なおさらです。
2021年7月現在 機械式ハードディスクドライブは最大 524 MB/s でデータを転送できますが、[ 48 ]これは PATA/133 仕様の能力をはるかに超えています。高性能ソリッドステートドライブは最大 7000~7500 MB/s でデータを転送できます。[ 49 ]
Ultra DMA モードのみが、コントローラとドライブ間のデータ転送におけるエラーを検出するためにCRCを使用します。これは 16 ビット CRC であり、データ ブロックのみに使用されます。コマンド ブロックとステータス ブロックの送信には、CRC を必要とする高速シグナリング方式は使用されません。比較のために、Serial ATA では、コマンドとデータの両方に 32 ビット CRC が使用されます。[ 50 ]
CD および DVD ドライブ以外のリムーバブル メディアを備えた ATAPI デバイスは、ARMD (ATAPI リムーバブル メディア デバイス) に分類され、オペレーティングシステムからはスーパー フロッピー (非パーティション メディア) またはハード ドライブ (パーティション メディア) として認識されます。これらは、 Compaq Computer Corporation とPhoenix Technologiesによって最初に開発されたATAPI リムーバブル メディア デバイス BIOS 仕様[ 55 ]に準拠した BIOS によってブート デバイスとしてサポートされます。この仕様では、Zipドライブ、Jaz ドライブ、SuperDisk (LS-120) ドライブなどのデバイスからコンピュータをブート ストラップできるようにするための、パーソナルコンピュータのBIOSの規定が規定されています。
これらのデバイスはフロッピーディスクドライブのようなリムーバブルメディアを備えていますが、容量はハードドライブと同等で、プログラミング要件はどちらとも異なります。フロッピーコントローラインターフェースの制限により、これらのデバイスのほとんどはATAPIデバイスであり、ハードドライブやCD-ROMデバイスと同様に、ホストコンピュータのATAインターフェースのいずれかに接続されていました。しかし、既存のBIOS規格ではこれらのデバイスはサポートされていませんでした。ARMD準拠のBIOSを使用することで、OSにデバイス固有のコードを記述することなく、これらのデバイスをOSから起動して使用できるようになります。
ARMDを実装したBIOSでは、起動順序にARMDデバイスを含めることができます。通常、ARMDデバイスはハードドライブよりも起動順序の上位に設定されます。フロッピーディスクドライブと同様に、ARMDドライブに起動可能なメディアが存在する場合は、BIOSはそのメディアから起動します。存在しない場合は、BIOSは検索順序に従って起動を続け、通常はハードドライブが最後に起動します。
ARMDにはARMD-FDDとARMD-HDDの2つのバリアントがあります。当初、ARMDではデバイスが非常に大きなフロッピー ドライブとして認識され、プライマリ フロッピー ドライブ デバイス 00h またはセカンダリ デバイス 01h のいずれかとして認識されていました。一部のオペレーティングシステムでは、標準のフロッピー ディスク ドライブよりもはるかに大きな容量のフロッピー ディスクをサポートするためにコードの変更が必要でした。また、標準のフロッピー ディスク ドライブ エミュレーションは、Iomega Zip ドライブなどの特定の大容量フロッピー ディスク ドライブには適さないことが判明しました。その後、これらの問題を解決するために、ARMD-HDD、ARMD-「ハードディスク デバイス」バリアントが開発されました。ARMD-HDDでは、ARMD デバイスはBIOSとオペレーティングシステムからハード ドライブとして認識されます。
2004年8月、 Coraid社のサム・ホプキンス氏とブラントリー・コイル氏は、ATAコマンドをPATAホストアダプタに直接接続するのではなく、イーサネット経由で伝送するための軽量なATA over Ethernetプロトコルを策定しました。これにより、確立されたブロックプロトコルをストレージエリアネットワーク(SAN)アプリケーションで再利用することが可能になりました。

IDEモードのコンパクトフラッシュ(CF)は、基本的に小型化されたATAインターフェースであり、フラッシュメモリストレージを使用するデバイスでの使用を目的としています。インターフェースチップや回路は不要で、小型のCFソケットを大型のATAコネクタに直接接続するだけです。(ただし、ほとんどのCFカードはIDEモードをPIO4までしかサポートしていないため、IDEモードではCF本来の速度よりもはるかに遅くなります[ 56 ])。
ATAコネクタの仕様にはCFデバイスへの電源供給用のピンが含まれていないため、電源は別の電源からコネクタに供給されます。ただし、CFデバイスがノートパソコンなどで一般的に使用されている2.5インチハードディスクドライブ用に設計された44ピンATAバスに接続されている場合は例外です。このバスは標準的なハードディスクドライブに電源を供給する必要があるためです。
CFデバイスはATAインターフェース上でデバイス0または1として指定できますが、ほとんどのCFデバイスはソケットが1つしかないため、エンドユーザーにこの選択肢を提供する必要はありません。CFは追加の設計方法によってホットプラグに対応できますが、デフォルトではATAインターフェースに直接配線されている場合はホットプラグ対応とは想定されていません。
{{cite book}}: CS1 maint: 数値名: 著者リスト (リンク)はCD-ROMドライブのインターフェースとして主流となり、SCSIと独自インターフェースの両方を置き換えた...
{{cite book}}: CS1 maint: 数値名: 著者リスト (リンク)設定は
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\atapi\Parameters\EnableBigLba = 1{{cite news}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク){{cite news}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク)