| 注冊| 產(chǎn)品展廳| 收藏該商鋪

行業(yè)產(chǎn)品

當前位置:
江蘇新高科分析儀器有限公司>>技術文章>>寄存器傳輸級的低功耗設計

寄存器傳輸級的低功耗設計

閱讀:639        發(fā)布時間:2017-9-16

自集成電路問世以來,設計者在單個芯片上集成的晶體管的數(shù)量呈現(xiàn)出令人驚訝的增長速度。近30年,集成電路的發(fā)展一直遵循著“摩爾定律”:集成在芯片上的晶體管的數(shù)量每18個月就翻一番,芯片成本也相應下降。 

在半導體工藝水平不斷進步的同時,以電池供電的手持設備和膝上電腦也迅速普及,系統(tǒng)的功耗有時已經(jīng)成為系統(tǒng)設計首要考慮的因素,因此,低功耗設計成為發(fā)展移動系統(tǒng)必然要解決的問題。 

集成電路的低功耗設計分為系統(tǒng)級、寄存器傳輸級、門級、電路級四個層次,而在這其中,寄存器傳輸級的低功耗設計對優(yōu)化整個系統(tǒng)功耗的貢獻達到20%-50%,這是非常巨大的比例。因而,在寄存器傳輸級進行低功耗設計是非常值得,也是很有必要的。 

集成電路中功耗的來源 

目前,CMOS工藝在集成電路特別是數(shù)字IC中應用得很普遍。由于CMOS電路在輸入穩(wěn)定的時候總有一個管子截止,所以它的靜態(tài)功耗在理想情況下應該是零,但這并不代表靜態(tài)功耗真的為零,實際上CMOS電路的靜態(tài)功耗就是指電路中的漏電流(這里不考慮亞閾值電流)。 

CMOS電路功耗的主要來源是動態(tài)功耗,它由兩部分組成:開關電流和短路電流。所以,整個CMOS電路的功耗為: 

P=P(Turn)+P(leakage)+P(short) 

其中,P(Turn)是開關電流I(Turn)產(chǎn)生的動態(tài)功耗;P(short)是動態(tài)情況下P管和N管同時導通時的短路電流I(short)產(chǎn)生的動態(tài)功耗;而P(leakage) 是由擴散區(qū)和襯底之間的反向偏置漏電流I(leakage)產(chǎn)生的靜態(tài)功耗。如圖1所示。
 
圖1 CMOS電路功耗的主要來源是動態(tài)功耗,由開關電流和短路電流造成

在這三項中P(Turn)大約占電路功耗的80%,因而這里就只考慮開關電流I(Turn)所產(chǎn)生的動態(tài)功耗P(Turn)。I(Turn)是這樣產(chǎn)生的:在CMOS電路,當輸入為“0”時,PMOS導通,電源通過PMOS向負載電容充電;而當電路輸入為“1” 時,負載電容又會通過NMOS向地放電。I(Turn)就是不斷對負載電容充放電所產(chǎn)生的開關電流。 

一個CMOS反相器由開關電流引起的平均動態(tài)功耗是:P(Turn)=C(L)*VDD*VDD*f 

其中,CL是負載電容,VDD是電路的電壓,f是時鐘頻率。所以,要想降低電路的功耗就應該降低電路的電壓和頻率。 

寄存器傳輸級的低功耗設計 

寄存器傳輸級的低功耗設計方法有很多種,本文只列舉三種zui為常用的設計方法:門時鐘、操作數(shù)隔離及存儲器分區(qū)訪問。 

1. 門控時鐘 

從上面的討論知道,CMOS電路的功耗是和頻率有著密切關系的,因此動態(tài)的關閉處于空閑狀態(tài)的時鐘具有明顯的節(jié)電效果。 

圖2a是傳統(tǒng)的設計:系統(tǒng)的時鐘直接接到D觸發(fā)器的時鐘輸入端,不管什么情況,只要輸入的Clock翻轉,觸發(fā)器就會工作,整個系統(tǒng)也一直不斷的運行。而圖2b是增加了門控時鐘的設計:當系統(tǒng)正常工作時,譯碼出來的En信號為高,則觸發(fā)器可以正常鎖存數(shù)據(jù);當系統(tǒng)處于空閑狀態(tài)時,把En信號清零,這樣,由于給觸發(fā)器的Clock一直保持零,不會發(fā)生翻轉,所以觸發(fā)器不會鎖存新的數(shù)據(jù),整個系統(tǒng)被掛起,系統(tǒng)將進入低功耗模式。
 

在電路中加入門控時鐘很容易,可以用Verilog直接在描述中加入,也可以通過Synopsys的工具PowerCompile自動加入。通過加入門控時鐘,系統(tǒng)可以有選擇的停止不相關模塊的時鐘,以zui大程度的節(jié)省動態(tài)功耗。 

2. 操作數(shù)隔離 

這種方法主要是對系統(tǒng)中的算術、邏輯運算模塊進行低功耗設計,其主要思想就是:在不進行算術、邏輯運算的時候,使這些模塊的輸入保持“0”,不讓操作數(shù)進來,輸出結果不會翻轉;而如果進行這方面的運算時,再將它們打開。 

這種方法在很多人看來是理所當然的,認為就應該是這樣設計。然而在實際中,設計者一方面關心模塊的功能,另一方面迫于設計時間的壓力,所以很多設計中的細節(jié)沒有考慮。如圖3a,一個加法器的兩個輸入端沒有經(jīng)過任何邏輯直接進入加法器,系統(tǒng)不管是否需要加法運算,加法器都一直工作著,輸出不斷翻轉著,這對系統(tǒng)的動態(tài)功耗是很大的浪費,而且數(shù)據(jù)總線越寬浪費的功耗越多;圖3b 則用操作數(shù)隔離的方法進行設計:當系統(tǒng)不需要加法運算的時候,Adder_en信號為“0”,則加法器的兩個輸入端都保持“0”, 其輸出不會發(fā)生任何翻轉,不會產(chǎn)生動態(tài)功耗,而如果需要進行加法運算時,Adder_en變成“1”,加法器正常工作。

收藏該商鋪

登錄 后再收藏

提示

您的留言已提交成功!我們將在第一時間回復您~
二維碼