NetFPGAプロジェクト[ 1 ]は、コンピュータネットワークデバイスのラピッドプロトタイピングのためのオープンソースのハードウェアとソフトウェアを開発する取り組みです。このプロジェクトは、学術研究者、産業界のユーザー、そして学生を対象としていました。ネットワークコミュニティにおいて、この種のプラットフォームは初めてではありませんでした。 [ 2 ] [ 3 ] [ 4 ] [ 5 ] NetFPGAは、ネットワークデバイスのプロトタイピングにFPGAベースのアプローチを採用しました。これにより、ユーザーはラインレートでパケットを処理できる設計を開発できます。これは、ソフトウェアベースのアプローチでは通常実現できない機能です。NetFPGAは、開発者が互いのプロジェクトやIPビルディングブロックを共有し、それらを基に構築できるように支援することに重点を置いています。
このプロジェクトは2007年にスタンフォード大学の研究プロジェクトとしてNetFPGA-1Gとして始まりました。1Gはもともと学生にネットワークハードウェアのアーキテクチャと設計を教えるためのツールとして設計されました。[ 6 ] 1Gプラットフォームは、Xilinx Virtex-II pro FPGAとそれに接続する4つの1GigEインターフェイスを備えたPCIボードと、IPライブラリといくつかのサンプルデザインを含むダウンロード可能なコードリポジトリで構成されていました。プロジェクトは成長し、2010年末までに1,800台以上の1Gボードが15か国にまたがる150以上の教育機関に販売されました。[ 7 ]その成長の間、1Gは教育ツールとしてだけでなく、研究ツールとしても人気が高まりました。2011年までにNetFPGA-1Gプラットフォームを使用した研究に関する46本以上の学術論文が発表されました。[ 8 ]さらに、2010年末までに40以上のプロジェクトが1Gコードリポジトリに寄贈されました。
2009年、 4 x 10 GigEインターフェースを備えたNetFPGA-10Gの開発が極秘裏に開始されました。10Gボードは、より大容量のFPGA、より多くのメモリ、そしてその他多くのアップグレードを備えて設計されました。「Howth」というコードネームで呼ばれたこのプラットフォームの最初のリリースは、2010年12月24日に予定されており、1Gと同様のリポジトリ(小規模なIPライブラリと2つのリファレンスデザインを含む)が含まれています。
プラットフォーム設計の観点から見ると、10Gは1Gプラットフォームからいくつかの重要な点で大きく異なります。例えば、ハードウェアIPのインターフェース規格は完全に再設計され、自社開発プロトコルではなく業界標準に準拠しています。さらに、設計構成、レジスタマッピングの自動化、IPライブラリの管理において、カスタムスクリプトではなく業界標準ツールへの依存度が高まっています。
NetFPGA-10G プラットフォームの 2 番目のリリースは「Skellig」というコード名で呼ばれ、2011 年第 2 四半期までにリリースされる予定です。
出典: [ 9 ]
NetFPGA-1G コードはBSDスタイルのライセンスを使用して配布されます。
出典: [ 10 ]
NetFPGA-10G コード ベースにはさまざまなライセンスの対象となるコードが含まれていますが、デフォルトのライセンスは GNU LGPL バージョン 3 です。