数字IC学习之基础知识篇:前仿和后仿
目标:
- 了解前仿和后仿的概念
- SDF文件的介绍
- 常见corner的介绍
1. Verilog前仿和后仿
1.1 前仿:零延迟仿真
- 前仿(功能仿真、行为级仿真、RTL级仿真):针对不带任何延迟信息的RTL代码进行的功能验证。
1.2 后仿:带真实的反标延迟仿真
- 后仿(时序仿真):采用后端工具生成的SDF文件对布局布线后的门级网表进行的时序和功能验证。
后仿有两种说法,一种是综合后仿真:对DC综合后的网表进行仿真,连线延迟来自于线负载模型的估计;另一种是布局布线后仿真:对布局布线后的网表进行仿真,连线延迟来自于版图的提取。(验证中的后仿一般是针对布局布线后的仿真)
后仿也叫动态时序仿真,相比于静态时序分析STA(针对同步电路设计中时序分析),它主要应用在异步逻辑、多周期路径、错误路径的时序验证中。
2. SDF文件介绍
SDF(standard delay format):描述电路布局布线后单元及互联线的延时数据,主要作用是将延迟信息反标(back annotation)到功能模型中,模拟芯片在真实工作时的状态。
反标SDF文件有两种方法:一种是作为elaboration的选项指定,一种是使用系统函数$sdf_annotate来完成。
2.1 SDF文件组成
表头部分:
- SDFVERSION:表示该SDF遵循哪个版本的SDF标准所生成,2.1以后的版本该部分可以省略
- DESIGN:表示产生timing数据的设计名称
- DATE:表示产生SDF文件的时间
- PROGRAM:表示产生SDF文件的工具
- VERSION:表示产生SDF文件的工具的版本
- DIVDER:表示SDF文件中的分隔符,一般是 / 或 .
- VOLTAGE:表示该SDF中三种状态(best、normal、worst)下的电压值。
- PROCESS:表示该SDF中三种状态(best、normal、worst)数值所乘的factor。
- TEMPERATURE:表示该SDF中三种状态(best、normal、worst)下的温度。
基本单元:
以Cell为单位,Cell中用于反标的时序信息包括延时部分(关键词DELAY)和时序检查部分(关键词TIMINGCHECK)。
- CELLTYPE:该基本单元的种类
- INSTANCE:该基本单元的名称
- DELAY:timing specification 的关键词,后续所描述的数值为该基本单元的规格
- ABSOLUTE:表示之后的延迟时间可以完全取代在annotation阶段已经存在的延迟数据
- PORT:端口延迟,即信号进入本单元需要加上的延迟
- IOPATH:输入到输出所造成的延迟
- DEVICE:器件延时
- COND/CONDELSE:条件延时
- INTERCONNECT:互连线延时
- TIMINGCHECK:时序检查的关键词,对器件的输入信号进行检查以确定是否能产生正确的输出信号
- SETUP:检查建立时间,待测信号在clock信号或边沿触发信号的触发沿前,所要保持逻辑状态稳定的最小时间
- HOLD:检查保持时间,待测信号在触发信号之后,所要保持逻辑状态稳定的最小时间
- WIDTH:指出脉冲的最小宽度,positive表示正脉冲的宽度,negative表示负脉冲的宽度
- RECOVERY:检查异步控制信号在其释放后到下一个clock信号有效沿之前的时间
3. 常见corner介绍
下表为不同工艺角情况介绍,根据需求选择对应Corner进行后仿真,一般并不需要跑全部corner。
| Corner | 描述 | 时序 |
| wc:worst case slow | 低电压高温度慢工艺 | 一般情况下delay最大,setup差 |
| wcl:worst case low temperature | 低电压低温度慢工艺 | 温度反转效应时delay最大,setup差 |
| lt:low temperature或bc:best case fast | 高电压低温度快工艺 | 一般情况下delay最小,hold差 |
| ml:max-leakage | 高电压高温度快工艺 | 温度反转效应时delay最小,hold差 |
| tc:typical | 普通电压普通温度普通工艺 | 典型 |
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
