Verilog 130例 -->Problem 2

MODULE:

`timescale 1ns / 1ps
module count4(out,reset,clk);
    output [3:0] out;
    input reset;
    input clk;
    reg [3:0] out;
    
    initial
        begin
            out=4'd0;
        end
    
    always @ (posedge clk)
        begin
            if( reset==1'd0 )
                out=4'd0;
            else
                out=out+4'd1;
        end
        
endmodule


FIXTURE:

module test_fixture;

    // Inputs
    reg reset;
    reg clk;

    // Outputs
    wire [3:0] out;

    // Instantiate the Unit Under Test (UUT)
    count4 uut (
        .out(out),
        .reset(reset),
        .clk(clk)
    );

    initial
        begin
        // Initialize Inputs
        reset = 0;
        clk = 0;

        // Wait 100 ns for global reset to finish
        #120 reset =1'd1;
        
        // Add stimulus here

        end
    
    always #50 clk=~clk;
      
endmodule


KEY POINT:

1. initial: how to use.

2. always:  delay # using.


SYMBOL:

WAVEFORM:


發佈了30 篇原創文章 · 獲贊 39 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章