【发布时间】:2011-08-01 23:26:01
【问题描述】:
我尝试对所有 C 到硬件的编译器进行调查/历史记录。
对于所有不了解它们的人:他们采用 C 代码,然后将其翻译成某种硬件描述语言(如 VHDL 或 Verilog),然后可用于生成硬件(通常它被映射到 FPGA - 但我不是仅限于此,作为目标的 ASIC 也可以)。
我已经收集了一些(+关于它们的信息)。所以我的问题是:你知道任何其他编译器(如果知道的话,有任何关于它们的引用、指针、信息)吗?
到目前为止我的清单:
- AutoESL
- 巴赫-C(夏普)
- C2H (Altera)
- C2R (Cebatech)
- C2Verilog(CompiLogic/C 级设计/Synposys)
- Carte / MAP(SRC 计算机)
- 级联(CriticalBlue)
- CASH(卡内基梅隆大学,匹兹堡)
- Catapult-C (Mentor Graphics)
- CHC (Altium)
- CHiMPS(华盛顿大学(西雅图)/Xilinx/即将商业化?)
- C 到 Verilog(海法)
- 同志(TU Braunschweig E.I.S. + TU Darmstadt E.S.A.)
- CVC(日立)
- 网络(NEC)
- 代达罗斯(阿姆斯特丹大学,莱顿大学)
- DIME-C (Nallatech)
- eXCite (YXI)
- FP 编译器 (Altera)
- FpgaC(开源)
- GarpCC(卡拉汉,加州大学伯克利分校)
- GAUT (UBS-Universität Frankreich)
- Handel-C (Celoxica)
- Hthreads(堪萨斯大学)
- Impulse-C(脉冲加速技术)
- Mitrion-C(Mitrionics)
- DWARV(代尔夫特理工大学)
- NIMBLE(Synopsys,E.I.S.不伦瑞克)
- NISC(加州大学欧文分校)
- PICO-Express (Synfora => Synopsys)
- PRISC(哈佛大学,剑桥)
- ROCCC(加州大学河滨分校)
- SPARK(加州大学欧文分校)
- SpecC(Gajski 等人)
- Trident(开源,洛斯阿拉莫斯国家实验室)
- 哎呀
- 小牛肉
- vfTools(矢量织物)
- xPilot(加利福尼亚大学洛杉矶分校)
(我知道不是所有列表中的 C 都如此糟糕,有些使用类似 C 的方言,而且几乎所有都只支持一个子集,我也对此感兴趣)。
编辑:我知道如何使用谷歌,所以我已经检查了通常的嫌疑人并包含了结果。因此,很可能只有当他确实知道一些论文或奇异工具(或者可能不是那么奇异但以某种方式隐藏了实现功能,并且没有宣传编译器)的情况下,有人才能在这里回答。
【问题讨论】:
-
还要考虑 C++ 硬件描述工具。真正有趣的是用于硬件的 C++ DSEL。
-
不错的清单!在“Carte / MAP (SRC Computers)”条目中,MAP 是 SRC 系统中的 MAP 处理器(包含 FPGA、内存和支持逻辑),Carte 是用于为微处理器和 MAP 处理器编译 C 代码的编程环境。 SRC 系统。
-
有很多选择,我怎么知道从哪个开始玩?
-
@pyCthon:这取决于很多事情(例如,有些针对 ASIC 设计,有些是 FPGA,有些是软核)——如果没有更多限制,很难说(当你拥有它们时不会容易得多)。一般来说,商业比学术更自然,但你经常要为此付出高昂的代价。
-
@flolo true 你能推荐一个像样的开源FPGA吗?
标签: c compiler-construction hardware fpga