CPLD

CPLD:PALとFPGAを繋ぐプログラマブルロジックデバイス



CPLD(Complex Programmable Logic Device)は、プログラマブルロジックデバイス(PLD)の一種です。集積度においては、単純なプログラマブル論理デバイスであるPAL(Programmable Array Logic)よりも大規模で、大規模なFPGA(Field-Programmable Gate Array)よりも小規模という位置づけにあります。そのため、PALとFPGA両方のアーキテクチャ的特徴を併せ持っています。

CPLDの特徴:PALとFPGAの中間的存在



CPLDの構成要素は、複数のマクロセルと呼ばれるブロックで構成されています。マクロセルは、加算標準形などの論理演算に加え、より複雑な論理演算も実現可能です。

PALとの共通点:

不揮発性コンフィギュレーションメモリ: FPGAと異なり、CPLDはコンフィギュレーションROMを必要としません。電源投入と同時に動作を開始します。これは、システムの起動時に重要な役割を果たします。
初期のCPLDにおける外部ピン接続: 多くの古いCPLDでは、論理ブロックの大部分が外部ピンに直接接続されていました。そのため、内部でのデータ記憶や複雑な論理処理は限定的でした。ただし、これは最近の、より大規模で高機能なCPLDには当てはまりません。

FPGAとの共通点:

大規模な論理ゲート: FPGAと比較すると規模は小さいものの、CPLDは数千~数万個の論理ゲートを備え、中程度の複雑さのデータ処理デバイスの実装が可能です。(PALは数百ゲート程度、FPGAは数万~数百万ゲート)
柔軟な論理演算: 単純な論理和や論理積だけでなく、マクロセル間の複雑なフィードバックパスや、整数演算など、高度な機能を実現するための特殊な論理回路が含まれています。

CPLDとFPGAの重要な違い:コンフィギュレーションメモリ



CPLDとFPGAの大きな違いの1つは、コンフィギュレーション方法にあります。CPLDはチップ内部に不揮発性メモリを持ち、そのメモリにコンフィギュレーションデータが保存されます。このため、電源投入直後から動作し、ブートローダーなど、システム起動時の重要な処理に最適です。例えば、不揮発性メモリからFPGAへコンフィギュレーションデータをロードする際にCPLDが使用されるケースがあります。ただし、近年ではコンフィギュレーションメモリを内蔵したFPGAも登場しています。

CPLDの歴史的背景



CPLDは、それ以前のPLA(Programmable Logic Array)やPALといった、より小規模なデバイスからの進化形です。PLAやPALは、複数の汎用ロジックICを接続することで論理回路を構築していましたが、CPLDはプログラム可能な機能を内蔵しています。

CPLDとFPGAのアーキテクチャの違い



CPLDとFPGAのアーキテクチャには大きな違いがあります。FPGAは内部でルックアップテーブル(LUT)をベースとした構成になっていますが、CPLDはチャネルレス型ゲートアレイ(SOG)という異なる論理構造を採用しています。

CPLDの用途



CPLDは、その柔軟性と不揮発性メモリによる即時動作性から、組込みシステム、産業機器制御、通信機器など、幅広い分野で活用されています。特に、システムの起動シーケンスや、特定のハードウェア機能の実装に適しています。

著名なCPLDメーカー



アルテラ
アトメル
サイプレス・セミコンダクタ
ラティスセミコンダクター
ザイリンクス

関連用語



ASIC (Application-Specific Integrated Circuit)
EPLD (Erasable Programmable Logic Device)
SPLD (Simple Programmable Logic Device)
マクロセルアレイ
PAL (Programmable Array Logic)
プログラマブルロジックデバイス (PLD)
FPGA (Field-Programmable Gate Array)
VHDL
Verilog

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。