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实现相关推荐

  1. 8分频verilog线_[转载]七、八分频电路Verilog源代码

    八分频 模块文件: module div8(clk_i,clk_o,reset); parameter DIV_N = 8; input clk_i; input reset; output clk_ ...

  2. n分频器 verilog_时钟分频系列——分数分频电路的Verilog实现

    IC君的第47篇原创文章 上一篇文章时钟分频系列--偶数分频/奇数分频/分数分频,IC君介绍了各种分频器的设计原理,其中分数分频器较为复杂,这一篇文章IC君再跟大家聊聊分数分频的具体设计实现. 一个分 ...

  3. 8分频verilog线_任意分数分频Verilog实现

    任意分数 Verilog 实现 网上常见的多为小数分频, 分数分频也为有规律的分频, 如 N/2 . M-1/N 等. 而像 M/N 型分数分频却很少.现介绍一下本人的分数分频实现方法,如果不当 之处 ...

  4. 8分频verilog线_解密POE交换机供电秘密,8芯网线断芯不再害怕!

    一直有朋友问到,poe交换供电时,网络断了一芯后怎么办?解密POE供电秘密,当您的网线有一芯断的时候,这篇文章对您的帮助就会体现出来. 标准的五类网线有四对双绞线,但是在10MBASE-T和100M ...

  5. 8分频verilog线_七、八分频电路Verilog源代码

    八分频 模块文件: module div8(clk_i,clk_o,reset); parameter DIV_N = 8; input clk_i; input reset; output clk_ ...

  6. 属于窄带噪声的是热噪声_时钟201系列: 非相位噪声的情况 (第一篇)

    欢迎来到Silicon Labs(亦称"芯科科技")的新系列博客文章"时钟201"的第一篇内容-非相位噪声的情况-第一部分.我们之前的系列博文"时钟1 ...

  7. verilog加法器_【HDL系列】Kogge-Stone加法器原理与设计

    Kogge-Stone加法器是利用Peter M. Kogge和Harold S.Stone于1972年提出的一种并行算法生成的一种树形加法器. 一.Kogge-Stone并行算法 Kogge和Sto ...

  8. 8分频verilog线_Verilog设计分频器(面试必看)

    分频器是指使输出信号频率为输入信号频率整数分之一的电子电路.在许多电子设备中如电子钟.频率合成器等,需要各种不同频率的信号协同工作,常用的方法是以稳定度高的晶体振荡器为主振源,通过变换得到所需要的各种 ...

  9. Verilog HDL的时钟分频(2次方分频)

    verilog里实现时钟分频有很多种方法,比如用计数器计数,或状态机也行,下面我讲下自己常用的以同一个计数器的方式实现的多种2次方的分频方法. 例: input clk; reg [23:0]coun ...

最新文章

  1. 告别beta版-Google Daydream SDK 1.0正式版发布并支持Unity原生开发
  2. 简单的JS统计静态网站访问次数
  3. boost::geometry::srs::projection用法的测试程序
  4. C++primer习题--第3章
  5. 实施文档_建设工程监理全套资料范本,Word文档附百份案例表格,超实用
  6. 【云服务】浅析XaaS
  7. STM8学习笔记---利用UID码实现开机产生随机数
  8. CSDN星城大巡礼,长沙“科技之星”年度企业评选正式开启
  9. 北美环境教育年会:中国伙伴参会快报(一)开幕
  10. 使用react-native做一个简单的应用-03欢迎界面
  11. 10套高质量Linux教程,放在百度网盘了
  12. 计算机科学型计算器,全能科学型计算器app
  13. 服务器是什么?服务器的作用与用途
  14. windows系统运行uniapp到ios基座
  15. MySQL教程——MySQL注释:单行注释和多行注释
  16. 顺应EMM趋势,烽火星空重磅出击
  17. 推荐一个DNS解析商:CloudXNS
  18. 文件管理系统php,基于thinkPHP的在线文件管理系统-文件管理系统
  19. Java 集合深入理解(10):Deque 双端队列
  20. 九、Linux之dup和dup2函数

热门文章

  1. 机器学习经典模型简单使用及归一化(标准化)影响
  2. Git Git用户ssh公钥管理
  3. Amazon Alexa硬件方案选型
  4. 2018 ICPC 北京区域赛 I - Palindromes(规律+大数+模拟)
  5. 如何在windows下运用dd来下修复坏块?
  6. 开源项目——小Q聊天机器人V1.0
  7. 计算机字号调整,解答如何调整电脑字体大小
  8. 使用Python合并Excel文件
  9. 微信小程序 开发第三方自定义组件
  10. 基于负熵的快速不动点算法