PLDとは
PLD (Programmable Logic Device)とは、製造後にユーザの手元で内部論理回路を定義・変更できる集積回路です。
ASIC (特定の用途向けに複数機能の回路を1つにまとめた集積回路) やASSP (分野・アプリケーションを限定して、機能・目的を特化させたLSI) に比べて、設計の柔軟性が高く、コストも安価です。そのため、様々な電子機器に広く用いられています。
PLDには、FPGA (英: Field Programmable Gate Array) やCPLD (英: Complex Programmable Logic Device) など、様々な種類があります。FPGAは、ゲートアレイと呼ばれる論理演算を行う回路を多数備えたPLDです。CPLDは、FPGAよりもゲートアレイの数は少ないですが、FPGAよりも安価なPLDです。
PLDの使用用途
PLDはその高い柔軟性と効率性から、多種多様な業界で広範に利用されています。以下に具体的な使用事例を説明します。
1. 通信業界
通信業界では、通信プロトコルの多様化と高速化が求められるため、ハードウェアの設計も頻繁に変更されることが一般的です。このような状況下でPLDはその再プログラム可能な特性を活かし、迅速にハードウェアの再設計を可能にします。これにより、新しい通信規格への対応時間を大幅に短縮し、製品の市場投入までの短時間化が可能となります。
2. 自動車業界
自動車業界では、先進運転支援システムや車内体験の急速な進化や標準規格化に対応するためにPLDを採用して開発サイクルを縮めています。その他、安全規格への対応やハイブリッドカーや電気自動車のモーター制御やバッテリー管理などにも利用されています。
3. 家電業界
家電機器メーカーは多くの競合他社との競争にさらされ、また消費者の変化する要求に迅速に対応する必要があります。各種動画規格の対応やAI機能の追加などに利用されています。
PLDの原理
PLDの原理は、内部構造とハードウェア記述言語を理解する必要があります。内部構造とHDLの利用により、PLDは高度な柔軟性と効率性を持つことが可能で、様々な応用に適応できるようになります。
1. PLDの内部構造
PLDの基本的な内部構造は、プログラム可能な論理ゲートと、これらのゲートを接続するためのプログラム可能な結線から成り立っています。論理ゲートは、入力信号に対する特定の論理操作 (AND、ORなど) を実行する電子デバイスであり、これらを組み合わせることで複雑な論理関数を実装が可能です。
PLDの中には、基本的なゲートレベルのデバイス (例: プログラム可能なロジックアレイ(PAL) やプログラム可能なアレイロジック (PAL) ) から、より高度な機能を持つデバイス (例: 複雑なプログラム可能なロジックデバイス (CPLD) やフィールドプログラム可能なゲートアレイ (FPGA) ) まで様々な種類があります。
2. ハードウェア記述言語
PLDをプログラムする際には、ハードウェア記述言語 (HDL) が使用されます。HDLは、デジタルシステムを記述するための特別なプログラミング言語であり、論理設計や物理設計に使用される場合が多いです。
HDLには、VHDL (英: VHSIC Hardware Description Language) やVerilogなどがあります。HDLを用いると、エンジニアはハードウェアの動作を精密に記述し、その動作をシミュレーションできます。さらに、この記述はツールによって論理ゲートのネットワークに変換され、最終的にPLDにプログラムされます。
PLDの種類
PLDはその内部構造とプログラム可能性により、さまざまな種類に分類されます。以下に主要な種類を紹介します。
1. PLA (英: Programmable Logic Device)
PLAは、最も基本的なPLDの1つです。PLAは複数の論理ゲートを持つアレイ (配列) を備えており、これらのゲートをプログラムして特定の論理関数を実行できます。PLAは非常にシンプルなデバイスで、比較的小規模な論理システムの設計に適しています。
2. PAL (英: Programmable Array Logic)
PALはANDアレイがプログラム可能で、ORアレイが固定のものです。数百ゲート程度の規模で、シンプルな回路に適しています。
3. CPLD (英: Complex Programmable Logic Device)
CPLDはPALよりも多数のケートを持ち、より大規模なデジタルシステムの設計に適しています。CPLDは高い密度と大きな容量を持ち、複数のデバイスを1つに集積してシステムの複雑さを管理しやすくします。
4. フィールドプログラマブルゲートアレイ (FPGA)
FPGAは最も高度なPLDであり、最大数百万ゲートもの論理ゲートをプログラム可能な形で内蔵しています。FPGAは高度な柔軟性を持ち、非常に大規模なデジタルシステムの設計やプロトタイピングに使用されます。
参考文献
https://www.intel.co.jp/content/www/jp/ja/programmable/products/cpld/cpld.html
https://www.dempa.co.jp/productnews/trend/h150723/h0723.html
https://www.macnica.co.jp/business/semiconductor/articles/pdf/ELS0298_S000_10__1.pdf
http://mix.kumikomi.net/index.php/PLD
https://core.ac.uk/download/pdf/61359759.pdf