FPGA(Field-Programmable Gate Array)とは、プログラムによって機能を自由に変更できる集積回路です。 マスク工程が不要なため、他のICに比べて設計期間や開発コストを抑えられます。また、製造後や基板実装後、さらには最終製品出荷後でもプログラムを書き換えられるため、非常にフレキシブルで汎用性の高いICとして知られています。 1枚のFPGA評価ボードにさまざまなペリフェラルなどの周辺機器が搭載されていれば、内部の論理回路を切り替えるだけで多用途に対応可能です。こうした柔軟性と高性能から、画像処理・ディープラーニング・通信機器など多彩な分野で採用が進んでいます。
FPGAは並列処理に強く、後から仕様変更が可能な点が大きなメリットです。一方、CPUは汎用性を重視しており、消費電力や並列処理性能ではFPGAに劣る場合があります。ASICは特定用途に合わせて最適化されるため、消費電力やチップ単価を低減しやすい反面、一度開発した後の修正が困難です。 下記は主な要素を比較したマトリックスです(◎=優れた特性、○=やや優位、△=やや劣位):
項目 | FPGA | CPU | ASIC |
---|---|---|---|
価格 | △ | ○ | ◎ |
開発費 | ◎ | ◎ | △ |
消費電力 | △ | △ | ◎ |
熱対策 | △ | △ | ◎ |
ゲート規模 | ◎ | ○ | ○ |
メモリ容量 | ◎ | ○ | ○ |
速度 | ◎ | ○ | ○ |
設計方法 | ◎ | ◎ | ○ |
仕様変更 | ◎ | △ | △ |
製造TAT | ◎ | ◎ | △ |
インスタントオン | △ | △ | ◎ |
小型外形 | △ | ◎ | ◎ |
FPGA設計の大きなメリットは2つ。「従来の回路構成では処理が追いつかない高度な演算や高速処理」「推論・画像処理・制御制御など、多様なニーズに応じて現場で柔軟に設計を変更」できることです。
FPGA設計フローは以下のような工程からなります。
当社では、豊富なFPGA設計開発の経験を持つエンジニアチームが下記のサービスを提供しています。
●事例1 FPGAによる大規模演算の開発事例
課題
ある案件にて大規模な演算を高速で行いたいという課題がありました。単純な演算であれば通常GPU を使用して高速化を図るのが一般的であるものの、このケースでは演算器が多数必要な複雑な演算であり、GPUには向かないものでした。
解決策
当社ではその演算の高速化をFPGA を使って実現しました。PCI Expressカード上のFPGAに、演算ブロックを実装した結果、FPGAと従来のGPUとの演算時間を比較したところ、約14~15倍程度の向上がみられました。
またFPGAには、大規模演算に必要な要素ブロックであるAPI、演算器、PCIe、制御、Clockがすでに開発済みであるため、今後の開発は短期間で行うことが可能です。
●事例2 レーザープリンタ向けデータ転送基板の開発事例
課題
ある企業のレーザープリンタ開発において、印刷データを高速伝送し印紙にずれなく高速印刷したいが、印刷データと印紙ローラー、プリンタヘッドの同期制御を行う技術が弱く、仕様の明確化が困難で開発を実施できていませんでした。そこで基板、デジタル設計、ファームウェア設計技術を持つエンジニアに相談したいと考えていました。
解決策
当社では、印刷ライン制御用PCからの印刷データをリアルタイムに制御。現場で微調整を行いながら、印刷機械の紙送り装置とプリンタヘッドのレーザー発射タイミングを同期させ、超高速印刷を実現しました。
このプリンタヘッド内の制御基板とコントローラー内の印字画像データ転送基板、印刷ライン制御用PC内のPCI基板に、FPGAを用いています。
●事例3 反応拡散モデルのシミュレーション演算高速化の事例
課題
ある研究機関で実施している、反応拡散モデルのシミュレーション(化学反応や物質の拡散過程を表現したモデルに基づくシミュレーション)は現在Pythonで実施している。しかし現行技法では計算を終えるまでに1時間39分の時間がかかっていました。
解決策
弊社のFPGA演算高速化ソリューション「Nプログラム」を用いて演算を実施。従来の1時間39分➡9分と計算速度を約11分の1、約90%高速化しました。
FPGA設計開発のアウトソーシングはディー・クルー・テクノロジーズにお任せください。
これまで培った技術を集約し、貴社の課題解決に貢献します。