sdf- standrad dealy format

sdf- standrad dealy format,标准延时格式文件。

 

作为一个ASIC工程师,需要时常和这个东西打交道,比如synthesis,STA,post-simulation,eco。也算是一个非常基本的概念,但也时常发现很多老工程师都对此认识模糊不清,所以写写。

 

Firstdelay分为cell delaywire delay.顾名思义,cell delay是指元器件内部的delaywire delay是器件互连Pin-to-pindelay

 

真正的delay,就是这两者的累加。

 

举个例子:

 

  (CELL
    (CELLTYPE  "NR2D1")    // cell name
    (INSTANCE  u434)    // cell instantiate name
      (DELAY
 (ABSOLUTE
 (IOPATH A1 ZN  (0.0812::0.0841) (0.0379::0.0395))   //cell delay,A1-->ZN
 (IOPATH A2 ZN  (0.1350::0.1350) (0.0994::0.0994)) //cell delay A2-->ZN
 )
      )
  )

 

以上是Back end return sdf文件,描述了一个2输入或非门的器件,例化名u434,给出了该器件从输入到输出的每条路径的delay值。

 

再看,

 

 (INTERCONNECT  u434/Z  u444/A2  (0.028:0.029:0.029) (0.030:0.031:0.031))

 

//                                                          上升沿传输delay                      下降沿传输delay

 

以上是一个wire delay得描述,从u434Z Ouput pinU444A2 input pin,给出了上升delay(rising edge transmit delay)和下降delayfalling edge transmit delay).括号内的时间分别是最小(Tmin/典型(Ttyp/最大(Tmaxdelay

 

由上即可计算出,由u434的任一输入端到u444A2端的总延时。

 

当然,在一个大型的高速ASIC器件中,这只是一个基本的sdf文件(basic sdf file,实际上,我们还会考虑outbound,couple等问题,会有附加的其它sdf文件来描述相应导致的增加delay,最后总的delay还是累加算出。

 

关于基本元器件的时序定义,就不再进行解释,在任意一本verilog书籍里都可以看到。

 

P.S有时在做post-simulation时,会出现不能标上(annotatesdf的情况,这时就需要仔细检查simulation报出的信息与sdf对应的cell是否一致,是否path相同,例化名正确等。