IC验证中的EDA仿真(三)-specify-endspecify介绍( 二 )

specify

(in => out)= (1.1, 1.0);

endspecify

其中,1.1表示上升延时,1.0表示下降延时。特别的,如果specify中只有一个参数,则认为上升延时和下降延时相等,都等于该参数值。

specify-endspecify中的延时一般都只在模块顶层,作为该模块的输入端口和输出端口之间的路径延时定义,并不能表示实际电路的延时信息。

specify-endspecify定义延时的优点

使用specify-endspecify定义延时的优点,主要有以下两个:

对于功能比较复杂的模块,我们并不十分清楚输入端口和输出端口之间,具体电路的准确延时信息。而specify-endspecify可以做到在不清楚具体电路情况下,就对输入端口和输出端口下延时描述。使用标准延时文件(sdf:standrad delay file)中的时序信息反标电路。我们使用综合工具(例如Design Compiler),进行综合的过程中,会输出标准延时文件(sdf),里面包含了当前设计中所有门电路的时间信息。综合工具在合成过程中,根据单元库中的相关信息,计算得到这些门电路的时间信息,在预综合阶段,可以认为这些时间信息的准确度是可以接受的(实际工作中,在其它的综合阶段,我们认为延时数据的准确度已经不能满足要求,所以一般会走更加准确的DCG流程,在这里不再赘述)。而sdf中的数据可以刷新specify-endspecify中定义的数据,使得specify-endspecify中的延时信息,变得准确。

推荐阅读