| 1.FPGAとは Field Programmable Gate Arrayの頭文字を並べた略語でLSIの一種です。 特殊な機能を持ったブロックが碁盤の目のように配置されており、各ブロックにデータを書き込むと 様々な機能の論理回路に変身します。 似たような機能を持ったものにPLD、PLAがありますが、FPGA はこれらがさらに大規模になったものです。 メーカによってCPLDと呼ぶ場合とFPGAとしている場合があります。 内部の基本的な構造は異なります。 CPLDはマクロセルと呼ばれるAND-OR回路が基本 になっております。 それに対して、FPGAはルックアップテーブルのデータをプログラムすることで任意の論理回路を生成します。 しかし、設計する側からみればまったく同じ機能と言えます。 メーカは淘汰が進み、現在ではALTERA(アルテラ)とXILINX(ザイリンクス)がマーケットを二分しています。 この2社の製品に関する記事は専門雑誌にも掲載されており、入手も容易です。 その他には特定の機能に特化した製品を出しているメーカがいくつかある状態です。 私はXilinxのSpartan IIを使っています。 このチップを選んだ最大の理由はその値段の安さです。 Xilinx製品はいずれの世代においても成熟期にはチップの価格が約10ドルになります。 しかし、Spartan IIはサンプル期からすでに10ドルに近い値段で出ています。 さらにその高性能が挙げられます。 SpartanとSpartanIIは名前から同じシリーズに思われますが、全くその性格が異なります。 Spartan IIはXilinxの最上位機種のVirtexのプロセスを使用しており、Virtexの機能を一部除いた廉価版なのです。 そのため極めて高い集積度と性能を持っています。 電源電圧は2.5Vですが、I/O部は3.3Vを使用でき5Vトレラント機能をもっていますので、TTL/CMOSと直接インタフェースすることが可能です。 長い間、5Vロジックに慣れ親しんだために低電圧化には多少の抵抗がありましたが、時代の流れに乗り遅れまいと挑戦しました。 |