《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計應(yīng)用 > 寄存器傳輸級的低功耗設(shè)計方法
寄存器傳輸級的低功耗設(shè)計方法
周江瑜,趙育新
摘要: 除了芯片的速度和面積等,,人們對低功耗的期望也越來越高,,因而在IC設(shè)計中加入低功耗設(shè)計非常必要。寄存器傳輸級的低功耗設(shè)計對降低整個芯片的功耗作用非常顯著,,本文討論的三種寄存器傳輸級低功耗設(shè)計方法,,經(jīng)驗證對動態(tài)功耗的降低很有效。
Abstract:
Key words :

  除了芯片的速度和面積等,,人們對低功耗" title="低功耗">低功耗的期望也越來越高,,因而在IC設(shè)計中加入低功耗設(shè)計非常必要。寄存器傳輸級的低功耗設(shè)計對降低整個芯片的功耗作用非常顯著,,本文討論的三種寄存器傳輸級低功耗設(shè)計方法,,經(jīng)驗證對動態(tài)功耗" title="動態(tài)功耗">動態(tài)功耗的降低很有效,。

  自集成電路問世以來,設(shè)計者在單個芯片上集成的晶體管的數(shù)量呈現(xiàn)出令人驚訝的增長速度,。近30年,,集成電路的發(fā)展一直遵循著“摩爾定律”:集成在芯片上的晶體管的數(shù)量每18個月就翻一番,芯片成本也相應(yīng)下降,。
圖1:CMOS電路功耗的主要來源是動態(tài)功耗,,
由開關(guān)電流和短路電流造成。
 


   在半導體工藝水平不斷進步的同時,,以電池供電的手持設(shè)備和膝上電腦也迅速普及,,系統(tǒng)的功耗有時已經(jīng)成為系統(tǒng)設(shè)計首要考慮的因素,因此,,低功耗設(shè)計成為發(fā)展移動系統(tǒng)必然要解決的問題,。
   集成電路的低功耗設(shè)計分為系統(tǒng)級、寄存器傳輸級,、門級,、電路級四個層次,而在這其中,,寄存器傳輸級的低功耗設(shè)計對優(yōu)化整個系統(tǒng)功耗的貢獻達到20%-50%,,這是非常巨大的比例。因而,,在寄存器傳輸級進行低功耗設(shè)計是非常值得,,也是很有必要的。

集成電路中功耗的來源
  目前,,CMOS工藝在集成電路特別是數(shù)字IC中應(yīng)用得很普遍,。由于CMOS電路在輸入穩(wěn)定的時候總有一個管子截止,所以它的靜態(tài)功耗" title="靜態(tài)功耗">靜態(tài)功耗在理想情況下應(yīng)該是零,,但這并不代表靜態(tài)功耗真的為零,,實際上CMOS電路的靜態(tài)功耗就是指電路中的漏電流(這里不考慮亞閾值電流)。
  CMOS電路功耗的主要來源是動態(tài)功耗,,它由兩部分組成:開關(guān)電流和短路電流,。

  所以,整個CMOS電路的功耗為:


P=PTurn+Pleakage+Pshort


  其中,,PTurn是開關(guān)電流ITurn產(chǎn)生的動態(tài)功耗,;Pshort是動態(tài)情況下P管和N管同時導通時的短路電流Ishort產(chǎn)生的動態(tài)功耗;而Pleakage 是由擴散區(qū)和襯底之間的反向偏置漏電流Ileakage產(chǎn)生的靜態(tài)功耗,。如圖1所示,。

QQ工具欄截屏未命名.jpg
 
圖2a:傳統(tǒng)的設(shè)計。圖2b:增加了門控時鐘的設(shè)計,。
   在這三項中PTurn大約占電路功耗的80% ,,因而這里就只考慮開關(guān)電流ITurn所產(chǎn)生的動態(tài)功耗PTurn。ITurn是這樣產(chǎn)生的:在CMOS電路,,當輸入為“0”時,,PMOS導通,電源通過PMOS向負載電容充電,;而當電路輸入為“1” 時,,負載電容又會通過NMOS向地放電。ITurn就是不斷對負載電容充放電所產(chǎn)生的開關(guān)電流,。
  一個CMOS反相器由開關(guān)電流引起的平均動態(tài)功耗是:PTurn=CLVDD2f
  其中,,CL是負載電容,VDD是電路的電壓,,f是時鐘頻率,。所以,要想降低電路的功耗就應(yīng)該降低電路的電壓和頻率,。

QQ工具欄截屏未命名2.jpg
寄存器傳輸級的低功耗設(shè)計
圖3a:最基本的加法器設(shè)計,。圖3b:采用操作數(shù)隔離方法設(shè)計的加法器。
  寄存器傳輸級的低功耗設(shè)計方法有很多種,,本文只列舉三種最為常用的設(shè)計方法:門時鐘,、操作數(shù)隔離及存儲器分區(qū)訪問。
1.門控時鐘
從上面的討論知道,,CMOS電路的功耗是和頻率有著密切關(guān)系的,,因此動態(tài)的關(guān)閉處于空閑狀態(tài)的時鐘具有明顯的節(jié)電效果。
  圖2a是傳統(tǒng)的設(shè)計:系統(tǒng)的時鐘直接接到D觸發(fā)器的時鐘輸入端,,不管什么情況,,只要輸入的Clock翻轉(zhuǎn),觸發(fā)器就會工作,,整個系統(tǒng)也一直不斷的運行,。而圖2b是增加了門控時鐘的設(shè)計:當系統(tǒng)正常工作時,譯碼出來的En信號為高,,則觸發(fā)器可以正常鎖存數(shù)據(jù),;當系統(tǒng)處于空閑狀態(tài)時,把En信號清零,,這樣,,由于給觸發(fā)器的Clock一直保持零,不會發(fā)生翻轉(zhuǎn),,所以觸發(fā)器不會鎖存新的數(shù)據(jù),,整個系統(tǒng)被掛起,系統(tǒng)將進入低功耗模式,。
  在電路中加入門控時鐘很容易,,可以用Verilog直接在描述中加入,,也可以通過Synopsys的工具PowerCompile自動加入。通過加入門控時鐘,,系統(tǒng)可以有選擇的停止不相關(guān)模塊的時鐘,,以最大程度的節(jié)省動態(tài)功耗。
2.操作數(shù)隔離
  這種方法主要是對系統(tǒng)中的算術(shù),、邏輯運算模塊進行低功耗設(shè)計,,其主要思想就是:在不進行算術(shù)、邏輯運算的時候,,使這些模塊的輸入保持“0”,,不讓操作數(shù)進來,輸出結(jié)果不會翻轉(zhuǎn),;而如果進行這方面的運算時,,再將它們打開。
圖4:存儲器分塊訪問實例,。
 QQ工具欄截屏未命名4.jpg


  這種方法在很多人看來是理所當然的,,認為就應(yīng)該是這樣設(shè)計。然而在實際中,,設(shè)計者一方面關(guān)心模塊的功能,,另一方面迫于設(shè)計時間的壓力,所以很多設(shè)計中的細節(jié)沒有考慮,。如圖3a,,一個加法器的兩個輸入端沒有經(jīng)過任何邏輯直接進入加法器,系統(tǒng)不管是否需要加法運算,,加法器都一直工作著,,輸出不斷翻轉(zhuǎn)著,這對系統(tǒng)的動態(tài)功耗是很大的浪費,,而且數(shù)據(jù)總線越寬浪費的功耗越多,;圖3b 則用操作數(shù)隔離的方法進行設(shè)計:當系統(tǒng)不需要加法運算的時候,Adder_en信號為“0”,,則加法器的兩個輸入端都保持“0”,, 其輸出不會發(fā)生任何翻轉(zhuǎn),不會產(chǎn)生動態(tài)功耗,,而如果需要進行加法運算時,,Adder_en變成“1”,加法器正常工作,。
  當對系統(tǒng)里所有的算術(shù),、邏輯運算單元都用上這種方法必然會對系統(tǒng)的動態(tài)功耗有很大的優(yōu)化,在芯片面積方面,如圖3b所示的,,所增加的邏輯僅僅是幾個多路器而已,。
3.存儲器分塊訪問
  一個系統(tǒng)里少不了存儲器,存儲器的功耗在整個系統(tǒng)里所占的比例不可忽視,。因而降低存儲器的功耗,,對于整個芯片系統(tǒng)的功耗優(yōu)化很有幫助。
  這里提出一種叫做存儲器分塊訪問的方法來降低存儲器的功耗,。主要思想是:將系統(tǒng)所需要一定容量的存儲器分成兩塊,然后用高位地址線進行片選譯碼,。結(jié)合下面的實例:
  假設(shè)一個系統(tǒng)需要128K的RAM,,如圖4所示,我們選用兩塊64KB的RAM,。CPU給出了17位地址線,,其中低16位地址線直接提供給兩個RAM,最高位地址線接到下面RAM的片選端CS,,而這根地址線經(jīng)過一個反相器接到另一個RAM的片選端,。通過這種方法,不管從CPU 出來的什么樣的地址,,則每次只會選中一個64KB的RAM,。如果采用單塊128KB的RAM,則每次都要選中一塊128KB的RAM,。眾所周知,,一塊64KB RAM的功耗要遠小于一塊128KB RAM的功耗。這樣從存儲器這一方面,,又為系統(tǒng)節(jié)省了功耗,。
表1:一款SIM卡芯片設(shè)計優(yōu)化
前后功耗及芯片面積的對比。 

QQ工具欄截屏未命名biao.jpg
  功耗和面積永遠是相矛盾的,,如果想要降低系統(tǒng)的功耗,,必然要加上一些控制邏輯來進行功耗優(yōu)化,而這部分邏輯會增加芯片的面積,,所以在功耗和面積之間就要有個折衷,。上面的三種寄存器傳輸級的低功耗設(shè)計,不會增加很多邏輯,,因而對芯片面積的影響不大,。而經(jīng)過了這三種低功耗設(shè)計,使整個系統(tǒng)動態(tài)功耗的改善很明顯,。例如,,使用功耗仿真工具powermill對一款SIM卡芯片設(shè)計進行管級功耗仿真,這里采用的是華杰的0.25um的標準單元庫,表1是優(yōu)化前后功耗及芯片面積的對比,。
  從表1可以看到,,經(jīng)過低功耗設(shè)計后的芯片平均動態(tài)電流比優(yōu)化前降了16%,然而優(yōu)化前后芯片的面積沒有發(fā)生改變,,因而,,上面的三種設(shè)計方法對于降低系統(tǒng)動態(tài)功耗是非常有效的。
本文小結(jié)
  本文首先分析了CMOS電路功耗的來源,,基于這個理論基礎(chǔ)介紹了三種寄存器傳輸級的低功耗設(shè)計方法,,最后,通過一款手機SIM卡芯片的功耗優(yōu)化并進行仿真,,得出結(jié)論:這三種方法對降低系統(tǒng)功耗有很大的幫助,,而且?guī)缀鯖]有增加芯片的面積。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。