FPGA基础知识9(从D触发器的角度说明建立和保持时间)
来源:互联网 发布:我的世界一键生成js 编辑:程序博客网 时间:2024/05/17 21:47
需求说明:IC设计基础
内容 :D触发器的原理
来自 :时间的诗
原文:http://www.cnblogs.com/zhtxwd/archive/2011/12/31/2309176.html
从D触发器的角度说明建立和保持时间.
上图是用与非门实现的D触发器的逻辑结构图,CP是时钟信号输入端,S和R分别是置位和清零信号,低有效; D是信号输入端,Q信号输出端;
这里先说一下D触发器实现的原理:(假设S和R信号均为高,不进行置位和清零操作)
CP=0时: G3和G4关闭,Q3和Q4输出为’1’。那么G5和G6打开,Q5=D,Q6=/D。Q5,Q6
的信号随输入信号D的改变而变化; G1和G2构成一个SR锁存器,我们知道,当SR锁存器的S、R的输入均为高的时候,锁存器的输出保持不变,所以Q和/Q保持不变.
CP从0跳变为1时: G3和G4打开,Q3=Q6=/D,Q4=Q5=D。由SR锁存器的特性,Q=Q3=D,/Q=/D;CP=1时: 不管D怎么变化,Q3和Q4的信号都不会发生变化,所以输出也不会改变,具体原因由兴趣的可以推一下;下面就又重复CP=0的时刻了.
从上面的分析可以知道,输入信号D是在CP=0的时刻,经过与G5和G6两个与非门的延迟Tsu之后才传输到Q5和Q6端的,然后再CP跳变为1的时候被锁存到输出端的.
我们假设Tsu=5ns,如果D输入信号在CP跳变为1之前4ns(<5ns)的时候,才发生变化,那么在CP跳变为1时,输入信号D还没有传输到Q5和Q6,SR锁存器锁存的将是D变化之前的数据。也就是说D输入信号只有在CP跳变之前>Tsu的时间里准备好,触发器才能将数据锁存到Q输出端口,也就是所说的要保证信号的建立时间.
在CP跳变为1之后,Q5和Q6的信号要经过G3和G4两个与非门的延迟(Thd)才能传递到Q3和Q4,构成SR锁存器之前的D输入的阻塞,保证在CP=1是输入数据变化不会影响锁存结果。
我们假设Thd=5ns,如果D输入信号在CP跳变为1之后5ns内发生跳变,因为此时Q3和Q4还没发生变化,均为’1’,Q5和Q6的状态将会发生跳变。在CP=1的时刻,Q3和Q4跟随Q5、Q6的改变也发生跳变,末端SR锁存器的输出Q也发生跳变,造成输出结果不对。 也就是说在CP跳变为1之后的Thd时间内,D信号不能发生变化,也就是所说的要保证信号的保持时间(Thd)。
- FPGA基础知识9(从D触发器的角度说明建立和保持时间)
- 从D触发器的角度说明建立和保持时间
- 触发器的建立时间和保持时间
- 建立时间和保持时间
- 建立时间和保持时间
- 建立时间和保持时间
- 保持时间和建立时间
- FPGA基础知识10(锁存器、触发器、寄存器和缓冲器的区别)
- 触发器;建立时间和保持时间;竞争、冒险和毛刺;同步电路与异步电路(ZT)
- 建立时间与保持时间(2)——FPGA
- 建立时间与保持时间(1)——FPGA
- 我对建立时间和保持时间的理解
- FPGA基础知识13(二级D触发器应用于同步器,减少亚稳态)
- 关于建立时间和保持时间
- 建立时间和保持时间关系详解
- 建立时间和保持时间学习笔记
- 关于建立时间和保持时间
- 关于建立时间和保持时间
- 深圳杯2016A题 雨污分流与雨污混流,截排与清源?
- 橙子第一篇文章
- yii2获取表及字段
- 程序员的基础生存技能:高效用Google--2016-07-08 Python开发者
- python学习——使用文本编辑器
- FPGA基础知识9(从D触发器的角度说明建立和保持时间)
- ELF格式文件特点的简单说明
- Java类之间的关联关系
- 用js制作form表单验证、二级联动、登陆界面升级版
- linux常用命令
- iOS开发之--XCode快捷键
- 浅谈JavaEE中的JDBC模板类的封装实现以及合理的建立项目包结构(一)
- UVa 11988 - Broken Keyboard (a.k.a. Beiju Text)
- 升级Xcode8后的相机crash问题-IOS10权限问题