Vengineerの妄想(準備期間)

人生は短いけど、長いです。人生を楽しみましょう!

Intel FPGAのLinux デバイスドライバのパッチが投げられた



実際のパッチは、こちらで、全部で17。。。

[PATCH 00/16 Intel FPGA Device Drivers]
[PATCH 01/16 docs: fpga: add a document for Intel FPGA driver overview]
[PATCH 02/16 fpga: add FPGA device framework]
[PATCH 03/16 fpga: intel: add FPGA PCIe device driver]
[PATCH 04/16 fpga: intel: pcie: parse feature list and create platform device for features.]
[PATCH 05/16 fpga: intel: pcie: add chardev support for feature devices]
[PATCH 06/16 fpga: intel: pcie: adds fpga_for_each_port callback for fme device]
[PATCH 07/16 fpga: intel: add feature device infrastructure]
[PATCH 08/16 fpga: intel: add FPGA Management Engine driver basic framework]
[PATCH 09/16 fpga: intel: fme: add header sub feature support]
[PATCH 10/16 fpga: intel: fme: add FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support]
[PATCH 11/16 fpga: intel: fme: add partial reconfiguration sub feature support]
[PATCH 12/16 fpga: intel: add FPGA Accelerated Function Unit driver basic framework]
[PATCH 13/16 fpga: intel: afu: add header sub feature support]
[PATCH 14/16 fpga: intel: afu add FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support]
[PATCH 15/16 fpga: intel: afu: add user afu sub feature support]
[PATCH 16/16 fpga: intel: afu: add FPGA_PORT_DMA_MAP/UNMAP ioctls support]

ざーと、見ましたが、PCIeデバイスデバイスドライバなんですね。
機能部分の実装はこれからって感じがします。

開発中のXeon+FPGAは、QPI接続だと思っていたのですが、、
どうしてでしょうか?

で、Twitterに流れてきたIntel Xeon + FPGAの図。

Xeon+FPGA(Multi-chip Package)では、PCIeのパスの他に、
Coherent Interconnectが設けられる模様。

コマンド関連(制御やパワーマネジメント)は、PCIeで、
データ転送はCoherent Interconnect (QPI?) 経由なんでしょうね。

ACCELERATION AND PARALLEL PROGRAMMING IN CLOUD & EMBEDDED
Pat Mead Intel Programmable Solutions Group November 2016
の5頁目の右側の図を見ると、PCIe + QPI になっていますね。

FPGA部の共通部分(Infrastructure)をBlue Streamと、
ユーザー回路部(リコンフィギュレーション部)をGreen Streamと呼んでいるようですね。

あー、Xeon+FPGAについては、
「Xeon+FPGA への妄想」 どうやって実装するのか?を読んでちょ。

ハードウェア側(FPGAの中身)はどうやって実装するのでしょうかね。。。



SystemCで開発するようですが、Cadenceの高位合成ツールが必要だとか。。。。あー。