片上系統晶片設計與靜態時序分析
1 引 言
在積體電路設計技術已進入第四代的今天,一個電子系統或分系統可以完全整合在
一個晶片之上,即系統晶片(SOC)整合。隨著設計規模增大、電路效能的提高和設計的
複雜度大大增加,相應地,對設計方法學提出了更高的要求。
傳統的晶片設計中,只考慮了門本身的延遲,互連引起的延遲忽略不計,也正因如
此,傳統的設計流程可分為邏輯設計與物理實現兩個相互獨立階段,晶片的設計考慮較
簡單。隨著電晶體尺寸的降低,門的速度越來越快,限制電路效能提高的主要因素不再
是開關速度,而是互連延遲。時脈頻率越高,互連線作為扇出負載引起的延遲在整個時
序預算中所佔的比例越大。深亞微米設計範圍中互連延遲佔總延遲的60%~70%,因此
精確地計算這部分延遲在晶片設計中是十分重要的。同時高效能電路使得所有時序的容
差都非常小,也對精確定位電路各部分的延遲模型提出了更高的要求。另一方面,由於
EDA(電子設計自動化)工具實現過程中互連延遲資訊只有在物理實現後才能得到,而在深
亞微米晶片設計中,只有用實際的布圖拓撲資訊約束邏輯設計,才能得到準確的時序。
因此,為了提高晶片的設計效率,縮短設計週期,片上系統晶片設計(往往採用深亞微
米工藝)必須克服傳統設計方法中前端設計和後端設計相互分離的弊病。
另外,由於以往流行的動態時序驗證是在驗證功能的同時驗證時序,需要輸入向量
作為激勵。隨著規模增大,所需要的向量數量以指數增長,驗證所需時間佔到整個設計
週期的50%,且這種方法難以保證足夠的覆蓋率,因而對片上系統晶片設計已成為設計流
程的瓶頸,所以必須有更有效的時序驗證技術取代之。
2 片上系統晶片的設計流程
片上系統整合中越來越多地採用DSP或CPU核的設計方法,得到了世界各國EDA專家、
學者的高度重視。SOC的設計涉及到演算法、軟體和硬體三方面問題。軟硬體協同設計技術
允許在設計早期進行軟體和硬體的測試,及早地發現設計問題,因而成為當前的研究熱
點。但在系統層次上的軟硬體協同設計方法仍有待於進一步深入研究。因為按現有的一
般軟硬體協同設計方法,在確定系統結構並完成軟硬體的劃分之後,用行為模型、RTL級
硬體語言描述和資料通道合成的方法來完成硬體設計,用手工彙編和編譯器來實現軟體
,系統重要引數則通過對該軟硬體劃分的協同模擬獲得。因此係統結構的確定十分關鍵
,但由於系統模型的多樣性,人們不可能窮盡所有可能情況,也無法在系統級建立一個
良好的模型設計策略。這樣,較低層次的軟硬體優化結果就難以保證完全符合整個系統
優化的目標。對於高層次的自動化綜合,一般自動化工具所採用的方法是首先根據系統
的功能說明建立一個控制資料流圖,然後通過排程和定位得到一條合適的資料路徑。對
於運算元量較低,晶片上功能單元較少的系統來說,該方法比較有效。但是對於諸如MP
EG編碼器的系統晶片,由於其操作量十分巨大,片上功能單元可能有數十個,在如此之
多的操作和單元之間進行硬體的排程與對映,根本不可能利用完全自動化的方法實現,
此外,在自動化驗證流程中,軟體的模擬時間也很長。因此,對複雜度較高的片上系統
設計必須在更高抽象層次上開發軟硬體協同設計策略。
片上系統在EDA工具上的實現流程也相應地變得更復雜了。隨著特徵尺寸的縮小,器
件本身延遲不斷減少(0.1um CMOS電路,典型門延遲為11.8ps)。同時,由於每單位長
度的互連線電阻隨著特徵尺寸的縮小而不斷變大,因此由互連線電阻和線電容引起的線
延遲不斷變大,在0.35um以下時,互連延遲甚至可達訊號延遲的90%。因此,對於片上
系統晶片在EDA工具上實現時,進行前端設計的同時必須考慮布圖後互連的影響。
3 靜態時序分析
模擬技術是ASIC設計過程中應用最多的驗證手段,然而,現在的單片整合系統設計
正在將模擬時間推向無法容忍的極限。在最後的門級模擬階段,針對的是幾十乃至幾百
萬門的電路,對模擬器第一位的要求是速度和容量,因此,效能(模擬速度)和容量(
能夠模擬的設計規模)是驗證中的關鍵因素,而此時模擬器還必須支援SDF返標和時序檢
查以確保驗證的精度。
傳統上採用邏輯模擬器驗證功能時序,即在驗證功能的同時驗證時序,它以邏輯模
擬方式執行,需要輸入向量作為激勵。隨著規模增大,所需要的向量數量以指數增長,
驗證所需時間佔到整個設計週期的50%,而最大的問題是難以保證足夠的覆蓋率。鑑於此
,這種方法已經越來越少地用於時序驗證,取而代之的是靜態時序分析技術。
靜態時序分析技術是一種窮盡分析方法,用以衡量電路效能。它提取整個電路的所
有時序路徑,通過計算訊號沿在路徑上的延遲傳播找出違背時序約束的錯誤,主要是檢
查建立時間和保持時間是否滿足要求,而它們又分別通過對最大路徑延遲和最小路徑延
遲的分析得到。靜態時序分析的方法不依賴於激勵,且可以窮盡所有路徑,執行速度很
快,佔用記憶體很少。它完全克服了動態時序驗證的缺陷,適合進行超大規模的片上系統
電路的驗證,可以節省多達20%的設計時間。因此,靜態時序分析器在功能和效能上滿足
了全片分析的目的。支援片上系統設計,即它為很快滿足設計時序要求取得了突破,能
提供百萬門級設計所要求的效能,並在一個合理的時間內分析設計,而且它帶有先進的
時序分析技術和視覺化的特性,用於全晶片驗證。
4 設計例項與實驗結果
我們以複雜度較高的電子系統——MPEG編碼晶片系統為物件進行研究。圖2是它的結
構,其內部包含兩個不同性質的可程式設計ASIP:高層為一個可程式設計性RISC核(結構見圖3),
除了協調各部分的操作之外,該核主要完成變長編碼的演算法任務;低層為一個高吞吐量
的可程式設計數字訊號處理器DSP核,該核主要用於運動估計、離散餘弦變換和量化等細粒度
的演算法任務。此外,編碼器內部還有專門的DMA(Direct Memory Access)控制器,用於管
理片上儲存器和片外儲存器單元的資料交換。在此,著重研究該系統晶片上嵌入式RISC
核的結構設計及EDA工具上的實現和靜態時序分析。
研究表明,該RISC核在50MHz時脈頻率下,就可以完成MPEG-2的變長編碼任務。
我們採用EUROPRACTICE的0.35μm CMOS低功耗庫MTC45000系列,在Ultra SUN工作站
上,引入Cadence的Floorplanning工具對版圖進行整體規劃,Synopsys Synthesis工具
進行邏輯綜合。按照圖1的設計流程進行設計,其中運用Synopsys的PrimeTime對全晶片
的門級靜態時序進行了分析,完成了SOC設計的靜態時序校驗。
綜合優化結果表明,該RISC核的電路規模為5500門左右(16個通用暫存器),動態
功耗為20mW,時脈頻率為73MHz,該RISC核完全達到了預期設計目標。表1給出了運用Sy
nopsys的PrimeTime工具對關鍵路徑的靜態時序分析形成的報告(建立時間的驗證)。結
果表明該路徑滿足要求。需要指出的是,靜態時序分析技術是一種窮盡分析方法,它提
取整個電路的所有時序路徑,限於篇幅,本文不再一一說明和羅列。
5 結束語
本文強調了片上系統晶片設計過程中必須在前端設計的同時考慮後端布圖對時序的
影響,並運用一個新的、全晶片的、門級靜態時序分析工具支援片上系統設計,避免了
由於晶片設計沒有完全地被驗證而導致了矽晶片失效的現象。例項設計表明,該設計方
法能提高片上系統晶片設計中時序設計的準確性,提高驗證效率,從而大大加快設計的
收斂性。
https://blog.csdn.net/yyt7529/article/details/5804557
相關文章
- 手機數字基帶處理晶片中的靜態時序分析晶片
- 線上消費行為統計與分析系統設計和實現
- 演算法設計與分析---論序演算法
- 如何進行系統分析與設計
- 圖片管理系統:原理、設計與實踐
- 系統設計架構:有狀態與無狀態架構
- 系統分析與設計-Lesson8-Homework
- LevelDB系統結構與設計思路分析
- 靜態時序模擬(STA) 以libero soc為例
- article 中上傳靜態圖片時重新命名
- CMake和靜態庫順序
- 靜態域與靜態方法
- Java初始化靜態變數的時間順序Java變數
- 高通CSRA68105藍芽音訊片上系統晶片(SOC)藍芽音訊晶片
- 【數字晶片前端】STA時序分析的小練習1晶片前端
- 環境與生態統計||統計假設
- Linux系統超詳細Linux設定靜態IP教程!Linux
- 設計模式-靜態工廠模式設計模式
- JavaScript 靜態屬性與靜態方法JavaScript
- net 靜態方法與非靜態方法
- 晶片計設系統是從哪些方面去建設的?晶片
- 高頻時序資料的儲存與統計方案
- IIC時序分析
- 線上電影系統設計
- 自由經濟系統的設計(二):生態設計
- java系統可靠性測試設計與用例分析Java
- 電商系統商品資料表設計分析與總結
- 學習高校課程-系統設計與分析-最佳化設計(lec8)
- SoC片上系統詳解
- 介面中的預設方法與靜態方法
- 分散式時序資料庫QTSDB的設計與實現分散式資料庫QT
- ZCC2001,用於移動電源的低靜態電流的系統的管理晶片晶片
- ZCC2001,用於,移動電源的低靜態電流的系統的管理晶片晶片
- DS靜態查詢之順序查詢
- Hadoop高階資料分析 使用Hadoop生態系統設計和構建大資料系統Hadoop大資料
- 靜態庫與動態庫
- SOLIDWORKS設計包線性靜態模擬Solid
- Object上的靜態方法Object