我有一个函数f(),在verilog模块M1中定义。我想在不同的模块M2中重用这个相同的功能,无论如何这样做而不重新定义M2中的功能?
--- M1.v ---
module M1();
function f;
//do stuff
endfunction
endmodule
--- M2.v -----
module M2();
// Use f() here
endmodule
答案 0 :(得分:3)
您可以将该函数放入单独的文件中,并使用`include 编译器指令将该函数包含在两个模块中:
--- M1.v ---
module M1();
`include "functions.v"
endmodule
--- M2.v -----
module M2();
`include "functions.v"
// Use f() here
endmodule