天天看點

gate level simulation step

1. 建立後仿testbench,盡量做到和RTL的testbench一緻。特别是時序上以及hierarchy上。

    需要修改的地方一般有:涉及到hierarchy層次的地方。annotate.v 根據不同的define吃進min|typ|max的SDF。以及NOSDF。

    在annotate.v中指定要force的信号。以及要初始化的register,memory等。 

    在rtl中查找initial 塊,如果是register或者memory的初始化,分析并找到gate中相應的register以及memory。

2. 不挂任何timing資訊,純gate仿真。+nospecify  +notimingcheck +no_notifier +delay_mode_zero

     查找clock reset generation block。 設法将output clock 以及reset初始值設為零。消除不定态。(需要force 某些clock reset的選擇信号)。

3.  挂入timing。

3.

PostSimulation 由于一部電路的存在,經常出現X态,影響仿真結果。如何排除這部分電路的timingcheck?而用Notimingchecks或nonotifer 會使整個design的timing 的檢查停止。有沒有隻是disable部分instance的timing check呢?

1。 抽取SDF時,排除。

       麻煩。

2。 VCS提供了很好的方法:

vcs +optconfigfile+vcs_cfg

================vcs_cfg 的内容==========

instance {tb_top.U_TOP.U_CORE.U_Async} {noTiming}

=============================================

繼續閱讀