PCIのしくみ

May 02 2001
基本的に、バスはコンピューター内のコンポーネント間のチャネルまたはパスです。そして、高速バスを持つことは、車の中で良いトランスミッションを持つことと同じくらい重要です。
コンピュータのコンポーネントはバスを介して連携します。上記のようなPCIバスとPCIカードについて学びます。コンピュータハードウェアの写真をもっと見る。

デスクトップコンピュータが数十年前に最初に開発されて以来、コンピュータコンポーネントのパワーと速度は着実に増加しています。ソフトウェアメーカーは、プロセッサ速度とハードドライブ容量の最新の進歩を利用できる新しいアプリケーションを作成し、ハードウェアメーカーは、ハイエンドソフトウェアの需要に対応するために、コンポーネントの改善と新しいテクノロジーの設計を急いでいます。

ただし、注意を逃れることが多い要素が1つあります。それは、バスです。基本的に、バスはコンピュータのコンポーネント間のチャネルまたはパスです。高速バスを持つことは、車の中で良いトランスミッションを持つことと同じくらい重要です。 700馬力のエンジンと安価なトランスミッションを組み合わせた場合、そのすべてのパワーを道路に供給することはできません。バスにはさまざまな種類があります。

バスの考え方は単純です。バスを使用すると、コンポーネントをコンピューターのプロセッサーに接続できます。接続する可能性のあるコンポーネントには、ハードディスク、メモリ、サウンドシステム、ビデオシステムなどがあります。たとえば、コンピュータの動作を確認するには、通常、CRTまたはLCD画面を使用します。画面を駆動するには特別なハードウェアが必要なので、画面はグラフィックカードによって駆動されます。グラフィックカードは、バスに接続するように設計された小さなプリント回路基板です。グラフィックカードは、コンピュータのバスを通信パスとして使用してプロセッサと通信します。

バスの利点は、部品の交換が容易になることです。より優れたグラフィックカードを入手したい場合は、バスから古いカードを抜き、新しいカードを差し込むだけです。コンピューターに2台のモニターが必要な場合は、2枚のグラフィックカードをバスに接続します。等々。

この記事では、これらのバスのいくつかについて学習します。Peripheral Component Interconnect(PCI)と呼ばれるバスに集中します。PCIとは何か、PCIがどのように動作し、どのように使用されるかについて話し、バス技術の将来について考察します。

­

コンテンツ
  1. システムバスとPCIバス
  2. PCIの歴史
  3. フロントサイドバス、バックサイドバス、PCIカード
  4. プラグ&プレイ
  5. PCIデバイスの追加
  6. PCI標準とPCIExpress

システムバスとPCIバス

上の図は、さまざまなバスがCPUに接続する方法を示しています。

20年または30年前、プロセッサは非常に低速であったため、プロセッサとバスが同期されていました。バスはプロセッサと同じ速度で実行され、マシンには1つのバスがありました。今日、プロセッサは非常に高速に実行されるため、ほとんどのコンピュータには2つ以上のバスがあります。各バスは特定のタイプのトラフィックに特化しています。

今日の典型的なデスクトップPCには、2つの主要なバスがあります。

  • 2つ目は、ハードディスクやサウンドカードなどと通信するための低速バスです。このタイプの非常に一般的なバスの1つは、PCIバスとして知られています。これらの低速バスは、コンピューターのチップセットの一部であり、トラフィック警官として機能し、他のバスからのデータをシステムバスに統合するブリッジを介してシステムバスに接続します。

技術的には他のバスもあります。たとえば、ユニバーサルシリアルバス(USB)は、カメラ、スキャナー、プリンターなどをコンピューターに接続する方法です。細いワイヤーを使用してデバイスに接続し、多くのデバイスがそのワイヤーを同時に共有できます。Firewireは別のバスであり、今日では主にビデオカメラと外付けハードドライブに使用されています。

次に、PCIバスの歴史について学びます。

PCIの歴史

元のIBMPC(1982年頃)の元のPCバスは、16ビット幅で、4.77MHzで動作していました。正式にはISAバスとして知られるようになりました。このバス設計は、最大9 MBps(メガバイト/秒)程度の速度でデータを渡すことができ、今日の多くのアプリケーションでも十分な速度です。

数年前、ISAバスはまだ多くのコンピューターで使用されていました。そのバスは、1980年代初頭に元のIBMPC用に開発されたコンピューターカードを受け入れました。ISAバスは、それを置き換えるためのより高度なテクノロジーが利用可能になった後も使用され続けました。

その寿命にはいくつかの重要な理由がありました:

  • 多数のハードウェアメーカーとの長期的な互換性。
  • マルチメディアが登場する前は、新しいバスの速度を十分に活用したハードウェア周辺機器はほとんどありませんでした。

技術が進歩し、ISAバスが追いつかなくなったため、他のバスが開発されました。これらの中で重要なのは、8 MHzで32ビットであったExtended Industry Standard Architecture(EISA)とVesa Local Bus(VL-Bus)でした。 VL-Bus(VESA、標準を作成したVideo Electronics Standards Associationにちなんで名付けられた)の優れた点は、32ビット幅で、通常はプロセッサ自体の速度であるローカルバスの速度で動作することです。 VL-Busは基本的にCPUに直接接続されています。これは、1つのデバイス、または2つのデバイスでも問題なく機能しました。しかし、3つ以上のデバイスをVL-Busに接続すると、CPUのパフォーマンスに干渉する可能性がありました。このため、VL-Busは通常、グラフィックカードの接続にのみ使用されていました。 、CPUへの高速アクセスから本当に恩恵を受けるコンポーネント。

1990年代初頭、Intelは検討対象の新しいバス規格であるPeripheral Component Interconnect(PCI)バスを導入しました。PCIは、ISAとVL-Busの間の一種のハイブリッドを提供します。接続されたデバイスのシステムメモリへの直接アクセスを提供しますが、ブリッジを使用してフロントサイドバスに接続し、したがってCPUに接続します。基本的に、これは、CPUとの干渉の可能性を排除しながら、VL-Busよりもさらに高いパフォーマンスが可能であることを意味します。

PCIバスとPCIカードの開発について詳しくは、次のページをご覧ください。

フロントサイドバス、バックサイドバス、PCIカード

バスの種類

フロントサイドバスは、メインメモリ(RAM)、ハードドライブ、PCIスロットなど、コンピュータ内の他のほとんどのコンポーネントにプロセッサを実際に接続する物理接続です。最近では、フロントサイドバスは通常400 MHzで動作し、新しいシステムは800MHzで動作します。

バックサイドバスは、プロセッサとレベル2キャッシュ間の個別の接続です。このバスはフロントサイドバスよりも高速で、通常はプロセッサと同じ速度で動作するため、すべてのキャッシュが可能な限り効率的に機能します。バックサイドバスは何年にもわたって進化してきました。 1990年代、バックサイドバスは、メインプロセッサをオフチップキャッシュに接続するワイヤでした。このキャッシュは実際には別のチップであり、高価なメモリを必要としました。それ以来、レベル2キャッシュがメインプロセッサに統合され、プロセッサがより小型で安価になりました。キャッシュはプロセッサ自体にあるため、ある意味では、バックサイドバスは実際にはバスではなくなりました。

PCIは、VL-Busよりも多くのデバイス(最大5つの外部コンポーネント)を接続できます。外部コンポーネント用の5つのコネクタはそれぞれ、マザーボード上の2つの固定デバイスと交換できます。また、同じコンピュータに複数のPCIバスを搭載することもできますが、これはめったに行われません。PCIブリッジチップは、CPUの速度とは関係なくPCIバスの速度を調整します。これにより、より高度な信頼性が提供され、PCIハードウェアメーカーが何を設計するかを正確に把握できるようになります。

PCIは元々、32ビット幅のパスを使用して33MHzで動作していました。標準の改訂には、速度を33MHzから66MHzに上げ、ビット数を64に倍増することが含まれます。現在、PCI-Xは、133 MHzの速度で64ビット転送を提供し、驚くべき1 GBps(ギガビット/秒)を実現します。転送速度!

PCIカードは47ピンを使用します。

PCIカードは47ピンを使用して接続します(マスタリングカードの場合は49ピンで、CPUの介入なしにPCIバスを制御できます)。PCIバスは、ハードウェアの多重化により、非常に少ないピンで動作できます。つまり、デバイスは1つのピンを介して複数の信号を送信します。また、PCIは、5ボルトまたは3.3ボルトのいずれかを使用するデバイスをサポートします。

Intelは1991年にPCI標準を提案しましたが、Windows 95が登場するまで(1995年)人気を博しませんでした。PCIに対するこの突然の関心は、Windows 95がプラグアンドプレイ(PnP)呼ばれる機能をサポートしていたという事実によるものでした。これについては、次のセクションで説明します。

プラグ&プレイ

プラグアンドプレイ(PnP)とは、デバイスを接続したり、カードをコンピューターに挿入したりできることを意味し、システムで機能するように自動的に認識および構成されます。PnPは単純な概念ですが、それを実現するためにコンピューター業界の側で協調した努力が必要でした。IntelはPnP標準を作成し、それをPCIの設計に組み込みました。しかし、主流のオペレーティングシステムであるWindows 95がPnPのシステムレベルのサポートを提供したのは、数年後のことでした。PnPの導入により、PCIを備えたコンピューターの需要が加速し、選択したバスとしてISAにすぐに取って代わりました。

PnPを完全に実装するには、次の3つが必要です。

PnP BIOS - PnPを有効にし、PnPデバイスを検出するコアユーティリティ。BIOSは、既存のPnPデバイスの構成情報についてもESCDを読み取ります。

拡張システム構成データ(ESCD)-インストールされているPnPデバイスに関する情報を含むファイル。

PnPオペレーティングシステム-WindowsXPなど、PnPをサポートするすべてのオペレーティングシステム。オペレーティングシステムのPnPハンドラーは、各PnPデバイスのBIOSによって開始された構成プロセスを完了します。PnPは、通常は手動で、またはハードウェアメーカーが提供するインストールユーティリティを使用して実行されるいくつかの重要なタスクを自動化します。これらのタスクには、次の設定が含まれます。

  • 割り込み要求(IRQ)-ハードウェア割り込みとも呼ばれるIRQは、CPUの注意を引くためにコンピューターのさまざまな部分で使用されます。たとえば、マウスを動かすたびにIRQを送信して、CPUに何かをしていることを知らせます。PCIの前は、すべてのハードウェアコンポーネントに個別のIRQ設定が必要でした。ただし、PCIはバスブリッジでハードウェア割り込みを管理するため、複数のPCIデバイスに単一のシステムIRQを使用できます。
  • ダイレクトメモリアクセス(DMA)-これは単に、最初にCPUに問い合わせることなくシステムメモリにアクセスするようにデバイスが構成されていることを意味します。
  • メモリアドレス-多くのデバイスには、そのデバイス専用のシステムメモリのセクションが割り当てられています。これにより、ハードウェアが適切に動作するために必要なリソースを確保できます。
  • 入出力(I / O)構成-この設定は、デバイスが情報を送受信するために使用するポートを定義します。

PnPを使用すると、コンピューターにデバイスを簡単に追加できますが、間違いはありません。

プラグアンドプレイBIOSの開発者によって使用されるソフトウェア・ルーチンの変動は、PCIデバイスメーカーとマイクロソフトは、とのPnPを参照するために多くを主導してきた「プラグアンド祈ります。」しかし、PnPの全体的な効果は、コンピューターをアップグレードして新しいデバイスを追加したり、既存のデバイスを置き換えたりするプロセスを大幅に簡素化することです。

PCIとAGP

PCIバスは長年にわたって十分であり、ほとんどのユーザーが接続する可能性のあるすべての周辺機器に十分な帯域幅を提供していました。 1つを除くすべて:グラフィックカード。 1990年代半ば、グラフィックカードはますます強力になり、3Dゲームはより高いパフォーマンスを要求していました。 PCIバスは、メインプロセッサとグラフィックプロセッサの間を通過するすべての情報を処理できませんでした。その結果、IntelはAccelerated Graphics Port(AGP)を開発しました。 AGPは、完全にグラフィックカード専用のバスです。 AGPバス全体の帯域幅は、他のコンポーネントと共有されません。 PCIは引き続きほとんどの周辺機器に最適なバスですが、AGPはグラフィックス処理の特殊なタスクを引き継いでいます。しかし、新しいバス技術が市場に出回っており、AGPの終焉を告げる可能性があります。これについては、記事の後半で詳しく説明しますので、しばらくお待ちください…。

PCIデバイスの追加

このマザーボードには4つのPCIスロットがあります。

WindowsXPコンピュータに新しいPCIベースのサウンドカードを追加したとしましょう。これがどのように機能するかの例です。

  1. コンピュータのケースを開けて、サウンドカードをマザーボードの空のPCIスロットに差し込みます
  2. コンピューターのケースを閉じて、コンピューターの電源を入れます。
  3. システムBIOSがPnPBIOSを開始します。
  4. PnP BIOSは、PCIバスをスキャンしてハードウェアを探します。これは、バスに接続されている任意のデバイスに信号を送信し、デバイスにそれが誰であるかを尋ねることによって行われます。
  5. サウンドカードは、それ自体を識別することによって応答します。デバイスIDは、バスを介してBIOSに返送されます。
  6. PnP BIOSはESCDをチェックして、サウンドカードの構成データがすでに存在するかどうかを確認します。サウンドカードがインストールされたばかりなので、既存のESCDレコードはありません。
  7. PnP BIOSは、IRQ、DMA、メモリアドレス、およびI / O設定をサウンドカードに割り当て、データをESCDに保存します。
  8. WindowsXPが起動します。ESCDとPCIバスをチェックします。オペレーティングシステムは、サウンドカードが新しいデバイスであることを検出し、Windowsが新しいハードウェアを検出し、それが何であるかを判断していることを示す小さなウィンドウを表示します。
  9. 多くの場合、Windows XPはデバイスを識別し、必要なドライバーを見つけてロードします。これで準備が整います。そうでない場合は、「新しいハードウェアの検出ウィザード」が開きます。これにより、サウンドカードに付属のディスクからドライバをインストールするように指示されます。
  10. ドライバがインストールされると、デバイスを使用できるようになります。一部のデバイスでは、使用する前にコンピューターを再起動する必要がある場合があります。この例では、サウンドカードはすぐに使用できるようになっています。
  11. サウンドカードに接続した外部テープデッキからオーディオをキャプチャしたいとします。サウンドカードに付属の録音ソフトウェアをセットアップして、録音を開始します。
  12. オーディオは、外部オーディオコネクタを介してサウンドカードに送られます。サウンドカードは、アナログ信号をデジタル信号に変換します。
  13. サウンドカードからのデジタルオーディオデータは、PCIバスを介してバスコントローラに伝送されます。コントローラは、PCIデバイス上のどのデバイスがCPUにデータを送信することを優先するかを決定します。また、データがCPUに直接送信されているのかシステムメモリに送信されているのかを確認します。
  14. サウンドカードは録音モードであるため、バスコントローラは、サウンドカードからのデータに高い優先度を割り当て、サウンドカードのデータをバスブリッジを介してシステムバスに送信します。
  15. システムバスはデータをシステムメモリに保存します。録音が完了したら、サウンドカードのデータをハードドライブに保存するか、追加の処理のためにメモリに保持するかを決定できます。

PCI標準とPCIExpress

プロセッサの速度がGHzの範囲で着実に上昇するにつれて、多くの企業が次世代バス規格の開発に熱心に取り組んでいます。多くの人は、PCIは、それ以前のISAと同様に、実行できることの上限に急速に近づいていると感じています。

提案されたすべての新しい標準には、共通点があります。彼らは、PCIで使用されている共有バス技術を廃止し、ポイントツーポイントスイッチング接続に移行することを提案しています。これは、バス上の2つのデバイス(ノード)が相互に通信している間に、それらの間の直接接続が確立されることを意味します。基本的に、これら2つのノードが通信している間、他のデバイスはそのパスにアクセスできません。複数の直接リンクを提供することにより、このようなバスは、複数のデバイスが相互に速度を落とすことなく通信できるようにします。

Advanced Micro Devices、Inc。(AMD)によって提案された標準であるHyperTransportは、PCIからの自然な進歩としてAMDによって宣伝されています。ノード間のセッションごとに、2つのポイントツーポイントリンクを提供します。各リンクの幅は2ビットから32ビットの範囲で、6.4 GB /秒の最大転送速度をサポートします。 HyperTransportは、リムーバブルドライブなどの外部デバイスを接続するためではなく、内部コンピューターコンポーネントを相互に接続するために特別に設計されています。ブリッジチップの開発により、PCIデバイスがHyperTransportバスにアクセスできるようになります。

Intelによって開発されたPCI-Express(以前は3GIOまたは第3世代I / Oとして知られていました)は、バステクノロジーの「次の大きなもの」のように見えます。当初、ハイエンドサーバー用に高速バスが開発されました。これらはPCI-XおよびPCI-X2.0と呼ばれていましたが、PCI-Xを使用してマザーボードを構築するのは非常に費用がかかるため、家庭用コンピューター市場には適していませんでした。

PCI-Expressは、まったく別の獣です。家庭用コンピューター市場を対象としており、コンピューターのパフォーマンスだけでなく、家庭用コンピューターシステムの形状や形態にも革命を起こす可能性があります。この新しいバスは、PCIよりも高速で、より多くの帯域幅を処理できるだけではありません。 PCI-Expressはポイントツーポイントシステムであり、パフォーマンスを向上させ、マザーボードの製造をさらに安価にする可能性があります。 PCI-Expressスロットは、古いPCIカードも受け入れます。これにより、すべてのPCIコンポーネントが突然役に立たなくなった場合よりも早く普及するのに役立ちます。

また、スケーラブルです。基本的なPCI-Expressスロットは1x接続になります。これにより、高速インターネット接続やその他の周辺機器に十分な帯域幅が提供されます。1xは、データを伝送するレーンが1つあることを意味します。コンポーネントがより多くの帯域幅を必要とする場合、PCI-Express 2x、4x、8x、および16xスロットをマザーボードに組み込んで、レーンを追加し、システムが接続を介してより多くのデータを伝送できるようにします。実際、一部のマザーボードでは、AGPグラフィックカードスロットの代わりにPCI-Express16xスロットがすでに使用可能です。PCI-Express 16xビデオカードは現在最先端にあり、500ドル以上の費用がかかります。価格が下がり、新しいカードを処理するために構築されたマザーボードが一般的になるにつれて、AGPは歴史に消えていく可能性があります。

PCIおよび関連トピックの詳細については、次のページのリンクを確認してください。

PCIExpressと未来

PCI-Expressは、より高速なコンピューター以上のものを意味する可能性があります。技術が発展するにつれて、コンピューターメーカーは特別なケーブルに接続するPCI-Expressコネクターを備えたマザーボードを設計することができます。これにより、ホームステレオシステムのように、完全にモジュール化されたコンピュータシステムが可能になります。マザーボードとプロセッサ、および一連のPCI-Express接続ジャックが入った小さな箱があります。外付けハードドライブは、USB2.0またはPCI-Expressを介して接続できます。サウンドカード、ビデオカード、およびモデムを含む小さなモジュールも接続できます。1つの大きな箱の代わりに、コンピュータを好きなように配置することができ、必要なコンポーネントと同じ大きさになります。

多くの詳細情報

関連リンク

  • PCIExpressのしくみ
  • AGPの仕組み
  • マザーボードのしくみ
  • IDEコントローラーのしくみ
  • USBのしくみ
  • シリアルポートのしくみ
  • パラレルポートのしくみ
  • Firewireのしくみ

その他のすばらしいリンク

  • PCI-Expressの技術仕様
  • PC TechGuide:インターフェース
  • PCガイド:PCI
  • Infiniband Trade Association
  • ライバル計画がPCI後のバス戦争の噂をかき立てる
  • AMDHyperTransportテクノロジー

ソース

  • http://www.xpcgear.com/sapx800xtpciex.html
  • http://www.pcstats.com/articleview.cfm?articleID=1087
  • http://www.tomshardware.com/graphic/20040310/index.html