FPGA vs CPLD
FPGA i CPLD su dvije poznate vrste digitalnih logičkih čipova. Kad je u pitanju interna arhitektura, dva su čipa očito različita.
FPGA je kratica za Field Programmable Gate Array, vrsta programabilnog logičkog čipa. Odličan je čip jer se može programirati tako da radi gotovo bilo koju vrstu digitalne funkcije. FPGA arhitektura omogućava čipu vrlo visok logički kapacitet. Koristi se u dizajnima koji zahtijevaju visok broj vrata, a njihova odlaganja zbog njegove su arhitekture prilično nepredvidiva. FPGA se smatra 'finom zrnom' jer sadrži puno sitnih logičkih blokova koji bi mogli dostići i do 100.000. To je s flip-flopsom, kombinacijskom logikom i memorijom. Dizajniran je za složenije primjene.
S druge strane, CPLD (složeni programirljivi logički uređaj) dizajniran je korištenjem EEPROM-a (električno izbrisljiva programabilna memorija samo za čitanje). Prikladniji je za male izvedbe brojeva vrata. Budući da je riječ o manje složenoj arhitekturi, kašnjenja su mnogo predvidljiva i ona su neisplativa.
CPLD se često koristi za jednostavne logičke aplikacije. Sadrži samo nekoliko blokova logike i doseže do 100. Nakon toga, CPLD-ovi se smatraju uređajima s grubim zrnom. CPLD-ovi su jeftini, a nude i brži ulaz u trajanje izlazaka zbog svoje jednostavnije arhitekture „grubog zrna”.
FPGA su jeftiniji po ulazu, ali skupi kada je u pitanju paket.
Rad sa FPGA-ima zahtijeva posebne postupke, jer se temelji na RAM-u. Da biste programirali uređaj, prvo morate opisati 'logičku funkciju' pomoću računala, bilo crtanjem šema ili jednostavno opisom funkcije u tekstualnoj datoteci. Kompilacija "logičke funkcije" obično zahtijeva softver. Stvara binarnu datoteku za preuzimanje u FPGA i tada će se čip ponašati upravo onako kako ste naveli u "logičkoj funkciji".
Odluka o tome što ćemo koristiti, bilo FPGA ili CPLD, stvarno će ovisiti o ciljevima dizajna.
Sažetak:
1. FPGA sadrži do 100.000 sitnih logičkih blokova dok CPLD sadrži samo nekoliko blokova logike koji dosežu i do nekoliko tisuća.
2. U pogledu arhitekture, FPGA-i se smatraju uređajima 'sitnog zrna', dok su CPLD-ovi 'grubozrnati'.
3. FPGA su izvrsni za složenije aplikacije dok su CPLD bolji za jednostavnije.
4. FPGA se sastoje od sitnih logičkih blokova dok su CPLD-ovi napravljeni od većih blokova.
5. FPGA je digitalni logički čip utemeljen na RAM-u, dok se CPLD temelji na EEPROM-u.
6. Normalno, FPGA su skuplji dok su CPLD-ovi mnogo jeftiniji.
7. Odgoda je mnogo predvidljivija u CPLD-u nego u FPGA-i.