赞
踩
分频方法:使用计数器进行分频
module divide_2n( clk , rstn , out_clk ); //********************* PARAMETER DECLARATION *********************************** parameter COUNT_WD = 2 ; //********************* INPUT/OUTPUT DECLARATION ******************************** input clk ; input rstn ; output [COUNT_WD-1 :0] out_clk ; //********************* WIRE/REG DECLARATION ************************************ reg [COUNT_WD-1 :0] count ; //********************* MAIN BODY *********************************************** always @( posedge clk or negedge rstn ) begin if ( !rstn ) begin count <= 0 ; end else begin count <= count + 1'b1 ; end end assign out_clk = count ; endmodule
`timescale 1ns / 1ps module TB(); parameter COUNT_WD = 3 ; reg sys_clk ; reg sys_rst_n ; wire [COUNT_WD-1 :0] out_clk ; initial begin sys_clk = 1'b0 ; sys_rst_n = 1'b0 ; #200 sys_rst_n = 1'b1 ; end always #10 sys_clk = ~sys_clk ; divide_2n #( .COUNT_WD ( COUNT_WD ) ) divide_2n_0 ( .clk ( sys_clk ), .rstn ( sys_rst_n ), .out_clk ( out_clk ) ); endmodule
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。