Article: Synthesizing Hardware From Software

August 22nd, 2019 – By: Brian Bailey

 

 

Can a software engineer create hardware? It may be possible but not in the way that existing high-level synthesis tools do it.

 

The ability to automatically generate optimised hardware from software was one of the primary tenets of system-level design automation that was never fully achieved. The question now is whether that will ever happen, and whether it is just a matter of having the right technology or motivation to make it possible.

 

While high-level synthesis (HLS) did come out of this work and has proven to be highly valuable, but the input is not software. Rather, it is a more abstract description of hardware. Most HLS tools can take C, SystemC or C++ as input.

 

“The common complaint about C synthesis has been and remains that it is not ‘really’ C or C++,” says Chris Jones, vice president of marketing for Codasip. “That the language is so instrumented with custom syntax that by the end of it, the user may as well be writing in Verilog.”