Forum: FPGA, VHDL & Verilog [ANN] New high-level synthesis tool: HercuLeS

Author: Nikolaos Kavvadias (Company: http://www.nkavvadias.com) (nikolaos_k)
Posted on:

Rate this post
0 useful
not useful
Dear all

i'm pleased to announce a new high-level synthesis tool, HercuLeS, which 
is just out of its first development cycle. HercuLeS allows you to 
synthesize ANSI C code (certain rules apply) to RTL VHDL.

HercuLeS is named after the homonymous constellation and not after the 

You can find information on HercuLeS here:

A very informative blog post can be found at EETimes:

Some of its features:
1. Integer and fixed-point (VHDL-2008) arithmetic of arbitrary lengths
2. It is able to synthesize VHDL from code spanning across several C 
3. Support for both the Synopsys "de-facto standard" libraries and the 
official IEEE standard libraries
4. Support of synchronous read ROM and RAM memories (directly mapped to 
FPGA block RAMs)
5. Functions can pass single-dimensional array arguments
6. Support of streaming outputs (producing a sample at a time)

You can either code your input in ANSI C or in a bit-accurate 
typed-assembly language called NAC (N-Address Code). Then, your input is 
converted to a series of CDFGs (Control/Data Flow Graphs), expressed as 
Graphviz graphs with user-defined attributes, which again are translated 
to VHDL code adhering to the FSMD (Finite-State Machine with Datapath) 

I would appreciate if you had a look at the sample files available at 
website. They illustrate complete examples of automatically synthesized
algorithms such as Bresenham's line drawing algorithm, and the Sieve of
Eratosthenes. Overall, eight complete examples can be found at the 
HercuLeS website.

There will be regular updates on the HercuLeS webpage (every 1-1.5 
months). The October update, scheduled for 2011/10/11, will allow access 
to HercuLeS via a web interface!

But first I would appreciate feedback on whatever related to the 

You can contact me at: nikolaos.kavvadias-at-gmail-dot-com.

Best regards,
Nikolaos Kavvadias
Research Scientist, Hardware developer,
Ph.D., M.Sc., B.Sc.


Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [vhdl]VHDL code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]

Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.