Forskjellen mellom FPGA og mikroprosessor

FPGA vs mikroprosessor

Feltprogrammerbare Gate Arrays eller FPGAs var en gang enkle blokker av porter som kan konfigureres av brukeren til å implementere logikken som han eller hun ønsker. Til sammenligning er en mikroprosessor en forenklet CPU eller Central Processing Unit. Den utfører et program som inneholder et bestemt sett med instruksjoner. Hovedforskjellen mellom FPGA og mikroprosessorer er kompleksiteten. Selv om begge varierer i kompleksitet avhengig av skalaen, har mikroprosessorer en tendens til å være mer komplisert enn FPGA. Dette er på grunn av de ulike prosessene som allerede er implementert i den.

Mikroprosessorer har allerede et fast sett med instruksjoner, som programmørene trenger å lære for å skape riktig arbeidsprogram. Hver av disse instruksjonene har sin egen tilsvarende blokk som allerede er hardwired inn i mikroprosessoren. En FPGA har ingen hardwired logikkblokker fordi det ville beseire det feltprogrammerbare aspektet av det. En FPGA er lagt ut som et nett med hvert knutepunkt som inneholder en bryter som brukeren kan lage eller bryte. Dette bestemmer hvordan logikken til hver blokk er bestemt. Programmering av en FPGA innebærer å lære HDL eller maskinvarebeskrivelsesspråket; et språk på lavt nivå som noen sier å være like vanskelig som forsamlingsspråket.

Utviklingen og prisen på halvledere og elektronikk generelt har langsomt slettet linjene mellom FPGA og mikroprosessorer ved å kombinere de to i en enkelt pakke. Dette gir den kombinerte pakken mye mer fleksibilitet. Mikroprosessoren gjør det meste av den faktiske behandlingen, men den går over de mer spesifikke oppgaver til en FPGA-blokk. Dette lar deg få det beste fra begge verdener. Mikroprosessoren kan håndtere de generelle oppgaver, mens tilpassede FPGA-blokker gir deg muligheten til å innlemme unike blokker.

Forbedringen i elektronikk har utvidet dekningen av mikroprosessorer og FPGAer. Hvis du virkelig vil, kan du bruke en mikroprosessor og få det til å fungere som en FPGA. Du kan også ta en FPGA og få den til å fungere som en enkelt logisk gate. Så for de fleste oppgaver hvor du velger mellom en mikroprosessor og FPGA, kan du sannsynligvis gjøre det med en av dem.

Sammendrag:

  1. Mikroprosessorer er mer komplekse enn FPGAer
  2. Mikroprosessorer har faste instruksjoner mens FPGA ikke gjør det
  3. FPGAer og mikroprosessorer blir ofte blandet inn i en enkelt pakke