5.5 體系結構級降低功耗技術
5.5.1 高級門控時鐘
同步數字系統中,時鐘分布貢獻了整個數字開關功率中的絕大部分,很多情況可以通過門控時鐘將絕大部分不使用的電路關閉,
插入門控時鐘前和插入后電路功能并沒有改變,所以可以用一致性檢查工具進行驗證,
組合門控時鐘方案在輸出不變時使觸發器時鐘失效,可以用于降低5%~10%的功耗,時序門控時鐘能減少連接到帶有門控時鐘的暫存器塊的設計部分的冗余切換,使用時序門控時鐘時,后續的流水線階段也使用同樣的條件進行門控操作,
時序門控時鐘在實作時會加入額外的邏輯,所以不適用于多位寬資料,


使用門控時鐘最大挑戰:識別出流水線上“多余的”或“不關心”的狀態,一旦該作業完成,時序門控時鐘就可以降低大量功耗,典型情況可以降低15%~25%開關次數,根據文獻,時序門控始終轉換只有在多于16個觸發器的情況下才更有效率,
5.5.2 動態電壓頻率調整(DVFS)
DVFS可以在對頻率不敏感的應用階段降低時鐘速率和供電電壓,在性能適度損失的情況下大幅降低功耗,
當今CMOS工藝的絕大多數處理最大頻率往往與供電電壓相關,所以在低頻時處理器可以作業在低供電電壓下,所以DVFS可以通過頻率和電壓調節節省大量能量,
DVS使用一個可編程的DC-DC開關電壓調節器,一個可編程的時鐘產生器和一個寬操作域的高性能處理器,
總之,通過負載動態調整處理器的電壓和頻率,DVS能提供峰值滿足運算要求的性能,這種方法好處能體現在低性能處理器上,
5.5.3 基于快取的系統體系結構
FFT要求頻繁訪問系統存盤器的資料,這樣的存盤器能效不高,增強型FFT體系結構需要在系統存盤器或RAM與處理器之間增加快取,
在處理器需要之前,預先將相關資料從主存中取到快取,小范圍的快取能使計算能耗大量下降,極大地提高了FFT的能效,
5.5.4 對數FFT體系結構
大規模運算的應用,對數系統(LNS)比線性系統更好,LNS降低每個bit活躍度,并用加減法實作乘除運算,使其效率比線性系統更高,基于LNS實作FFT有節約大量功耗的可能,缺點是加法器和減法器的寬度會增加,導致需要以指數級增大的查找表,(這里沒懂,google也沒搜到)
5.5.5 異步(無時鐘)設計
傳統的設計方法學會形成大規模時鐘數結構,潛在地增加了SoC的平均功耗,并且時鐘分配網路的設計也耗費了設計者大量精力,最可能存在的問題是時鐘偏移,另外一個問題就是相當大的功耗,
由于時鐘會導致上述問題,所以從設計中移除時鐘是一件很有傭訓力的想法,這就是異步設計的基本意圖,但是不能簡單地直接移除電路,一部電路本質上進行自我控制,因此也稱為自定時電路,
異步系統兩個模塊使用握手介面進行互動,書里5.8的圖應該給錯了,
移除時鐘使得能效提升,時鐘耗費了許多能量,將其移除使得能效大大提升,除此之外,因為所有未作業元件幾乎部消耗能量,所以異步電路動態功耗接近0.
異步電路依賴于延遲不敏感編碼的信號交換介面,其中最流行的是雙軌道編碼,
雙軌道編碼用兩根線傳輸每個資料位,因此稱為雙軌,雙軌道編碼一根線表示邏輯1,另一根表示邏輯0.兩部分能可靠地彼此通信而不受線上延遲的影響,
5.5.6 電源門控
電源門控可以在模塊不使用時暫時將其關閉,目的:減少晶體管漏電,可以在邏輯模塊不操作時將其關閉,
兩類電源門控:細粒度電源門控、粗粒度電源門控,
5.5.6.1 細粒度電源門控
每個門和地之間存在一個開關晶體管,
主要負擔:庫IP提供者、標準單元設計者身上,
電源門控尺寸必須能滿足任何情況下對開關電流的要求,門必須較大以便不會引起可測量的壓降,此外對頭部開關PMOS和腳部開關NMOS做出選擇,開關電流相同時,腳部開關面積更小,

使用細粒度電源門控可以將漏電減少為原來的1/10.
5.5.6.2 粗粒度電源門控
粗粒度電源們空中,電源門控晶體管是供電網路的一部分而不是標準單元的一部分,本質是創建一個電源開關網路,
粗粒度不完全依賴于庫的質量,EDA工具對其處理能力影響更大,
電壓關閉區域的備用晶體管大小和數量會影響對該區域的驅動能力,這將導致IR降幅變化并使性能衰弱,所有頭部開關同時再次打開,會有瞬間充放電電流和短路電流產生,這種電流綜合稱為上電沖擊電流(感覺和浪涌電流差不多),對于避免器件故障和潛在的芯片失效,這種電流是個關鍵,


不管實作哪種型別的電源門控,都需要改變RTL,設計一個電源控制器對需要關閉的模塊進行控制,百萬門規模的AISC很輕易就有20個以上的電源域,這種規模的設計混用粗粒度和細粒度兩種技術,
電源門控需要在“關閉”域和“開啟”域之間的邏輯或信號上加入隔離的單元以保持設計完整性并避免功耗損耗,模塊斷電,輸出浮動,可能在閾值電壓內產生不期望的電流,所以需要隔離模塊將下電模塊輸出信號固定在1或0.可用簡單的或、與邏輯作為輸出隔離器件,隔離單元要么在RTL插入,要么在指定引數和要插入的模塊后由EDA工具自動插入,現在的EDA工具可以做到該功能,一部分綜合時插入,其余的在布局布線時插入,
5.5.7 多閾值電壓
多單元庫包含至少兩組功能相同但閾值電壓不同的單元,高閾值電壓單元較慢但是漏電少;低閾值電壓更快但是漏電更多,
缺點:增加生產的復雜性、增加設計時間,設計不恰當的話可能導致使用功耗增加,
測驗不同Vt單元是否能達到期望性能時,最好在綜合和布局優化階段進行,邏輯綜合或優化程序的門級映射階段由綜合工具實作,布局優化由物理實作工具負責處理,
為滿足性能,可以先用低閾值電壓庫進行綜合滿足時序要求,在吧不需要的高性能或低閾值單元用高閾值單元替換,原因:大多數應用是以滿足時序要求為前提條件的,,低閾值電壓庫速度快,面積小,高閾值電壓單元耗費更多運行時間,面積也更大,
若主要目標是功耗,第一遍綜合則使用高閾值電壓單元更合適,再用低閾值電壓單元進行替換,
5.5.8 多電壓供電
設計可以分割成獨立的“電壓域”,根據每個區域對時序的要求而使用不同的供電電壓,
一種方法:時序要求嚴格的模塊置于標準電壓下操作,不那么嚴格的路徑可以安排到其他區域,
過去這種方式需要手動插入指定的轉換單元在,增加了設計的風險,現在很多EDA公司都能提供可以自動插入電平移位單元的工具,
5.5.9 存盤器電源門控
典型SoC中SRAM消耗了總功耗的1/3,其余部分由時鐘數和隨機邏輯消耗,所以存盤器架構十分關鍵,
最簡單的方法:在不使用存盤器矩陣時將其關閉,
可以講存盤器分割成多個部分,需要時打開,
劃分成小塊后,讀周期總數仍是相同的,但是每個周期消耗的功耗會大大降低,
另一種技術:基底偏壓存盤器,在不使用存盤體時將其反向偏置,提高了閾值電壓降低了漏電功耗,
另一種方法:多模式給存盤器供電,全電壓供電保證對存盤器操作正常進行,不需要讀寫時,可以編程降低其供電電壓,僅保證資料不丟失,
使用堆疊式存盤器:存盤器堆疊在裸片(Die)上,堆疊式存盤器顯著降低了互聯電容,并且降低了功耗,對存盤器帶寬要求高的場景中,相關存盤器可以堆疊式封裝,作業系統或其他應用則可以置于外部存盤器中,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/539856.html
標籤:其他
