FPGA vs CPLD
FPGA'er og CPLD'er er to af de velkendte typer af digitale logiske chips. Når det kommer til den interne arkitektur, er de to chips åbenlyst forskellige.
FPGA er en forkortelse for feltprogrammerbar Gate Array, er en type af en programmerbar logisk chip. Det er en fantastisk chip, da den kan programmeres til at udføre næsten enhver form for digital funktion. FPGAs arkitektur tillader, at chippen har en meget høj logisk kapacitet. Det bruges i design, der kræver en høj porttælling, og deres forsinkelser er ret uforudsigelige på grund af dens arkitektur. FPGA betragtes som 'fint korn', fordi det indeholder en masse små logiske blokke, der kan nå op til 100.000. Det er med flip-flops, kombinationslogik og hukommelse. Det er designet til mere komplekse applikationer.
På den anden side er CPLD (Complex Programmable Logic Device) designet ved hjælp af EEPROM (elektrisk sletbar programmerbar read-only hukommelse). Det er mere velegnet i små porttællingsdesign. Da det er en mindre kompleks arkitektur, er forsinkelserne meget forudsigelige, og det er ikke-flygtigt.
CPLD bruges ofte til enkle logiske applikationer. Det indeholder kun et par blokke af logik og når op til 100. Når det er sagt, betragtes CPLD'er som en 'grovkornet' type enheder. CPLD'er er billige, og det giver også en meget hurtigere input til outputvarighed på grund af den enklere 'grove korn' -arkitektur.
FPGA'er er billigere pr. Gate, men dyre, når det kommer til pakken.
Arbejde med FPGA'er kræver særlige procedurer, da det er RAM-baseret. For at programmere enheden skal du først beskrive 'logikfunktionen' ved hjælp af computeren, enten ved at tegne et skematisk eller blot beskrive funktionen på en tekstfil. Kompilering af 'logikfunktionen' kræver normalt en software. Det opretter en binær fil, der skal downloades til FPGA, og derefter opfører chippen netop det, du har instrueret i 'logikfunktionen'.
Beslutning om, hvad der skal bruges, uanset om FPGA eller CPLD, ville virkelig afhænge af designmålene.
Resumé:
1. FPGA indeholder op til 100.000 små logiske blokke, mens CPLD kun indeholder et par blokke af logik, der når op til et par tusinder.
2. Med hensyn til arkitektur betragtes FPGA'er som 'finkornet' enheder, mens CPLD'er er 'grovkornet'.
3. FPGA'er er gode til mere komplekse applikationer, mens CPLD'er er bedre til enklere.
4. FPGA'er består af små logiske blokke, mens CPLD'er er lavet af større blokke.
5. FPGA er en RAM-baseret digital logikchip, mens CPLD er EEPROM-baseret.
6. Normalt er FPGA'er dyrere, mens CPLD'er er meget billigere.
7. Forsinkelser er meget mere forudsigelige i CPLD'er end i FPGA'er.