では、どんなターゲットを狙うかといえば、ごく一部の用途にはFSBを使った接続が必須だが、その他の殆どの用途ではGeneseoで足りる、としている(Photo05)。ではそのGeneseoとはどんなものか? という話だが、PCI ExpressとGeneseoの違いをまとめたのがPhoto06となる。

Photo05:9割以上がGeneseo+PCI Expressで十分というのがIntelの考え。つまり、Loosely CoupledなものならPCI Expressで十分だし、ややTightly CoupledならばGeneseoでカバーできる。これに入らない、Highly Tight Coupledなものだけが、FSB Licensingを使っての構成となる、としている。

Photo06:ほぼプロトコルの全てのレイヤに渡って機能追加がなされている。ここでは追加したものに焦点が当たっているが、逆に当然ながら省いたものもあるはずだ。例えばVirtual Channelなどは、多少簡略化されるか、あるいは機能の一部サポートといった事になっていても不思議ではない。

これだけ違うと互換性は? という話は当然気になるところだが、Ajay Bhatt(Photo07)氏ははっきりと「機械的あるいは電気的な規格には互換性はあるが、論理層に関しては別のもの」と断言した。ただ、別のものとは言ってもかなりの部分をPCI Expressから流用しているのは間違いないそうで、敢えて例を挙げればSATAとSASの様なものと言ってもいいかもしれない。

Photo07:Intel Fellow and Chief I/O Architect, Digital Enterprise GroupのAjay V. Bhatt氏。かつてはPCI-SIGのChairmanも努めていた。

この結果、根本的なところではPCI Expressと非常に似ている。例えばPhoto08の様な構成で、PCI Expressと並んでGeneseoアクセラレータがぶら下がる事になるが、これらは全てMemory Bridge内に組み込まれているRoot Complexの管理下にあるのだと言う。つまり、全てのGeneseoアクセラレータはRoot Complex経由でCPUと通信する形になるのだそうだ。もっと興味深いのは、だからといってPCI Express用のRoot ComplexとGeneseo用のRoot Complexが別にあるわけではなく、両者は共通にできるとの事。なので、あるPCI Expressスロットにビデオカードとか通常のPCI Expressのカードを装着すれば、そのスロットはPCI Expressとして動作する一方、そこにGeneseoアクセラレータを装着すると、Geneseoとして動作するのだそうだ。なんとなく大昔にVIAが提供していたVPX-64(AGPバスにこのブリッジを接続すると、PCI-Xバスが出るというもの。いつの間にか消えてしまった)を彷彿させるものがある。

Photo08:この図で見ると、まるでMemory BridgeからPCI ExpressとGeneseoが別に出るように見えるが、実はそういう話では無い模様だ。

ちなみにアプリケーションから見た場合の大きな違いは、直接デバイスからアクセラレータを叩けるようになるという事だろう(Photo09)。ただこれをどうやって実現するか、というあたりは今回説明が無かった。PCI ExpressのI/O空間にMapされたGeneseoアクセラレータのメモリ空間とかポートI/O空間を、ユーザープロセスのメモリ空間にMapしてしまうという荒業なのか、それともメモリアクセスやポートI/Oを行うPrimitive Functionを提供する程度のものなのか、は現状明確ではない。

Photo09:GeneseoでもConfigurationやSetupといった操作はPCI Expressからそのまま引き継いでいる関係で、Bus DriverとかFunction Driverを作る必要はあるようだ。

現状のステータスはまだ内部的に議論している段階で、最初のRev.0.5 Specが恐らく6月前後、正式なRev.1.0 Specが来年前半とされている(Photo10)。Initial Engagementが2006年であることを考えると、ずいぶん急速に開発が進んでいる感が強いが、これはPCI Expressから大部分を持ってきているから可能であろう。面白いのはこのGeneseo、正式にPCI Expressの追加仕様として提案を行う用意があるという(Photo11)。「昨年秋のIDFの直後から正式にPCI-SIGとは話し合いを行っており、彼らと情報を共有している」のだそうだ。ただ現時点でそれがどのレベルで議論されているか、は外部からはうかがい知れない。まもなくサンノゼでPCI-SIG Developers Conference 2007が開催されるが、そのアジェンダの中にはこれを伺わせるものは無い。もっともPhoto10と見比べてみると判るが、Intelは2008年にはGeneseoがRev.1.0に到達する予定としているが、それがPCI Expressに正式に採択されるのは2009年を予定しているようで、議論が本格化するのは来年以降、という感じなのかもしれない。

Photo10:Spec 0.5ということは既にWork Sampleがあると考えるのが妥当だろう。そのあたりは突っ込んだが、「実験室レベルでは色々やっている」とかわされてしまった。

Photo11:PCI Express Gen3がこの図に出てこないあたり、そうした議論は2010年以降という事なのか。実際、ニーズを考えればそれでも十分間に合うだろう。