Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com 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.

CPLD Softcore versus microcontroller

Status
Not open for further replies.

mobile-it

Advanced Member level 1
Joined
Apr 24, 2004
Messages
464
Helped
22
Reputation
44
Reaction score
8
Trophy points
1,298
Activity points
3,344
cpld vs microcontroller

Hi all EDAboard fans,

I have a question for you all:

What are the advantages and disadvantages of softcore's in CPLD's and FPGA's if you look at various application fields?

Where do you prefer microcontrollers over softcores????

Does anyone has a good link/e-book for this topic?


Kind regards,
Mobile-it
 

soft core for cpld

Cost. A standard microcontroller is still much cheaper than a softcore CPLD based system. Advantages are: Flexibility, can create anything in CPLD. disadvantages: power consumption, size and cost !.

Paul.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
cpld versus microcontroller

CPLD more cosly but much flexable.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
cpld as microcontroller

CPLD and FPGA are hardware connections, so when you need speed, fast data transfers, and few operations. When you need only few clock cycles to get a result, CPLD or FPGA are the best.

But, when you need more data procesing, like mathematical operations, data arrays, data sorting, or anything that don't need a too fast result, cause you can tolerate that result will be available many clock cycles later than input: Microcontroller is better than a CPLD cause is much more flexible.

A big CPLD has about only 256 Flipflops, or 256 bits. A small microcontroller has 1KB of memory for program.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
epld softcore

Thanks for your answers!!! It is already a great starting point.

Why is a hardware microcontroller faster then a softcore? Can someone give me a good presentation/e-book about this matter.

I want to make a powerpoint softcore versus hardcore microcontrollers.


Thanks!
 

soft core dsp

Softcore microcontrollers are squized in the chip, using as few as possible logic, so there is still some logic for other uses. microcontrollers that are in die form are made with die size and speed, not logic size. die size is $$ so speed is made so that its OK for your needs and they can make some bucks. CPLD's are much faster than mcu logic needs so try to make the core as small as possible.

paul.

PS: I think in the future we will only see softcores, and dedicated microcontrollers only in mass produced products. Think you have to wait 10 - 15 years for that to happen. All is depending on cost, size and development time.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
cpld and mcu comparison

Some of these answers are a bit misleading.

CPLD and FPGA are hardware connections, so when you need speed, fast data transfers, and few operations. When you need only few clock cycles to get a result, CPLD or FPGA are the best.
Not necessarilly. It really depends. A microcontroller (or microprocessor) will often times have a higher frequency, so it depends on the application. If the code is optimized for the processor, this will often times perform faster. The FPGA has the ability to do more in parallel, however this requires development time and due to the slower clock speed may still take longer.

The "hardware connections have little to do with it since a uC also has hardware connections. The difference is that the "hardware connections" in an FPGA can be modified.

Typically if you are performing math operations you will want a DSP. If you are performing control applications you will want a uC (unless you have specialized needs that require an FPGA). And if you are performing some specialize type of application you may need an FPGA.

But, when you need more data procesing, like mathematical operations, data arrays, data sorting, or anything that don't need a too fast result, cause you can tolerate that result will be available many clock cycles later than input: Microcontroller is better than a CPLD cause is much more flexible.
you would most likely want a DSP if it were math operations. DSPs can be found for almost as cheap as a uC (some even have uC built in).

A big CPLD has about only 256 Flipflops, or 256 bits. A small microcontroller has 1KB of memory for program.
I'm not sure what this means. But if you look at the architecture of a typical FPGA routing takes the most area followed by flip flops, logic elements take up the least area. I would dare to estimate that flip flops account for >25% of the area on the chip.

If you mean memory flip flops, Spartan 3s (a very popular FPGA) have between 12k-520k of memory (each bit of mem is a flip flop).

Hope i didn't make things worse...
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
microcontroller vs fpga

mizel said:
Some of these answers are a bit misleading.

CPLD and FPGA are hardware connections, so when you need speed, fast data transfers, and few operations. When you need only few clock cycles to get a result, CPLD or FPGA are the best.
Not necessarilly. It really depends. A microcontroller (or microprocessor) will often times have a higher frequency, so it depends on the application. If the code is optimized for the processor, this will often times perform faster. The FPGA has the ability to do more in parallel, however this requires development time and due to the slower clock speed may still take longer.

The "hardware connections have little to do with it since a uC also has hardware connections. The difference is that the "hardware connections" in an FPGA can be modified.

Typically if you are performing math operations you will want a DSP. If you are performing control applications you will want a uC (unless you have specialized needs that require an FPGA). And if you are performing some specialize type of application you may need an FPGA.

But, when you need more data procesing, like mathematical operations, data arrays, data sorting, or anything that don't need a too fast result, cause you can tolerate that result will be available many clock cycles later than input: Microcontroller is better than a CPLD cause is much more flexible.
you would most likely want a DSP if it were math operations. DSPs can be found for almost as cheap as a uC (some even have uC built in).

A big CPLD has about only 256 Flipflops, or 256 bits. A small microcontroller has 1KB of memory for program.
I'm not sure what this means. But if you look at the architecture of a typical FPGA routing takes the most area followed by flip flops, logic elements take up the least area. I would dare to estimate that flip flops account for >25% of the area on the chip.

If you mean memory flip flops, Spartan 3s (a very popular FPGA) have between 12k-520k of memory (each bit of mem is a flip flop).

Hope i didn't make things worse...

mizel,

first of all thanks for your answer.


In what applications would you prefer an FPGA and in what application would you prefer a microcontroller?

Can you give me also a brief explanation why?
thank you very much!
 

microprocessor soft core + fpga

i accept all last message

but in tomorrow ...hard answer

but do very same ! many micro ... any day have more peripheral HARD IO and more DMA

and FPGAs have more fix block ,,,,, then in tomorrow can have both them !

you can see many fpga have internal powerful CPU and many MCU have internal programmables logic (atmel ....)

then i think ,both have merge in next

i really do faster Development time (5 to 25X) with mcu vs fpga
many do same speak ,...
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
softcore microprocessors disadvantage

The comparison between an FPGA and an MCU is not a typical comparison. An FPGA is more closely related to an ASIC. An MCU is designed for control tasks and that is what it is best used for. When speed and/or parallelism are needed you use an ASIC or an FPGA. Just math, use a DSP. Not totally sure, use an FPGA to be safe (though not cost efficient).

MCU: Microwave, Washing Machine, TV, Cell Phone (Basic functionality, not much flexibility required after deployment)
FPGA: Cellular Base Station (Flexibility required to adapt to new standards like EV-DO in CDMA or HSDPA in WCDMA/UMTS)

Note: most cell phones actually use a DSP (TI 55x, OMAP, AD Blackfin, etc.)
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
microcontroller vs cpld

Are there any sites/e-books related to this topic?

I would like to know when I have to use a softcore MCU in an FPGA or when we better use an MCU (hard-version).
 

soft-core vs hard-core and ppt

to determine which one to use depends on required application:

in applications of compression & coding (digital communication or source coding )
and in the applicatios of hardware protocols & standards & network interfacing or in applications where reliability is important , the fpga is much better to use because it doesnt have processor problems like hanging and can be faster.

in applications like io , micros are better choices because cheaper & easier to use.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
cpld softcore

Are there any sites/e-books related to this topic?

I would like to know when I have to use a softcore MCU in an FPGA or when we better use an MCU (hard-version).

Dear ,
after you learned FPGA and MCU well , then you would decide fastly which to use in an application , almost all of answers are true , but you would feel it when you do it !

Regards,
hm_fa_da.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
dsp vesus microcontroller

anyone has more literature?

thanks
 

fpga micro controller comparison

Please advise me...
 

softcore cpld

Please help me out...
 

softcore hardcore

Still no one?

I need it... please help me out!
 

micro controller soft core

Where do you choose for a microcontroller and where do you opt for a softcore in a CPLD/FPGA?

can you give me some examples ?
 

micro controller soft core information

mobile-it said:
Where do you choose for a microcontroller and where do you opt for a softcore in a CPLD/FPGA?

can you give me some examples ?

Say in the area of robotics:

Microcontroller - High level logic & control such as scripting of when to make turns, monitor sensors etc. Use a high level language or assembly and compile to machine code, and upload to microcontroller.

FPGA - Image processing where much of the data computation could be done in parallel, and flexibility is required to test out and optimize image processing algorithms would best be suited for an FPGA. The results could be passed back to the microcontroller for logic processing and feedback. Use matlab + SystemC or verilog to design parallel datapaths to perform the computations and write to FPGA.
 

    mobile-it

    Points: 2
    Helpful Answer Positive Rating
cpld vs 8 bit mcu

So all the thinks that require parallel processing are in FPGA and the thinks that require normal sequential processing are programmed in the softcore
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top