欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

寄存器间数据传输时序分析之保持时间

程序员文章站 2022-03-22 08:05:35
拿触发器图为例描述两个寄存器之间的数据传输, 寄存器A下文称RA的data数据在clk的驱动下,输出到寄存器B,RB在clk上升沿采集data,时钟源为同一clk,那么有以下几个时间段:TclkA:pad上的时钟到RA的线路时钟延时Tco:时钟在RA中的输入端D到输出端Q的延时Tdata:数据从RA的Q端输出到RB的D端线路上时钟延时通过以上几个参数即可以得出数据到达RB的时间Data Arrival Time=TclkA+Tco+Tdata同理,在数据到达时间(Data Arrival Tim...

拿触发器图为例描述两个寄存器之间的数据传输, 寄存器A下文称RA的data数据在clk的驱动下,输出到寄存器B,RB在clk上升沿采集data,时钟源为同一clk,那么有以下几个时间段:
TclkA:pad上的时钟到RA的线路时钟延时
Tco:时钟在RA中的输入端D到输出端Q的延时
Tdata:数据从RA的Q端输出到RB的D端线路上时钟延时

通过以上几个参数即可以得出数据到达RB的时间
Data Arrival Time=TclkA+Tco+Tdata
同理,在数据到达时间(Data Arrival Time)的基础上加一个时钟周期即是在RB上的数据结束时间
假设时钟周期为T_cycle。
Data finish time=Data Arrival Time+T_cycle
对RB则有,TclkB:时钟源到RB的线路时钟延时

保持时间门限为Tth:表示时钟采样沿来之后,数据需要保持稳定的最短时间,可以理解为RB的时钟延时与数据延时的差值,不过这个数据延时是数据结束时间的延时,在原来Tdata上要加一个时钟周期
通过Tth可以知道Data finish time需要至少在时钟采样沿来之后间隔Tth的时间。
所以有require Data finish time=Tth+TclkB+T_cycle
其中,要求数据结束时间require Data finish time的T_cycle是表示在clk到目的寄存器RB的时钟发射沿(lunch clk)基础上加一个周期得到采样沿(latch clk)
对于保持时间余量Hold Slack = Data finish time - require Data finish time = TclkA+Tco+Tdata-Tth-TclkB
综上,从保持时间余量可以看出,保持时间与时钟周期无关,与时钟偏斜和数据线路传输延时相关。
具体时序图可参考建立时间说明:
我用#CSDN#这个app发现了有技术含量的博客,小伙伴们求同去《寄存器间数据传输时序分析之建立时间》, 一起来围观吧 https://blog.csdn.net/kefeilong123/article/details/107032782?utm_source=app

本文地址:https://blog.csdn.net/kefeilong123/article/details/107242110