CPLDとFPGAの違いは何ですか?
CPLDとFPGAの違いは何ですか?
回答:
CPLDは通常、比較的少量の個別ロジックを置き換えるためにのみ使用されます。つまり、一連のアドレスデコーダーやバスインターフェイス回路などです。CPLDにはメモリがほとんど含まれていません。一般に、フリップフロップの数はI / Oピンと同じ桁数です(つまり、32マクロセルCPLDには〜30ピンと〜30フリップフロップがあります)。CPLDの組み合わせロジックは、プログラマブルロジックアレイに実装されます。これは、通常、非常に高速では役に立ちません。CPLDは通常、フラッシュベースであるか、内部フラッシュメモリを備えているため、ボード設計要件を簡素化し、リバースエンジニアリングに対する保護を向上させます。CPLDも「最先端」のロジックプロセスで構築されていません。
FPGAは、非常に高性能な計算と高帯域幅のインターフェイス用に設計されています。内部的には、CPLDとは非常に異なるアーキテクチャを使用しています。FPGAには、I / Oピンよりもはるかに多くの内部状態(レジスタおよびブロックRAM)があります。組み合わせロジックは、数百MHzまで実行可能な高速ルックアップテーブルに実装されます。LUTおよびその他のコンポーネントは、高性能ルーティングネットワークと相互接続されています。FPGAには、さまざまなコンポーネントの効率的な実装を提供する専用ハードコアも含まれています。ブロックRAMと乗算器/ DSPスライスは非常に一般的です。FPGAには、イーサネットMAC、ハードプロセッサコア、PCI Expressインターフェイス、およびその他の専用ブロックを含めることもできます。マルチギガビットトランシーバーも、ハイエンドFPGAの一般的な機能で、ピンペアあたり最大50ギガビット/秒でデータを転送できます。FPGAには通常、不揮発性メモリが含まれていないため、構成をロードするには外部フラッシュメモリが必要です。暗号化を実装して、FPGAに保存されているバッテリバックアップ式キーを使用して設計のセキュリティを向上させることができます。
違い:
容量-CPLDは通常、ロジックの容量が少なくなります。最大のCPLDは、主流市場で最小のFPGAと同じレベルになる可能性があります。
イメージの保存-CPLDはそれ自体で起動できますが、ほとんどのFPGAはSRAMベースであるため、不揮発性ストレージからコンフィギュレーションビットストリームをフェッチする必要があります。これはシステムのセキュリティに影響を与えます。
機能-CPLDは、あらゆる種類のロジックアルゴリズムを実行できるゲートまたはロジックセルのみを提供します。さらに、FPGAは、BlockRAM、DSP、TEMAC、PCIe、MGT、マイクロプロセッサなどの多くのハードブロックも組み込み、FPGAのシングルチップで統合されたフル機能のシステムを構築できるようにしました。