如何使用Icarus Verilog在Verilog中转换VHDL代码?

时间:2016-01-06 09:30:09

标签: vhdl verilog icarus

我无法在doc中找到一个使用icarus将VHDL代码转换为Verilog的示例。我找到了如何对VHDL here进行verilog。 我尝试修改命令以在this code上进行VHDL转换:

$ iverilog -tvlog95 -o button_deb.v button_deb.vhdl 
button_deb.vhdl:3: syntax error
I give up.

但是我遇到了语法错误。我的VHDL代码是错的吗?或者是iverilog命令错了吗?

2 个答案:

答案 0 :(得分:2)

没有Verilog目标,因此您无法生成Verilog输出,无论如何VHDL编译仍然是实验性的。你可以在邮件列表上询问,确保没有任何内容可以提供帮助。 VHDL到Verilog的转换只能在相对简单的情况下进行(可合成的代码应该是OK),所以你可能不得不手动完成。

答案 1 :(得分:1)

在此期间似乎已经获得了一些支持(主要使用-g2005-sv-g2009-g2012开关)。试试这个:

iverilog -g2012 -tvlog95 -o button_deb.v button_deb.vhd

如果您更加关注输出,您会发现以这种方式您将在实体接口处松开两个generic。直接使用vhdlpp可能会有用:

/path/to/vhdlpp button_deb.vhd > button_deb.v