FPGA vs CPLD
FPGA och CPLD är två av de välkända typerna av digitala logikchips. När det gäller den interna arkitekturen är de två marker naturligtvis olika.
FPGA är kort för Field-Programmable Gate Array, är en typ av ett programmerbart logikchip. Det är bra chip eftersom det kan programmeras för att göra nästan alla slags digitala funktioner. FPGAs arkitektur gör det möjligt för chipet att ha en mycket hög logisk kapacitet. Den används i mönster som kräver ett högt porttal och deras förseningar är ganska oförutsägbara på grund av dess arkitektur. FPGA anses vara "finkornigt" eftersom det innehåller många små logikblock som kan nå upp till 100 000. Det är med flip-flops, kombinationslogik och minne. Den är konstruerad för mer komplexa applikationer.
Å andra sidan är CPLD (Complex Programmable Logic Device) utformad med hjälp av EEPROM (elektriskt raderbart programmerbart skrivarminne). Det är mer lämpligt i små grindräknedesigner. Eftersom det är en mindre komplex arkitektur är förseningarna mycket förutsägbara och det är icke-flyktigt.
CPLD används ofta för enkla logiska tillämpningar. Den innehåller bara några block av logik och når upp till 100. Med detta har CPLDs betraktats som "grovkornig" typ av enheter. CPLDs är billiga och det ger också en mycket snabbare input till utgångsvaraktighet på grund av dess enklare, grovkorns arkitektur.
FPGA är billigare per port men dyrt när det gäller paketet.
Att arbeta med FPGA kräver särskilda förfaranden eftersom det är RAM-baserat. För att programmera enheten måste du först beskriva "logikfunktionen" med hjälp av en dator, antingen genom att skriva en schematisk eller helt enkelt beskriva funktionen i en textfil. Sammanställning av "logikfunktionen" kräver vanligtvis en programvara. Det skapar en binär fil som ska laddas ner till FPGA och då kommer chipet att uppträda precis som du har instruerat i "logikfunktionen".
Att bestämma vad man ska använda, antingen FPGA eller CPLD, skulle verkligen bero på designmålen.
Sammanfattning:
1. FPGA innehåller upp till 100 000 små logikblock medan CPLD innehåller bara några block av logik som når upp till några tusen.
2. Vad gäller arkitektur anses FPGAs vara "finkorniga" enheter medan CPLD är "grovkornig".
3. FPGA är bra för mer komplexa applikationer medan CPLD är bättre för enklare.
4. FPGAs består av små logikblock medan CPLDs är tillverkade av större block.
5. FPGA är ett RAM-baserat digitalt logikchip medan CPLD är EEPROM-baserad.
6. Normalt är FPGA: er dyrare medan CPLD är mycket billigare.
7. Fördröjningar är mycket mer förutsägbara i CPLD än i FPGA.