0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

D触发器实现的原理

FPGA设计论坛 来源:FPGA设计论坛 作者:FPGA设计论坛 2022-09-19 15:22 次阅读

从D触发器的角度说明建立和保持时间。

1ab1efc8-3732-11ed-ba43-dac502259ad0.jpg

上图是用与非门实现的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
    +关注

    关注

    1629

    文章

    21729

    浏览量

    603053
  • 数据
    +关注

    关注

    8

    文章

    7006

    浏览量

    88957
  • 锁存器
    +关注

    关注

    8

    文章

    906

    浏览量

    41497
  • D触发器
    +关注

    关注

    3

    文章

    164

    浏览量

    47905

原文标题:FPGA学习-从D触发器的角度说明建立和保持时间

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于D触发器实现时钟电路同步设计

    时钟使能电路是同步设计的重要基本电路,在很多设计中,虽然内部不同模块的处理速度不同,但是由于这些时钟是同源的,可以将它们转化为单一的时钟电路处理。
    发表于 08-06 10:35 4895次阅读
    基于<b class='flag-5'>D</b><b class='flag-5'>触发器</b><b class='flag-5'>实现</b>时钟电路同步设计

    如何实现半个时钟周期延时

    本帖最后由 昼日神迹 于 2015-4-27 15:53 编辑 请教大神如何用D触发器实现半个时钟周期的延时,错误代码如下module signel0(clk,signel,signel0
    发表于 04-27 15:50

    如何用D触发器实现2分频 原理

    如何用D触发器实现2分频 原理在线等
    发表于 07-03 19:37

    D触发器实现2倍分频的逻辑电路?

    module divide2( clk , clk_o, reset);inputclk , reset;outputclk_o;wire in;reg out ;always @ ( posedge clk or posedge reset) if ( reset)out
    发表于 08-02 11:59

    D触发器怎么实现二分频电路?

    D触发器实现二分频电路(D触发器构成的2分频电路)
    发表于 03-02 11:05

    数字电路D触发器怎么实现状态机

    我要给寄存送数,希望第一个时钟脉冲送入输入的数据,后面的时钟脉冲都送入另一个寄存里的数据。问了下老师说用D触发器输入1就能实现,实在是不
    发表于 04-03 23:16

    解决方案:Chipscope中抓取的信号名改变,影响数据观测和分析

    实现多级计数,由于计数通过多个查找表实现,导致Chipscope中的信号名改变,影响数据分析。如下图所示,信号名改变,而且乱序。通过将计数
    发表于 10-24 11:56

    D触发器实现延迟线的代码,仿真波形总是不对,帮忙看看代码有什么问题。

    帮忙看看下面这个代码有什么问题,编译没错,但是Modelsim波形总是不对。
    发表于 12-06 14:56

    D触发器

    D触发器 同步式D触发器逻辑电路图 D触发器功能
    发表于 10-20 09:57 2582次阅读
    <b class='flag-5'>D</b><b class='flag-5'>触发器</b>

    D触发器实现二分频电路(D触发器构成的2分频电路)

    D触发器实现二分频电路(D触发器构成的2分频电路)&
    发表于 06-12 13:58 7.9w次阅读
    <b class='flag-5'>D</b><b class='flag-5'>触发器</b><b class='flag-5'>实现</b>二分频电路(<b class='flag-5'>D</b><b class='flag-5'>触发器</b>构成的2分频电路)

    D触发器,D触发器是什么意思

    D触发器,D触发器是什么意思   边沿D 触发器:  电平
    发表于 03-08 13:53 4940次阅读

    怎样使用D触发器实现二分频

    发表于 11-10 22:23 147次下载

    八人抢答电路的设计的详细资料免费下载来设计看看吧!内含基本电路

    电路的核心用两片74LS175四D触发器实现,采用同步级联的方式,八个开关连接两个触发器的输入端,八个LED灯各接一个电阻后接地连接输出端,一个八与非门连接
    发表于 09-18 17:48 37次下载
    八人抢答<b class='flag-5'>器</b>电路的设计的详细资料免费下载来设计看看吧!内含基本电路

    verilog模型举例:利用D触发器实现时钟使能

    时钟使能电路是同步设计的基本电路。在很多设计中,虽然内部不同模块的处理速度不同,但由于这些时钟是同源的,可以将它们转化为单一时钟处理。在ASIC中可以通过STA约束让分频始终和源时钟同相,但FPGA由于器件本身和工具的限制,分频时钟和源时钟的Skew不容易控制(使用锁相环分频是个例外),难以保证分频时钟和源时钟同相,因此推荐的方法是使用时钟使能,通过使用时钟使能可以避免时钟满天飞的情况,进而避免了不必要的亚稳态发生,在
    的头像 发表于 10-01 10:16 7594次阅读
    verilog模型举例:利用<b class='flag-5'>D</b><b class='flag-5'>触发器</b><b class='flag-5'>实现</b>时钟使能

    d触发器有几个稳态 d触发器和rs触发器的区别

    D触发器的稳态 D触发器是数字电路中常用的一种存储元件,它有两种稳态,即低电平稳态和高电平稳态。当输入D为低电平时,输出Q保持为低电平;当输
    的头像 发表于 02-06 11:32 3927次阅读