簡介
下載白皮書(英文版)
當前,積體電路(矽晶片)的設計日益變得越來越大型化和複雜化—包括ASIC, ASSP與系統晶片(SoC)—設計的功率收斂和電路的功率完整性開始逐漸成為工程資源中的主流問題,進而有效影響器件整體的面市時間。
在便攜式(通常是無線的)電子系統中,逐漸增加了電池供電的使用,推動著對消耗最小功率的晶片的需求。同時,這些產品的物理體積也變得越來越小,消費者日漸成熟,他們需要的是更多的功能,更長的電池壽命。舉例說明,一款時髦的移動電話,可能包括以下特徵,如個人記事本功能、遊戲功能、照相並傳輸照片、連接到網際網路等等。不管功能如何增加,然而,一個普通行動電話的重量不會超過4盎司,而且消費者希望在通話和操作時電池能夠持續至少三個小時,待機模式下至少能持續五天或者更長時間。
而在另一個層面,一些器件的大部分功率損耗都會導致重要的設計問題。例如,一款新近發布的CPU在1.3伏時消耗電流量為100安培,功率相當於130瓦!這一類的設備需要昂貴的封裝和散熱配置,整個晶片上的熱梯度,可能會導致機械應力,進而過早地導致設備故障,因此如何在晶片中物理的實現所有功率並不是小事一樁。所以,即便是將設備用於非便攜的設備上,依然存在著大功率的問題,在面對這些電源供應和冷卻系統的尺寸和成本問題時,有功率意識(功率監控)的設計能夠實現有競爭力的優勢。
當半導體行業從一個技術標準移植到另一個技術標準時,目前的功率約束就顯得非常吃緊,新的約束便相繼出現。關乎功率的約束正被加以利用,貫穿在整個設計流程中,從而實現器件最佳的性能和可靠性。在目前超大型、超複雜的設計中,實現可靠的電源網絡和最小的功率消耗已經成為設計團隊面臨的主要挑戰。
實現最優化的低功耗設計需要在設計流程的不同階段權衡,諸如時序對功率和面積對功率等因素的折衷。成功的功率敏感設計要求工程師們具備準確、高效地完成這些權衡的能力。為了能夠實現這一目的,設計師需要授權使用正確的低功耗分析和最優化引擎,這些功能要求整合在整個RTL到GDSII流程中,而且要貫穿全部流程。
此外,為了處理各種效應之間的複雜關係,必需利用整合的設計環境,在流程中,所有的功率工具都相互完全整合在一起,同時與其它的分析和實施引擎整合在一起。例如,變化單元的尺寸會影響他們的關聯電流(以及功耗),進而影響了與這些單元相關的電壓降。為了充分地計算壓降效應的效果,必須要衰減時序-一個單元一個單元地執行-以實際的電壓下降為基礎。接下來時序分析引擎利用衰減的時序數據識別出關鍵路徑上的潛在變化。
然後,最優化的引擎做出相應的單元尺寸調整,以滿足隨時序變化引起的潛在的設置或保持問題。這些變化再一次地影響電流,電流影響了壓降,依此類推。如果由於缺乏一個整合的設計環境而無法解決這些相互關係中的任一環節,那麼就會在激烈市場競爭中被競爭對手的低功耗設計擊敗。
本文首先探討了最重要的功率消耗和功率分配等注意事項。然後介紹真正的低功耗設計環境,能夠滿足貫穿整個RTL到GDSII設計流程中功率設計的需求。
功率消耗相關事項
動態功率消耗
這些討論中假定使用的是互補型金屬氧化物半導體(CMOS)器件,原因是CMOS是目前最流行的數字IC實施技術。動態功率消耗發生在邏輯門由一個狀態切換到另一個狀態的時刻。在切換的過程中,與門極相關的晶體管內部電容被充電,因此會產生功耗。更為重要的是,門極也不得不為外部(負載)電容充電,外部電容由與下游邏輯門相關的線圈寄生電容和輸入電容組成。
現在以一個簡單的反相器門極為例,在任何情況下,通常兩個晶體管T1和T2中隻有一個是打開的(如圖1所示)。然而,在門極從一個狀態向另一個狀態切換的過程中,晶體管T1和T2將在瞬間同時打開。因此在VDD (邏輯值1,電源) 和VSS (邏輯值0,接地) 之間將產生瞬態電流,後繼的瞬態開路電流將導致瞬態浪涌功率。

圖1.當門極狀態切換時,兩個晶體管可能會同時活動
兩個晶體管同時被激活的總時長是他們的輸入開關閾值和門極驅動輸入信號轉換(斜率)的函數。
控制反相器輸入信號斜率的其中一個因素是形成邏輯門驅動信號的晶體管容量。要求它們要足夠大,這樣信號就能夠迅速轉換,進而將反相器晶體管同時激活的總時間保持在一個合理的水平(如圖1b)。
下面討論一下如果驅動門極的晶體管過大,過度驅動門極的情況。在這種情況下,通過保持反相器晶體管同時打開的時間最短來實現功率節約的想法就無法實現了(如圖1a),原因是驅動門極必須為因晶體管過大而增加的電容充電,因此消耗了額外的功率。而且,過於迅速的信號轉換也將引起噪音、過衝、下衝以及串擾等信號完整性問題。
相比而言,如果驅動門極的晶體管過小,門極驅動就顯得不足,那麼反相器的晶體管同時打開的時間過長(如圖1c),因此會導致晶體管消耗掉無法控制的功率(不足的輸入信號也會對與其它信號耦合產生的噪音和串擾極度敏感)。
應對動態功率消耗
基於介紹性文章的目的,動態功率消耗量的計算可以通過以下公式表示:

這些公式顯示, 動態功率的消耗可以通過以下方式來改變:
減少開關活動次數的一個方法是減少系統時鐘的頻率。但是,減少時鐘頻率將給器件的性能帶來相應的影響。另一種技術是使用時鐘門控,能夠限定時鐘的分配,在某個時刻,隻分配給那些正在執行有意義的任務的器件部分。也有可能通過應用適當的延遲平衡,達到最小化本地數據活動(瞬時脈衝干擾和潛在危害)的目的。
有很多方法可以減少電容值。其中一個方法就是縮小門極驅動的過驅線圈的大小,因而降低與這些門極相關的電容。另一個技術是利用有功率意識 (功率驗証) 的布局布線算法,最小化關鍵線圈的長度,因此減少了關聯寄生電容的大小。有功率意識的布局布線應該以與每個線圈關聯的開關活動數量為基礎(權重)。還有另一個可選擇的辦法是利用諸如低k電介質(絕緣體)材料或低阻抗/電容銅(Cu)軌等技術。
降低供電電壓可以引人注目地減少邏輯門的功耗,但是同時也會極大地降低門極的開關速度。一個解決方案是利用多重電壓區域,也就是說在晶片的不同區域應用不同的電壓。在這種情況下,應該將與關鍵性能相關的功能塊布置在更高的電源區域,而那些非關鍵功能應該布置在更低的電源區域。
在設計流程的算法和架構階段,也可以在功能平行和頻率和/或電壓之間進行有意義的權衡。舉例說明,將一個運行頻率為'f',電壓為'V'的邏輯時鐘替換為兩個同樣的時鐘,兩個時鐘各執行一半的任務,而每個時鐘的運行頻率和電壓更低。在這種情況下,在保持性能不變的同時,該功能的總功率損耗得以降低,但是卻佔用了更多的寶貴的晶片空間。
靜態功率消耗 靜態功率消耗是指邏輯門不活動時(靜止)的功率﹔也就是說,不存在從一個狀態切換到另一個狀態的時刻。此時,理論上這些門完全不應該消耗任何功率。然而,實際情況是,總會有一部分漏電流通過晶體管,這意味著它們的確會消耗掉一定的功率。
即使單個邏輯門的靜態功率損耗非常非常低,但是由於現在的IC包括數以千萬的門極電路,因此總體影響就變得非常嚴重了。此外,隨著晶體管尺寸的緊縮,當半導體行業從一個技術標準移植到另一個技術標準時,半導體摻雜的水平也會增加,因此產生的漏電流也相對更大。最終的結果就是,即時器件的絕大部分都處於完全靜止狀態,可能仍然會消耗掉大量功率。事實上,在不久的未來,預計很多器件的靜態功率消耗有可能會遠遠超過動態功率消耗。
應對靜態功率消耗
在解決靜態功率消耗時,必須要考慮兩個關鍵的公式。第一個公式描述了晶體管的洩漏:

關於上面的公式重要的一點是,它表明靜態功率消耗是溫度(T)的指數。也就是說當晶片溫度升高時,它的靜態功率消耗將層指數級增加。
另一個要點是靜態功率消耗是晶體管開關閾值(Vt)的指數。為了實現低功耗設計,IC代工廠提供了使用多Vt數據庫的MTCMOS(多閾值CMOS)技術。這意味著每個類型的邏輯門都有兩種(或更多種)形式:開關更快的低閾值晶體管,但是洩漏更高,功耗更大﹔或者開關更慢的高閾值晶體管,但是洩漏更低,功耗更小。
第二個公式描述了晶體管延遲(開關時間)與晶體管開關閾值(Vt)和晶體管供電電壓(VDD)的影響關係:

由於降低供電電壓能夠減少發熱,進而降低靜態功率消耗,然而,降低供電電壓同時也會增加門極的延遲,這意味著工程師不得不進行一項複雜的平衡工作。相比較而言,降低晶體管的開關閾值,加速開關,但同時會導致洩漏呈指數增加,因此也增加了靜態功率消耗。
利用上文動態功率消耗中討論的多重電壓區域是一種解決方案。另一個選擇是只在關鍵的時序路徑上使用低開關閾值(Vt)的晶體管,而在非關鍵路徑則使用高開關閾值(Vt)的晶體管。當然也可以聯合使用這兩種解決方案。
當然還可以選擇另一種技術,即當器件中的某些部分不需要啟動時,利用不洩漏的晶體管來降低洩漏塊。例如,當這些部分處於“待機”模式時。然而,開關整個塊可能會導致巨大的電流浪涌,那麼則需要使用額外的電路提供“柔和的”(分級的)電源來開關這些塊。

圖2.功率分配需要考慮的重點包括總功率損耗、電壓下降和電遷移效應。
功率分配相關事項
封裝事項
當提及功率分配時,首要的問題時從外部獲得功率,通過器件的封裝,送到矽片自身。用來將功率分配到整個晶片的線圈存在關聯阻抗-線圈越長,阻抗越大,關聯電壓下降也就更大。這意味著傳統的基於外圍功率焊盤的封裝技術不再適用於目前超大超復雜的設計。
解決方案是使用倒裝晶片的封裝技術,其中焊盤橫跨在晶粒面上,直接將電源從外部電源供應傳送到晶片內部。除了能夠支持許多電源和接地焊盤,這種方案同時也使得電源傳輸到晶片內部的距離最短。此外,倒裝晶片封裝技術中鉛錫凸塊的感應系數要遠遠低於傳統封裝技術中使用的連線鍵合的感應系數。
溫度和性能相關事項
功率消耗-包括動態的和靜態的-增加了器件的運行溫度。因此,可能需要工程師們使用昂貴的器件封裝和外部冷卻技術。
為了適應不同的運行溫度和供應電壓,以往設計師們不得不增加器件的特性和設計余量。但是,利用過分保守的設計慣例來創建器件的電源網絡也會佔用昂貴的矽片空間,增加了擁擠度,導致器件的性能遠遠低於矽片的全部潛能。顯然。這種方案根本無法適應目前競爭激勵的市場環境。
還有另一個需要考慮地要點是片上溫度梯度(由於不平衡的功率損耗導致器件上的不同部分溫度不同)會產生機械應力,也可能會降低器件的可靠性。
電壓下降效應
深亞微米(DSM)和超深亞微米(UDSM)器件屬於易受電壓下降影響的器件,電壓下降是由從外部引腳分配源極和接地到內部電路的線圈網絡關聯阻抗引起的(在DC情況下)-直流-相關的電壓下降,通常也指壓降IR drop 效應。
以下電路圖純粹是為了提供簡單的示例而準備的,一連串兒反相器門極與同一個電源和接地軌相連(如圖3所示)。

圖3.一連串兒反相器門極與同一個電源和接地軌相連
每段源極和接地軌都有一小段關聯阻抗。這意味著最接近IC的主電源和接地引腳的邏輯門(本例中指門極G1)擁有最優化的電源供應。鏈中的下一個門極(本例中指門極G2)的電源供應則要稍微差一些,依此類推,越是後面的門極就越來越差。
當存在瞬間或AC(交流)電壓下降效應時,這一問題將更加惡化。當門極從一個值切換到另一個值時-甚至更糟糕-當整個時鐘都在開關切換時,就會發生上述問題。將導致瞬時功率浪涌,可能會立刻減少門極的電壓供應,更進一步影響電源供應鏈。如圖3所示的簡單電路僅由若干個反相器門極組成,但是實際的典型設計可能包括成千上萬個由時鐘信號觸發的寄存器(存儲)元件。時鐘可能會導致大量的寄存器元件同時開關,進而在電源供應時產生嚴重的“瞬時脈衝干擾”。為了分析並解決這些效應,必須綜合考慮這些可抗的、感應的、容性的影響。
電壓下降效應如此重要的原因是當電壓供應降低時,一個邏輯門電路的輸入到輸出延遲也會增加,最終將導致門極電路錯過自己的時序規範。當關聯線圈的門極驅動不足時,也會引起連接線延遲的增加。而且,當供應電壓下降低時,一個門極的輸入開關閾值將被修改,導致門極變得對噪音更加敏感。
由於當降低特徵尺寸(如軌道寬度)時,源極和接地軌的阻抗會升高,因此電壓下降效應正在變得日益重要。通過增加源極和接地軌的寬度可以最小化這些效應,但是會佔用寶貴的矽片空間,一般會導致布線的擁擠問題。為了解決這些問題,不得不將邏輯功能布置得分開一些,但是會因更長得信號軌而增加延遲(和功率損耗)。因此,實施優化的電源網絡需要平衡諸多變化的因素。
電子遷移效應
當軌道上的電流密度(單位面積上通過的電流)過高時就會產生電遷移問題。此時,電源和接地軌、電子遷移效應都是基於直流環境的。當電流流過軌道時在軌道中引起的金屬離子遷移就是所謂的“電子風”。這種遷移將在“逆風”方向產生“空洞”,同時金屬離子堆積在“順風”區從而形成被稱為“丘陵”(hilllocks)和“晶須”(whiskers)。
發生在電源和接地軌上的電子遷移將導致時序問題,原因是由於空洞導致的軌道關聯阻抗增加會引起相應的電壓下降。因而,如上文所討論的,將導致受影響的邏輯門的延遲和噪音敏感性加大。
由於空洞可能會最終導致開路,而同時“丘陵”和“晶須”可能會引起相鄰線圈的短路,因此電源和接地的電子遷移也會引起嚴重的功能錯誤。
以真正的低功率設計環境成就理想性能
RTL-to-GDSII
在傳統的設計流程中,功率權衡因素需要通過分離的工具來實現,而且無法判斷它們對時序、面積以及周期時間的影響。單點獨立工具和設計環境的其餘部分之間缺乏整體性,可能導致數量龐大的“偽錯誤”,從而導致一個設計最終無法收斂。最壞的情況是缺乏整體性-加上極其有限的修正能力-將導致一個不可靠的功率網絡,最終導致數量龐大的、耗時的設計迭代。
目前,大多數設計環境面臨的另一個問題是在物理設計過程中要集中精力,全神貫注於分析並滿足功率因素。這就使得修正由設計早期階段缺乏決策引起的任何問題變成了幾乎不可能的任務。
對真正低功耗設計環境的一個關鍵需求是利用當前盡可能多的數據資料,實現早期的如電壓降影響分析,繼而,隨著流程的推進,利用更為準確的數據繼續細化分析。這一特性使得潛在的問題能夠被盡早識別,並盡快解決。
創建理想的低功耗設計涉及到在設計流程的各個階段進行權衡折衷,諸如在時序和功率,面積和功率之間。為了使設計師們能夠準確地、有效地實施這些權衡,有必要將低功耗優化技術整合到-並貫穿始終地應用-整個RTL-to-GDSII流程中。
低功耗設計和優化技術
目前,有一系列可被廣泛應用的低功耗設計和優化技術。這些技術包括下列各項:
- 複製 (clone)
- 基板偏壓
- 電壓島(利用多種供電電壓﹔也被普遍稱為多電壓域multi -VDD)以及
- 電壓調節
- 功率門控(包括MTCMOS和狀態保持)
- “加油站”理念
- 有功率意識的映射
- 利用具有多重開關閾值的晶體管(也被稱為多VT)
- 有功率意識的平面規劃和布局
- 有功率意識的解耦電容布局
- 有功率意識的時鐘樹綜合
- 有功率意識的時鐘門控和時鐘門極多路複製及反複製
- 有功率意識的時序優化
- 迭代的功率網絡設計
複製(Cloning): 在設計的早期階段(綜合之前),RTL能夠通過使用結構的優化進行修正,諸如將一個高功耗的邏輯功能塊替換為相等量的多個低功耗功能塊。一個有功率意識的設計環境應該能夠推動針對不同微結構場景的“假設分析”研究,以評估與各種結構實施相關聯的面積、功率以及性能之間權衡折衷。
基板偏壓(Substrate Biasing): 在多數情況下,某個功能塊只需在某個時間段內以最高速度運行﹔而在絕大多數時間內— 即使它們的功能性是必需的— 許多功能塊能以降低的速度運行。對與某個特定功能塊相關聯的矽片應用基板偏壓,將導致功能塊在相對較低的速度運行,但是它將大幅度地降低該功能塊的靜態洩漏功率。
電壓島(Voltage Islands): 一項日漸普遍的技術是將設計分割成許多的“電壓島”— 即,將各個功能塊與不同的供電電壓相關聯,如圖4所示。(這一技術通常被稱為多-VDD)。供電電壓更低的電壓島性能也隨之降低,但是顯而易見的是,它們的動態功耗也將大幅度地降低。

圖4.多電壓域(multi-Vdd)設計的類型
當將設計分割為多個電壓島時,需要在網表中嵌入適當的電平相移器元件,來連接從一個電壓域到另一個電壓域的信號。一個真正有功率意識的設計環境應該能夠自動地嵌入這些單元。
電壓調節(Voltage Scaling): 電壓調節可被視為電壓島概念的增強形式,對某個功能塊的供電可被定義為具有不同值的範圍。這意味著與這樣一類島相關聯的時序和信號完整性必須滿足眾多不同的“區域”—繼而,需要一個低功耗環境能夠處理協同的多區域、多模式優化。
功率門控(Power Gating):在尺寸更小的技術節點下,洩漏功率是一項主要關注因素。能夠滿足這一需求的一項技術是功率門控,意指當某個設計部分處於非活動狀態時,有選擇地切斷該設計部分的電源(參見圖5)。功率門控正在變得日益突出是由於該技術與其它技術相比實現了數量級的洩漏降低。這一概念是利用高閾值電壓(high-Vt)的開關—MTCMOS開關— 來連接全局恆定電源線軌和局域開關電源線軌,使得局域的線軌能夠根據供電狀態開啟或者關閉。這些開關也可以用來提供精細的、中等的以及粗精度的控制,從個體單元到單元群組,再到整個功能塊。

圖 5. 分布式的多閾值CMOS.
這項技術中有一系列的因素需要加以考慮。例如,往返於域的信號能夠被開啟和關閉,需要特別的關注,這樣才能夠避免任何“浮動網絡”問題。而且,當一個功能塊被切斷電源,稍候又重新啟動時,通常有必要讓該功能塊恢復到其之前“優質”的運行狀態。那麼當前的問題是,缺省情況下,功能塊的狀態將隨著電源的切斷而消失。為了解決這一問題,在功能塊電源被切斷之前,需要將重要的寄存器值保存在內存,然後當功能塊重啟時再從內存中恢復該數值,然而這項操作將是相當耗時的。另外一個解決方案是有選擇地使用狀態保持寄存器﹔雖然這些寄存器比常規的寄存器佔用更大的面積,當功能塊的其它部分關閉時,盡管他們還會繼續消耗能量,但是功能塊就能夠快速重啟了。
另一個需要考慮的因素是為了控制設計的不同部分,一個設計中可能包含數百只MTCMOS開關。如果大部分開關同時啟動的話,那麼將產生無法接受的電流浪涌。解決這一問題的方案是讓開關按照預先定義的順序逐個開啟
“加油站”概念(The \"Gas Station\" Concept): 我們現在來考慮這樣的場景,設計中的某個部分由三個功能塊組成,分別為A、B 和 C 。假定功能塊B與功能塊A和C的供電電源不同(也就是說,功能塊B是電壓島)。同時假定功能塊B位於功能塊A和C之間,而且需要在功能塊A和C之間路由一組信號 — 即需要一條128比特的總線。
如果這些信號被路由到功能塊B周圍,那麼可能產生無法接受的延遲和/或布線擁塞。與之相比的是,如果這些信號穿過功能塊B — 在缺省情況下 — 需要應用電平相移器單元,而且將產生更長的單元延遲。此外,如果這些布線不夠長,那麼這些信號在穿過功能塊B的過程中可能還需要緩衝。顯而易見的問題是,如果功能塊B是功率門控的目標,那麼當功能塊B被切斷電源時,這些信號將會“消失”,即被切斷。
對於有功率意識的設計環境,解決方案是支持能夠嵌入到更大電壓島的小型“嵌套式”電壓島(如圖6所示)。這些嵌入的“加油”島—將不再受到功能塊B被關閉的影響—從而使得信號能夠被路由到功能塊A和C,而無需使用任何電平相移器單元。

圖 6. 處理複雜的多電壓域(multi -Vdd)平面布局圖。
有功率意識的映射(Power-Aware Mapping): 下列綜合、有功率意識的映射技術能夠被用於優化網表。這些技術包括將非常活躍的節點映射到特定的單元,以及將非常活躍的輸入信號映射到低電容輸入引腳。
多閾值電壓晶體管/單元(Multi-Threshold Transistors/Cells): 在非關鍵時序路徑上的單元中,綜合和優化引擎能夠選擇由高閾值電壓晶體管組成的單元﹔也就是說,晶體管具有高開關閾值。此類晶體管的優點是洩漏更低,耗能更少﹔然而,它們的開關速度不如低閾值電壓晶體管的開關速度(這類晶體管泄漏更高,耗能更大,而開關速度要快得多)。
有功率意識的平面規劃和布局(Power-Aware Floorplanning and Placement): 一個先進的有功率意識的設計環境也應該能夠在平面規劃和布局過程中促進功率的優化。為了準確地實施多電壓域,有必要針對每個域分別設定不同的功率網格。基於以它們的活動加權的網絡而進行的有功率意識的單元布局可被用來最小化動態功耗。來自早期電壓降分析的結果可被用於決定需要嵌入的緩存器的最佳位置。先進的簇技術可應用於時鐘樹,以降低功率損耗。
有功率意識的解耦電容布局(Power-Aware Decoupling Capacitor Placement): 通過增加適量的片上解耦電容能夠最大限度地降低感應電壓降的影響,這種影響是隨著時間變化由片外電流突變引起的。為了降低鍵合線纜的電感和每個焊點的電流,多個焊點被分配給源和地,因而使得焊點布局分析成為了一項重要的任務。倒裝晶片封裝技術能被用來增加連接源和地供應的焊點數量,因而降低了焊點電流,從而使得電感值也隨之下降。
有功率意識的時鐘樹綜合(Power-Aware Clock-Tree Synthesis):貫穿在設計中的時鐘樹功耗是設計整體動態功耗的重要部分(在某些設計中,時鐘樹甚至佔到整個晶片動態功率的60%,或者更多)。解決這一問題的第一步是使得設計環境具備有功率意識的時鐘樹綜合特性,能夠執行智能的簇優化(更好地平衡簇,以便在以後的流程中實現功率降低)。
有功率意識的時鐘門控(Power-Aware Clock Gating): 傳統的自動時鐘門控算法對每個寄存器元件選通的結果(時鐘樹上的葉節點)相對而言不夠智能化。除了增加布線擁塞之外,這種算法對葉節點而言是沒有意義的,原因是葉節點在絕大部分時間內是活躍的。
一個真正有功率意識的設計環境必須能夠支持更加成熟的時鐘門控形式。除了使用來自模擬的活動(轉換)分析來判別能夠真正受益於時鐘門控的節點,該環境還應該能夠做到:
- 對時鐘樹上的多個點應用門控(針對節點、分支和主幹)
- 執行時鐘門極電路複製,並確保克隆的時鐘門極電路能夠優化驅動穩定的葉節點簇(散熱片)
整合的工具套件
目前,市面上有很多非常成熟的功率分析工具可供設計師選擇使用。但是,一般來講,這些工具通常是作為第三方單點解決方案而提供給使用者的,無法與設計環境主體緊密整合在一起。這些工具要麼需要使用多個數據庫,要麼需要將完全不同的數據模型組合到一個數據庫中。這意味著以這些工具為基礎的設計環境必須要執行內部的和外部的數據轉換以及文件傳輸,使得數據管理變得相當繁瑣、耗時,而且容易產生錯誤。然而,最重要的問題是,在其後的設計規劃中修正一個缺陷需要付出相當昂貴的代價。由於設計實施工具缺乏分析能力,無法自動執行修正,因此當修正工作必須手工完成時,這一缺點就顯得尤為突出。如果在手工修正之後必須返回重新進行再分析時(而不是與修復同時進行),那麼情況將變得更加糟糕,此時,一個明顯的問題是要麼修正沒有起到應有的作用,要麼可能會給設計帶來新的,不一樣的缺陷。
將不同的獨立工具產生的結果關聯在一起無疑是相當困難的,而且意味著有可能在設計周期完成之後才能發現問題,或者乾脆無法檢測到錯誤。然而,對於現有設計環境而言,最重要的問題或許是在納米設計領域,功率、時序和信號完整性的影響相互關聯性非常之緊密,以至於傳統的獨立解決方案設計工具根本不具備通盤考慮這些影響和它們之間相互協作關係的能力。
舉例說明,為了充分地計算出電壓降效應的影響,非常重要的一點是要創造出一個能夠分解時序的環境—以單元為基礎逐個進行—以實際的電壓降為基礎。然後,時序分析引擎應該充分利用分解的時序數據來識別關鍵路徑上可能存在的潛在變化。接下來,最優化的引擎將執行適當的修正來解決由時序變化結果導致的潛在的設置或保持問題。這就需要有一個能夠確保功率分析、電壓降分析、分解計算、時序分析以及優化引擎無縫整合運行的環境。如果缺乏這樣一個整合的設計環境,設計師需要在不同的獨立工具之間傳遞大量的數據(諸如SDF文件),並在其中重複該項操作,以解決由於電壓降導致的延遲引發的時序問題。
在功率分析工具和設計環境其餘部分之間缺乏整合可能會產生大量的“偽錯誤”,諸如設計部分中,微小的電壓降不會影響器件的性能或功能。工程師們往往經常過渡補償這些偽錯誤,對功率網格做出不必要的修改。進而,這一舉動將導致這些設計部分無法滿足它們的面積和時序約束,可能變得非常擁擠—而且對此問題做出的補償又會在設計的其餘部分引起連鎖反應。時序目標的額外余量,干擾和信號完整性分析的額外餘量,以及超寬的電源線軌等等因素組合在一起,最終將導致設計無法收斂。
最糟糕的情況是,功率分析工具和設計環境其餘部分之間缺乏整合性—連同極其有限(即便有的話)的修復能力—意味著當功率分析的結果用於定位和隔離時序和/或信號完整性問題時,修正這些問題的行動本身有可能會在功率網絡中引入新的問題。從而引發大量的、耗時的設計迭代。
最終,利用獨立解決方案的功率分析工具必將導致無法收斂的解決方案,使得設計無法滿足它們的面市時機(或者根本無法實現)。因而,一個真正的低功耗設計環境應該具備讓所有的功率分析工具和實施工具協同運行的特性,這些工具包括綜合、布局和布線、時鐘樹、提取、時序和信號完整性分析。此外,環境中的所有工具應該能夠以一個統一數據模型為基礎運行,為分析數據提供了協調一致的存取訪問,確保了對設計“實時在線”變更。
總結
為了解決與深亞微米(DSM)和超深亞微米(UDSM)器件相關的問題,需要能夠貫穿整個RTL-to-GDSII設計流程的功率設計和分析工具。在流程後期識別並解決功率問題需要代價高昂的、耗時的迭代反覆。過度保守的分析和設計根本無法適應當前競爭激烈的市場環境。設計師需要的是貫穿在整個設計流程中識別並解決這些問題的能力,而且一旦這些問題已經解決並確認為“安全可靠”的之後,就應該能夠做到“忘記”這些問題。
為了處理各種效應之間複雜的相互關係,有必要讓設計系統的架構能夠與所有的其它功率工具彼此完全整合在一起,同時也能夠與流程中的其它分析和實施引擎相互整合,包括綜合、布局和布線、電壓降分解、時序、優化和信號完整性分析。這種流程的架構應該能夠保証所有的實施和分析引擎都能夠通過一個統一數據庫模型協同訪問設計數據,而且通過一個工具所做出的任何變更,都能夠立即被其它工具檢測並驗証。利用其中產生的收斂算法能夠迅速地判定最優化的解決方案,而無需採取耗時的迭代。
功率—以及有效管理功率的能力 —都整合在架構體系中。 |