扫一扫,分享给好友
准备基于FPGA使用verilog HDL设计一个数字时钟,时间24小时、60分钟、60秒钟的计数;首先默认我们的板载有源晶振为50MHz的时钟,然后我们先设计一个秒钟的计数模块:
module sec_clock( input wire clk, input wire rst_n, output wire sec_full_flag, output reg [5:0] sec_data ); parameter SEC_1S_MAX = 26'd50_000_000; reg [25:0] count; //板载时钟转化为sec计数标志 always @(posedge clk or negedge rst_n) if( rst_n == 1'b0 ) count <= 26'b0; else if( count == SEC_1S_MAX - 1'b1 ) count <= 26'b0; else count <= count + 1'b1; //sec计数器 always @(posedge clk or negedge rst_n) if( rst_n == 1'b0 ) sec_data <= 6'b0; else if( (sec_data == 6'd59) && (count == SEC_1S_MAX - 1'b1) ) sec_data <= 6'b0; else if( count == SEC_1S_MAX - 1'b1 ) sec_data <= sec_data + 1'b1; else sec_data <= sec_data; //满60S对应的min进位标志 assign sec_full_flag = ( (sec_data == 6'd59) && (count == SEC_1S_MAX - 1'b1) ) ? 1'b1 : 1'b0; endmodule
发布
数字时钟设计FPGAfpga
【开源FPGA硬件】硬件黑客集结:开源FPGA开发板测评活动全网火热招募中......
JEDSD204B标准verilog实现-协议演进
NVMe高速传输之摆脱XDMA设计16:TLP优化
RDMA over RoCE V2设计1:通用,稳定及高性能!
【高云GW5AT-LV60 开发套件试用体验】三、LED灯控制实验
【高云GW5AT-LV60 开发套件试用体验】基于开发板进行深度学习实践,并尽量实现皮肤病理图片的识别,第四阶段
【RK3568+PG2L50H开发板实验例程】FPGA部分 | 光纤通信测试实验例程
【RK3568+PG2L50H开发板实验例程】FPGA部分 | DDR3 读写实验例程
【RK3568+PG2L50H开发板实验例程】FPGA部分 | ROM、RAM、FIFO 的使用
【RK3568+PG2L50H开发板实验例程】FPGA部分 | Pango 的时钟资源——锁相环
电子发烧友网
电子发烧友论坛