« Interface9月号にSH2JTAGデバッガが掲載されました | トップページ | SH2用JTAG ICEのサポートページ開設 »

2006.07.27

PCI Expressのセミナーに行ってきました

今日は○ルテックさんが開催する、PCI Expressのセミナーを聞きに新横浜までいってきました。

セミナーの内容は、PCI Expressの物理層に関する話が40%、
IPコアに関する話が40%、その他が20%という感じでした。

PCI Expressというのは、一応バスなんですけど、通信をパケット化して流しています。
TCP/IPのウィンドウサイズみたいなことや、ATMでのVC/VPみたいな技術を取り入れています。
さらに、それらを使ってQOSが実現されるようです。
まぁ、どこかで見たような通信方式がちらほら散見されます。
(QoSとかVC/VPみたいな機能は滅多に使われないようですが。)

そんで、ご存知のとおり、PCI Expressは、物理層、データリンク層、トランザクション層、
アプリケーションと、階層構造になっています。

PCI Expressのアドインカードを作るには、それぞれの層の機能をもったモノをつくってやらねばなりません。

物理層は、専用のチップが各社から発売されているので、いろんな選択肢があるでしょう。シグナルインテグリティを気にしなければそれほど難しくはないでしょう。

私が一番知りたかったのは、2層3層の仕組みです。

このセミナーではPCI Expressの機能を高価なIPコアを使って実現するような流れになっていて
2層3層の仕組みについては全く触れられていませんでした。
この層については全部IPコアにおまかせということです。

仕方がないので、Amazonで本を買いました。
届いたら読んでみることにします。
で、PCIExpressの評価に使うボードは、XILINXの純正ボードを使う予定です。
早速、XILINXのOnlineショップから注文しました。
在庫があるようなので、来週中には来るでしょう。

で、気になった点がいくつかあります。
・PCI Expressって、意外と遅いんじゃないの!?
・レイテンシが致命的?

ある測定結果を見たのですが、シングル転送だと数MByte/sしかでないそうです。
   数MByte/sですよ。

つまり、1回のトランザクションにマイクロ秒のオーダーがかかるってことです。
これって、遅すぎません?

PCI Expressはデータをパケット化して送るのですが、デスクトップ機では1つのパケットのペイロード(データ部の大きさ)はだいたい128Byteだそうです。そんで、PCI Expressを採用したマシンでは、CPUの下にルートコンプレックスというスイッチがあって、その下にまたスイッチがあって、またスイッチやブリッジが・・という感じになっています。
128バイトのデータはそのまま流れていくのではなく、どうやらスイッチのたびに蓄積されるようなのです。
勉強してないからわかりませんが、普通に考えれば蓄積して最後まで見ないと、エラーチェックができないでしょう。

それに、スイッチのたびにSERDESやらエラーチェックなんかをやっていたら、それは凄くおそくなりそうな・・

例えば、CPUからアドインカードまで、2個のブリッジやスイッチを通ったとしましょう。
PCI Expressのデータの転送速度は2Gbit/sですから、128バイトのデータを蓄えるのに0.5μ秒くらいはかかってしまいます。これがバケツリレーのようにPCI Expressスイッチ間を流れていくんですよね!?
2個のスイッチを通ったらレイテンシは片道で1μ秒かかります。

つまり、CPUが128バイトのデータを書き込みたいと思っても、そのデータがEndpointに伝わるのは1μ秒後のことなのではないか、と思うわけです。

さらに、前述の測定結果によれば、PCIExpress x1では、バースト転送しても毎秒150MByte/sだそうです。つまり、1.2Gbps相当です。普通のPCIに毛が生えた程度の速度しかでないってことでしょうか。
PCI Expressはx4とかx16とか、束ねなければ実力が発揮できないということでしょう。

来週、本が届いたら詳しく勉強してみることにします。

私としては”規格にきちんと準拠しない「なんちゃってコア」”でいいから、
PCI Expressの機能のトランザクション層やデータリンク層のコアを自分で作りたい。

|

« Interface9月号にSH2JTAGデバッガが掲載されました | トップページ | SH2用JTAG ICEのサポートページ開設 »

コメント

コメントを書く



(ウェブ上には掲載しません)




« Interface9月号にSH2JTAGデバッガが掲載されました | トップページ | SH2用JTAG ICEのサポートページ開設 »