好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

d触发器建立和保持时间的时序检查.doc

5页
  • 卖家[上传人]:cc****pp
  • 文档编号:209919286
  • 上传时间:2021-11-12
  • 文档格式:DOC
  • 文档大小:68.50KB
  • / 5 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • D触发器建立和保持时间的时序检查摘要:目前的芯片系统越来越复杂,对应的各个功能模块都有自己 工作的时钟领域当各个功能模块之间进行数据传递时,信号就会跨时钟 领域信号跨时钟领域进行传输时,就会出现亚稳态现象,可能导致整个 芯片功能的错误针对不同信号跨时钟领域,本文介绍了几种同步的设计 方法关键词:亚稳态 建立时间同步设计 时钟领域一、D触发器的建立时间和保持时间在芯片设计中,电路主要由门电路和D触发器构成D触发器的特性 方程为:Qn+1二D,即在触发时钟脉冲(CLK)的有效边沿到来时,触发器 的输入数据D直接传送到触发器的输出端Q[l]而在时钟触发边沿输出端 Q能正确的输出D的值的前提条件是:输入信号D必须先于时钟有效沿到 来Z前稳定如果时钟有效沿到来时,输入信号D正在变化,D触发器的 输出状态就会变得不确定,即就会有亚稳态的出现输入信号必须先于时钟脉冲之前稳定的时间成为建立时间,用tset 表示;同样为了保证触发器可靠翻转,输入信号的状态在时钟脉冲信号到 来后还必须保持足够长的时间不变,这段时间成为保持时间,用th表示 如图1所示以接收“1”时的情况来看,D信号先于CLK上升沿建立起来(山 0跳变到1)的时间不得小于建立时间tset,而在CLK上升沿到來后D仍保持“1”的时间不得小于保持时间tho建立时间和保持时间是由触发器的电路结构决定的。

      图2所示为上升 沿触发的CMOS集成的D触发器的电路结构图其中由6个CMOS反相器和 4个CMOS传输门组成,12、13和T2构成主锁存器;14、15和T4构成从 锁存器四个传输门中T1和T3在时钟脉冲CLK为“1”的时候导通,T2 和T4在时钟脉冲CLK为“0”的时候导通在时钟脉冲为“0”的时候,主锁存器接收输入信号D,从锁存器输出 之前保存的信号到Q端;上升沿之后,时钟脉冲为“1”,此时主锁存器输 出上升沿到來时D的值直接到Q端,从锁存器不工作,如图3所示如图3红色线条所示,时钟脉冲从“0”跳变为“1”的上升沿时刻, 传输门T1从导通跳变为截止状态所以在时钟脉冲上升沿到来Z前,输 入信号必须传输到13门的输出端A点,上升沿跳变之后T2导通,信号才 能稳定的输出到Q端[2]这段时间即为建立时间,由II、T1、12和13 四个门电路的延迟时间决定:Tset=tIl+tTl+tI2+tI3 (式 1)通过减小四个门电路的延迟时间就可以减小D触发器的建立时间时钟脉冲信号从“0”跳变为“1”时,传输门T1从导通跳变为截止 状态,在此跳变过程中,D的输入信号不能改变,否则会影响到跳变之前 锁存在主锁存器中的值。

      即此触发器的保持时间由T1传输门从导通到截 止的延迟时间和T1反相器的传输延迟时间决定:th=tTl_close-open-t11 (式 2)二、带同步复位和置位信号的D触发器的建立时间和保持时间 同步复位和置位信号的D触发器的内部结构图如图4所示复位信号 reset和置位信号set都是在时钟脉冲的上升沿的时候才会有效,即和时 钟脉冲同步其中复位信号为低有效,即reset为“0”时在时钟脉冲的 上升沿到来的时候将Q端复位为“0”;当复位信号为“1”无效时,置位 信号为高有效,即为“1”的时候且复位信号为“1”无效时,在时钟脉冲 的上升沿到来的时候将Q输出端置位为“1”山此可以看出复位信号和置 位信号的优先级别为复位信号reset的优先级别高于叠位信号其特性表 如表1所示当复位信号和置位信号都无效时,实现基本的上升沿触发的D触发器 的功能根据前面的分析,同样可以得到带同步置位和复位信号的D触发 器的建立时间和保持时间分别为:从式3和式4可以看出,带同步置位和复位信号的D触发器的建立时 间变大了,相应的英保持时间减小了三、带异步复位和置位信号的D触发器的建立时间和保持时间异步复位和置位信号的D触发器的内部结构图如图5所示。

      当复位信 号reset或置位信号set有效时不需要时钟脉冲的触发沿就可以实现将Q 输出端置“0”和置“1”的功能,这就是异步的意思其特性表如表2所 示表2带异步置位和复位信号的D触发器特性表从表2中可以看出,当set为“0”,reset为“1”时,实现异步置“1” 的功能;当reset为“0”时,不管set的值为多少,实现异步置“0”的 功能所以可以得出的结论是reset的优先级别高于set信号当复位信号和置位信号都无效时,实现基本的上升沿触发的D触发器 的功能带异步置位和复位信号的D触发器的建立时间和保持时间分别为:四、D触发器时序检查用Verilog可以对D触发器的建立时间和保持时间做检查调用对应 的系统任务,如系统任务$setup在数据变化到时钟沿的时差小于设定的 值,就会有一个违反检查规则的报告信息其用法为:$setup (data, posedge CLK, 4);设置了检查数据data对于时钟脉冲CLK的上升沿,建立时间设置值 为4ns,即当data变化在时钟上升沿之前的4ns之内,就会有错误的报告 系统任务$hold用来检查保持时间,用法如下:$hold (posedge CLK, data, 3);设置了检查数据data对于时钟脉冲CLK的上升沿,保持时间设置值 为3ns,即当data变化在时钟上升沿之后的3ns之内,就会有错误的报告。

      系统任务的写法为固定,对于时钟脉冲可以上升沿也可以用下降沿, 和D触发器的触发沿相同以上设置的检查规则为在时钟上升沿的前4ns 和时钟上升沿后的3ns时间内,输入数据data都不能翻转以上情况建立时间和保持时间都大于Oo但从建立时间的表达式可以 看岀,建立时间一定为正的值;而从保持时间式子可以看出,保持时间有 可能为负值如式6所示,如果til大于tTl_close-open,最后得到的保 持时间则为负值接下来来讨论一下如果保持时间为负值时,时序检查应 该怎么进行如图6所示,建立时间为4ns,保持时间为-2nso保持时间是在时钟脉冲上升沿的后面,如果为负值则在时钟脉冲上升沿的前面用前面建立 时间和保持时间的系统任务,则检查的窗口为时钟脉冲上升沿前面的4ns 内data都不能改变,而实际检查只需要检查红色箭头指示的2ns的时间 窗口就可以了,所以针对这种情况,我们应该用$setuphold系统任务来实 现,写为:$setuphold (posedge CLK, data, 4, -2);五、结论在对设计进行合成的时候,需要满足时序要求建立时间的满足需要 两个触发器之间的组合逻辑延时越小越好,而保持时间要求两个触发器之 间的组合逻辑延迟时间越人越好,它们是相互矛盾的。

      所以会出现建立时 间和保持时间只能满足一个的情况,这样就只能调整设计在真正的设计中,通常都将建立时间设定为正值,将保持时间设定为 负值,这样合成软件就可以全力化简触发器之间的组合逻辑以满足建立时 间的要求参考文献[1] 余孟尝.数字电子技术基础简明教程[M]・北京:高等教育出版 社,2006, 229-268.[2] 尼尔H. E.威斯特,大卫•哈里斯.CMOS大规模集成电路设计[M]•北 京:机械工业出版社,2005, 402-410.作者简介:周莉,出生年月:1983年12月学位:硕士工作单位:四川大学锦城学院。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.