コンテンツにスキップ

Micro Channel architecture

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Iouri (会話 | 投稿記録) による 2004年7月9日 (金) 01:59個人設定で未設定ならUTC)時点の版 (fix typo)であり、現在の版とは大きく異なる場合があります。

Micro Channel architecture (マイクロチャネルアーキテクチャ (MCA エムシーエー)) は、1987年IBMで開発されたCPUアーキテクチャ非依存の16bit/32bitの高速バスアーキテクチャである。

MCAはISAの問題点を全て解決する為に設計されたバスアーキテクチャで、PS/2AS/400RS/6000、及び、一部の、System/370で採用された。

開発の経緯

ISAの問題点

ISAは、遅いバススピード、割り込み数の不足、バス調停機能の欠如、貧弱なグランドによる信号保護の不足、XT バスを拡張したが故の無秩序で非合理的な信号線の配列等、多数の問題点を抱えていた。

これらの問題の大部分は、初期のDOSを使用する限りにおいては問題とならなかったが、周辺機器の性能向上や、マルチタスクへの欲求とともに問題点が浮上してきた。

もう一つの問題は、ISAが Intel 8088に強く依存した構造を持つことであった。 ISAカードは他のアーキテクチャではそのままではまともに動作しないであろう。

最後の問題は、IBMがPCのハードウェア市場の主導権を失っていたことである。誰でもISAカードを作って、誰でもコンピュータの中にそれを導入することが出来たが、誰もISAカードの互換性に関して保証を行っていなかった。

主導権の奪還

IBMは既にデスクトップマシンでのRISC CPU採用を検討しており、全てのラインナップで同一のバスアーキテクチャが使用できれば大幅なコストの削減が可能であると判断していた。

そこで、新しい標準を作り、仕様の使用にライセンス契約を必要とする事で、IBMはハードウェア市場の主導権を取り戻すことが出来ると考えた。

これが、彼らが当時存在した高速バスアーキテクチャであったNuBusを採用せずに大金をかけてMCAを作成した理由であった。

仕様

MCAは本来32bitのバスであるが、PS/2のようなIntel 16bitCPUベースマシン等での使用の際のコネクタとロジックの価格を下げるため、16bit版もサポートした。 しかしながら、16bit版と32bit版には物理的な互換性は無く、互換性の無いカードが市場に大量に流通した。

MCAは信号の干渉を最小限に抑えるため、ピン配置を最適化し、信号線の周囲には必ずアースと電源供給線が配置された。

バス転送速度

バスクロックはISAの8MHzから10Mhzへとほんの少しだけ増やされただけだが、バスサイクルの見直しによるタイミングの切り詰めや、データ幅の拡大を行っているため、データ転送スループットは理論最大66Mbytes/sec、実質40Mbytes/secと帯域幅はISAの実に5倍以上に増大している。

後の32bit 33MHzのPCIでは理論最大データ転送速度が133Mbytes/secであることから、MCAは非常に効率のよいバスプロトコル設計が為されていたと言えよう。

バスマスタと高度なバス調停機能

カード、メモリ間のみならず、カード、カード間のバスマスタ転送にも対応し、当然ながらCPUは一切それに関与しない。これは、バスマスタ要求の競合と言う事態を発生させ得るが、MCAでは12ms単位でバス調停を行い、最も優先順位の高い処理にバスマスタを許すことで解決している。

この調停機構の存在により、非常にスループットの高いバス使用が可能となり、MCAは他のシステムの介入無しにシステムCPUのスピードより高速にデータを転送することが出来た。

POS(Programmable Option Select)

MCA最大の特徴はPOS(Programmable Option Select)と呼ばれるソフトウェアでリソースを自動設定できることである。

おかげで、ISAの地獄のような設定作業から逃れることが出来た。

今日の Plug and Playの始祖と言っても良いであろう。

割り込みの共有

MCAの割り込みはISAのエッジトリガ割り込みではなくレベルトリガ割り込みを採用しており、1本の割り込み線で複数の割り込みを処理することが可能である。

これは、後のPCIに似た仕組みで、割り込みレベルがHIになったとき、デバイスドライバが各MCAデバイスがファームウェアに持つ固有のIDを順に調べて行き、割り込みを要求しているデバイスの処理を行うことで実現している。

MCAの衰退

MCAはISAの欠点を無くすために徹底的に改良を加えたものであったが、IBMが販売するハードウエアにのみ搭載された。

そして、EISAXTバスアーキテクチャと同時に使用できないように、全く互換性の無いものであった。

IBMはライセンス料金を下げるなどの対策を取らなかったため、サーバ専門の互換機メーカは以外に採用されること無く、MCAは非常に小さなマーケットのまま高価格の製品に搭載されるのみとなり、PCIの登場と共にあっという間に市場から姿を消した。

関連項目