Abstract
在這篇論文中,我們提出了一個佈局導向再合成ECO方法來解決時序衝突,本篇論文提出的設計流程整合了邏輯合成與實體合成兩項工作並進一步利用兩者的互動,我們的方法首先從電路的佈局中抽取出電路的電氣特性並將這些資訊回傳回原來的電路中,接下來我們進行佈局後的時序分析來找出時序衝突的電路路徑,最後我們應用邏輯合成與佈局-繞線ECO程序漸進地解決時序衝突,實驗的結果顯示了我們提出的方法可以有效地解決時序衝突以達成高性能設計。現今深次微米的技術已能將相當複雜的元件包裝到單一的晶片中,隨著晶片的縮小,積體電路設計者在電路特性上面臨了新的挑戰,這也導致了在合成與實體層次之設計自動化的研究,典型的晶片設計流程包含了多種不同層級的工作,這些工作分別是暫存器傳輸層級╱邏輯合成、預置、佈局與繞線,多年來已有相當多的研究心力投注於改進各個層級的設計工作,不過對於跨層級工作整合的研究卻不多,因此本篇論文主要的研究目的在於拉近邏輯與實體層級兩層設計工作之間的距離,進而縮短深次微米設計的研發時間與達到成本效益。如何分析與設計使用位準感應鎖存器的同步數位電路一直是困難的問題,Unger與Tan應用數學歸納法來分析三種時脈架構,Champernowne等人提出了鎖存器-鎖存器的時序規則,Salallah等人對於鎖存器控制的同步電路之時序條件提出了簡明的公式,另外Burks也針對使用位準感應鎖存器的電路提出了一個方法來找出電路的關鍵路徑。在設計同步系統時,為了確保系統能正常運作,鎖存器對於每個時脈的設定時間與維持時間必需符合鎖存器-鎖存器的時序規則,從鎖存器到鎖存器所經過的路徑上,邏輯閘內部的延遲時間通常是已知的,不過線路的延遲時間必須在做完繞線後才能得知,然而在深次微米的設計中,線路的延遲時間是導致設定時間衝突與維持時間衝突的主要因素之一,我們的研究主要著重在如何以再合成ECO晶片設計方法來解決時序衝突,主要的目的則在發展一個時序導向的設計流程來解決設定時間與維持時間的衝突。我們提出的方法包含了兩個步驟:(1)初始佈局產生、(2)再合成ECO迴圈,在第一個步驟中,原始電路經由一連串的設計流程最後針對某元件庫構成實際線路,我們對電路做時序分析後可以得到前k條關鍵路徑,我們再以這k條關鍵路徑輸入到繞線工具中對電路進行佈局與繞線,最後可以得到整個電路附加的電路特性。在第二個步驟中,我們首先做佈局後的時序分析以找出所有違反設定時間與維持時間的路徑,然後以再合成與佈局-繞線ECO程序來解決所有有時序衝突的路徑。我們在Sun工作站上進行我們的實驗,使用的語言為C++與Perl語言,整個實驗的程序已經可以自動化進行,我們採用了幾個MCNC的測試電路來進行實驗,實驗的結果證明整個設計流程是可行的,根據這個設計流程,我們可以解決所有的時序衝突。在這篇論文中,我們的設計流程整合了邏輯與實體層級的設計工作,另外我們也整合了數個商業CAD軟體與我們發展的演算法來解決時序衝突的問題,並使整個流程達到自動化,我們相信整個設計流程可以進一步藉由調整CAD軟體的參數而達到個完善的地步,另外支援多相位的時脈架構也是我們今後研究的重點。In this paper, we present a layout-driven resynthesis ECO (Engineering ChangeOrder ) method for timing violationelimination. We present a design flow by integrating logic andphysical synthesis tasks to exploit the interaction betweenthem. Our propose method first back-annotates parasiticinformationfrom the layout and performs post-layout timinganalysis to identify the timing-violation circuit path. ECOprocedure to interatively resolve the timing violation.Experimental results have demonstrated that our proposed methodcan effectively produce high-speed timing-violation-freedesigns.