EIDEとは何? わかりやすく解説 Weblio辞書 (original) (raw)

Advanced Technology Attachment(アドバンスド テクノロジー アタッチメント、略号: ATA)は、パーソナルコンピュータ (PC) とハードディスク (HDD) 間のインタフェースのひとつである。1989年に制定され、1990年代に主流となっていた。

歴史

本節での容量の単位は、一般的な1024をキロ (KBytes) としているので、1000をキロ (KB) とするHDDメーカー(すなわちHDD単体に貼られたラベルの表記)と異なることに注意されたい。

IDE

PC/ATのハードディスクインタフェースは、当初ST-506、次いでST-506を高速化したESDISCSI等が使用されていたが、次第にST-506をインテリジェント化(ドライブとコントローラを統合)した1986年コンパックコナー・ペリフェラルが開発したIDE (Integrated Drive Electronics) が大勢を占めるようになった。

その後、各社独自の拡張が行われ、互換性に問題が出てきたため、1989年に各HDDメーカが共通仕様であるATA (AT Attachment interface) を制定し、1994年ANSIでATA-1として規格化された。

IDE HDDのパラメータの制約

| | HDD側 | BIOS側 | 小さい方 | | | ---------- | ---------- | ------------ | --------- | | シリンダ番号 (C) | 0 - 65535 | 0 - 1023 | 0 - 1023 | | ヘッド番号 (H) | 0 - 15 | 0 - 254 | 0 - 15 | | セクタ番号 (S) | 1 - 255 | 1 - 63 | 1 - 63 | | 最大容量 | 128GB | 7.8GB | 504MB |

IDE HDDには、504Mバイト(512×1024×16×63 = 528,482,304バイト)を超える容量が認識されないという問題があった。これは「504MBの壁」といわれ、1993年頃までに発売されたPCではこの問題がある。[1]HDD側のパラメータとPC/ATのBIOS (INT 13H API) のパラメータのミスマッチに起因する。ただし、504MBの壁は、あくまでIDE HDDとPCのBIOSの組み合わせにより生じる問題であり、HDD側ではもっと大きな容量(理論上の最大値は128GB)のアドレッシングが可能である。すなわち、一般には「504MBを境にEIDE HDDとIDE HDDが分かれる」と思われている場合があるが、実はHDD側にはそのような区別はない。

EIDE

EIDE (Enhanced IDE) とは、一般にIDE HDDの504MBの壁を超えるための規格として認識されているが、実際は以下のようなさまざまな拡張規格の総称である。ウェスタン・デジタルが提唱した。

504MBの壁は、BIOSのCHS (Cylinder, Head, Sector) をIDEのCHSに直結させていることが原因なので、途中でうまく変換してやることにより回避できる。その手段として、LBAとCHSトランスレーションが導入された。

なお、LBAはHDD側でCHSレジスタを読み替えることで実現されており、アドレッシング可能な範囲はほとんど変わっていない(28ビット)。すなわち、HDD側ではLBAに対応することでとくに容量上限を増やせるわけではない(厳密には、セクタ番号レジスタに0を指定できるようになるため、若干増える)。

ATAPI

ATA Packet Interfaceの略。 HDDなどの非ATAPIのATAデバイスでの通信のデータに相当する部分にSCSIと同等のパケット形式のコマンドを発行することにより、ATAコマンドより多くのコマンド種が必要なCD-ROMのようなHDD以外のデバイスの接続を可能とした規格。一般には、CD-ROM等をサポートしたIDEとして認識されている。当初SFF-8020という規格だったが、ATA/ATAPI-4でATA規格に統合された。

48bit LBA(BigDrive)

従来の28ビットLBAを48ビットに拡張し、128ペビバイト(140,737,488,355,328KiB)までの容量を扱えるようにした規格。ATA/ATAPI-6で採用された。BigDriveはMaxtor社(当時)が発表したATAの拡張規格につけた名前で、ATA規格では48bitLBAと呼ばれる。

HDDをリセットした直後は従来モード (28ビットLBA) で動作し、ホストよりコマンドで48bitLBAモードに切り替える。切り替えた後はアドレスレジスタの意味が変わり2度書き込むことで1つのアドレスと解釈されるようになる。

この規格に対応したHDDを未対応(28ビットLBA)の機器およびOSに接続すると、切り替えが発生しないため128GiBのドライブとして動作する(127GiBの壁、おおよそ2002年以前に発売されたPCでこの壁がある)。

規格上、従来の28bitLBAのパラレルATAコントローラでも48BitLBAは使えるように考慮されているため、動作するオペレーティングシステム並びにデバイスドライバが対応していれば、全領域利用可能である。ただし、ブートデバイスとして利用する場合にはBIOS側が対応する必要があり、非対応の場合はブートストラップローダに加工するか、起動に必要なシステム/データがBIOSが管理できる領域に入っている必要がある。

規格のあゆみ

ATA/ATAPIの規格概要を以下に示す。

ATA-1(1994年ANSI 旧規格 X3.221-1994

IDEの規格化

ATA-2(1996年ANSI 旧規格 X3.279-1996

PIO 3,4 Multiword DMA 1,2追加による高速化

ATA-3(1997年ANSI 旧規格 X3.298-1997

Singleword DMAの削除、リムーバブルメディアのサポート、S.M.A.R.T.対応。2.5インチHDD向け44ピンコネクタ規格制定

ATA/ATAPI-4(1998年ANSI INCITS 317-1998

ATAPIの統合。スキャナ、プリンタ、メディアチェンジャー等SCSI準拠の多種デバイスのサポート。UltraDMA 0, 1, 2のサポート。コンパクトフラッシュ向けコマンドのサポート

ATA/ATAPI-5(2000年ANSI INCITS 340-2000

UltraDMA 3, 4のサポート。80ピンケーブルの規格制定

ATA/ATAPI-6(2002年ANSI INCITS 361-2002

UltraDMA 5、48bit LBA (Big Drive)のサポート

ATA/ATAPI-7(2005年、ANSI INCITS 397-2005 Vol 1 Vol 2 Vol 3

UltraDMA 6のサポート。1.8、2.5インチHDDの3.3V規格定義。ストリーミング向けコマンドのサポート。シリアルATA1.0の仕様が追加。

ATA/ATAPI-8 コマンドセット(2008年ANSI INCITS 452-2008

ベリファイ付きWriteコマンド、疑似エラー発生コマンドのサポート。ハイブリッドHDDフラッシュメモリなどの不揮発性キャッシュを搭載)向けコマンドのサポート

ATA-8

伝送規格は審議中

パラレルATA

パラレルATAとは

シリアルATAが登場して以降、旧来のパラレル通信を行うATA規格を区別するレトロニムであり、正規の規格名称ではない。しかし本節および本節の下層節では可読性向上の便宜を図るため、シリアルATA登場以前の規格を含めて「パラレルATA」と表記する。シリアルATA登場以前の規格は単にATAと称されていたが、それらをここではパラレルATAと記述していることに留意が必要。

マザーボード上にあるパラレルATAの接続端子(最も下側)

パラレルATAでは、ケーブル1本あたり、最大2台の機器が接続可能(マスタースレーブ接続)である。リセット時などにマスター側の機器がスレーブ側の機器を制御するタイミングがあるが、基本的にはホストから独立して制御できる。

ケーブル

上:40芯パラレルATAケーブル
下:80芯パラレルATAケーブル

パラレルATAは規格制定当初40芯、Ultra DMA 66 (UDMA4) 以降は80芯40pinコネクターのフラットケーブル(またはリボンケーブル)を用いて接続し、ケーブル長は最大18インチ (45.7cm) と規定されている。80芯フラットケーブルを用いたものであってもコネクタのコンタクト(電気接点)の数は従前同様40である(上位互換)。

80芯ケーブル

80芯ケーブルは、信号線とグラウンド線を交互に配置し、40芯ケーブルの伝送特性を改良したものである。使われるコネクタには、GND信号が偶数ピンまたは奇数ピンに割り当てられる二つの仕様があり、それぞれコネクタに刻印されている ODD GND または EVEN GND の文字列で区別することが出来る。多くの市販ケーブルや、製品としてPCに組み込まれているコネクタはODD GNDの物である。柔軟な配線取り回しや筐体内の気流改善を目的として使われるスマートケーブルは、シールド付き40芯(丸)ケーブルを使うため、「Ultra DMA 66 対応」を謳うものであっても80芯フラットケーブルの特性を保持できないことがあり障害の原因になることがある。80芯ケーブルではケーブル部はすべてフラットケーブルであり、40芯ケーブルの一部に見られたリボンケーブルを用いたものはリボンケーブル用80芯コネクタが製造されなかったことからケーブルアセンブリとしても製造されていない。

コネクタには色分けがあり、デバイス側から見た場合、全40Pinのコンタクトにおいて下記の違いがある。なお、20Pinは逆差し防止の為のピンであり、埋められていたり、接点が無いこともある。

ケーブルセレクト

80芯ケーブルには、ケーブルへの接続位置でマスタースレーブを設定するケーブルセレクトという機能が実装されている(40芯ケーブルではオプション扱いであった)。

40芯ケーブルのケーブルセレクト

ケーブルセレクト対応の40芯ケーブルは実装手法が2種類あり、80芯ケーブル同様にスレーブデバイス用のコネクタから28Pinコンタクトを除去する方法と、フラットケーブルの途中でライン28を切断(切り欠く)手法があった。28Pinコンタクトを除去する方法は80芯ケーブル登場以降そのコネクタを流用したものであり、40芯ケーブルが主流であった頃の実装はケーブルのライン28を切断加工する方法がほとんどであった。このため残存する40芯ケーブルがケーブルセレクト対応であるか否かを判別する方法にケーブル外観から切断(欠損)部分を見つける方法が紹介される場合があるが、確実な判別方法ではない。また、後者のケーブルセレクト対応40芯ケーブルの場合、80芯ケーブルと異なりデバイス側ケーブル端がスレーブとなるので機器接続の際には注意が必要である。

転送モード

パラレルATAはその長い歴史を反映して数々の転送モードが存在する。

PIO転送モード

PIO モード一覧

モード 最大転送速度(MB/s) 制定された規格
Mode 0 3.3 ATA
Mode 1 5.2
Mode 2 8.3
Mode 3 11.1 ATA-2
Mode 4 16.7

PIO (Programmed Input / Output) 転送モードは、CPUが直接IDEコントローラI/Oポートを経由してデータの送受信を行う。

5種類のモードが存在するが、基準となるクロック周波数が異なるだけである。全てのATA機器は機器転送速度、転送モードのネゴシエートの為、PIO Mode 0をサポートする。

今日でも、速度を必要としない機器はこのモードのみをサポートする。

Singleword DMA転送モード

Singleword DMAモード一覧

モード 最大転送速度(MB/s) 制定された規格
Mode 0 2.1 ATA
Mode 1 4.2
Mode 2 8.3

Singleword DMAモードは、IBM PC本体に搭載されていた8ビットDMA転送が可能なDMAコントローラを用いて転送を行うことを想定したモードである。これはATA/ATAPI-3規格において廃止されている。

Multiword DMA転送モード

Multiword DMAモード一覧

モード 最大転送速度(MB/s) 制定された規格
Mode 0 4.16 ATA
Mode 1 13.3 ATA-2
Mode 2 16.6

Multiword DMAモードは、PC/ATで拡張された16ビットのDMA転送が可能なDMAコントローラを用いて転送を行うことを想定したモードである。ハードディスクではUltra DMA規格化後はあまり使用されていないが、光ディスクドライブでは前述したATAPIの転送モードとして用いられることが多い。

Ultra DMA転送モード

UDMA モード一覧

モード 最大転送速度(MB/s) 制定された規格
UDMA 0 16.7 ATA-4
UDMA 1 25.0
UDMA 2 33.3
UDMA 3 44.4 ATA-5
UDMA 4 66.6
UDMA 5 100.0 ATA-6
UDMA 6 133.3 ATA-7
UDMA 7 166.6

Ultra DMA転送モードは、ATA/ATAPI-4以降で追加されたチップセットやUIDEコントローラカードに搭載された、専用の高速なDMAコントローラを使用して転送を行うモード。転送時のデータにCRCを付加し、信頼性を向上させている。

その他

UDMA 6において、32ビット 33MHzのPCIと同じ、最大133Mbytes/secでの転送が可能となっているが、これは、あくまでもバスの転送帯域である。HDDに搭載されているキャッシュメモリからのデータを転送する時にのみ、額面通りの性能が発揮できるが、ほとんどの場合はハードディスクの読み出し速度が追従できない。また、SCSIでは普通に用いられている、コマンド投入からデータ転送開始までの間、バスの開放を行い、バスの使用効率を上げる仕組み (Disconnect / Reconnect) は、ATA / ATAPI-6以降で規格化されているものの、実装されている機器はほとんど存在しないため、複数デバイスがある場合のスループットは数値から期待されるほどは高くないのが普通。

シリアルATA

脚注

  1. ^IDEディスク容量の壁について”. www.tadachi-net.com. 2024年10月19日閲覧。

関連項目

外部リンク

ウィキメディア・コモンズには、**ATA**に関連するメディアがあります。

パラレルATA

シリアルATA

バス
主要項目 システムバス フロントサイドバス バックサイドバス(英語版デイジーチェーン コントロールバス(英語版アドレスバス バスコンテンション(英語版バスマスタリング ネットワークオンチップ(英語版プラグアンドプレイ バス帯域幅の一覧
コンピュータバス規格 S-100バス Unibus VAXBI(英語版MBus STD Bus(英語版) SMBus(英語版Q-bus Europe Card Bus(英語版ISA STEbus(英語版) Zorro II(英語版) Zorro III(英語版) CAMAC(英語版) FASTBUS(英語版LPC HP Precision Bus(英語版EISA VME VXIバス NuBus TURBOchannel(英語版MCA SBus Cバス NESA(Eバス) 98ローカルバス VLB HP GSC bus(英語版) CoreConnect(英語版InfiniBand UPA(英語版AGP Compute Express Link (CXL) Direct Media Interface (DMI) RapidIO インテル QuickPath インターコネクト HyperTransport NVLink APバス
ストレージバス規格 ST-506 ESDI SMD(英語版) Parallel ATA SSA(英語版) DSSI(英語版HIPPI シリアルATA eSATA eSATAp(英語版mSATA SCSI Parallel SCSI(英語版Serial Attached SCSI ファイバーチャネル SATA Express U.2 (SFF-8639) U.3 M.2 NVM Express EDSFF(英語版
ペリフェラルバス規格 Apple Desktop Bus HP-IL HIL(英語版MIDI マルチパス RS-232 (シリアルポート) EIA/RS-422 RS-423(英語版RS-485 DMX512-A IEEE-488 (GPIB) IEEE 1284 (パラレルポート) UNI/O(英語版) ACCESS.bus(英語版1-Wire I²C SPI EIA/RS-485 Parallel SCSI(英語版Profibus USB (USB Type-C) FireWire (1394) Camera Link(英語版External PCI Express x16 Thunderbolt PCI PXI(英語版PCI-X PCI Express
オーディオ規格 ADAT Lightpipe(英語版) AES3(英語版) Intel HD Audio(英語版Inter-IC Sound MADI(英語版) McASP(英語版S/PDIF トスリンク
コンピュータバス規格 (ポータブル) PCカード ExpressCard
コンピュータバス規格 (組み込み) Multidrop bus(英語版) AMBA(英語版) Wishbone(英語版AXI
ビークルバス LIN(英語版) J1708(英語版) J1587(英語版) FMS(英語版) J1939(英語版CAN VAN(英語版FlexRay IDB-1394 MOST
補足:インタフェースのリストは通信速度がおおよそ速い順。セクションの最後に挙げているインタフェースが最も速い。 カテゴリ