このページの本文へ

前へ 1 2 3 4 次へ

ロードマップでわかる!当世プロセッサー事情 第106回

バスの歴史を振り返る XT Bus~ISA Bus編

2011年06月20日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/

  • この記事をはてなブックマークに追加
  • 本文印刷

 前回では「バス」の歴史について大雑把に解説したので、今回はPCの基礎を築いたと言える、「XT Bus」と「ISA Bus」の詳細について解説したい。

XT Busを拡張して生まれたISA Bus

 まずは話をわかりやすくするために、3種類のバスの関係を図1に示す。大元になったのは、「IBM PC/XT」で採用されたXT Busである。このXT Busをそのままに、アドレスとデータをそれぞれ8bitずつ拡張して、合計で16bitのバスとしたのがISA Busである。

図1 XT Bus、ISA Bus、VL Busの関係

 一方の「VL Bus」(次回解説する)は、ISA Busとはまったく別に、改めてアドレスおよびデータを32bit幅で用意したバスである。その意味ではVL Busとは、図1では黄色いコネクターで拡張された32bit Busのことだけをいう。VL Busは単独では動作できないので、必ずISA Busか「EISA Bus」と連携をとる必要がある。そのため図1のように、「VL Bus+ISA Bus」もしくは「VL Bus+EISA Bus」という形で実装されることになった。

 XT Busに話を戻そう。XT Busは「i8088」をベースとしたPC向けバスになる(図2)。そのためデータバスは8bit幅である。ただし、i8088は最大1MBのメモリー空間を持つので、これをサポートするためにアドレスバスは、1MB分にあたる20bitが用意されている(SA0~SA19)。

図2 XT Busのピン構成

 「IRQ2~IRQ7」とは何かと言うと、割り込み信号である。これを説明するにはI/Oの基本的な説明をしておく必要があるだろう。図3は、CPUからFDDに書き込んだ場合の、処理の流れである(HDDも同様)。一連の流れを箇条書きにするとこうなる。

図3 FDD書き込み時の処理の流れ

  • ① CPUはFDD I/Fのコントローラーに対して「I/O要求」を出す。
  • ② これを受けたFDD I/Fは、FDDに対して書き込みをする。
  • ③ FDDは書き込みを開始し、終わったら「完了通知」をFDD I/Fに返す。
  • ④ FDD I/FはCPUに「完了通知」を返す。
  • ⑤ CPUは完了通知を受け取り、ファイル書き込みを完了する。

 完了通知が来るまで待つのは、もし書き込みに失敗したら再書き込みするなり、書き込み自体が失敗したというエラー処理をするためだ。書き込み要求を出したらそれで終わり、というわけにはいかない。そこで問題になるのは、「CPUはいつ書き込み完了を知るか」である。

前へ 1 2 3 4 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン