CPLD vs. FPGA
CPLD (Complex Programmable Logic Device) a FPGA (Field Programmable Gate Array) jsou dvě logická zařízení, která se začínají rozmazávat kvůli zdokonalení technologie a zavedení svých funkcí na druhé. Hlavní rozdíl mezi FPGA a CPLD je složitost nebo počet logických bran obsažených v každé z nich. I když se skutečná čísla mohou u různých modelů velmi lišit, obsahují CPLD kdekoli od několika tisíc bran až po desítky tisíc. Oproti tomu FPGA mají desítky tisíc až několik milionů. Vzhledem k velkému rozdílu v počtu bran je snadné říci, že s FPGA můžete vytvořit složitější logiku než s CPLD.
Jednou z hlavních výhod extrémně vysokého počtu bran je schopnost zabudovat do čipu funkce na vysoké úrovni. Spíše než jejich vytvoření sami, některé FPGA již mají sčítače, multiplikátory a mnoho dalších operátorů pro nejčastější úkoly. Programátor se pak může zaměřit na skutečný cíl návrhu a nemusí se starat o implementaci takových funkcí.
Pokud jde o jejich architekturu, existuje také obrovský rozdíl. FPGA používají LUT (Look-up Tables), zatímco CPLD používá jednodušší součet produktů (také nazývaný moře bran). Použití LUT je výhodné, protože poskytuje významné úspory času zpracování, protože čip by nemusel procházet procesem přepočtu součtu produktů jako CPLD. LUTs také poskytují flexibilnější propojení mezi interními FPGA moduly, než co CPLD umí.
Posledním velkým rozdílem mezi nimi je energeticky nezávislá paměť. LUT jsou formou paměti, ale po odpojení napájení již netrvá. CPLD mají v čipy zabudovanou energeticky nezávislou paměť, která jim umožňuje okamžité fungování bez potřeby externí paměti ROM. CPLD se dokonce používají jako „zavaděč“ pro FPGA. Jak již bylo zmíněno na začátku tohoto článku, čára mezi funkcemi se začíná rozmazávat. Aby se vyloučila potřeba „zavaděčů“, začali výrobci FPGA začleňovat do svých čipů FPGA energeticky nezávislou paměť; čímž je tato funkce přítomna jak v CPLD, tak v některých FPGA.
Souhrn:
1.FPGA jsou složitější než CPLD.
2.FPGA mají více vestavěných funkcí na vyšší úrovni než CPLD.
3.FPGA používají vyhledávací tabulky, zatímco CPLD používají souhrn produktů.
4.CPLD mají energeticky nezávislou paměť, zatímco FPGA ne.