《基于Xilinx Vivado的数字逻辑实验教程》学习笔记(一)

《基于Xilinx Vivado的数字逻辑实验教程》是电子工业出版社出版,廉玉欣、傅博雅、王猛、侯云鹏编著的。

P171 例5-1 正边沿触发的D触发器

程序5.1:正边沿触发的D触发器Verilog程序。

module flipflop
    (
    input  wire clk,
    input  wire D,
    output wire q,
    input  wire notq
    );
// ------------------------------------------------------ //    
    wire f1;
    wire f2;
    wire f3;
    wire f4;  
    wire f5;
    wire f6;      
// ------------------------------------------------------ //    
    assign f1   = ~(f4 & f2);
    assign f2   = ~(f1 & f5);
    assign f3   = ~(f6 & f4);
    assign f4   = ~(f3 & clk);
    assign f5   = ~(f4 & clk & f6);
    assign f6   = ~(f5 & D);
    assign q    = f1;
    assign notq = f2;
// ------------------------------------------------------ //  
endmodule

程序5.1:正边沿触发的D触发器Verilog测试程序。

module tb_flipflop();
// ------------------------------------------------------ //
    reg clk;
    reg D;
    wire q;
    wire notq;    
// ------------------------------------------------------ //
flipflop ins_flipflop
    (
    .clk(clk),
    .D(D),
    .q(q),
    .notq(notq)
    );
// ------------------------------------------------------ //
    initial
    begin
        clk = 1;
        D   = 1;
    #50 D   = 0;
        forever
        begin
            #40 D = 1;
            #40 D = 0;
        end        
    end
// ------------------------------------------------------ //
    always #20 clk <= ~clk; // 半周期为20ns,全周期为40ns的一个信号
// ------------------------------------------------------ //
endmodule

仿真波形图

《基于Xilinx Vivado的数字逻辑实验教程》学习笔记(一)_第1张图片

你可能感兴趣的:(《基于Xilinx Vivado的数字逻辑实验教程》学习笔记(一))