【发布时间】:2016-08-24 06:41:33
【问题描述】:
我对 FPGA 比较陌生,我正在寻找有关在 Verilog 中声明模块的现代最佳实践的一些指导。
我见过两种在 verilog 中声明模块的方法。第一个让我想起了Traditional C,比如examples on wikipedia:
module toplevel(clock,reset);
input clock;
input reset;
/* snip */
endmodule
而替代语法将输入/输出说明符作为参数列表的一部分,与 VHDL 不太相似,如this example:
module fadder(
input a, //data in a
input b, //data in b
input cin, //carry in
output sum_out, //sum output
output c_out //carry output
);
/* snip */
endmodule
对于新编写的verilog代码,首选哪种语法?在这种情况下,“首选”是指在标准或相关材料中编写的内容(明确编写,或通过标准中给出的示例隐含),或编写在备受推崇的风格指南中。这个问题不是在询问个人喜好!
【问题讨论】: