質問:FPGAとはどのような半導体デバイスなのでしょうか。
答え:システム設計者が独自に設計した回路を作り込めるデバイスです。このような半導体デバイスをカスタムICと呼ぶのですが、FPGAは、カスタムICの代表格であるASIC(エイシック)よりも開発期間が短くて、開発費用が安くて済む、という特長を備えています(図1)。
質問:FPGAとは何の略ですか。
答え:「フィールド・プログラマブル・ゲート・アレイ(field programmable gate array)」の略です。FPGAと書いて「エフピージーエー」と読みます。
質問:プロセッサとメモリがあれば、システムは作れると思います。なぜFPGAが必要とされるのでしょうか。
答え:高速化と低消費電力化のためです。プロセッサがメモリからプログラムを読み込んで処理を実行すると、処理内容によっては非常に時間がかかることがあります。例えばデータのパケットをいくつかのブロックに分けてブロックごとに異なる処理を実行する、といった場合です。この場合は並列に処理を実行することで全体の処理時間を大幅に短くできるのですが、プロセッサはこういった処理を苦手としています。FPGAは並列処理回路を容易に実現できますので、処理時間をプロセッサよりもはるかに短くできます(図2)。
質問:FPGAに書き込んだ回路が間違っていた場合はどうなるのでしょうか。
答え:回路の間違いが見つかったときは、間違いを修正済みの回路をFPGAに書き込みます。回路を何回でも書き直せることが、FPGAが使われている大きな理由の一つです。
質問:FPGAに書き込む回路は、どうやって作るのですか。
答え:パソコンで動くFPGA用設計ツール・ソフトウェアがFPGAベンダーや設計ツール・ベンダーなどから提供されています。このFPGA用設計ツールを使って回路を設計し、きちんと動作するかどうか、誤りがないかどうかをチェックし、大丈夫となったら、回路をFPGAに書き込むのです。
質問:FPGAに書き込む回路の設計は、どのようにするのでしょうか。例えば論理ゲートを書いたりするのでしょうか。
答え:「ハードウェア記述言語」と呼ばれる、プログラミング言語を使って設計します。ハードウェア記述言語は「レジスタ間遷移レベル(RTL)」と呼ばれる論理ゲートよりも抽象度の高いレベルで回路を記述しますので、論理ゲート・レベルに比べるとはるかに簡単に回路を設計できます。
質問:FPGAは価格が高いと聞きましたが、本当でしょうか。
答え:確かにおよそ20年前には、論理ゲート当たりの単価でみるとFPGAは高価でした。当時のFPGAは旧い世代の製造技術を使っており、シリコンダイの面積が大きくなっていたからです。しかし最近のFPGAは最先端のプロセスを使っているので、シリコンダイが小さくなり、論理ゲート当たりの単価がずっと下がっています。
質問:FPGAベンダーはファブレスという製造工場を所有していない企業だとのことですが、品質管理に不安があります。
答え:FPGAを製造しているのは「シリコン・ファウンドリ」と呼ばれる会社で、高い技術力と豊富な実績を有しています。FPGAベンダーには製造技術や信頼性・品質管理技術に詳しいエンジニアがおります。FPGAベンダーのエンジニアとシリコン・ファウンドリのエンジニアが密接に協力することで、高い品質を確保しています。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:日本アルテラ株式会社
アイティメディア営業企画/制作:EDN Japan 編集部/掲載内容有効期限:2013年3月31日
FPGAについて、基礎からわかりやすく解説しています。
初級者から熟練者まで、FPGA設計技術を向上させたいすべての人のためのトレーニング講座。
オンライン講座は視聴無料です。