问题
I try to make an survey/history of all C-to-hardware compilers.
For all that dont know them: they take C code then translate it into some hardware description language (like VHDL or Verilog), which then can be used to generate hardware (usually it gets mapped to an FPGA - but I am not limited to that, ASIC as target would be fine too).
I already have quite collected some (+ info about them). So my question is: Do you know any other compilers (and if so have any references, pointers, information about them)?
My list so far:
- AutoESL
- Bach-C (Sharp)
- C2H (Altera)
- C2R (Cebatech)
- C2Verilog (CompiLogic / C Level Design / Synposys)
- Carte / MAP (SRC Computers)
- Cascade (CriticalBlue)
- CASH (Carnegie Mellon University, Pittsburgh)
- Catapult-C (Mentor Graphics)
- CHC (Altium)
- CHiMPS (University of Washington (Seattle) / Xilinx / soon commercial?)
- C-to-Verilog (Haifa)
- Comrade (TU Braunschweig E.I.S. + TU Darmstadt E.S.A.)
- CVC (Hitachi)
- Cyber (NEC)
- Daedalus (Uni Amsterdam, Uni Leiden)
- DIME-C (Nallatech)
- eXCite (YXI)
- FP-Compiler (Altera)
- FpgaC (OpenSource)
- GarpCC (Callahan, University of California at Berkeley)
- GAUT (UBS-Universität Frankreich)
- Handel-C (Celoxica)
- Hthreads (University of Kansas)
- Impulse-C (Impulse Accelerated Technologies)
- Mitrion-C (Mitrionics)
- DWARV (TU Delft)
- NIMBLE (Synopsys, E.I.S. Braunschweig)
- NISC (University of California, Irvine)
- PICO-Express (Synfora => Synopsys)
- PRISC (Harvard University, Cambridge)
- ROCCC (University of California, Riverside)
- SPARK (University of California, Irvine)
- SpecC (Gajski et al.)
- Trident (OpenSource, Los Alamos National Laboratory)
- UGH
- VEAL
- vfTools (Vector Fabric)
- xPilot (University of California, Los Angeles)
(I know not all on the list have C as soure, some use C-similar dialect, and almost all support only a subset, I am also interrested in such).
EDIT: I know how to use google, so I already checked the ususal suspects and have included the results. So it is very likely that someone can only answer here if he does really know some paper or exotic tool (or maybe not so exotic but that implements the functionality somehow hidden, and the compiler is not advertised).
回答1:
System-C?
回答2:
Rotem CToVerilog, I don't know anything about it, just googled it up.
回答3:
LegUp: http://legup.eecg.utoronto.ca/
回答4:
There is also HercuLeS (provisional name), which is MY HLS tool.
Get the (old) tech. demo from here http://www.nkavvadias.co.cc/misc/hls-demo-linux-0.0.1.tar.gz Things have progressed since then.
Let me know if you want a tech. presentation detailing a real-life examples, e.g. a multi-function CORDIC.
Cheers, Nikolaos Kavvadias
回答5:
OpenCL support at Altera and Xilinx.
OpenCV support by Xilinx. OpenCL + OpenCV support by Altera. See this post. I talk about the OpenCL+OpenCV both based on C languages.
Altera has OpenCL SDK which is used with Quartus. Xilinx has Vivado HLS.
回答6:
Cynthesizer, which is SystemC based. CellMath will go the other way, take Verilog and create a C model.
来源:https://stackoverflow.com/questions/5603285/c-to-hardware-compiler-hll-synthesis