[英]verilog testbench component instantiate using generate
我是Verilog和學習的新手。 我有一個測試台問題。 假設在Verilog測試平台中,我有8個模塊實例。 有沒有一種方法可以使用生成循環在測試台中實例化它們,就像可以在代碼的HDL部分中聲明模塊一樣。 例如
module my_test_bench;
reg one_r;
reg two_r;
wire one_w;
wire two_w;
genvar i;
generate
(for i = 0; i < 8; i=i+1)
begin
DDR3_module uut[i]( .clk(), .rst(), );
end
endgenerate
initial begin
... test stimulus
end
end module
謝謝。
是的你可以。 使用以下語法:
genvar i;
generate
for (i = 0; i < 8; i = i + 1) begin
DDR3_module uut (.clk(clk[i]), .rst(rst[i]));
end
endgenerate
請注意,每個實例的clk
和rst
信號都需要向量,例如以下前面的聲明行:
wire [7:0] clk;
wire [7:0] rst;
但是,如果要直接從initial
塊中驅動它們,則需要使用reg
而不是wire
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.