0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

解析SDF的Header Section信息與Cell Entries信息

sanyue7758 ? 來源:全棧芯片工程師 ? 2023-05-06 09:54 ? 次閱讀

SDF文件是在VCS/NC-Verilog仿真運行時將STD/IO/Macro門級verilog中specify的延遲信息替換為QRC/Star-RC抽取的實際物理延時信息。如果SDF文件的條件信息在verilog的specify中沒有的話,就會報SDFCOM_INF的warning,意思是IOPATH not found。

本文解析SDF的Header Section信息、Cell Entries信息,尤其重點講解Cell Entries的Delay Entries信息。

下文先講SDF文件的第一部分Header Section

db9ced20-eb53-11ed-90ce-dac502259ad0.png

1. SDF Version Entry,包括1.0、2.1、3.0,SDF3.0是1995年release。

2. Design Name Entry,設(shè)計頂層名

3. Date Entry,SDF生成日期,PT或Tempus產(chǎn)生

4. Vendor Entry,Vendor信息,如下圖

dbbbf454-eb53-11ed-90ce-dac502259ad0.png

5. Program Version Entry

6. Hierarchy Divider Entry

7. Voltage Entry,SDF3.0官方解釋如下

dbd0d78e-eb53-11ed-90ce-dac502259ad0.png

8. Process Entry,SDF3.0官方解釋如下

dbec8e2a-eb53-11ed-90ce-dac502259ad0.png

9. Temperature Entry,SDF3.0官方解釋如下

dc01b57a-eb53-11ed-90ce-dac502259ad0.png

dc170a4c-eb53-11ed-90ce-dac502259ad0.png

10.Timescale Entry,SDF3.0官方解釋如下

dc28b22e-eb53-11ed-90ce-dac502259ad0.png

下文繼續(xù)講解SDF文件的第二部分Cell Entries:

dc44dc92-eb53-11ed-90ce-dac502259ad0.png

完整的Delay Entries信息格式如下:

dc5f1f44-eb53-11ed-90ce-dac502259ad0.png

PATHPULSE

PATHPULSEPERCENT

ABSOLUTE Delays

INCREMENT Delays

1. PATHPULSE 舉例說明:

dc74364a-eb53-11ed-90ce-dac502259ad0.png

當(dāng)從i1到o1輸出的低電平脈沖小于13ns時,該低電平脈沖直接被忽略;

當(dāng)從i1到o1輸出的低電平脈沖介于13ns~21ns時,輸出為X態(tài);

當(dāng)從i1到o1輸出的低電平脈沖大于21ns時,正常輸出低電平;

dc85cd42-eb53-11ed-90ce-dac502259ad0.png

2. PATHPULSEPERCENT

本質(zhì)上和PATHPULSE是一回事,只不過是按照path延時比例來計算什么時候丟棄輸入脈沖寬度不足的信號(pulse rejection limit),什么時候?qū)⑤斎朊}沖寬度不足的信號顯示為X態(tài)(X limit)。比如:

dc9a02ee-eb53-11ed-90ce-dac502259ad0.png

以上圖為例,the high-to-low delay is 37, 因此,the pulse

rejection limit is 25% of 37 and the X limit is 35% of 37.

3. ABSOLUTE Delays

ABSOLUTE Delays中的物理延時數(shù)據(jù)就是用來替換verilog specify中的延時數(shù)據(jù)的。

4. INCREMENT Delays

用來疊加在verilog specify中的延時數(shù)據(jù)上的,INCREMENT Delays是存在負數(shù)的情況的,疊加后的延時若是負數(shù)的話,某些EDA工具可能不支持或直接強制延時為0。

dca8234c-eb53-11ed-90ce-dac502259ad0.png

上面介紹了SDF3.0的Header Section以及Cell Entries的Delay Entries部分內(nèi)容,下面繼續(xù)解析Delay Entries剩下的部分。

dcb98fa6-eb53-11ed-90ce-dac502259ad0.png

5. Delay Definition Entries

ABSOLUTE and INCREMENT delays都采用同樣的Delay Definition結(jié)構(gòu),其結(jié)構(gòu)語法如下:

dcd00df8-eb53-11ed-90ce-dac502259ad0.png

6. Specifying Delay Values

Delay Values在delval_list里面指定,最多一共有12個小括號,每個小括號里面有3個值,用":"隔開,分別代表minimum、typical、maximum的延時值;在delval_list里面包含如下情況:

dce2b124-eb53-11ed-90ce-dac502259ad0.png

若12個delval值都指定了,那么每一個delval分別代表:

dcfbe2e8-eb53-11ed-90ce-dac502259ad0.png

若2個delval值被指定,第一個delval代表01("rising")延時值,第二個delval代表10("falling")延時值; 若3個delval值被指定,第一個delval代表01("rising")延時值,第二個delval代表10("falling")延時值,第三個delval代表-Z("Z transition")延時值; 若6個delval值被指定,那么它們分別代表01、10、0Z、Z1、1Z、Z0; 舉例說明,如下,IO PATH有6個delval值被指定:

dd09e4ce-eb53-11ed-90ce-dac502259ad0.png

但0-1, 1-0的延遲都缺省,后面四個括號分別對應(yīng)0Z、Z1、1Z、Z0,這種語法SDF3.0是支持的,annotator工具反標(biāo)的時候就不會替換verilog specify的0-1, 1-0轉(zhuǎn)換延遲值。

7. Input/Output Path Delays

如下,port_spec是輸入/雙向IO,可以有edge identifier。 port_instance是輸出/雙向IO,不能有edge identifier。

dd1e22a4-eb53-11ed-90ce-dac502259ad0.png

8. Conditional Path Delays

語法如下,QSTRING作為Condition Labels是可選的。

dd32eb80-eb53-11ed-90ce-dac502259ad0.pngdd43f77c-eb53-11ed-90ce-dac502259ad0.png

特別需要注意的是,在none of the conditions specified for the path in the model are TRUE but a signal must still be propagated over the path,因此,CONDELSE可以用來指定條件脫靶的情況: CONDELSE ( IOPATH port_spec port_instance delval_list )

9. Condition Labels

QSTRING作為Condition Labels是可選的,有些EDA工具反標(biāo)的時候可能會用Condition LabelsName進行占位。

10. Output Retain Delays

輸出端口output/bidirectional port的數(shù)據(jù)在輸入發(fā)生變化后保持的時間,通常發(fā)生在memory/register file的數(shù)據(jù)選擇端/地址端到數(shù)據(jù)輸出端的路徑。

dd59025c-eb53-11ed-90ce-dac502259ad0.png

dd6e6c8c-eb53-11ed-90ce-dac502259ad0.png ?

dd899f7a-eb53-11ed-90ce-dac502259ad0.png

第一個delval(4,5,7)是rising trigger情況下的do,從0到X的延時; 第二個delval(5,6,9)是falling trigger情況下的do,從1到X的延時;

11. Port Delays

dd9be0a4-eb53-11ed-90ce-dac502259ad0.png

12. Interconnect Delays

ddb9db90-eb53-11ed-90ce-dac502259ad0.png

13. Device Delays

ddd75a3a-eb53-11ed-90ce-dac502259ad0.png

下文繼續(xù)講解SDF文件的Timing ChecksEntries、Timing Environment Entries兩個部分

(一)SDF3.0Timing Checks主要分以下兩種:

VCS/NC-Verilog后仿真在timing violation時報出warning;

Timing Sign-Off工具報出timing check violations;

以時序分析工具Sign-Off為主,后仿為輔,SDF3.0Timing Checks具體的類型如下:

1. Setup Timing Check

dded340e-eb53-11ed-90ce-dac502259ad0.png

2. Hold Timing Check

de032afc-eb53-11ed-90ce-dac502259ad0.png

3. SetupHold Timing Check

注意,示例中~reset必須為真(Ture),timing check才會進行,此外,12是建立時間要求,9.5是保持時間要求。

de175072-eb53-11ed-90ce-dac502259ad0.png

4. Recovery Timing Check

de30c46c-eb53-11ed-90ce-dac502259ad0.png

5. Removal Timing Check

de46e83c-eb53-11ed-90ce-dac502259ad0.png

6. Recovery/Removal Timing Check

示例中,recovery time為1.5個time unit,removal time為0.8個time unit。

de58b8a0-eb53-11ed-90ce-dac502259ad0.png

7. Skew Timing Check

de735d04-eb53-11ed-90ce-dac502259ad0.png

8. Width Timing Check

示例中,第一個minimum pulse width檢查是posedge clock驅(qū)動的high phase;第二個minimum pulse width檢查是negedge clock驅(qū)動的low phase;

de8e4bc8-eb53-11ed-90ce-dac502259ad0.png

9. Period Timing Check

示例中,兩個連續(xù)上升沿之間或兩個連續(xù)下降沿之間的最小Cycle時間。

dea57514-eb53-11ed-90ce-dac502259ad0.png

10. No Change Timing Check

示例中,addr提前write下降沿4.5個time unit, addr晚于write上升沿3.5個time unit。

deb939fa-eb53-11ed-90ce-dac502259ad0.png

(二)SDF3.0Timing Environment Entries

SDF3.0Timing Environment Entries分成Constraints與Timing Environment兩個部分,首先解析Constraints。

1.Constraints

首先,SDF3.0Timing Environment包括以下幾類constraints:

a)Path Constraint

針對timing analysis中發(fā)現(xiàn)的關(guān)鍵路徑添加的約束,PR工具可以利用這些約束優(yōu)化physical design,該約束指定路徑的最大延時; 如下圖, y.z.i3是path起點,a.b.o1是path終點,25.1是起點和終點之間的maximum rise delay,15.6是起點和終點之間的maximum fall delay。

ded4f5f0-eb53-11ed-90ce-dac502259ad0.png ?

deef0d50-eb53-11ed-90ce-dac502259ad0.png

b)Period Constraint

時鐘樹上common clock到其驅(qū)動的leaf cell的路徑的最大延遲約束。

df03b3f4-eb53-11ed-90ce-dac502259ad0.png ?

df1be258-eb53-11ed-90ce-dac502259ad0.png

c)Sum Constraint

顧名思義,指的是幾條路徑的延時之和。示例中,約束兩條net的延時之和小于67.3個time unit。

df3148dc-eb53-11ed-90ce-dac502259ad0.png

df469444-eb53-11ed-90ce-dac502259ad0.png

d)Skew Constraint

df5c5180-eb53-11ed-90ce-dac502259ad0.png

df703d58-eb53-11ed-90ce-dac502259ad0.png

2.Timing Environment

SDF3.0Timing Environment Entries分成Constraints與Timing Environment兩個部分,上文解析了Constraints,現(xiàn)在解析Timing Environment。Timing Environment包含以下4點約束

a)Arrival Time

df8518c2-eb53-11ed-90ce-dac502259ad0.png

b)Departure Time

df9cf41a-eb53-11ed-90ce-dac502259ad0.png

c)Slack Time

dfb03a5c-eb53-11ed-90ce-dac502259ad0.png

d)Waveform Specification

dfc849bc-eb53-11ed-90ce-dac502259ad0.png ? ?





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • EDA工具
    +關(guān)注

    關(guān)注

    4

    文章

    264

    瀏覽量

    31675
  • 脈沖信號
    +關(guān)注

    關(guān)注

    6

    文章

    392

    瀏覽量

    36884
  • 低電平
    +關(guān)注

    關(guān)注

    1

    文章

    113

    瀏覽量

    13226

原文標(biāo)題:一文講透芯片后仿中的SDF

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    芯片后仿之SDF 3.0解析(三)

    本文接著解析SDF3.0的Timing Checks Entries、Timing Environment Entries兩個部分。
    的頭像 發(fā)表于 04-16 11:08 ?1427次閱讀
    芯片后仿之<b class='flag-5'>SDF</b> 3.0<b class='flag-5'>解析</b>(三)

    [1.3.1]--信息安全模型:信息在傳輸、存儲、處理過程中保護信息的CIA

    信息安全工業(yè)信息安全
    jf_75936199
    發(fā)布于 :2023年02月05日 19:18:50

    [1.4.1]--信息時代和信息的價值_clip001

    信息安全工業(yè)信息安全
    jf_75936199
    發(fā)布于 :2023年02月05日 19:19:27

    [1.4.1]--信息時代和信息的價值_clip002

    信息安全工業(yè)信息安全
    jf_75936199
    發(fā)布于 :2023年02月05日 19:20:08

    信息是個啥?

    信息
    橙群微電子
    發(fā)布于 :2023年07月24日 09:21:15

    連接任意一臺HOST,并得到它的HEADER信息

    連接任意一臺HOST,并得到它的HEADER信息$fp = fsockopen ("phpwizard.net", 80, &$errnr, &
    發(fā)表于 01-11 09:21

    QuartusII警告信息解析

    本帖最后由 eehome 于 2013-1-5 09:53 編輯 QuartusII警告信息解析
    發(fā)表于 08-20 17:25

    簡要解析USB Type-C的相關(guān)信息

    簡要解析USB Type-C的相關(guān)信息
    發(fā)表于 05-21 06:28

    SDF是什么?有何應(yīng)用

    SDF-4.0隧道施工風(fēng)機技術(shù)***隧道施工風(fēng)機(SDF)系列
    發(fā)表于 09-02 09:09

    CAN報文解析需要知道DBC的哪些信息排序方式

    CAN總線中報文數(shù)據(jù)讀取方法motorola編碼格式的CAN報文解析需要知道DBC的哪些信息排序方式讀取方式發(fā)送方式注motorola編碼格式的CAN報文解析知道CAN報文的DBC,即可按以下
    發(fā)表于 01-12 07:28

    請問HarmonyOS編程如何獲取手機信息的基站小區(qū)Cell值?

    HarmonyOS之Java編程如何獲取手機信號的基站小區(qū)Cell值,獲取手機信息強度度如-88dBm麻煩幫幫忙!謝謝!以前的Android 的GsmCellLocation location
    發(fā)表于 04-22 10:06

    什么是Cell

    什么是Cell  英文縮寫: Cell 中文譯名: 信元 分  類: 解  釋: 在異步轉(zhuǎn)移模式(ATM)傳送信息時,信息
    發(fā)表于 02-22 17:30 ?3685次閱讀

    如何將HTTP里面的Header信息記錄到訪問日志里

    不得不承認Nginx用的非常廣泛,然而Nginx的訪問日志在分析問題時也有很大用途,那么Nginx日志要想增加一些自定義信息就尤為重要了。比如本篇文章就教你如何將HTTP里面的Header信息記錄到訪問日志里。
    的頭像 發(fā)表于 07-01 11:29 ?2860次閱讀

    詳解芯片SDF文件 MCU芯片全流程設(shè)計

    SDF文件是在VCS/NC-Verilog后仿真運行時將STD/IO/Macro門級verilog中specify的延遲信息替換為QRC/Star-RC抽取的實際物理延時信息。
    發(fā)表于 05-08 10:30 ?1.1w次閱讀
    詳解芯片<b class='flag-5'>SDF</b>文件 MCU芯片全流程設(shè)計

    芯片后仿之SDF 3.0解析

    SDF文件是在VCS/NC-Verilog后仿真運行時將STD/IO/Macro門級verilog中specify的延遲信息替換為QRC/Star-RC抽取的實際物理延時信息,所以如果SDF
    的頭像 發(fā)表于 12-18 09:56 ?1057次閱讀
    芯片后仿之<b class='flag-5'>SDF</b> 3.0<b class='flag-5'>解析</b>