当前位置:网站首页>50Mhz产生时间
50Mhz产生时间
2022-07-07 23:12:00 【eachanm】
50Mhz 对应一个计数为0.02us,也就是20纳秒,计数到1us要50个计数,其他可自己算,下面是产生1us、1ms、1s的方法
module count_time
#(
parameter CNT_1US_MAX = 6'd49,
parameter CNT_1MS_MAX = 10'd999,
parameter CNT_1S_MAX = 10'd999
)
(
input wire sys_clk,
input wire sys_rst_n,
output reg led_out
);
//50Mhz为20ns
reg [9:0]cnt_1s; //让1ms计数到1000
reg [9:0]cnt_1ms; //让1us计数到1000
reg [5:0]cnt_1us; //计数到50
reg cnt_en;
//1us
[email protected] (posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
cnt_1us <= 6'd0;
else if(cnt_1us == CNT_1US_MAX)
cnt_1us <= 6'd0;
else
cnt_1us <= cnt_1us +6'd1;
//1ms
[email protected] (posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
cnt_1ms <= 10'd0;
else if(cnt_1ms == CNT_1MS_MAX && cnt_1us == CNT_1US_MAX)
cnt_1ms <= 10'd0;
else if(cnt_1us == CNT_1US_MAX)
cnt_1ms <= cnt_1ms +10'd1;
else
cnt_1ms <= cnt_1ms;
//1s
[email protected] (posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
cnt_1s <= 10'd0;
else if(cnt_1s == CNT_1S_MAX && cnt_1ms == CNT_1MS_MAX && cnt_1us == CNT_1US_MAX)
cnt_1s <= 10'd0;
else if(cnt_1us == CNT_1US_MAX && cnt_1ms == CNT_1MS_MAX )
cnt_1s <= cnt_1s + 10'd1;
else
cnt_1s <= cnt_1s;
//控制状态
[email protected] (posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
cnt_en <= 1'b0;
else if(cnt_1s == CNT_1S_MAX && cnt_1ms == CNT_1MS_MAX && cnt_1us == CNT_1US_MAX)
cnt_en <= ~cnt_en;
else
cnt_en <= cnt_en;
[email protected] (posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
led_out <= 1'b1;
else if((cnt_en == 1'b0) && (cnt_1ms <= cnt_1s)
|| (cnt_en == 1'b1) && (cnt_1ms >= cnt_1s))
led_out <= 1'b0;
else
led_out <= 1'b1;
endmodule
时钟频率对应的时钟周期
5MHz 200ns
10MHz 100ns
20MHz 50ns
25MHz 40ns
33MHz 30ns
40MHz 25ns
50MHz 20ns
66MHz 15ns
80MHz 12ns
100MHz 10ns
120MHz 8.3ns
133MHz 7.5ns
166MHz 6.0ns
200MHz 5.0ns
250MHz 4.0ns
300MHz 3.3ns
333MHz 3.0ns
400MHz 2.5ns
500MHz 2.0ns
800MHz 1.2ns
1GHz 1.0ns
4GHz 0.25ns
常用单位换算
1GHz=1000MHz,1MHz=1000kHz,1kHz=1000Hz
1s=1000ms,1 ms=1000μs,1μs=1000ns
s(秒)、ms(毫秒)、μs(微秒)、ns(纳秒)
边栏推荐
猜你喜欢
语义分割模型库segmentation_models_pytorch的详细使用介绍
Jemter distributed
9.卷积神经网络介绍
玩轉Sonar
13. Enregistrement et chargement des modèles
Langchao Yunxi distributed database tracing (II) -- source code analysis
10.CNN应用于手写数字识别
AI遮天传 ML-回归分析入门
1293_FreeRTOS中xTaskResumeAll()接口的实现分析
Deep dive kotlin synergy (XXII): flow treatment
随机推荐
Malware detection method based on convolutional neural network
tourist的NTT模板
Service mesh introduction, istio overview
什么是负载均衡?DNS如何实现负载均衡?
ABAP ALV LVC模板
[necessary for R & D personnel] how to make your own dataset and display it.
手机上炒股安全么?
7.正则化应用
Image data preprocessing
13. Enregistrement et chargement des modèles
Lecture 1: the entry node of the link in the linked list
Fofa attack and defense challenge record
深潜Kotlin协程(二十三 完结篇):SharedFlow 和 StateFlow
Thinkphp内核工单系统源码商业开源版 多用户+多客服+短信+邮件通知
德总理称乌不会获得“北约式”安全保障
[note] common combined filter circuit
STL--String类的常用功能复写
8.优化器
New library online | cnopendata China Star Hotel data
Marubeni official website applet configuration tutorial is coming (with detailed steps)