Industry Standard Architecture
Industry Standard Architecture(インダストリ スタンダード アーキテクチャ、通常ISA(アイ・エス・エー/アイサ)と略される)は、1984年に発売されたIBM PC/ATに搭載されたバス(通称ATバス)を、1988年に標準化したものである。
経緯
ATバスはIBM PC/ATに搭載されたバスであり、8088対応の8ビットバスであるXTバスを、80286に対応した16ビットバスに拡張したものである[1]。当時は汎用バスとしての標準化はされておらず「ATバス」という正式名称も存在しなかったが、PC/ATおよびPC/AT互換機が事実上の標準となったため、この「ATバス」という名称や規格もまた、事実上の標準となった。
1988年にEISAが制定された際に初めて、「ISAバス」の名称がつけられ、遡って標準化された。このため現在でも、当時のEISA陣営のメーカーは「ISAバス」、対立したIBMは「ATバス」と呼ぶ傾向がある。
概要
ISAは、XTバスの先に増えたアドレス線やデータ線や割り込み線を付加した構造で、XTバスの上位互換機能を持つが、泥縄式拡張であるため、遅いバススピード、割り込み数の不足、バス調停機能の欠如、無秩序で非合理的な信号線配列、貧弱なグランドによる信号保護の不足、電力供給の不足等、数多くの問題を抱え、汎用バスとしてはかなり使いづらい存在である。
とは言うものの、当初ローカルな使用目的で実装が容易なことを第一として作成されたバスが汎用標準バスとして普及すると言う事態は良くある事で、アーキテクチャに依存しない汎用指向のバスで広く普及しているのはPCI位のものであろう。
なお、PC/ATに搭載されたバスと、以後「ATバス」と総称されて後に「ISA」と呼ばれたバスは、厳密には同一ではない。
ISAバスは16の割り込みチャネル(IRQ)を持ち、そのうち11が拡張スロットに引き出されている。IRQ 8~15はIRQ 2に接続された割り込みコントローラが受け持つため、優先度はIRQ 2と3の間になる。また、8つのDMAチャネルを持ち、うち7つが引き出されている。8ビットのスロットで使用できるのは割り込みが6つ、DMAが3つである。
割り込み チャネル |
拡張スロット | 標準で割り当てられた機能 | |
---|---|---|---|
16 ビット |
8 ビット | ||
0 | 無 | 無 | インターバルタイマ |
1 | 無 | 無 | キーボード |
2 | 無 | 無 | 2つ目の割り込みコントローラに接続 |
8 | 無 | 無 | リアルタイムクロック |
9 | 有 | 有 | 汎用(拡張カード用)XTバスのIRQ 2の代用 |
10 | 有 | 無 | 汎用(拡張カード用) |
11 | 有 | 無 | 汎用(拡張カード用) |
12 | 有 | 無 | 汎用(拡張カード用) |
13 | 無 | 無 | 数値演算コプロセッサ |
14 | 有 | 無 | ハードディスクコントローラ |
15 | 有 | 無 | ハードディスクコントローラ |
3 | 有 | 有 | シリアルポート(COM2) |
4 | 有 | 有 | シリアルポート(COM1) |
5 | 有 | 有 | 汎用(拡張カード用) |
6 | 有 | 有 | フロッピーディスクコントローラ |
7 | 有 | 有 | パラレルポート |
DMA チャネル |
拡張スロット | 標準で割り当てられた機能 | |
---|---|---|---|
16 ビット |
8 ビット | ||
0 | 有 | 無 | 汎用(拡張カード用) |
1 | 有 | 有 | 汎用(拡張カード用) |
2 | 有 | 有 | フロッピーディスクコントローラ |
3 | 有 | 有 | ハードディスクコントローラ |
4 | 無 | 無 | 1つ目のDMAコントローラに接続 |
5 | 有 | 無 | 汎用(拡張カード用) |
6 | 有 | 無 | 汎用(拡張カード用) |
7 | 有 | 無 | 汎用(拡張カード用) |
PC/XTやPC/ATでは、CPUのローカルバスをバスバッファを経由しただけで外部に引き出した構造をしており、そのためバスクロックはCPUのクロックと同一となり、PC/XTでは8088の8ビット・4.77MHz、PC/ATでは80286の16ビット・8MHz(初代は6MHz)であった。つまり、各モデル(CPU)ごとのローカル規格のバスであった。
これに対してコンパックはDeskpro 386でIBMに先駆けて32ビットの80386を採用した際に、バスブリッジを導入し、CPUのクロックと外部バスのクロックを分離した。これにより32ビットの80386と、既に普及していた16ビット・8MHz前後のATバス周辺機器の両立が可能となった。コンパックはこれをFlex Architectureと呼んだ。更にバスクロックは10MHzが一般的となり、後には再参入したIBMを含め、スロット数を含め色々な「ATバスマシン」であるPC/AT互換機が普及し事実上の標準となった。反面、いくら高速な32ビットCPUを搭載しても、外部バスは16ビット・10MHz前後のままというレガシーな負の側面は残り、後のMCAとEISAの規格争いに繋がることになった。
後にEISA陣営とIEEEが標準化した「ISAバス」は、正確にはバスブリッジ方式のものである。
1990年代後半より、ISAはPCIの普及に伴い徐々に姿を消していったが、一部の特殊な機器をISAで接続する需要が少なからず存在していたことから、2004年頃まではISAスロットを搭載したマザーボードが販売されていたものの、ISAスロット非搭載を前提とするインテルチップセット900番台の本格普及を機に姿を消していった。
なお、拡張スロットとしてのISAバスが搭載されていない機種であっても、レガシーデバイスと呼ばれるPS/2コネクタ、DMAコントローラなどは、ソフトウェアからのアクセス方法の互換性が保たれており、見かけ上ISAバスに接続されているように認識される。
注
- ↑ PC/ATで割り込みコントローラが追加された関係で、オリジナルのXTバスではIRQ 2になっているB4番の信号線がISAバス(16ビット・8ビットとも)ではIRQ 9になっている。