Sign in

Not a member? | Forgot your Password?

Search blogs

Search tips

Free PDF Downloads

Adam Taylor's MicroZed Chronicles

Performance driven FPGA design with an ASIC perspective

FPGAs!? Now What?

Architecture of FPGAs and CPLDs: A Tutorial

FPGA Implementation of Digital Filters

Recent Blogs on FPGARelated

I don’t often convert VHDL to Verilog but when I do ...
posted by Christopher Felton

Spline interpolation
posted by Markus Nentwig

BGA and QFP at Home 1 - A Practical Guide.
posted by Victor Yurkovsky

Introducing the VPCIe framework
posted by Fabien Le Mentec

How FPGAs work, and why you'll buy one
posted by Yossi Kreinin

Learning VHDL - Basics
posted by Enrico Garante

Yet another PWM
posted by Anton Babushkin

Two jobs
posted by Stephane Boucher

How to start in FPGA development? - Simulation software tools
posted by Nuria Orduna

An Editor for HDLs
posted by Dave Vandenbout

Articles by category

See Also

DSPEmbedded Systems

FPGA Blogs > Christopher Felton > Are you kidding me?

Christopher Felton (contact)
Christopher Felton's current favorite projects are implementing DSP digital circuits with MyHDL for FPGAs. More information @ show full bio

Would you like to be notified by email when Christopher Felton publishes a new blog?


Pageviews: 679

Are you kidding me?

Posted by Christopher Felton on Jul 1 2012 under Other Vendors | HDLs | Tools & Simulation | Design Methodologies   

If I understand the blog entry [1] correctly, it's saying the industry is ready for high level synthesis (HLS), well almost.  The blog states, the higher abstraction level will be achieved via C/C++/SystemC (the C-centric flows).  A quote from the blog.

... getting close, and one of the biggest hurdles still to overcome is the skill set -- the combination of hardware design expertise and C++ -- ...

C/C++/SystemC, are you kidding me?

There's nothing wrong with the C family of languages and some argue because of existing code bases, the C-centric flow is pragmatic because of momentum.  But these articles don't mention monemtum or available resources as a justification for C/C++/SystemC.  It actually says the opposite.  The blog agrues, there are not enough engineers who design complex digital systems and are skilled in C/C++/SystemC.  It also suggests an effort needs to be taken to educate the digital system designers.

If there are not existing code bases that people want to turn in to digital hardware (which still requires a re-architecture but the thinking is if you wrote it in C/C++ re-writing it in C/C++ would be easier than another language), and if there are not engineers that design and implement complex digital systems fluent in the C languages.  Then why in the world would you choose the C languages to increase the abstraction level?

The engineers lack of C/C++ skills is not simply because the education system is less focused on the C languages.   I believe a more likely reason is that the design engineers simply don't use C/C++.  When the engineers need to model/simulate a complex digital system before implementation they choose a language with a higher abstraction level and a lower-cost of entry (usually high abstraction and lower cost of entry go hand in hand).  The language chosen for the complex digital system modeling is usually not C/C++.  

As stated, I understand the plethora of tools available for C/C++/SystemC based on the momentum argument.  If they are arguing there is no momentum I don't see a reason to continue to push the C family of language for higher abstraction.  You need to choose a BETTER language to raise the abstraction level.  There are loads of different languages that exist and raise the abstraction level: Python, Matlab, bluespec, Haskell, Google Go, e, Ruby ... These languages and more would all be a better option.




Rate this article:
Rating: 3.67 | Votes: 3
posted by Christopher Felton
Christopher Felton's current favorite projects are implementing DSP digital circuits with MyHDL for FPGAs. More information @ LinkedIn.

Previous post by Christopher Felton: MyHDL FPGA Tutorial II (Audio Echo)
Next post by Christopher Felton: MyHDL FPGA Tutorial II cont. (Echo, Audio Interface)
all articles by Christopher Felton

Comments / Replies

There are no comments yet!

Sorry, you need javascript enabled to post any comments.