vcs仿真

Posted p1332668050

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vcs仿真相关的知识,希望对你有一定的参考价值。

1 什么是后仿真?

后仿真也成为时序仿真,门级仿真,在芯片布局布线后将时序文件SDF反标到网标文件上,针对带有时序信息的网标仿真称为后仿真。

 

2 后仿真是用来干嘛的?

检查电路中的timing violation和 test fail,一般都是已知的问题。一般后仿真花销2周左右的时间。

网标仿真的目的是检查RTL仿真和综合后的一致性(logic Equivalence check),由于网标仿真非常慢,所以网标仿真不充分,有的公司没有网标仿真,即使有后仿真,后仿真一般是时间非常少,因为后仿真时间非常慢,一个case需要非常长(跟设计和case有关,一般一两天跑一个case).在实际的芯片开发中可以没有网标仿真,因为形式化验证和静态时序分析可以保证设计的正确性。

Gate level Simulation

Include the verilog model of standard cell and gate-level netlist to your testbench

Add the following synopsys directives to the testbench

 

3 有了LEC(等效性检查)和STA(静态时序分析),为什么还要做门级仿真(Gate-level simulation ,GLS)?

GLS can catch issues that static timing analysis (STA) or logical equivalence tools are not able to report. The areas

where GLS is useful include:

  • Overcoming the limitations of STA, such as:

           –The inability of STA to identify asynchronous interfaces

           –Static timing constraint requirements, such as those for false and multi-cycle paths

  • Verifying system initialization and that the reset sequence is correct
  • DFT verification, since scan-chains are inserted after RTL synthesis
  • Clock-tree synthesis
  • For switching factor to estimate power
  • Analyzing X state pessimism or an optimistic view, in RTL or GLS

4 零延迟仿真(Zero-Delay Simulation)

zero-delay mode run much faster than simulation using full timing.

在仿真时添加以下仿真参数(VCS)

+nospecify

+notimingcheck

+no_notifier

+delay_mode_zero

零延迟仿真用于调仿真平台,挑testcase, 检验网标有没有问题。 当这些完成之后,就可以将SDF文件反标到网标文件上进行时序仿真,零延迟仿真将极大的提高仿真效率

5 SDF文件,a file which contains all the net delays in design。An sdf has 3 kinds of delay(best,Worst,Typical)。

6 如何挑时序仿真的testcase(时序仿真的策略 )

  • 挑2~3寄存器访问testcase.
  • 初始化的testcase
  • 典型的功能
  • 关键路径,跨时钟域

7 当后仿真出问题,仿真不起来时。

  • 检查clk,rst,PLL, reg
  • timing violation 不定态 x. 见path 
  • test fail

8 用VCS做后仿真

做后仿真时,应该先做zero_delay仿真,确保加载的网标文件是正确的,然后,再将SDF文件反标到网标文件上。

`ifdef SDF

initial

begin

  $sdf_annotate("../../rtl/post_sim/U_sramc.sdf",u_top,,"sdf.log",);

end

`endif

编译时添加参数:-negdelay   +neg_tchk  

以上是关于vcs仿真的主要内容,如果未能解决你的问题,请参考以下文章

VCS课时1:仿真事件队列

1.VCS仿真基础

数字asic流程实验(EX)VCS+Verdi前仿真&后仿真

仿真 vcs ncverilog

VCS仿真命令

VCS仿真流程