lesson2分频计数器设计
lesson2:分频计数器设计
1:分频时钟工程应用
**概念:**对FPGA频率较高的系统时钟进行分频可以产生频率较低的分频时钟。
应用:分频时钟可以作为FPGA低速外设的同步时钟,比如
IIC总线时钟(<= 400KHz)
低速SPI总线时钟(<=1MHz)
**注:**对于频率较高的分频时钟,不能直接作为外设时钟或者FPGA内部时钟使用,这类时钟应该由FPGA内部的PLL等时钟管理单元产生。不过PLL输出时钟范围为5.65MHz-800MHz,所以对于kHz的时钟频率一般分频产生。
2:分频计数器功能需求
需求:输入100MHz,产生1MHz低频时钟
分析:
1:计数范围确定:100MHz/1MHz = 100
2:即需要对100MHz做100分频
3:计数器循环计数周期为0-99。
3:实例设计与仿真
3.1:接口说明
接口 | 位宽 | 方向 | 描述 |
---|---|---|---|
clk | 1 | I | 系统时钟27MHz |
rst_n | 1 | I | 系统复位 |
clk_out | 1 | O | 输出时钟1MHz |
3.2:主要时序
3.3:实现
reg [6:0] cnt;
reg clk_out_reg;
`define CNT_MAX 100 //使用define定义,使用时加`
`define CNT_MAX_DIV2 50 //使用define定义,使用时加`
//localparam CNT_MAX = 7'd99;
//localparam CNT_MAX_DIV2 = 7'd50;
//cnt计数
always @(posedge clk)beginif(!rst_n)begincnt <= 7'b0;endelse if(cnt == `CNT_MAX)begincnt <= 7'b0;endelse begincnt <= cnt + 1'b1;end
end
//输出 clk_out
always @(posedge clk)beginif(!rst_n)beginclk_out_reg <= 1'b0;endelse if(cnt < `CNT_MAX_DIV2)beginclk_out_reg <= 1'b0;endelse beginclk_out_reg <= 1'b1;end
end
assign clk_out = clk_out_reg;
3.4:仿真分析
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C4DuhN5A-1633965457910)(file:///C:\Users\Lenovo\AppData\Local\Temp\msohtmlclip1\01\clip_image003.jpg)]
assign clk_out = clk_out_reg;
3.4:仿真分析![在这里插入图片描述](https://img-blog.csdnimg.cn/26036c09039440968a518b786c74a560.png#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/87c5370817914fbba291f157e87c867c.png#pic_center)
lesson2分频计数器设计相关推荐
- Verilog时钟分频模块设计
目录 1 偶分频模块 2 奇分频模块 3 任意占空比的任意分频 转载自https://blog.csdn.net/moon9999/article/details/75020355/ 1 偶分频模块 ...
- 多模分频器——递减计数器设计(cadence)
多模分频器--递减计数器设计 1.异步递减计数器 1.1异步计数器原理图 1.2异步计数器仿真结果 2.同步计数器 2.1同步计数器原理 3.性能参数对比 4.D触发器原理分析 导师的项目是低功耗,尽 ...
- 4位BCD计数器设计
状态转换: 输出函数: 4位BCD计数器设计:
- FPGA中计数器设计探索
FPGA中计数器设计探索,以计数器为32位为例: 第一种方式,直接定义32位计数器. reg [31:0]count; quartus ii 下的编译,资源消耗情况. 85C模型下的时钟频率. 0C模 ...
- FPGA _Verilog HDL_8位加法计数器设计实验
一.题目 8位加法计数器设计. 二.源代码 说明:本实验实现了八位加法计数器,可以用于定时1us;其中CLK,EN,RST, LOAD,DATA作为输入信号:CLK作为时钟信号,频率为50MHz:EN ...
- (90)FPGA十进制计数器设计-面试必问(十四)(第18天)
(90)FPGA十进制计数器设计(第18天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA十进制计数器设计-面试必问(十四)(第18天) 5)技术交流 ...
- (27)FPGA计数器设计(硬核实现)
(27)FPGA计数器设计(硬核实现) 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)FPGA计数器设计(硬核实现) 5)结语 1.2 FPGA简介 FPGA(Fiel ...
- (26)FPGA计数器设计(VHDL代码实现)
(26)FPGA计数器设计(VHDL代码实现) 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)FPGA计数器设计(VHDL代码实现) 5)结语 1.2 FPGA简介 F ...
- (28)FPGA计数器设计(软核实现)
(28)FPGA计数器设计(软核实现) 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)FPGA计数器设计(软核实现) 5)结语 1.2 FPGA简介 FPGA(Fiel ...
- (25)FPGA计数器设计(SV代码实现)
(25)FPGA计数器设计(SV代码实现) 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)FPGA计数器设计(SV代码实现) 5)结语 1.2 FPGA简介 FPGA( ...
最新文章
- 浅析Java web程序之客户端和服务器端交互原理
- Java(CS)请求分流
- 机器视觉资料汇总(2)
- MTK平台的启动流程(secureboot)
- Windows10熄屏自动断开WiFi连接解决方法
- android键盘弹出头部上移处理
- mysql通过拷贝数据文件的方式进行数据库迁移
- 从微软的DBML文件中我们能学到什么(它告诉了我们什么是微软的重中之重)~三 分部类是否破坏了单一职责...
- 微信安装包 11 年膨胀 575 倍?QQ安装包800M?谁在抢你的手机内存?
- SpringCloud平滑升级/优雅停机
- 【网安入门】学习笔记(一)
- 两个经纬度偏角_[转载]根据两点的经纬度求方位角和距离,等
- VS2010出现重复的代码项原因及解决方式
- 有趣的python小程序
- 【毕业设计】基于单片机的宠物自动喂食系统 - 物联网 嵌入式 单片机 宠物喂食系统 宠物投食系统
- SD NAND Flash简介!
- mysql联合索引的理解
- 梦想世界 2014年8月14日服务器维护公告,《命运之轮》停止运营公告
- 【计算几何】atan2函数
- 使用NasNet模型与keras做深度学习训练时报错