【VCS】(7)Fast Gate-level Verification

Fast Gate-level Verification

  • VCS中SDF反标(Back-Annotation)
  • Lab 门级网表的后仿真
    • DC综合
    • RTL级仿真波形
    • 后仿真

网表级的仿真可以验证综合后得到的门级网表和RTL代码是否一致。也可以验证,在加速时序信息(SDF)之后,设计的功能是否依旧正确。
【VCS】(7)Fast Gate-level Verification_第1张图片
【VCS】(7)Fast Gate-level Verification_第2张图片

VCS中SDF反标(Back-Annotation)

【VCS】(7)Fast Gate-level Verification_第3张图片
【VCS】(7)Fast Gate-level Verification_第4张图片
【VCS】(7)Fast Gate-level Verification_第5张图片

【VCS】(7)Fast Gate-level Verification_第6张图片
【VCS】(7)Fast Gate-level Verification_第7张图片
【VCS】(7)Fast Gate-level Verification_第8张图片
(这里如果使用了预编译选项的话,+rad选项就会被忽略)

反标时的延时选择:

① 编译时指定延时

② 编译时添加所有延时,仿真时指定延时

【VCS】(7)Fast Gate-level Verification_第9张图片

Lab 门级网表的后仿真

仍然是使用 fsm 的例子。

DC综合

综合的使用的约束文件:

【VCS】(7)Fast Gate-level Verification_第10张图片

RTL代码中有如下内容:
【VCS】(7)Fast Gate-level Verification_第11张图片

在DC综合的时候出现了如下的 warning :

【VCS】(7)Fast Gate-level Verification_第12张图片
即 DC 工具自动忽略了该不可综合的 $display() 语句,而对于使用 synopsys translate_on\off注释的语句并没有给出任何提示,就是说注释中的语句 DC 工具时不会读取的。

综合后得到的网表文件:
【VCS】(7)Fast Gate-level Verification_第13张图片

综合后得到的SDF文件:

【VCS】(7)Fast Gate-level Verification_第14张图片

【VCS】(7)Fast Gate-level Verification_第15张图片
【VCS】(7)Fast Gate-level Verification_第16张图片

RTL级仿真波形

【VCS】(7)Fast Gate-level Verification_第17张图片

后仿真

首先需要在testbench中添加读取SDF文件的系统函数。(SDF反标),如下所示:

【VCS】(7)Fast Gate-level Verification_第18张图片

然后再还要只当网表中的单元用到的工艺库:

【VCS】(7)Fast Gate-level Verification_第19张图片

后仿波形:
可以看到,波形不再是理想的,二是多了很多毛刺。
【VCS】(7)Fast Gate-level Verification_第20张图片

(这里我自己综合和仿真的时候,没有显示出波形,复位信号和输出信号始终是X,还不知道为什么,所以就没有放上来,用的是视频里面的仿真结果。)

你可能感兴趣的:(#,VCS,VCS)