# What is a CPLD, an FPGA and an ASIC?

#### keemnal

Joined Nov 12, 2007
2
And how are they all different in terms of technologies and performance?

Thank you!

#### mrmeval

Joined Jun 30, 2006
833
Oh wow, that would take weeks to answer.

Each has differences, those differences are blurring but there is a cost advantage to your choice. You'll pretty much need to work with them to know enough about them to choose wisely. If you're in school you might check and see if you can get a discount for a kit through your school.

I've seen CPLD's be boot loaders, then that boots up a CPU calling a program from flash and that loads the FPGA. The CPU, flash, sram and ram would would be ASICs (flexible but still a specific thing). The CPU at this point is in control and will be so till it's powered down. I think the CPLD ran the keyboard and had some other things going on. It had loads of left over capacity according to one engineer.

http://en.wikipedia.org/wiki/CPLD

http://en.wikipedia.org/wiki/Fpga

http://en.wikipedia.org/wiki/Application-specific_integrated_circuit

#### scubasteve_911

Joined Dec 27, 2007
1,203
ASIC - Best Performance, highest initial cost! (talking $100000s) FPGA - very good performance, all digital (some exceptions), fairly inexpensive, depends on family, they range from like 10$ to 3000$per FPGA CPLD - Don't really know much, seems to be for lower power, cost, and performance applications I have used a Spartan 3 FPGA in the past on a little PCB and was really impressed with its capabilities. Parallel processing is the power of a FPGA design and they are quite competitive with DSP technology. DSP usually uses a single instruction set flow, which can be limiting. As far as flexibility, price, and performance, I believe FPGAs are the way to go Steve ADDED : More like 7937$USD upper range, check out XC2VP100-6FFG1704C on digikey! Wow!

#### Dave

Joined Nov 17, 2003
6,970
ASIC - Best Performance, highest initial cost! (talking $100000s) FPGA - very good performance, all digital (some exceptions), fairly inexpensive, depends on family, they range from like 10$ to 3000\$ per FPGA
CPLD - Don't really know much, seems to be for lower power, cost, and performance applications

I have used a Spartan 3 FPGA in the past on a little PCB and was really impressed with its capabilities. Parallel processing is the power of a FPGA design and they are quite competitive with DSP technology. DSP usually uses a single instruction set flow, which can be limiting. As far as flexibility, price, and performance, I believe FPGAs are the way to go

Steve
Good assessment and I would agree with what you say about FPGAs and particularly the Spartan-3 - we use them all the time. I notice Xilinx have recently started to pitch FPGAs towards the DSP markets, however I am yet to see how well they will stand up to dedicated DSP devices, afterall DSP-cores are suited to the addition-multiplication-shift routines that lie at the heart of DSP algorithms.

The OP should note that within the differing classifications of ASICs there are some close overlaps with FPGAs in the semi-custom implementations. It is when we get into the full-custom designs where ASICs really differentiate themselves from FPGAs.

Dave

#### scubasteve_911

Joined Dec 27, 2007
1,203
Thanks Dave,

In the past, I first tried to work with Analog Device's family of DSPs for something I was doing, but it proved to be a daunting task. You need a degree in computer science to be able to work with those!, or at least 6 months of tinkering and heavy reading. I was up and running with a Spartan in mere days

Xilinx makes a new series of Spartans, the Spartan 3-DSP, which is meant for the type of operations usually done via DSP processors. They added in "xtreme DSP' slices that are present in their higher end FPGAs, which taylor to MAC routines,etc.

There are a lot of neat deviations to fit the task at hand, like Actel's Fusion line, which is a mixed signal design. That's probably next on my list of goodies to play with

Steve

#### Dave

Joined Nov 17, 2003
6,970
Xilinx makes a new series of Spartans, the Spartan 3-DSP, which is meant for the type of operations usually done via DSP processors. They added in "xtreme DSP' slices that are present in their higher end FPGAs, which taylor to MAC routines,etc.

Steve
I recall when Xilinx started pitching the DSP-merits of the Spartan-3 range: http://www.xilinx.com/publications/xcellonline/xcell_52/xc_s3dsp52.htm

This is the range we have just got in the lab; should be interesting to see how it performs.

Dave