1

我在文档中找不到使用 icarus 将 VHDL 代码转换为 Verilog 的示例。我在这里找到了如何对 VHDL 进行 verilog 。我尝试修改命令以在此代码上进行 VHDL 转换:

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

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

4

2 回答 2

2

没有 Verilog 目标,因此您无法生成 Verilog 输出,而且 VHDL 编译仍然是实验性的。您可以在邮件列表中询问,以确保引擎盖下没有任何可以提供帮助的信息。VHDL 到 Verilog 的转换只能在相对简单的情况下进行(可综合代码应该没问题),所以无论如何您可能都必须手动进行。

于 2016-01-06T11:39:27.803 回答
1

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

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

如果您更仔细地注意输出,您会发现以这种方式您将generic在实体接口处失去两者。直接使用vhdlpp可能很有用:

/path/to/vhdlpp button_deb.vhd > button_deb.v
于 2020-12-18T10:07:53.443 回答