2013-03-23 60 views
0

我有一個7位向上/向下計數器用Verilog代碼的端口:如何寫一個測試平臺多維數組

module updowncount_7bit (clock,reset,hold,up_down,q); 
input clock,reset,hold,up_down; 
output reg [6:0] q; 
integer direction; 

    always @(posedge clock) 
    begin 
     if(up_down) 
      direction = 1; 
     else 
      direction = -1; 
     if (!reset) 
      q <= 0;     
     else if (!hold)   
      q <= q + direction; 

    end 
endmodule 

我試圖寫一個測試平臺代碼,但它似乎輸出做不工作,我不知道爲什麼!任何人都可以幫忙!?

的測試臺結果:

在型號-SIM:http://i1114.photobucket.com/albums/k533/omegakd/222_zps6d406e8b.png

在的Quartus由Vector波形:enter image description here

module counter_7bit_tb; 
    wire [6:0]f_tb; 
    reg clock_in_tb, reset_tb, hold_tb, up_down_tb; 
updowncount_7bit dut(clock_in_tb, reset_tb,hold_tb, up_down_tb, f_tb); 


    initial begin 
    clock_in_tb = 0;reset_tb= 1; hold_tb = 0;up_down_tb=1; 
    #10; 
    forever begin 
    #10 clock_in_tb= ~clock_in_tb ; 
    end 

    end 

endmodule 

回答

2

你好像未曾申請reset您來自測試臺的模塊。因此q將永遠是X,看起來像你所看到的。

+0

謝謝!它現在工作:D – 2013-03-24 06:16:54