Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

what are the parameters to choose an FPGA?

Not open for further replies.


Member level 1
Dec 2, 2010
Reaction score
Trophy points
Activity points
When i choose an FPGA, what are the parameters i should look into? or how do i find if an FPGA would suit my project needs?

Many many things to consider:

How much internal ram/multipliers/resources will you need?
What power consumption are you aiming for?
What is your budget?
How much IO is needed?

These are probably the main factors. They cover pretty much all the big bits.
IO pin count to see if they are enough for your needs,
IO standards supported,
gate number (logic blocks) so that your project can fit,
speed grade to be able to work at the speed you need,
see if there are DLL, or PLL and if they suite your needs,
packaging and availability or price may be important depending on your project.

Some of these may be easier to see if you actually design your project and compile/fit it using the vendor tool, then it will be very easy to see if the max timing suits you and also the area that is needed so that you can choose the appropriate size fpga

talking of gate count... is there any way to predict the gate count of a design in the initial stages?? cos when we start, we wil definitely have only the overall architecture in place.. how do we get an idea of gate count in the beginning itself?

I think the only way is to actually use the fitter in the vendor tool, even an application like Synplify will only show you an estimation of gates and speed.
It will also depend on the options used with the fitter, you can use speed, balanced, area optimization and the result will be different with every setting.


Hi alex.. the fitter will come into picture only when i have the HDL files ready.. but in the beginnning of the project we will be walking in the dark and there will not be any HDL files.. So then how will we know that X will be the approximate gate count for the design??

In altera (and probably xilinx) you can set all pins to virtual quite easily. This will give you an idea of area useage on a particular device.

For me though, usually its memories and multipliers that are the limiting factor rather than logic.
If the HDL files are not ready then how can you calculate the area you will need?
Each time you change your code the area needed will change too so you should at least have a prototype code done and then you can calculate a 10% for example (or more) for future changes, i don't think there is another way.
I can't imagine that you can say i want to do the X project and some program show an estimation of the result.
Maybe someone else has more knowledge on the matter.


I assume you have a pretty good idea of the top level block diagram, isn't it? Try to devide these block into entities that you can estimate, i.e. UART, processor (if any), DSP functions, state machines, ...
Then you try to find a device that has enough I/O's, memory, logic to cover all these blocks with enough head room. Now look at the migration path of that device, can it grow and schrink? If you are at the top, you need a bigger package; at the bottom, it can probably fit in a smaller device.
Don't stuck to one vendor: compare the vendors against each other.

These are some practical guidelines that I'm using regularly.

Regards & good luck
thanks a lot for the replies.. its all really helpful


- First check how complex is your design.
- Then try to check if this complexity are ready to use .. i mean any IP which can be easily implemented available freely with FPGA vendors.
- What will be you maximum frequency targeted?
- check how much IO would be required and their standard?
- How much Block RAM(internal memory) requirement?
- Cost of FPGA

Hope this would be helpful to you.

Not open for further replies.

Part and Inventory Search

Welcome to