《硬件架构的艺术》笔记(四):时钟分频器

介绍

偶数时钟分频很好实现,使用一个计数器累加到一定值再清零,同时翻转电平就可以了。本章主要讲的是奇数分频和小数分频。

同步整数分频器

使用Moore状态机可以轻松的实现同步整数分频,需要几分频就有几种状态,但是如果是奇数分频,那么输出就不可能为50%占空比。

如图使用了一个七个状态的Moore状态机实现了7分频,其中4个状态输出为0,3个状态输出为1,显然占空比不为50%

具有50%占空比的奇数整数分频

1、以期望输出频率的一半产生两个正交相位时钟(90°相位差)。

2、将两个波形异或得到输出频率。

对于整奇数N分频:

1、创建一个计数到N-1的计数器。

2、使用两个T触发器,并且第一个触发器当计数到0使能,第二个触发器计数到(N+1)/2使能。

3、TFF1由上升沿触发,TFF2由下降沿触发,两个触发器的输出都是2N分频的时钟。

4、异或得到最终输出。

具有非50%占空比的1.5倍分频

该电路综合可能出现问题,因为多路器的两个输入端延时并不相等,可能输出产生毛刺。参考时钟频率越高,出错的可能性也越大。

4.5倍分频计数器的实现(非50%占空比)

本方法可以使输出时钟不含毛刺。概括的讲,这种方法是在9个原始时钟内等间隔产生两个脉冲。

1、使用复位值为0_0000_0001的9位移位寄存器,在每个时钟上升沿循环左移一位。

2、产生第一个脉冲,下降沿移动第一位,并将移动后的结果和第一位、第二位进行或操作。

3、产生第二个脉冲,第五位和第六位半周期时移动,并与第六位进行或操作。

注意这里每一个脉冲都是三个信号相或得到的,这样做的目的是防止两个信号同时变化出现竞争冒险现象。

N分频的替换方法

以上电路都假设输入时钟占空比50%,否则小数分频输出会出现抖动,整数分频器也会有不同占空比。

基于查找表的组合反馈电路可以产生不含毛刺的时钟。

1.5分频的查找表实现

完整电路如下。

相关推荐
可爱的秋秋啊2 小时前
vue3,element ui框架中为el-table表格实现自动滚动,并实现表头汇总数据
前端·vue.js·笔记·elementui
细心的莽夫3 小时前
SpringCloud 微服务复习笔记
java·spring boot·笔记·后端·spring·spring cloud·微服务
BOB-wangbaohai4 小时前
Flowable7.x学习笔记(十三)查看部署流程图
笔记·学习·流程图
YuCaiH5 小时前
数组理论基础
笔记·leetcode·c·数组
bicijinlian6 小时前
多语言笔记系列:使用导入魔法命令
笔记
foo1st9 小时前
JDK(Ubuntu 18.04.6 LTS)安装笔记
java·笔记·ubuntu
DKPT9 小时前
常见正则表达式整理与Java使用正则表达式的例子
java·笔记·学习·面试·正则表达式
下雨的Jim9 小时前
前端速成之——Script
前端·笔记
爱码小白9 小时前
wordpress学习笔记
笔记·学习
我的golang之路果然有问题10 小时前
快速上手GO的net/http包,个人学习笔记
笔记·后端·学习·http·golang·go·net