時序分析的目的是驗證設計是否符合規定時序限制下的性能要求,同時設計者基于時序分析的結果來決定如何在不滿足時序要求的情況下進行時序性能改進。
時序圖
靜态時序分析中,數字邏輯電路首先轉換成時序圖的形式,再基于時序圖來計算路徑延遲的總和,如果所有的路徑都滿足時序限制和規範,那麼就認為設計滿足時序限制規範。
生成時序圖首先需要對要進行時序分析的設計進行邏輯電路到時序圖的轉換。時序圖主要包括時序路徑的邏輯節點、連接配接關系和主要輸入輸出端口。其中邏輯節點為設計中的邏輯單元;連接配接關系為設計中邏輯單元的輸入輸出關系;主要輸入輸出端口為設計的輸入輸出端口。
如下圖所示為一個邏輯電路,将各節點和輸入輸出端口進行标号,得到由邏輯電路圖轉換為時序圖的中間結果。
時序分析基于4種類型的時序路徑進行時序分析,時序圖中起點和終點可根據如下原則進行定義:
1.時序圖中起始點包括設計邊界上資料輸入端口、時序單元的資料輸出端口和存儲器資料輸出端口這三類;
2.時序圖中終止點包括設計邊界上資料輸出端口、時序單元的資料輸入端口和存儲器資料輸入端口這三類。
基于以上原則,以上原則電路圖轉換成的時序圖如下所示。
完成基本的電路邏輯圖到時序圖轉換後,還需要結合連接配接關系 、時序弧、時序限制、時序分析政策和計算方法等其他相關因素,才能對設計進行時序分析。
時序分析政策
對設計進行時序分析前,需要選擇合适的時序分析政策。時序分析政策主要分為兩種:基于路徑的時序分析政策和基于子產品的分析政策。
1.基于路徑的分析政策
基于路徑的分析政策是基于時序圖找到從起點到終點的所有路徑進行時序分析,如下圖所示。
基于路徑的分析政策能夠獨立精确地計算每條時序路徑,但是随着設計規模的增加,這種時序分析政策需要基于單元延時和連線延時等諸多資訊來計算時序圖中所有時序路徑,這樣可能增加計算量和運作時間,然而可以通過合理設定來屏蔽不必要時序路徑的時序分析。主流的時序分析工具一般基于該分析政策進行時序分析,如PrimeTime。
2.基于子產品的時序分析政策
基于子產品的時序分析政策也可以稱為基于圖的時序分析政策,它是基于時序圖找到從起點到終點的所有路徑,在進行時序分析時隻基于該路徑下延遲最嚴重的節點進行計算,如下圖所示。
基于子產品的時序分析政策能夠同時分析所有時序路徑,并且随着設計規模的增加,計算量和運作時間不會像基于路徑的分析政策那樣大幅增加。但是其缺點是其分析精度沒有基于路徑的分析政策那麼高。