我可以用 google 找到几个 v2k 完整语法——但要么我失去理智,要么它们在端口声明方面都以同样的方式被破坏。示例输入:
module foo (
input x,
output [2:0] y);
endmodule;
我找不到可以解析该语法的语法,但他们会接受这样的东西作为 list_of_port 中的“端口”:
{ name[3:0], name2[2:0]}
.. or .. .name( othername )
即,我希望在模块实例化端口绑定的语法中看到的东西是为模块端口声明提供的。
例子
http://www.externsoft.ch/download/verilog.html#module_declaration
http://www.syncad.com/VeriLogger_bnf_Syntax_Verilog_2001.htm#list_of_ports
我想我可以查看 icarus 源代码或 Perl::Verilog。不过,我希望能确认上面的语法被破坏了——或者有人可以指出我错过了什么。正确语法的来源会很棒......