功率與性能:DSP 設計面臨的終極挑戰(zhàn)
多年來,數(shù)字信號處理器 (DSP) 設計人員一直在應付這樣一項艱難的工作:提供占用空間小的高性能芯片,而且要不影響靈活性和軟件的可編程能力。
由于新的應用程序發(fā)展速度驚人,提供的 DSP 必須在功率、性能和使用壽命上跟上這種速度,應對當前面臨的挑戰(zhàn),并準備好應對未來的應用。這些高性能多核心 DSP被越來越多地應用在電信接入、改進數(shù)據(jù)率GSM服務(EDGE)和基礎設施設備領域,用來處理語音、視頻和無線電信號。
以前,電信設備制造商使用專用的 ASIC 或 DSP-ASIC 組合來達到自己的目標?,F(xiàn)在,這些新的 DSP 可以替代那些繁瑣的解決方案;如果足夠強大,它們還可以實現(xiàn)以前的解決方案所無法實現(xiàn)的靈活性。對于那些必須在網(wǎng)絡部署中持續(xù)使用多年的接入和基礎設施設備,而言, 這些靈活的解決方案是大有裨益的。假如這些類型的設備和應用程序的使用壽命得到延長,那么,成功的關鍵就是靈活性、適應性和現(xiàn)場可編程性。
在目前的技術條件下,ASIC 在靈活性或現(xiàn)場可編程性方面不如 DSP,但 DSP 的能耗較大,這讓芯片設計人員左右為難。不過,還是有希望:新一代的多核心 DSP 可以同時做到高性能和高能效。做到這點的技術是存在的,但必須先解決“功率耗散”(功率極限)問題。
功率極限
目前,芯片功率耗散的源頭有兩個:以泄漏形式出現(xiàn)的靜態(tài)現(xiàn)象;以開關運算形式出現(xiàn)的動態(tài)現(xiàn)象。在采用 90 納米和以下工藝的 CMOS 技術中,這種功率耗散現(xiàn)象最為明顯。但是,新一代的 DSP 設計不僅能減輕和避開這種功率極限,而且實際上可以提高基礎設施、接入和 EDGE 設備的處理能力,同時限制功率消耗和熱量耗散。
部分特定CMOS 技術下的能耗界定的關鍵度量指標:
• 電源電壓
• 門開關速度
• 門輸入電容
• 門功耗
• 每個 MAC 運算消耗的能源
研究表明,同等功能(如 MAC 單元)的功率密度(即單位面積的功率)在 0.13 微米(含)以上的芯片中相當穩(wěn)定。但是,到達 90 納米時,這個指標會突然升高。
Power/Area versus Silicon Technology |
功率/面積與硅技術 |
Power crisis at 90 nm and below |
90 納米及以下工藝的功率極限 |
um |
微米 |
nm |
納米 |
在采用 0.13 微米技術以前,DSP 設計能夠在提高性能的同時降低功率,從而可以在單個芯片中植入更多的電路。這主要是通過減小尺寸并降低電壓實現(xiàn)的。采用了 90 納米技術后,所有這一切就都行不通了。
現(xiàn)在面臨的是以性能換功能的問題,這是設備制造商所不愿遇到的情況:在一個芯片中植入更多電路但降低性能,或者減少電路數(shù)以減少功能。
由于“功率極限”的情形繼續(xù)存在,設計人員一直在通過增加功耗來獲得性能和功能方面的優(yōu)勢。但是,這會帶來一種新的風險:達到熱量耗散的極限。所產(chǎn)生的問題可能已經(jīng)在當前市場上最新一代的通用多核心 DSP 中出現(xiàn)。
零-和博弈:靜態(tài)能效
因為性能是基礎設施、接入和 EDGE 應用的主要目標,因此設計人員一般并不關心零待機功率問題。因此,通常采用通用硅工藝來優(yōu)化性能,而不會選擇低泄漏的硅。選擇低泄漏的硅可以降低待機功率,但也會降低速度和性能。
這就要求有選擇地使用晶體管。
在使用電池的設備中,高電壓閾值 (HVT) 可能是最佳的;但在基礎設施應用中,首選的是標準電壓閾值 (SVT) 技術。
例如,假如某個設計使用 HVT 邏輯運算,并且電源電壓為 1.2V,則將連續(xù)產(chǎn)生 20mW 的泄漏功率。如果以最大容量運算,則將消耗 1W 的動態(tài)功率。
使用 SVT 邏輯運算的相同設計在電源電壓為 1.0V 時可以實現(xiàn)幾乎相同性能,產(chǎn)生的泄漏功率多出 4 倍 (100mW),但動態(tài)消耗的功率只有 694mW (1.02 /1.22 = 0.694)。
因此,泄漏較高的 SVT 設計消耗的總功率只有 790mW,而相比之下,HVT 設計的消耗總功率為 1.02W。前者比后者節(jié)能 23%。
HVT 設計和 SVT 設計的功耗比較
Power Consumption |
HVT design |
SVT design |
Leakage Power |
0.02W |
0.10W |
Dynamic Power |
1W |
0.69W |
Total Power |
1.02W |
0.79W |
Performance |
Both designs deliver the same performance. |
|
功耗 |
HVT 設計 |
SVT 設計 |
泄漏功率 |
0.02W |
0.10W |
動態(tài)功率 |
1W |
0.69W |
總功率 |
1.02W |
0.79W |
性能 |
兩種設計實現(xiàn)的性能相同。 |
盡管與人們預料的情況相反,這一示例表明,使用較高泄漏的 SVT 邏輯與使用低泄漏的 HVT 邏輯相比,可以在總體上節(jié)能,這是因為后者電路中的開關活動量很大。對于乘法和累加 (MAC) 電路,這種設計特別有用;但如果用在低活動因素的電路(如 RAM 電路或測試電路)上,則會出現(xiàn)相反的結果。因此,SVT 邏輯適用于基礎設施中“始終打開”的設備。
動態(tài)化:能效優(yōu)化
時鐘樹和邏輯切換都會導致動態(tài)能耗,必須在新一代多核心 DSP 中進行處理。通過不斷優(yōu)化這兩種耗能因素的設計,可以極大地改進能效指標。
時鐘樹(用于實現(xiàn)同步時鐘以觸發(fā)設計的線網(wǎng)和緩沖區(qū))會在其自身的觸發(fā)運算過程中從芯片中吸收一些能量。在對最新的高速芯片中遍布的時鐘樹(通常數(shù)量較大)進行充電和放電的過程中,也會消耗能量。此外,有些新一代 DSP 使用了速度更快的時鐘 (1GHz 或更高),這就需要耗能更多的更大的激勵器。如果要通過芯片和相關的時滯最小化時鐘傳播延遲,則需要更大的激勵器。這又導致消耗更多的能量。
用于降低能耗的時鐘樹門控
An unused module can be disabled anytime using an enable signal. Associated logic and clock trees contained in a disabled module will therefore stop consuming power. |
可以使用激活信號隨時禁用未使用的模塊。被禁用的模塊中包含的相關邏輯和時鐘樹會因此停止消耗能量。 |
module0 is enabled |
module0 已激活 |
module1 is enabled |
module1 已激活 |
module2 is disabled |
module2 被禁用 |
mclk is grounded |
mclk 接地 |
MODULE0 (array of gates and flip-flops) |
MODULE0(門和觸發(fā)器陣列) |
MODULE1 (array of gates and flip-flops) |
MODULE1(門和觸發(fā)器陣列) |
MODULE2 (array of gates and flip-flops) |
MODULE2(門和觸發(fā)器陣列) |
設備設計人員可以通過組合以下成熟的技術來降低時鐘樹中的能耗:
- 單獨啟用時鐘的觸發(fā)器,可以在需要計時時限制觸發(fā)運算的次數(shù)。
- 門控時鐘樹,可以在不使用時動態(tài)阻止對整個電路段計時。
- 多循環(huán)路徑設計,可以減少電路中的觸發(fā)次數(shù)以及觸發(fā)的頻率。
- 在架構上可行的情況下組合計算線路,從而讓一系列 的MAC 運算可以在級聯(lián)組合電路而不是同步反饋電路中實現(xiàn)。借用多循環(huán)路徑技術;這種方式可以極大地減少所用的觸發(fā)次數(shù)并降低觸發(fā)頻率。
- 最小化觸發(fā)器和電路的使用范圍,使用物理尺寸較小的時鐘樹,從而縮小所需的激勵緩沖區(qū)。
最后,消除全部時鐘樹可以在提高性能的同時極大地降低能耗。無時鐘設計技術可以用在耗能最多的邏輯電路部分。思想超前的設計人員會積極地追隨上述解決方案。在解決性能和功率之間一直存在的沖突時,無時鐘設計是效率最高、成本效益最好的方式。
邏輯切換優(yōu)化
邏輯切換在能耗方面發(fā)揮著重要的作用,因為整體能耗都發(fā)生在邏輯切換狀態(tài)轉換的充電和放電過程中??梢圆捎靡韵鲁墒旒夹g的組合來最大程度地減少邏輯轉換中的能耗。
- 優(yōu)化物理門:這種技術可以實現(xiàn)最大的能效指標收益,對于較小的芯片尺寸技術更是如此。雖然其原理非常簡單,但使用當前的布局工具和方法來實現(xiàn)這種技術卻有一定難度;因為這些工具和方法原來的開發(fā)目的是加快推出產(chǎn)品,犧牲性能來提高設計的水平和復雜度。
最終發(fā)明了物理門,可以使用某種抽象語言 (如 VHDL)來根據(jù)設計人員的功能目標來創(chuàng)建芯片。這種技術既有優(yōu)點也有缺點。目前的標準方法是讓設計人員避開物理實現(xiàn)方式的細節(jié),從而加快產(chǎn)品推出的速度。
這種技術的缺點是復雜芯片的設計人員無法控制其設計,包括無法控制線路的長度,從而可能極大地增加電路的總電容。在找出最佳的線路和電路設計方面,設計人員仍然優(yōu)于設計工具。如果使用成熟的技術并深入了解設計細節(jié),人腦的判斷仍然具有優(yōu)勢。設計人員還可以立即發(fā)現(xiàn)集成電路的細微變化可能成倍減少互連線路長度的情況。事實上,記錄的信息顯示,有人干預的物理門技術可以將電路線路的平均長度最高縮減一半(與傳統(tǒng)的最佳自動后端工具中實現(xiàn)的相同設計相比)。而且,由于戰(zhàn)略性布線實現(xiàn)的電路集成度可以輕松地將硅使用率提高到 90% 以上。這意味著,與使用自動后端工具的結果相比,硅使用率提高了大約 20%。
此外,與自動布線和路由的設計相比,激勵這些極短線路的門通常尺寸較小,能耗也更低。因此,與自動布線的同類設計相比,整個電路的尺寸更小,運算速度更快,能耗也大幅降低。在 90 納米技術中僅使用低 HVT 邏輯元素時,這種電路集成技術允許整個數(shù)據(jù)路徑引擎以 1.5-2GHz 的速度運行,而其能耗與傳統(tǒng)設計的同類電路相比最多可降低 4 倍。
Design placed by conventional back-end tools: 70-80% silicon usage efficiencey |
傳統(tǒng)后端工具布線的設計:70-80% 的硅使用效率。 |
Designer Optimized circuit placement: 90% silicon usaged efficiency |
經(jīng)過設計人員優(yōu)化的電路布線:90% 的硅使用效率。 |
Advantages of Optimized Placement: Circuit Compaction and Power Reduction. |
優(yōu)化布線的優(yōu)勢:電路集成度高,能耗降低。 |
The gates are illustrated in yellow, unused silicon is shown in purple. |
門用黃色表示,未使用的硅用紫色表示。 |
優(yōu)化長信號的線路:與其它高功率高速度的電路元素結合使用時,長信號線路可以顯著地提高性能。例如,數(shù)據(jù)總線可以使用長路由并頻繁改變狀態(tài)。降低此類線路的整體電容可以極大地降低能耗,加快速度,并減少緩沖需求。但是,設計人員面臨的難題是:要通過加大間距布置長信號來降低電容,同時仍要允許線路器關閉設計中密度極高的部分。其中的部分工具和方法包括:
消除對狀態(tài)進行無益更改的電路:禁用其更改后的輸出不會被使用的任何電路。這可以通過使用時鐘門控實現(xiàn)。
減少高頻門的數(shù)量:PC 處理器芯片(如 Pentium™ 和其它處理器)已經(jīng)證明,提高功能要以增加能耗為代價。能耗的指數(shù)級增長源于利用以下一種或多種技術提高電路的性能:
使用復雜度更高的電路(即使用超前加法器而不是并行加法器),則會占用更大的面積,消耗更多的能量;
使用較大的門、緩沖區(qū)和激勵器來加快切換速度,致使回報的逐漸減小。
通常,同等的性能可以通過使用更簡單、速度更慢的電路實現(xiàn);這些電路以并行方式運算,或者采用慢速的多循環(huán)路徑,這可以極大地降低能耗。但是,與人們預料的情形相反,此類電路通常占用的總體面積較小。事實上,即使以并行方式使用,它們的總布線量通常較少。這是因為,從個體上看,與更快、更大、更耗能的大型電路相比,它們在每個實例上所需的門數(shù)更少,門更小。
• 降低電壓切換擺幅的大小:通過長總線和時鐘線降低電壓切換擺幅,可以進一步降低能耗。這涉及使用具有較小的電壓擺幅的平衡傳輸線技術,諸如在高性能內存設計中使用的技術(如差動放大器)。此類傳輸線以較小的電壓切換運行,可以極大地降低能耗。盡管這種技術通常需要在芯片中使用中間電壓軌/平面,這些傳輸線的狀態(tài)更改速度可以達到傳統(tǒng) CMOS 軌到軌線路速度的 10 倍;在能耗相同的情況下,可以極大地提高能效指標。
• 規(guī)劃電壓運算范圍:設計人員在確定其系統(tǒng)規(guī)格時,應該有所節(jié)制。并非系統(tǒng)中的每個元素都需要有很高的性能,對于哪些不屬于對整個系統(tǒng)至關重要的 10% 的功能的元素更是如此。事實上,以盡可能精益的方式運行其它 90% 的功能是可以接受的。因此,設計人員應采用不同的電壓軌區(qū)別對待電路的各個部分。例如,可以為 10% 的芯片線路提供 1.2V 的電壓使其以 3GHz 的速度運行,為另外 40% 的線路提供 1.0V 的電壓使其以 1GHz 的速度運行,而對剩余的 50% 線路提供 0.8V 的電壓使其以 400MHz 的速度運行。在總體上,可以實現(xiàn)特定應用可以達到的最佳整體能效指標。
控制能效問題
隨著應用程序越來越多樣化,工具變得越來越復雜,電信接入和基礎設施設備的設計人員在如何以恰當?shù)拇鷥r構建高性能產(chǎn)品并實現(xiàn)合理的使用壽命的問題上費盡心思。但是,芯片設計方法的不斷細化和專業(yè)化使得許多產(chǎn)品無法接觸到這些技術。對于那些由專門的工程設計人員組成的大型團隊使用一流的后端設計工具設計的芯片,其面臨的困難尤其突出。值得慶幸的是,有多種技術可以管理芯片的能效指標,獲得高達 3:1 MIPS/功率比。這些技術中既有非常簡單的技術,也有極其復雜的技術,可以提供范圍廣泛的改進可能性。
令人意外的是,如果使用了為特定目的設計的工具,基于設計人員的最佳判斷和智慧的效率最高的技術(如優(yōu)化布線和路由)可能是相對簡單的技術。
出人意料的是,最有效的技術,諸如優(yōu)化布局布線,當使用為該特定目的而設計的工具并基于設計者的最佳判斷和智慧時會變得相對比較簡單。
評論