Różnica między CPLD i FPGA

Różnica między CPLD i FPGA

CPLD vs FPGA

CPLDS (złożone programowalne urządzenie logiczne) i FPGA (tablica bramy programowalnej w terenie) to dwa urządzenia logiczne, które zaczynają się rozmyć ze względu na ulepszenia technologii i wprowadzenie swoich funkcji do drugiego. Główną różnicą między FPGA i CPLDS jest złożoność lub liczba bram logicznych zawartych w każdym. Chociaż rzeczywiste liczby mogą się znacznie różnić w zależności od różnych modeli, CPLD zawierają od kilku tysięcy bram do dziesiątek tysięcy. Dla porównania, FPGA mają dziesiątki tysięcy do kilku milionów. Ze względu na ogromną różnicę w liczbie bram, łatwo jest powiedzieć, że możesz zbudować bardziej złożoną logikę z FPGA niż z CPLDS.

Jedną główną zaletą posiadania wyjątkowo dużej liczby bram jest zdolność do osadzenia funkcji wysokiego poziomu w układ. Zamiast tworzyć je samodzielnie, niektóre FPGA mają już dodatki, mnożniki i wielu innych operatorów dla najczęstszych zadań. Programista może następnie skupić się na rzeczywistym celu projektu i nie musi się martwić o wdrożenie takich funkcji.

Istnieje również ogromna różnica między nimi, jeśli chodzi o ich architekturę. FPGA używają LUTS (tabele wyszukiwania), podczas gdy CPLD używa prostszej suma produktów (zwanych również morzem bram). Korzystanie z LUT są korzystne, ponieważ zapewnia znaczne oszczędności w czasie przetwarzania, ponieważ chip nie musiałby przechodzić przez proces ponownego obliczenia suma produktów, jak to robią CPLD. LUTS zapewnia również bardziej elastyczne połączenie między wewnętrznymi modułami FPGA niż to, do czego jest zdolny.

Ostatnią główną różnicą między nimi jest pamięć nieulotna. Luts są formą pamięci, ale nie utrzymuje się po usunięciu mocy. CPLDS mają nielotną pamięć wbudowaną w wióry, umożliwiając im od razu funkcjonowanie bez potrzeby zewnętrznego ROM. CPLDS są nawet używane do działania jako „ładowarka rozruchowa” dla FPGA. Jak już wspomniano na początku tego artykułu, granica między funkcjami zaczyna się rozmyć. Aby wyeliminować potrzebę „ładowarek rozruchowych”, producenci FPGA zaczęli osadzać pamięć nieulotną w układy FPGA; tym samym tworząc tę ​​funkcję obecną zarówno w CPLDS, jak i niektórych FPGA.

Streszczenie:

1.FPGA są bardziej złożone niż CPLDS.
2.FPGA mają więcej funkcji na wysokim poziomie, wbudowanym niż CPLD.
3.FPGA używają tabel wyszukiwania, podczas gdy CPLD używają suma produktów.
4.CPLDS mają pamięć nieulotną, podczas gdy FPGA nie.