答案及简单理解
建立时间(Tsu:set up time)是指在时钟沿到来之前数据从不稳定到稳定所需的时间。如果建立的时间不满足要求那么数据将不能在这个时钟上升沿被稳定的打入触发器;
保持时间(Th:hold time)是指数据稳定后保持的时间,如果保持时间不满足要求那么数据同样也不能被稳定的打入触发器。建立与保持时间的简单示意图如下图1所示。
好了,简单理解就到这里啦。要记忆深刻可以往下看,保证简单清晰不费脑!
深入浅出理解
永远要记住:所有的数字电路都是以门电路为基础的!
我们先来理解建立时间(Th:hold time):时钟沿到来之前数据从不稳定到稳定所需的时间。
以I2C为例子;I2C的本质实际是D触发器,而D触发器是由两个D锁存器构成的
沿触发的触发器也叫主从触发器
当CLK为低电平时,经过反相器,主锁存器导通,当CLK为高电平时候,从锁存器导通。
为了Q能输出正确的值,Qm一定要在CLK变高之前就成功输出(变得稳定)!
即是建立时间:时钟上升沿到来之前数据从不稳定到稳定所需的时间
我们再来理解保持时间(Th:hold time)是指数据稳定后保持的时间。
看一眼就行,一下子就记住了,不用背!
我们把D触发器展开,内部图如下:好多的门电路,而门电路是有延迟的,所以从CLK被打入锁存器到输出是有时间的
所以需要:保持时间(Th:hold time)是指数据稳定后保持的时间
至于时间怎么计算喃,就要细致的计算了,但是这是研究生和FPGA才做的事,我们就不过多展开了,毕竟你也用不上,狗头保命。