当前位置:网站首页>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(纳秒)
边栏推荐
- 3.MNIST数据集分类
- Prediction of the victory or defeat of the League of heroes -- simple KFC Colonel
- [go record] start go language from scratch -- make an oscilloscope with go language (I) go language foundation
- 5.过拟合,dropout,正则化
- 【愚公系列】2022年7月 Go教学课程 006-自动推导类型和输入输出
- 9. Introduction to convolutional neural network
- 什么是负载均衡?DNS如何实现负载均衡?
- Jouer sonar
- 韦东山第二期课程内容概要
- v-for遍历元素样式失效
猜你喜欢
8.优化器
基于人脸识别实现课堂抬头率检测
QT adds resource files, adds icons for qaction, establishes signal slot functions, and implements
深潜Kotlin协程(二十二):Flow的处理
fabulous! How does idea open multiple projects in a single window?
5G NR 系统消息
新库上线 | CnOpenData中国星级酒店数据
Cve-2022-28346: Django SQL injection vulnerability
【obs】官方是配置USE_GPU_PRIORITY 效果为TRUE的
Langchao Yunxi distributed database tracing (II) -- source code analysis
随机推荐
13. Model saving and loading
3 years of experience, can't you get 20K for the interview and test post? Such a hole?
Qt添加资源文件,为QAction添加图标,建立信号槽函数并实现
2022-07-07: the original array is a monotonic array with numbers greater than 0 and less than or equal to K. there may be equal numbers in it, and the overall trend is increasing. However, the number
Hotel
语义分割模型库segmentation_models_pytorch的详细使用介绍
Where is the big data open source project, one-stop fully automated full life cycle operation and maintenance steward Chengying (background)?
ABAP ALV LVC template
RPA cloud computer, let RPA out of the box with unlimited computing power?
QT establish signal slots between different classes and transfer parameters
13. Enregistrement et chargement des modèles
Reentrantlock fair lock source code Chapter 0
Deep dive kotlin synergy (XXII): flow treatment
Basic mode of service mesh
Analysis of 8 classic C language pointer written test questions
丸子官网小程序配置教程来了(附详细步骤)
NVIDIA Jetson测试安装yolox过程记录
Malware detection method based on convolutional neural network
NVIDIA Jetson test installation yolox process record
8.优化器