FPGAで遊ぼう!

FPGAでの遊びを通して、技術について紹介していきます

FPGAとは?

FPGAとは、Field Programable Gate Array(フィールド・プログラマブル・ゲート・アレイ)の頭字語です。訳すと、現場で動作を変更することが出来るIC(Integrated Circuit:集積回路)という意味です。ICは、現代社会においてなくてはならない物で、みなさんが使っているほぼすべての物に使われている部品です。

LSI

 

ICは、半導体工場で製造されます。そして、製造時にはどのような動作をするのかあらかじめ決まっていて、工場出荷後に動作を変更することはできません。スマホやパソコンの心臓部であるCPU(中央演算処理装置)もICです。CPUのあらかじめ決められた動作は、プログラムを実行することです。そのため、CPUは、ICでありながら、実行するプログラムの内容を変えることで、ゲームや、メール等、様々な複雑な処理を行うことができます。

CPU

 

FPGAは、ICですが、工場出荷後でも動作を変えることができます。どうやって動作を変えているのかは、後程説明したいと思います。また、ICの開発には、個人で払うことがきないくらいの莫大なお金が必要です。FPGAは、個人で購入することができる価格で入手可能で、FPGAを使うことによって、オリジナルICを個人で実現することが可能になります。



動作を変えることができるICであるFPGAとCPUのとの違いは、処理スピードです。例えば、学校のクラスの平均点を求めるという処理を行う場合、必要な処理は、クラス全員の点数を足し合わせ、人数で割るになります。CPUでは、この処理を行うために、人数分の点数を足し、人数で割るというプログラムを実行します。CPUは、1回の足し算を人数回、割り算を1回、処理する時間が必要になります。一方、FPGAでは、CPUと同じように、人数分の足し算と割り算という処理も可能ですが、同時に人数分の足し算を行い、割り算を行うという処理も実現できませn。50人のクラスであれば、FPGAは、CPUに対して約50倍速く処理することが可能になります。

 

魔法のようなFPGAですが、なんでも出来るわけではありません。FPGAで、実現できることは、デジタル回路です。デジタル回路については、後程詳しく説明したいと思います。

 

現在、FPGAを製造販売している主要メーカーは、以下になります。

 

まとめ

FPGAとは、オリジナルICを実現することができる半導体部品です。