Difference Between FPGA and Microcontroller
FPGA vs Microcontroller
In the world of electronics and digital circuitry, the term microcontroller is very widely used. Almost every single device that is meant to connect and interact with a computer has an embedded microcontroller inside to facilitate the communication. The structure of a microcontroller is comparable to a simple computer placed in a single chip with all of the necessary components like memory and timers embedded inside. It is programmed to do some simple tasks for other hardware. A Field Programmable Gate Array or FPGA is an integrated circuit that could contain millions of logic gates that can be electrically configured to perform a certain task.
The very basic nature of FPGAs allows it to be more flexible than most microcontrollers. The term field programmable already tells you that the whole FPGA device can be reprogrammed to do any logic task that can be fitted into the number of gates that it has. You can rewire all the logic gates to configure it to the task you had in mind. Microcontrollers already have their own circuitry and instruction set that the programmer must follow in order to write code for that microcontroller which restricts it to certain tasks.
The flexibility of FPGAs comes at a price because they consume more power than typical microcontrollers, making them unsuitable for applications where power drain is an issue. Making an FPGA function in a certain role would also take a lot longer compared to microcontrollers because you would have to write all the code from scratch and convert it to machine language. With microcontrollers, you can buy packages that are geared towards a certain task and just program them to your exact specification relatively quikly. The price related to FPGAs can also be taken literally since using FPGAs could cost manufacturers way more than with simple micrcontrollers. That’s why FPGAs are usually seen in products that have a high degree of complexity but with only a low demand. Once the demand rises and mass production becomes necessary, the circuit is moved to ASICs like microcontroller where the production cost is less.
Summary:
1. Microcontrollers are custom built mini computers in an IC while FPGAs are only composed of logic blocks that can be rewired electrically
2. Microcontrollers consume less power than FPGAs
3. FPGAs take a considerably longer time to set-up while there are ready built microcontrollers being sold for specific uses
4. Building devices with FPGAs are more costly than microcontrollers
- Difference Between Sony Cybershot S Series and W Series - December 22, 2012
- Difference Between Samsung Galaxy S3 and iPhone 5 - December 21, 2012
- Difference Between Samsung Galaxy S2 (Galaxy S II) and Galaxy S 4G - December 20, 2012
Search DifferenceBetween.net :
Email This Post : If you like this article or our site. Please spread the word. Share it with your friends/family.
5 Comments
Trackbacks
- Difference Between ASIC and FPGA | Difference Between | ASIC vs FPGA
- Difference Between FPGA and CPLD | Difference Between | FPGA vs CPLD
hi,
i have a question which is confusing me in my project that is how we can use fpga in place of micro controller ?
i wil be very thank ful .
You’d have to figure out which inputs and which outputs in the micro controller are controlled how, and then reprogram the fpga to do the same functions for the same inputs and outputs. That’s all the detail I can give you. FPGA’s are much more flexible as said above so it is fairly easy to mimic the function of a microcontroller as long as you know the exact functionality of the microcontroller.
I savour, cause I discovered just what I was looking for.
You have ended my 4 day long hunt! God Bless you man. Have a great
day. Bye