赞
踩
设计一个同时输出7分频的时钟分频器,占空比要求为50%。注意rst为低电平复位。
信号示意图如下:
波形示意图如下。
输入输出描述:
信号 | 类型 | 输入/输出 | 位宽 | 描述 |
---|---|---|---|---|
clk_in | wire | Intput | 1 | 系统时钟信号 |
rst | wire | Intput | 1 | 异步复位信号,低电平有效 |
clk_out7 | wire | Output | 1 | 分频时钟 |
`timescale 1ns/1ns module odo_div_or ( input wire rst , input wire clk_in, output wire clk_out7 ); //*************code***********// reg [2:0] cnt1; reg [2:0] cnt2; reg clk1; reg clk2; always @(posedge clk_in or negedge rst) if(!rst) cnt1 <= 'd0; else if(cnt1 == 'd6) cnt1 <= 'd0; else cnt1 <= cnt1 + 1'd1; always @(posedge clk_in or negedge rst) if(!rst) clk1 <= 1'b0; else if(cnt1 == 'd3 || cnt1 == 'd6) clk1 <= ~clk1; else clk1 <= clk1; always @(negedge clk_in or negedge rst) if(!rst) cnt2 <= 'd0; else if(cnt2 == 'd6) cnt2 <= 'd0; else cnt2 <= cnt2 + 1'd1; always @(negedge clk_in or negedge rst) if(!rst) clk2 <= 1'b0; else if(cnt2 == 'd3 || cnt2 == 'd6) clk2 <= ~clk2; else clk2 <= clk2; assign clk_out7 = clk1 | clk2; //*************code***********// endmodule
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。