Jaka jest różnica między CPLD a FPGA?
Jaka jest różnica między CPLD a FPGA?
Odpowiedzi:
CPLD są zwykle używane tylko do zastąpienia stosunkowo niewielkiej ilości dyskretnej logiki. Mianowicie rzeczy takie jak kilka dekoderów adresów i obwodów interfejsu magistrali. CPLD zawierają bardzo mało pamięci; ogólnie liczba przerzutników jest tego samego rzędu co piny we / wy (tzn. 32 makrokomórki CPLD ma ~ 30 wyprowadzeń i ~ 30 przerzutników). Kombinatoryczna logika w CPLD jest zaimplementowana w programowalnej tablicy logicznej, co zasadniczo nie jest przydatne przy bardzo dużych prędkościach. CPLD są zwykle oparte na pamięci flash lub mają wewnętrzną pamięć flash, co upraszcza wymagania dotyczące projektowania płyt i poprawia ochronę przed inżynierią wsteczną. CPLD nie są również budowane z wykorzystaniem procesów logicznych „najnowocześniejszych”.
Układy FPGA są przeznaczone do obliczeń o bardzo wysokiej wydajności i interfejsów o dużej przepustowości. Wewnętrznie używają zupełnie innej architektury niż CPLD. Układy FPGA mają o wiele więcej stanu wewnętrznego (rejestry i blokową pamięć RAM) niż piny we / wy. Logika kombinatoryczna jest implementowana na szybkich tablicach przeglądowych, które mogą pracować z częstotliwością kilkuset MHz. LUT i inne komponenty są połączone z siecią routingu o wysokiej wydajności. Układy FPGA zawierają również wyspecjalizowane twarde rdzenie, które zapewniają wydajną implementację różnych komponentów. Blokowanie pamięci RAM i mnożników / segmentów DSP jest bardzo powszechne. Układy FPGA mogą także zawierać MAC-y Ethernet, rdzenie procesorów twardych, interfejsy PCI Express i inne specjalistyczne bloki. Przekaźniki wielogigabitowe są również wspólną cechą wysokiej klasy układów FPGA, które umożliwiają przesyłanie danych z prędkością do 50 Gbit / s na parę pinów. Układy FPGA zasadniczo nie zawierają żadnej nieulotnej pamięci, dlatego do załadowania konfiguracji wymagana jest zewnętrzna pamięć flash. Szyfrowanie można wdrożyć w celu zwiększenia bezpieczeństwa projektu za pomocą klucza zabezpieczonego baterią przechowywanego w układzie FPGA.
Różnice:
Pojemność - CPLD zwykle ma mniejszą pojemność logiczną. Największy CPLD może znajdować się na podobnym poziomie co najmniejszy FPGA na głównym nurcie rynku.
Przechowywanie obrazu - CPLD może uruchomić się sam, podczas gdy większość FPGA musi pobrać strumień bitów konfiguracji z nieulotnej pamięci, ponieważ są one oparte na SRAM. Wpływa to na bezpieczeństwo systemu.
Cecha - CPLD zapewnia tylko bramki lub wspomniane komórki logiczne, które mogą wykonywać wszelkiego rodzaju algorytmy logiczne. Ponadto w FPGA osadzono także wiele twardych bloków, takich jak BlockRAM, DSP, TEMAC, PCIe, MGT, mikroprocesor itp., Aby pojedynczy układ FPGA był w stanie zbudować zintegrowany, w pełni funkcjonalny system.