戻る

画像シリアル転送にみるPCI-Expressの活用法 ー その2

PCI Expressの主な仕様

PCI ExpressはPCI-SIGが策定しており、現在『PCI ExpressBase Specification1.1』が最新となっています。その他、『PCI Express Card』,『PCI Express Mini Card』, 『PCI Express Module』などについても個別に仕様を用意しています。詳細は仕様書を確認していただくとして、ここではPCI Expressの基本的な仕様を紹介します。

PtoPデュアルシンプレックス(送受信チャネルが独立)

PCI Expressの物理層はレーン、リンク、ポートで構成されます(図3参照)。図からも分かる通り、送信と受信がそれぞれ独立したパスとなっており1対1で接続されます。




2.5Gbps差動信号

PCI Expressでは信号のやり取りを低電圧の差動信号で行っています。 ビットレートは2.5Gbpsとなっており規格書では表3に示す値を規定しています。

表3・送信と受信の規格値(一部抜粋)
パラメータ
最小
標準
最大
単位
ユニットインターバル(送信)
399.88
400
400.12
ps
デエンファシス(送信)
-3.0
-3.5
-4.0
dB
差動出力電圧(送信)
0.800
-
1.2
V
差動入力電圧(受信)
0.175
-
1.2
V

 

8B/10B符号

PCI Expressでは8B/10Bの符号化を行っています。8B/10Bを使用することにより エンベデッドクロックが実現でき受信側ではデータからクロックの抽出(ClockDataRecovery)が 可能となります。ただし、実効レートが80%に低下してしまうデメリットもあります。

転送帯域のスケーラビリティ

表4・レーンごとの帯域

レーン数
Gbps(片方向)
実効帯域
2.5Gbps
250MB/s
5Gbps
500MB/s
10Gbps
1GB/s
20Gbps
2GB/s
12
30Gbps
3GB/s
16
40Gbps
4GB/s
32
80Gbps
8GB/s


図4:階層構造とパケット生成


図5:PCI Expressのシステム構成例
(企画書より抜粋)

規格ではリンク幅を1/2/4/8/12/16/32レーンと規定していますので、必要に応じてレーン数を選択する事が可能です。(表4参照)

 

階層構造

PCI Expressではパケットベースのやり取りを行うため、階層構造となっています。 図4で示したとおり、 上位からの命令は各階層を通過し、最終的にパケットとして送信されます。 PCIバスのサイドバンド信号もパケットに含まれた形で通知されます。

 

トポロジ

PCI Expressの仕様では『RootComplex』、
『Endpoint』、『Switch』、『PCI Express-PCI Bridge』が 構成要素として定義されています。 これらの要素は1対1で接続されSwitchを組みあわせることで拡張性のあるシステム構築が可能となります。 図5にPCI Expressのシステム構成例を示します。

 

『RootComplex』

I/O階層の最上位に配置され、CPU/メモリサブシステムをI/Oと接続します。独立したPCI Expressポートを1つ以上もっています。

 

『Endpoint』

Configuration Header Type 00hをもつI/Oの末端デバイスで『Legacy Endpoint』と『PCI Express Endpoint』があります。

 

『Switch』

PCI Expressポートを2つ以上実装し、各ポート間でパケットのルーティングを行います。Configuration Header Type 01hをもつ仮想PCI-PCIブリッジとして認識されます。

 

『PCI Express-PCI Bridge』

PCI ExpressとPCI/PCI-Xを接続することができます。PCI Expressシステムで既存のPCIデバイスを使用する際に必要となります。

 

PCI Expressを実現するための具体的な手段

PCI Expressを実現するためにはさまざまな手法が考えられます。 現在は表5に示すようなデバイスが供給され始めており、アプリケーションに応じて選択する事が可能です。 『PIPE(Physical Interface for PCI Express)』とはIntel社が策定している仕様で、 主にFPGAとのインターフェイスを考慮しています( *1)。IPベンダも『PIPE』をインターフェイスとした製品をラインナップしており 高速シリアルインターフェイスを内蔵していない低価格なFPGAでもPCI Expressを実現できるソリューションを提供しています。

表5 PCI Expressチップ一例
型名
レーン数
インターフェイス
メーカ
41210
X8
PCI-X133 2ch
Intel
GL9714
X4
PIPE 125MHz/16bit,250MHz/8bit
GENESYS LOGIC
GL9711
X1
PIPE 125MHz/16bit,250MHz/8bit
GENESYS LOGIC
GL9701
X1
PCI 33MHz,66MHz/32bit
GENESYS LOGIC
PEX8114
X4
PCI-X 133MHz/64bit
PLX Technology
PEX8111
X1
PCI 66MHz/32bit
PLX Technology
PEX8532(Switch)
X32
PLX Technology
PEX8524(Switch)
X24

PLX Technology
PEX8516(Switch)
X16
PLX Technology

 

*1:『PIPE』の仕様は『Intel Developer Network for PCI Express Architecture』に加盟すると入手可能です。 詳細はhttp://developer.intel.com/technology/pciexpress/devnet/を参照してください。