8分频verilog线_时钟分频系列——分数分频电路的Verilog实现
IC君的第47篇原创文章 (欢迎关注公众号 icstudy)
上一篇文章时钟分频系列——偶数分频/奇数分频/分数分频,IC君介绍了各种分频器的设计原理,其中分数分频器较为复杂,这一篇文章IC君再跟大家聊聊分数分频的具体设计实现。
一个分数分频器由两部分组成:以ZN和ZN+1为分频系数的多路分频器,还有一个ACC计数器。
ZN/ZN+1分频器设计
ZN/ZN+1分频器的设计包含了偶分频器和奇分频器,首先定义ZN/ZN+1分频器的模块名字MDIV。下图是MDIV的引脚信号的名字,及功能定义:
废话不多说,Verilog硬件描述语言实现MDIV的代码如下:
MDIV调用方法如下:
具体的仿真波形如下所示:
ACC计数器设计
ACC计数器就是控制做N次ZN分频和M次ZN+1次分频,具体控制过程可以分为以下几种情况:
第1种情况 :先做N次ZN分频,再做M次ZN+1次分频;
第2种情况: 先做M次ZN+1次分频,再做N次ZN分频;
第3种情况 :把N次ZN分频平均插入到M次ZN+1分频中;
第4种情况 :把M次ZN+1次分频平均插入到N次ZN分频中。
组合N次ZN分频和M次ZN+1次分频的情况很多。第1、2种情况前后时钟频率不太均匀,因此相位抖动比较大;
第3、4种情况前后时钟频率均匀性稍好,因此相位抖动会减小。
下面以8.7分频为例子设计ACC计数器模块名ACCT,下图为模块ACCT的引脚:
8.7分频的原理是用3次8分频和7次9分频的对应的时钟总时间来等效原时钟87个周期的总时间。
下图选用前面所述的第3种情况,把3次8分频平均地插入到7次9分频中,这个过程也叫混频。
采用第3种情况设计ACCT的Verilog代码代码如下所示:
代码的92-102行就是第3种情况混频,修改98行的数字可以得到不同的混频。
8.7分频器设计
完成了模块MDIV 和ACCT之后,就可以用组成一个8.7分频器,这个分频器的模块名是FENDIV,框图如下所示:
Verilog代码如下:
最终生成的clkout波形如下所示:
有兴趣的可以试试用MDIV 和ACCT设计一个10.3分频器?
IC君写一篇原创文章非常不容易,麻烦大家去微信公众号 icstudy 转发、分享、点“在看”哦,谢谢!
8分频verilog线_时钟分频系列——分数分频电路的Verilog实现相关推荐
- 8分频verilog线_[转载]七、八分频电路Verilog源代码
八分频 模块文件: module div8(clk_i,clk_o,reset); parameter DIV_N = 8; input clk_i; input reset; output clk_ ...
- n分频器 verilog_时钟分频系列——分数分频电路的Verilog实现
IC君的第47篇原创文章 上一篇文章时钟分频系列--偶数分频/奇数分频/分数分频,IC君介绍了各种分频器的设计原理,其中分数分频器较为复杂,这一篇文章IC君再跟大家聊聊分数分频的具体设计实现. 一个分 ...
- 8分频verilog线_任意分数分频Verilog实现
任意分数 Verilog 实现 网上常见的多为小数分频, 分数分频也为有规律的分频, 如 N/2 . M-1/N 等. 而像 M/N 型分数分频却很少.现介绍一下本人的分数分频实现方法,如果不当 之处 ...
- 8分频verilog线_解密POE交换机供电秘密,8芯网线断芯不再害怕!
一直有朋友问到,poe交换供电时,网络断了一芯后怎么办?解密POE供电秘密,当您的网线有一芯断的时候,这篇文章对您的帮助就会体现出来. 标准的五类网线有四对双绞线,但是在10MBASE-T和100M ...
- 8分频verilog线_七、八分频电路Verilog源代码
八分频 模块文件: module div8(clk_i,clk_o,reset); parameter DIV_N = 8; input clk_i; input reset; output clk_ ...
- 属于窄带噪声的是热噪声_时钟201系列: 非相位噪声的情况 (第一篇)
欢迎来到Silicon Labs(亦称"芯科科技")的新系列博客文章"时钟201"的第一篇内容-非相位噪声的情况-第一部分.我们之前的系列博文"时钟1 ...
- verilog加法器_【HDL系列】Kogge-Stone加法器原理与设计
Kogge-Stone加法器是利用Peter M. Kogge和Harold S.Stone于1972年提出的一种并行算法生成的一种树形加法器. 一.Kogge-Stone并行算法 Kogge和Sto ...
- 8分频verilog线_Verilog设计分频器(面试必看)
分频器是指使输出信号频率为输入信号频率整数分之一的电子电路.在许多电子设备中如电子钟.频率合成器等,需要各种不同频率的信号协同工作,常用的方法是以稳定度高的晶体振荡器为主振源,通过变换得到所需要的各种 ...
- Verilog HDL的时钟分频(2次方分频)
verilog里实现时钟分频有很多种方法,比如用计数器计数,或状态机也行,下面我讲下自己常用的以同一个计数器的方式实现的多种2次方的分频方法. 例: input clk; reg [23:0]coun ...
最新文章
- 告别beta版-Google Daydream SDK 1.0正式版发布并支持Unity原生开发
- 简单的JS统计静态网站访问次数
- boost::geometry::srs::projection用法的测试程序
- C++primer习题--第3章
- 实施文档_建设工程监理全套资料范本,Word文档附百份案例表格,超实用
- 【云服务】浅析XaaS
- STM8学习笔记---利用UID码实现开机产生随机数
- CSDN星城大巡礼,长沙“科技之星”年度企业评选正式开启
- 北美环境教育年会:中国伙伴参会快报(一)开幕
- 使用react-native做一个简单的应用-03欢迎界面
- 10套高质量Linux教程,放在百度网盘了
- 计算机科学型计算器,全能科学型计算器app
- 服务器是什么?服务器的作用与用途
- windows系统运行uniapp到ios基座
- MySQL教程——MySQL注释:单行注释和多行注释
- 顺应EMM趋势,烽火星空重磅出击
- 推荐一个DNS解析商:CloudXNS
- 文件管理系统php,基于thinkPHP的在线文件管理系统-文件管理系统
- Java 集合深入理解(10):Deque 双端队列
- 九、Linux之dup和dup2函数