この項目では、コンピュータの部品の一つについて説明しています。浴室については「ユニットバス 」をご覧ください。
システムバスの概念図
システムバス (英語 : system bus )は、情報を運ぶためのデータバス (英語版 ) 、送信先を決定するためのアドレスバス 、動作を決定するためのコントロールバス (英語版 ) の3種類のバス の機能を単一のバスで実現したものである。この技術は、コスト削減とモジュール性の向上のために開発され、1970年代 から1980年代 かけて主流となったが、現代のコンピュータでは用途ごとに別のバスを使用している。
現代のコンピュータ のほとんどは、1945年 に発表されたEDVACに関する報告書の第一草稿 に基づいて設計されている。この報告書に基づくコンピュータ(一般にノイマン型 と呼ばれる)は、中央制御装置と演算論理装置 (ALU。報告書では中央演算部〈central arithmetic part〉と呼ばれる)をメモリ や入出力装置 と組み合わせて、プログラム内蔵型コンピュータ を構成する[ 1] 。この報告書では、コンピュータの一般的な構成と理論モデルは示されたが、そのモデルの実装は示されなかった[ 2] 。やがて、制御装置とALUが統合されて、中央処理装置(CPU )となった。
1950年代 から1960年代 にかけてのコンピュータは、一般的にアドホックな方法で構築されていた。例えば、当時のコンピュータにおけるCPU、メモリ、入出力装置は、それぞれが1つまたは複数個に別れた筐体に格納されており、ケーブルで接続されていた。当時のエンジニアは、プリント基板 を相互接続するためのバックプレーン の概念を拡張する形で、このケーブルの束の規格を標準化した。「バス」(bus)という名称は、初期の機械式計算機 を含む電気機械の各部に電力を運ぶ「バスバー 」(bus bar)としてすでに使用されていた[ 3] 。集積回路 (IC)の出現により、コンピュータの各ユニットが大幅に小さくなり、バスはさらに標準化された[ 4] 。標準化されたモジュールは、より均一な方法で相互接続することができ、開発や保守が容易になった。
低コスト化とモジュール性のために、メモリバス (英語版 ) 、入出力バス、コントロールバス (英語版 ) 、電源バスが1つの統一された「システムバス」にまとめられるようになった[ 5] 。コンピュータが単一の筐体に収まるほど小さくなるにつれ、モジュール性と低コスト化が重要になってきた(そして、顧客も低価格化を期待していた)。デジタル・イクイップメント・コーポレーション (DEC)は、大量生産によりミニコンピュータ のコストをさらに削減し、メモリバスにメモリマップドI/O を搭載して、入出力装置とメモリが同一のアドレス空間 上に見えるようにした。これは1969年 頃のPDP-11 のUnibus として実装されたもので、I/Oバスを別に用意する必要がなくなった[ 6] 。PDP-8のようなメモリマップドI/Oを持たないコンピュータでも、すぐにシステムバスが実装され、モジュールを任意のスロットに差し込むことができるようになった[ 7] 。一部の著者は、これをコンピュータアーキテクチャの新しい合理化されたモデルと呼んだ[ 8] 。
一般的に単一の集積回路 上にCPUを搭載している初期のマイクロコンピュータ の多くは、1975年 頃のAltair 8800 のS-100バス を皮切りに、単一のシステムバスを使用して構築された[ 9] 。IBM PC は、1981年にIndustry Standard Architecture (ISA)バスをシステムバスとして使用した。初期モデルにおけるパッシブバックプレーンは、CPUとRAMをマザーボード 上に配置し、システムバススロットにオプションの拡張カード のみを配置するという標準に置き換えられた。
システムバスを使用した単純な対称型マルチプロセッシング
1983年にマルチバス がIEEE 796として規格化された[ 10] 。サン・マイクロシステムズ は1989年に、より小型の拡張カードに対応するSBus を開発した[ 11] 。対称型マルチプロセッシング を実装する最も簡単な方法は、2つ以上のCPUを共有システムバスに接続することであり、1980年代まで使用されていた。しかし、共有バスはすぐにボトルネックとなり、より洗練された接続技術が模索された[ 12] 。
CPU設計 が、より高速な内部バスとより低速なペリフェラルバス を使用するように進化したことにより、インテル は、メインシステムメモリとの間の外部フロントサイドバス と、1つまたは複数のCPUとCPUキャッシュ との間の内部バックサイドバス (英語版 ) を使用する、デュアルインディペンデントバス (Dual Independent Bus, DIB) という言葉を使用するようになった。これは、1990年代半ばから後半にかけてPentium Pro やPentium II に導入された[ 13] 。CPUがメインメモリや入出力装置との間でデータ通信するためのプライマリバスをフロントサイドバス と呼び、バックサイドバスは2次キャッシュ にアクセスする。
現代のPCやサーバでは、HyperTransport やインテル QuickPath インターコネクト などの高性能な相互接続技術が使用されているが、よりシンプルな組み込み マイクロプロセッサではシステムバス・アーキテクチャが使用され続けている。システムバスを単一の集積回路の内部に内蔵することにより、System-on-a-chip を実現することもできる。その例として、AMBA (英語版 ) 、CoreConnect (英語版 ) 、Wishbone (英語版 ) などがある[ 14] 。
^ John von Neumann (June 30, 1945). “First Draft of a Report on the EDVAC ”. March 14, 2013時点のオリジナル よりアーカイブ。May 27, 2011 閲覧。 Introduction and editing by Michael D. Godfrey, Stanford University, November 1992.
^ Michael D. Godfrey; D. F. Hendry (1993). “The Computer as von Neumann Planned It” . IEEE Annals of the History of Computing 15 (1): 11–21. doi :10.1109/85.194088 . オリジナル の2011-08-25時点におけるアーカイブ。. https://web.archive.org/web/20110825104605/http://qss.stanford.edu/~godfrey/vonNeumann/edv-an.pdf .
^ アメリカ合衆国特許第 3,470,421号 "Continuous Bus Bar for Connector Plate Back Panel Machine Wiring" Donald L. Shore et al., Filed August 30, 1967, issued September 30, 1969.
^ アメリカ合衆国特許第 3,462,742号 "Computer System Adapted to be Constructed of Large Integrated Circuit Arrays" Henry S. Miller et al., Filed December 21, 1966, issued August 19, 1969.
^ Linda Null; Julia Lobur (2010). The essentials of computer organization and architecture (3rd ed.). Jones & Bartlett Learning. pp. 36,199–203. ISBN 978-1-4496-0006-8 . https://books.google.com/books?id=f83XxoBC_8MC&pg=PA36
^ C. Gordon Bell; R. Cady; H. McFarland; B. Delagi; J. O'Laughlin; R. Noonan; W. Wulf (1970). “A New Architecture for Mini-Computers—The DEC PDP-11” . Spring Joint Computer Conference : 657–675. http://research.microsoft.com/en-us/um/people/gbell/CGB%20Files/New%20Architecture%20PDP11%20SJCC%201970%20c.pdf .
^ Small Computer Handbook . Digital Equipment Corporation. (1973). pp. 2–9. http://www.bitsavers.org/pdf/dec/pdp8/handbooks/Small_Computer_Handbook_1973.pdf
^ Miles J. Murdocca; Vincent P. Heuring (2007). Computer architecture and organization: an integrated approach . John Wiley & Sons. p. 11. ISBN 978-0-471-73388-1
^ Herbert R. Johnson. “Origins of S-100 computers ”. 2020年4月9日 閲覧。
^ “796-1983 — IEEE Standard Microcomputer System Bus ”. Institute of Electrical and Electronics Engineers (1983年). May 25, 2011 閲覧。
^ Frank, E.H. (1990). “The SBus: Sun's high performance system bus for RISC workstations”. Digest of Papers Compcon Spring '90. Thirty-Fifth IEEE Computer Society International Conference on Intellectual Leverage . pp. 189–194. doi :10.1109/CMPCON.1990.63672 . ISBN 0-8186-2028-5
^ Donald Charles Winsor (1989). Bus and Cache Memory Organization for Multiprocessors . University of Michigan Electrical Engineering department. http://www.eecs.umich.edu/~tnm/trev_test/dissertationsPDF/donw.pdf Ph.D. dissertation.
^ Todd Langley and Rob Kowalczyk (January 2009). “Introduction to Intel Architecture: The Basics ”. White paper . Intel Corporation. June 7, 2011時点のオリジナル よりアーカイブ。May 25, 2011 閲覧。
^ Rudolf Usselmann (January 9, 2001). “OpenCores SoC Bus Review ”. May 30, 2011 閲覧。
主要項目 コンピュータバス規格 ストレージバス規格 ペリフェラルバス 規格オーディオ規格 コンピュータバス規格 (ポータブル) コンピュータバス規格 (組み込み) ビークルバス
補足:インタフェース のリストは通信速度がおおよそ速い順。セクションの最後に挙げているインタフェースが最も速い。
カテゴリ