CPLDとは?CPLD入門、メリット・デメリットについて解説!
本記事ではCPLDとは何かについて、わかりやすく解説します!
FPGAとの違いについてや、メリットデメリットについて詳しく解説します!
【無料ダウンロード】組み込み機器・ハードウェア設計入門
組み込み機器・ハードウェア設計製作.comでは、技術資料を無料で発行しております。
組み込み機器の基礎知識や設計開発のポイントについて分かりやすくまとめた資料となっており、
新任設計者のための教育用だけでなく、ベテラン設計者のため知識の復習用としてご活用いただけるものとなっております。組み込み機器の設計開発 入門書として是非ご活用いただき、皆様の設計開発のお役に立てれば幸いです。
CPLDとは?何ができるのか
CPLD(Complex Programmable Logic Device)とは、FPGA同様に、製品の購入後にユーザーによるプログラムの書き換えが可能なICのことです。
CPLDはPLD(Programmable Logic Device)の一つです。
PLD(Programmable Logic Device)とは、直訳通り、ユーザー自身がプログラムの書き換えができるデバイスのことを言います。
PLDは開発のどの段階においても外部からプログラムの書き込みや消去が可能なため、開発途中での仕様変更やカスタマイズにも臨機応変に即時に対応できます。
PLDには、FPGAやCPLD、DSP、MPUなど様々な種類のICがあります。
どちらもPLDである、CPLDとFPGAですが、両者は何が違うのでしょうか。
詳しく解説致します。
CPLDとFPGAの違い
まず、FPGAについて解説します。
FPGA とは、「Field Programmable Gate Array」の表記通り、設計者が現場(Field)で論理回路の構成をプログラムできる(Programmable)論理回路(Gate)を集積したデバイスのことです。製造後は回路構成を変更できないLSI(集積回路)と違い、プログラムによりシステムの処理内容を書き換えられることからProgrammable(装置やソフトウェア、システムなどの動作を利用者が必要に応じて変更・自動化できること)と呼ばれます。
繰り返しになりますが、FPGAもCPLDと同様、PLD(Programmable Logic Device)の一つです。
FPGAについては、以下の記事で詳しく解説しております。こちらの記事も合わせてご覧くださいませ。
では、両者の違いですが、大きく2つあります。
①ゲートの規模
②プログラミング素子
①ゲートの規模
CPLDとFPGAとの大きな違いの一つに「ゲートの規模」があります。
CPLDは数千ゲートほどの集積度になります。一方で、FPGAは数万ゲート以上もの巨大な規模を持つPLDです。
そのため、構成したい回路の集積度に応じて、CPLDとFPGAのどちらを用いるか検討します。
②プログラミング素子
もう一つのCPLDとFPGAとの大きな違いの一つに「プログラミング素子」があります。
CPLDはプログラミング素子に不揮発性メモリを使用しますが、FPGAはSRAM等の揮発性メモリを使用するという違いがあります。(※FPGAの中にも不揮発性メモリを用いる製品があります。)CPLDはチップ上の不揮発性のメモリでコンフィグレーション(設定)されています。そのため、電源をオフにしても、コンフィグレーションが失われることはありません。一方、FPGAは、揮発性メモリを使用しているため、電源オフのたびにデータが失われます。ですので、電源オンのたびに、外部のROMからデータをダウンロード(コンフィグレーション)する必要があります。
一般的なFPGAは極めて柔軟性が高く、自由なデザイン設計を行えます。そのため複雑なデジタル回路設計に適しています。CPLDもFPGAには劣るものの、高度なプログラミングができ、FPGAと比べて低価格というメリットがあります。そのため回路規模等、使用条件に応じて、CPLDとFPGAのどちらを用いるべきかが変わってきます。
CPLDのメリット・デメリット
CPLDのメリット
・設計時間を大幅に短縮し、迅速な市場投入が可能です。
・不揮発性メモリを使用しているため、CPLD自体に直接データの書き込みができます。
・価格が比較的安価で、個人用途での使用も可能です。
CPLDのデメリット
・FPGAに比べ搭載できる回路規模が小さく複雑な論理回路の搭載には不向きです。
CPLDの使用例
CPLDは、開発途中での仕様変更やカスタマイズが可能であるため、開発がストップすることなく、スピーディーにかつ開発リスクを最小限に抑えながら製品開発ができます。また、消費電力の大幅な抑制やデバイスの小型化の実現が可能なため、多くのポータブル製品において用いられています。
また、数百ゲートを搭載したPAL(Programmable Array Logic)やGAL(Generic Array Logic)の代替品としても良く用いられます。
CPLDのメーカー
CPLDのメーカーには、Intel(旧Altera)、Lattice Semiconductor、MICROCHIPなどがあります。
Alteraは、世界で初めてPLDを販売した会社であり、現在もFPGAで最大手とされているベンダーです。
2015年にIntelは当時世界最大のFPGAメーカーであったAlteraを167億ドル(約1兆8000億円)で買収しております。
まとめ
いかがでしたでしょうか。
CPLDについてご理解いただけましたでしょうか。
組み込み機器・ハードウェア 設計製作.comを運営する株式会社アイディ・アイでは、CPLDを用いた組み込み機器の設計開発代行を得意としております。CPLDを用いた組み込み機器の開発及び、PALやGALなどからCPLDへの代替等のご相談はぜひ当社までお気軽にお申し付けくださいませ。
弊社担当よりお返事させて頂きます。
技術情報・技術コラム
- 組み込みボード
SoMとしてのRaspberry Piの活用と組み込み開発
今回の記事では、Raspberry Piを活用した組み込み開発のメリットについて説明します。Raspberry Piを使う場面についても解説しています。
- 組み込みボード
画像処理とFPGA
今回の記事では、画像処理とFPGAについて紹介します。画像処理にFPGAを使用するメリット、FPGAの実装方法等、解説しています。
- 組み込みボード
Raspberry Piを活用した組み込み開発のメリット!
今回の記事では、Raspberry Piを活用した組み込み開発のメリットについて説明します。Raspberry Piを使う場面についても解説しています。
- 組み込み機器
SoCとは?FPGAとの違いを解説!
今回の記事では、SoCとは何か、SoCの用途、SoCのメリット・デメリット、SoCとFPGAとの違いについてご説明いたします。
- 組み込み機器
組み込みLinuxとは?組み込みLinuxの特徴と開発までの流れを解説!
今回の記事では、組み込みLinuxとは何か、組み込みLinuxの特徴についてご説明いたします。
- 組み込みボード
マイコン開発ってどうやるの?マイコン開発のポイントと流れを解説!
今回の記事では、マイコン開発のポイントやマイコン開発の流れをご説明します。
- 組み込みボード
FPGA設計:テスト動作までの流れを解説!
本記事ではFPGA設計のポイントやFPGA設計の流れをご説明します!
- 組み込みハードウェア
ハードウェア設計を外注する際に注意すべき点
「ハードウェア設計」と一口に言っても、設計する要素は多数あります。それもまた、10、20といったレベルではありません。これは機器に使用されるソフトウェア以外は、ハードウェアと言うことができ、ハードウェアの定義が非常に幅広いためです。
- 組み込みボード
ASICとFPGAの違いについて解説!
ASIC(エーシック)とは、ある特定の用途や分野のために使われる電子機器やシステムに搭載される、「大規模集積回路」の総称で、FPGA とは、Field Programmable Gate Arrayの文字通り、設計者がフィールド(現場)で論理回路の構成をプログラムできるゲート(論理回路)を集積したデバイスのことを指します。
当記事では ASICとFPGAについて、それぞれの違いも含めて詳しく説明しています。
- 組み込みボード
FPGAとは?メリット・デメリットについて解説!
本記事ではFPGAとは何かについて、わかりやすく解説します!
FPGAとよく混同されがちな、マイコン、CPU、CPLD、DSP、GPU、ASIC、ASSPとの違いについてや、メリットデメリットについて詳しく解説します!