PCI Express デザイン・ガイド ――LSI開発者のための設計Tips
●PCI Expressアークテクチャ概要
PCI Expressは,図3に示すような階層アーキテクチャを採用しています.シリアル・バスであることや,パケット単位で転送すること,階層アーキテクチャを採用していることから,一見ネットワーク規格の構造に似た印象を持たれるかもしれません.
従来のPCI規格では,階層という考えかたがありませんでした.ソフトウェア,プロトコル,媒体や実装(機構系)の仕様について,まとめて定義していました.
PCI Expressでは,これらを階層としてとらえ,各層に分けて仕様を定義しています.特に重要なことは,今まで一つだったプロトコルを,トランザクション層,データリンク層,物理層に分けていることです.
トランザクション層は,送信,受信というメッセージや,割り込みなどを規定しています.データリンク層は,CRC(cyclic redundancy check)やパケット・ロス,エラー時のリトライを規定しています.物理層は,最小転送単位であるパケットの送受信,初期化,コンフィグレーションを規定しています.
階層アーキテクチャの利点は,層(レイヤ)単位でのアップグレードが可能なことです.例えば,物理層で新たな変更を行っても,データリンク層やトランザクション層,ソフトウェア層に影響を与えることはありません.
〔図3〕PCI Expressでは階層アーキテクチャを採用
PCI Expressでは,各層がそれぞれコミュニケーションを取るため,層単位でのアップグレードが可能になる.また,フロー制御は各層で行うことができる.