FPGA versus microprocessor
Field Programmable Gate Arrays of FPGA's waren ooit eenvoudige blokken met poorten die door de gebruiker kunnen worden geconfigureerd om de logica te implementeren die hij of zij wil. Ter vergelijking, een microprocessor is een vereenvoudigde CPU of centrale verwerkingseenheid. Het voert een programma uit dat een specifieke set instructies bevat. Het belangrijkste verschil tussen FPGA's en microprocessors is de complexiteit. Hoewel beide afhankelijk van de schaal variëren in complexiteit, zijn microprocessors doorgaans complexer dan FPGA's. Dit komt door de verschillende processen die al zijn geïmplementeerd.
Microprocessors hebben al een vaste set instructies, die de programmeurs moeten leren om het juiste werkprogramma te creëren. Elk van deze instructies heeft zijn eigen corresponderende blok dat al met vaste bedrading is verbonden met de microprocessor. Een FPGA heeft geen hardwired logicablokken omdat dat het veld programmeerbare aspect ervan zou verslaan. Een FPGA is ingedeeld als een net waarbij elke kruising een schakelaar bevat die de gebruiker kan maken of breken. Dit bepaalt hoe de logica van elk blok wordt bepaald. Programmeren van een FPGA houdt het leren van HDL of de Hardware Description Language in; een taal op een laag niveau waarvan sommige mensen zeggen dat ze net zo moeilijk zijn als de assembler.
De ontwikkeling en prijsdaling van halfgeleiders en elektronica in het algemeen heeft de lijnen tussen FPGA's en microprocessors langzaam doen vervagen door de twee in één pakket letterlijk te combineren. Dit geeft het gecombineerde pakket veel meer flexibiliteit. De microprocessor voert het grootste deel van de eigenlijke verwerking uit maar geeft de meer specifieke taken door aan een FPGA-blok. Hiermee verkrijgt u het beste van beide werelden. De microprocessor kan de algemene taken aan, terwijl aangepaste FPGA-blokken u de mogelijkheid bieden om unieke blokken op te nemen.
De verbetering van de elektronica heeft de dekking van microprocessors en FPGA's verbreed. Als je het echt wilt, kun je een microprocessor gebruiken en het laten doen door een FPGA. Je kunt ook een FPGA nemen en het laten functioneren als een enkele logische poort. Dus voor de meeste taken waarbij u kiest tussen een microprocessor en FPGA, kunt u waarschijnlijk met een van beide doen.
Samenvatting: