Ideas for a Project Using an ASIC vs FPGA

Click For Summary

Discussion Overview

The discussion revolves around project ideas that utilize ASICs over FPGAs, particularly in contexts where microcontrollers may not be suitable. Participants explore various applications, including cryptography, digital signal processing (DSP), and analog functions, while considering project feasibility within a two-month timeframe.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Homework-related
  • Mathematical reasoning

Main Points Raised

  • Some participants suggest that ASICs are more cost-effective for high-volume products due to smaller die sizes compared to FPGAs.
  • Others argue that ASICs can achieve higher speeds than FPGAs, which may be limited to around 200 MHz.
  • Dedicated hardware for tasks like encryption and DSP is proposed as a key advantage of ASICs over microcontrollers.
  • Analog applications are mentioned as potentially better suited for ASICs, despite the availability of FPGAs with built-in ADCs and DACs.
  • Low power consumption is highlighted as an important consideration, with ASICs allowing for more sophisticated power management techniques.
  • A participant suggests specific project ideas, such as a Fourier analyzer for audio or a garage door opener encoder using rolling code methods.
  • Questions arise regarding the requirements for programming in VHDL and whether the project involves actual ASIC fabrication or just design description.
  • Another participant proposes developing a low-power I2C block as a practical exercise to understand ASIC and FPGA trade-offs.
  • One participant expresses uncertainty about implementing a 2-point DFT in VHDL and seeks guidance on available libraries for complex exponentials and trigonometric functions.

Areas of Agreement / Disagreement

Participants generally agree on the advantages of ASICs for specific applications, particularly in speed and power management. However, there is no consensus on the best project direction, as multiple competing ideas and approaches are presented.

Contextual Notes

Participants express varying levels of experience with VHDL and DSP, which may affect their project choices. The discussion includes references to previous lab work, indicating a range of familiarity with relevant concepts and tools.

Who May Find This Useful

This discussion may be useful for students or hobbyists interested in hardware design, particularly those exploring the differences between ASICs and FPGAs in project applications.

EvLer
Messages
454
Reaction score
0
Hello,
I am looking for any ideas for a project where an ASIC would be used over a FPGA and something that cannot be done with microcontroller as much. Not tooo complicated but something that could be accomplished within 2 months or so... so not tooo simple either... i guess...
Thanks in advance.
 
Engineering news on Phys.org
The main reason to design an ASIC over an FPGA or CPLD is cost. The ASIC die can generally be made smaller than the general purpose FPGA or CPLD, so it costs less to produce. But there are initial costs in the design of the ASIC that need to be amortized over the die that are produced, so an ASIC generally only is cheaper for a high-volume product. Are you designing an ASIC as a project? Will you actually make masks and die?

As for projects where an ASIC/FPGA/CPLD is useful over a uC, think of situations where dedicated hardware is needed, and not generally present on a uC. For example, you can speed up encryption if you have dedicated hardware resources available, as opposed to doing it all in a CISC uC program. You can also control a large memry array for the uC, and bank switch in different memory blocks under uC control. You could do some dedicated DSP functions in the ASIC, or make other math functions available.
 
Microcontrollers are good for operations on whole bytes, but are pretty sub-par (i.e. slow) for logic involving individual bits. Cryptography, error-correction, video encoding, and other tasks all operate on individual bits, so are better done in custom logic than on a microcontroller.

The most common reason why one must choose to design an ASIC rather than using an FPGA is actually speed. You really can't eke out more than about 200 MHz or so on today's FPGAs with even moderate utilization.

Cost is not really so much of an issue for selection -- for low volumes, FPGAs beat ASICs in cost, while for high volumes, it's the other way around. If speed were no issue, you'd just select between them by volume alone.

- Warren
 
How about analog applications?

I suppose there are fpgas with built-in adcs and dacs but I can imagine many analog applications that are better done in an asic.
 
If you must go digital then I would suggest trying to do the same thing, but with really low power. You can do much more clever power management in an asic. fpgas are usually just limited to clock gating techniques. Don't knock low power, it matters more than speed in many designs today.
 
thank you all for the advice...
as far as cryptology or dsp, what are some NARROWER applications i might look into? This IS a course project... we have to program in VHDL.
Thanks so much for the ideas.

edit: to give you an idea where i am in VHDL: we have implemented a UART and I2C protocol for one slave, also a project on counting people walking into a room using 2 sensors, those are the major "labs". We can re-use our old code, but I would like to have a new idea to work on... makes it more interesting...
 
Last edited:
Have you had much DSP yet? You could do something flashy like a Fourier analyzer for audio and music. Drive a set of bargraph LEDs depending on the real-time audio spectrum. You could even integrate an ADC into the ASIC, or just connect up to an external one if that would make the project more tractable.

On the encryption front, how about making a garage door opener encoder? Like the ones that use some rolling code method (which I know almost nothing about, but it sounds interesting and real-world applicable).
 
"we have to program in VHDL"

does this means the same vhdl has to generate the asic (via basic blocks) and fpga program code?

do you have to actually build the asic or just describe what you could do? is a spice of the asic adaquate?

personally, i think trying to build a low power I2C block would help you understand the trade-offs between asics and fpgas better. it would also be a good ee exercise and could even result in ip that you could sell! I2C is used in many many low power sensors.

I would go for <100uW at 3.3V and 100KHz, say 10 transactions/sec, not including the power in the pull-ups.
 
so, we decided to go with the FFT...
My question is: so, i got down to 2-point DFT, how would i program it's calculation in VHDL? what library has complex exponentials available? or sin/cos?

mathematically on the paper it all makes sense, but when it comes to implementing it all digitally...i am a bit lost!
Any help on this is greatly appreciated...
Thanks again ...
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
2K
Replies
11
Views
11K
  • · Replies 4 ·
Replies
4
Views
3K
Replies
5
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
Replies
3
Views
2K
Replies
20
Views
3K
  • · Replies 9 ·
Replies
9
Views
3K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K