网络课程《数字集成电路静态时序分析基础》的笔记

 

地址:https://www.iccollege.cn/portal/courseDetail/193.mooc

 

建立时间和保持时间检查

建立时间检查

最常见的路径:CK-D。

 

 

区分 launch clk 和 capture clk

 

 

建立时间检查表达式:

 

 

ck to d

下面是一个 timing report,起点是 UFF0,终点是 UFF1,path group 是按照终点时钟分类的,所以是 CLKM。path type max 代表检查最大的路径延迟,point 表示途径点,incr 代表经过这个点的增量,path 代表累计延迟。r 和 f 代表 rise 和 fall。

 

data arrival time 代表总延迟,这是一个 launch path 的报告。

 

 

下面的是一个 capture path 的报告,首先经过时钟周期,时钟网络理想,建立时间 0.04,时钟误差 0.3,uncertainty 为了让建立时间检查更加严苛。最终得到一个 data required time,数据要求到达时间,必须要此之前,要求 slack>=0,才算是时序满足要求。

 

 

input port to flip-flop

 

 

时序检查之前,由于外部没有时钟设定,要先设定虚拟时钟

 

 

时序报告如下

 

 

flipflop to output

 

 

要额外设定 load 约束

 

 

同样设定了虚拟时钟

 

 

时序报告,注意 path group 是虚拟时钟,按照终点时钟分类。

 

launch path,output delay 不在这里

 

 

captured path,output delay 在这里,这里的 5.1 包含了 setup time,所以要放在 captured path 这里。

 

 

input to output

 

 

时序报告:

 

 

这样时序不满足,需要修改

 

保持时间检查

 

 

与建立时间一致,通过 launch path 和 captured path 进行检查

 

 

但是存在一些区别,保持时间是在 launch flip-flop 和 captured flip-flop 的同一个时钟边沿进行检查,因此保持时间检查与时钟周期无关。

 

 

路径分析

 

 

保持时间检查

 

 

reg to reg

保持时间检查要使用 min delay 进行检查

 

一个保持时间检查报告,launch path

 

 

capture path

 

 

要求 required time

 

与 setup time 的区别

 

 

input to reg

 

 

时序报告

 

 

reg to output

 

 

时序报告

 

 

依然没有 hold time,全部算在 output delay 里

 

 

input to output

 

 

外加约束

 

 

时序报告

 

 

总结

建立时间检查

 

 

保持时间检查