electronics forum

Rules | Recent posts | topic RSS | Search | Register  | Log in

Difference Between FPGA & CPLD


Post new topic  Reply to topic    EDAboard.com Forum Index -> Electronic Elementary Questions -> Difference Between FPGA & CPLD
Author Message
brain123



Joined: 02 Aug 2006
Posts: 8
Helped: 1


Post02 Aug 2006 16:21   

difference between fpga and cpld


Can anyone tell me the differences between an FPGA & CPLD in terms of architecture, power, internal routing. etc.
Back to top
bauer



Joined: 21 Jun 2006
Posts: 212
Helped: 20


Post02 Aug 2006 16:47   

difference between cpld asic fpga


A field programmable gate array (FPGA) is a semiconductor device containing programmable logic components and programmable interconnects. The programmable logic components can be programmed to duplicate the functionality of basic logic gates such as AND, OR, XOR, NOT or more complex combinational functions such as decoders or simple math functions. In most FPGAs, these programmable logic components (or logic blocks, in FPGA parlance) also include memory elements, which may be simple flip-flops or more complete blocks of memories.

A hierarchy of programmable interconnects allows the logic blocks of an FPGA to be interconnected as needed by the system designer, somewhat like a one-chip programmable breadboard. These logic blocks and interconnects can be programmed after the manufacturing process by the customer/designer (hence the term "field programmable") so that the FPGA can perform whatever logical function is needed.

FPGAs are generally slower than their application-specific integrated circuit (ASIC) counterparts, can't handle as complex a design, and draw more power. However, they have several advantages such as a shorter time to market, ability to re-program in the field to fix bugs, and lower non-recurring engineering costs. Vendors can sell cheaper, less flexible versions of their FPGAs which cannot be modified after the design is committed. The development of these designs is made on regular FPGAs and then migrated into a fixed version that more resembles an ASIC. Complex programmable logic devices, or CPLDs, are another alternative.



Difference Between FPGA & CPLD


CPLD stands for Complex Programmable Logic Device. It is a programmable logic device with complexity between that of FPGAs and PALs, and architectural features from both. The building block of a CPLD is the macro cell, which contains logic implementing disjunctive normal form expressions and more specialized logic operations.

Features in common with PALs:

* Non-volatile configuration memory. Unlike many FPGAs, an external configuration PROM isn't required, and the CPLD can function immediately on system start-up.
* For all but the largest devices, routing constrains most logic blocks to have input and output signals connected to external pins (little opportunity for internal state storage or deeply layered logic).

Features in common with FPGAs:

* Large number of gates available. CPLDs typically have the equivalent of thousands to tens of thousands of logic gates, allowing implementation of moderately complicated data processing devices. PALs typically have a few hundred gate equivalents at most, while FPGAs typically range from tens of thousands to several million.
* Some provisions for logic more flexible than sum-of-product expressions, including complicated feedback paths between macro cells, and specialized logic for implementing various commonly-used functions (such as integer arithmetic).

The most noticeable difference between a large CPLD and a small FPGA is the presence of on-chip non-volatile memory in the CPLD. The differences in architectural approach become more apparent farther from this intermediate region.

This characteristic of non-volatility means that CPLDs are often used in modern digital design to perform 'boot loader' functions before handing over control to other devices not having this capability. A good example is where a CPLD is used to load configuration data for an FPGA from non-volatile memory.

CPLDs were an evolutionary step from even smaller devices that preceded them, PLAs (first shipped by Signetics), and PALs.









Difference Between FPGA & CPLD
Back to top
kavgoxin



Joined: 17 Sep 2004
Posts: 34
Helped: 1


Post04 Aug 2006 10:52   

diference between fpga and cpld


I think the above one is good.
there are few more web resources if you want to see

fpga & cpld
h**p://www.vlsibank.com/sessionspage.asp?titl_id=3057

h**p://www.fpgacpu.org/usenet/synth_cpu.html
Back to top
Google
AdSense
Google Adsense




Post04 Aug 2006 10:52   

Ads




Back to top
saubhik



Joined: 27 Apr 2007
Posts: 141
Helped: 8
Location: India


Post08 Jun 2007 9:38   

Re: Difference Between FPGA & CPLD


bauer wrote:
A field programmable gate array (FPGA) is a semiconductor device containing programmable logic components and programmable interconnects. The programmable logic components can be programmed to duplicate the functionality of basic logic gates such as AND, OR, XOR, NOT or more complex combinational functions such as decoders or simple math functions. In most FPGAs, these programmable logic components (or logic blocks, in FPGA parlance) also include memory elements, which may be simple flip-flops or more complete blocks of memories.

A hierarchy of programmable interconnects allows the logic blocks of an FPGA to be interconnected as needed by the system designer, somewhat like a one-chip programmable breadboard. These logic blocks and interconnects can be programmed after the manufacturing process by the customer/designer (hence the term "field programmable") so that the FPGA can perform whatever logical function is needed.

FPGAs are generally slower than their application-specific integrated circuit (ASIC) counterparts, can't handle as complex a design, and draw more power. However, they have several advantages such as a shorter time to market, ability to re-program in the field to fix bugs, and lower non-recurring engineering costs. Vendors can sell cheaper, less flexible versions of their FPGAs which cannot be modified after the design is committed. The development of these designs is made on regular FPGAs and then migrated into a fixed version that more resembles an ASIC. Complex programmable logic devices, or CPLDs, are another alternative.



Difference Between FPGA & CPLD


CPLD stands for Complex Programmable Logic Device. It is a programmable logic device with complexity between that of FPGAs and PALs, and architectural features from both. The building block of a CPLD is the macro cell, which contains logic implementing disjunctive normal form expressions and more specialized logic operations.

Features in common with PALs:

* Non-volatile configuration memory. Unlike many FPGAs, an external configuration PROM isn't required, and the CPLD can function immediately on system start-up.
* For all but the largest devices, routing constrains most logic blocks to have input and output signals connected to external pins (little opportunity for internal state storage or deeply layered logic).

Features in common with FPGAs:

* Large number of gates available. CPLDs typically have the equivalent of thousands to tens of thousands of logic gates, allowing implementation of moderately complicated data processing devices. PALs typically have a few hundred gate equivalents at most, while FPGAs typically range from tens of thousands to several million.
* Some provisions for logic more flexible than sum-of-product expressions, including complicated feedback paths between macro cells, and specialized logic for implementing various commonly-used functions (such as integer arithmetic).

The most noticeable difference between a large CPLD and a small FPGA is the presence of on-chip non-volatile memory in the CPLD. The differences in architectural approach become more apparent farther from this intermediate region.

This characteristic of non-volatility means that CPLDs are often used in modern digital design to perform 'boot loader' functions before handing over control to other devices not having this capability. A good example is where a CPLD is used to load configuration data for an FPGA from non-volatile memory.

CPLDs were an evolutionary step from even smaller devices that preceded them, PLAs (first shipped by Signetics), and PALs.


Difference Between FPGA & CPLD





and here is some addition ....



Sorry, but you need login in to view this attachment

Back to top
Arabic versionBulgarian versionCatalan versionCzech versionDanish versionGerman versionGreek versionEnglish versionSpanish versionFinnish versionFrench versionHindi versionCroatian versionIndonesian versionItalian versionHebrew versionJapanese versionKorean versionLithuanian versionLatvian versionDutch versionNorwegian versionPolish versionPortuguese versionRomanian versionRussian versionSlovak versionSlovenian versionSerbian versionSwedish versionTagalog versionUkrainian versionVietnamese versionChinese version
Post new topic  Reply to topic    EDAboard.com Forum Index -> Electronic Elementary Questions -> Difference Between FPGA & CPLD
Page 1 of 1 All times are GMT + 1 Hour
Similar topics:
What's the main difference between FPGA &CPLD ??? (14)
Difference between FPGA and CPLD (7)
Difference between CPLD and FPGA (7)
Difference between FPGA and CPLD (13)
Difference between PLD, CPLD and FPGA (2)
WHAT IS DIFFERENCE BETWEEN CPLD AND FPGA? (3)
Difference between FPGA, PLD, CPLD and ASIC... (2)
Difference b/w FPGA & CPLD (20)
dif between cpld & fpga (3)
What is the difference of CPLD and FPGA? (24)


Abuse || Administrator || Moderators || Support us || sitemap
topic RSS