在我的测试平台中,寄存器被称为网络 - 不会编译

时间:2014-02-26 22:18:24

标签: verilog

这是我的测试平台,因为它一直声称clk是网络,所以不会编译。我尝试了很多东西,但我错过了一些东西。根据我的理解,“reg”不是一个网络,应该允许在方程的LHS中。


module testbench // testbench module has no ports
(
reg clk,    
reg [3:0] d,                    //latch inputs
wire [3:0] q        //latch outputs
);
// instantiate circuit under test


ringcounter UUT1( 
    .q(q),
    .d(d),
    .clk(clk)
);

initial
    begin
        clk = 0;
    end


always 
    begin
        #10 clk = ~clk;     //toggle clock every 10ns
    end

endmodule

我得到的错误是

  

(vlog-2110)非法引用网“clk”。

1 个答案:

答案 0 :(得分:3)

如果您的评论正确(“testbench module没有端口”),则不要在模块名称后面使用括号。在那里使用分号,并在每个reg / wire声明后:

module testbench; // testbench module has no ports
reg clk;   
reg [3:0] d;                    //latch inputs
wire [3:0] q;        //latch outputs
// instantiate circuit under test