衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在學習低功耗設計?看看如何解決寄存器傳輸功耗問題

jf_pJlTbmA9 ? 來源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-07-23 15:38 ? 次閱讀

器件中的高功耗雖然是可以容忍的,但是在設計過程中,我們往往都在追求低功耗實現。上篇文章中,小編對MCU的低功耗設計有所解讀。為增進大家對功耗的了解程度,本文將對寄存器傳輸級低功耗設計方法予以介紹。

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

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

wKgZomS82HuAY1znAARDPmA6NBQ071.png
圖1:CMOS電路功耗的主要來源是動態功耗,由開關電流和短路電流造成。

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

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

集成電路中功耗的來源

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

CMOS電路功耗的主要來源是動態功耗,它由兩部分組成:開關電流和短路電流。

所以,整個CMOS電路的功耗為:其中,PTurn是開關電流ITurn產生的動態功耗;Pshort是動態情況下P管和N管同時導通時的短路電流Ishort產生的動態功耗;而Pleakage 是由擴散區和襯底之間的反向偏置漏電流Ileakage產生的靜態功耗。如圖1所示。

wKgaomS82I6AEHWIAAB-Iba4v40771.png
圖2a:傳統的設計。圖2b:增加了門控時鐘的設計。

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

一個CMOS反相器由開關電流引起的平均動態功耗是:PTurn=CLVDD2f其中,CL是負載電容,VDD是電路的電壓,f是時鐘頻率。所以,要想降低電路的功耗就應該降低電路的電壓和頻率。

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

wKgaomS82JuAbP0gAAQKb7EqkSE274.png
圖3a:最基本的加法器設計。圖3b:采用操作數隔離方法設計的加法器。

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

1.門控時鐘


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

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

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

2.操作數隔離

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

wKgaomS82KiAezCJAARfCbhgIhU585.png
圖4:存儲器分塊訪問實例。

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

當對系統里所有的算術、邏輯運算單元都用上這種方法必然會對系統的動態功耗有很大的優化,在芯片面積方面,如圖3b所示的,所增加的邏輯僅僅是幾個多路器而已。

3.存儲器分塊訪問

一個系統里少不了存儲器,存儲器的功耗在整個系統里所占的比例不可忽視。因而降低存儲器的功耗,對于整個芯片系統的功耗優化很有幫助。

這里提出一種叫做存儲器分塊訪問的方法來降低存儲器的功耗。主要思想是:將系統所需要一定容量的存儲器分成兩塊,然后用高位地址線進行片選譯碼。結合下面的實例:

假設一個系統需要128K的RAM,如圖4所示,我們選用兩塊64KB的RAM。CPU給出了17位地址線,其中低16位地址線直接提供給兩個RAM,最高位地址線接到下面RAM的片選端CS,而這根地址線經過一個反相器接到另一個RAM的片選端。通過這種方法,不管從CPU 出來的什么樣的地址,則每次只會選中一個64KB的RAM。如果采用單塊128KB的RAM,則每次都要選中一塊128KB的RAM。眾所周知,一塊64KB RAM的功耗要遠小于一塊128KB RAM的功耗。這樣從存儲器這一方面,又為系統節省了功耗。

功耗和面積永遠是相矛盾的,如果想要降低系統的功耗,必然要加上一些控制邏輯來進行功耗優化,而這部分邏輯會增加芯片的面積,所以在功耗和面積之間就要有個折衷。上面的三種寄存器傳輸級的低功耗設計,不會增加很多邏輯,因而對芯片面積的影響不大。而經過了這三種低功耗設計,使整個系統動態功耗的改善很明顯。例如,使用功耗仿真工具powermill對一款SIM卡芯片設計進行管級功耗仿真,這里采用的是華杰的0.25um的標準單元庫,表1是優化前后功耗及芯片面積的對比。

可以看到,經過低功耗設計后的芯片平均動態電流比優化前降了16%,然而優化前后芯片的面積沒有發生改變,因而,上面的三種設計方法對于降低系統動態功耗是非常有效的。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    121151
  • 存儲器
    +關注

    關注

    38

    文章

    7528

    瀏覽量

    164338
  • 晶體管
    +關注

    關注

    77

    文章

    9745

    瀏覽量

    138878
  • 低功耗
    +關注

    關注

    10

    文章

    2418

    瀏覽量

    103895
收藏 人收藏

    評論

    相關推薦

    【KL25】低功耗定時寄存器操作

    就是操作寄存器了,接下來我們就稍微講解一下低功耗定時的一些寄存器。(1)低功耗定時的控制狀態
    發表于 01-27 21:50

    STM32低功耗

    今天我在學習STM32的低功耗模式,了解了STM32有4種模式,其中提到的睡眠模式:Cortex-m3內核執行進入睡眠模式指令,電壓調節其工作在正常狀態,Cortex-M3內核停止運行,但
    發表于 07-17 09:00

    430低功耗問題

    就是關閉XT2晶振了,在低功耗的之前開啟XT2作為時鐘源,進入低功耗的時候關閉XT2,為什么這時候功耗依然很大呢,如果在時鐘初始化的時候不操作BCSCTL1這個寄存器的話,進入
    發表于 11-14 13:10

    為什么信號量寄存器低功耗操作期間保持不變

    為什么信號量寄存器低功耗操作期間保持不變?互斥體是什么?
    發表于 05-15 09:27

    Stm32的低功耗模式介紹

    和HSE RC振蕩功能禁止。寄存器和SRAM內容保留。3.待機模式:1.8V內核電源關閉。只有備份寄存器和待機電路維持供電。寄存器和SRAM內容全部丟失。實現最
    發表于 02-23 06:07

    寄存器傳輸低功耗設計方法

    寄存器傳輸級的低功耗設計對降低整個芯片的功耗作用非常顯著,本文討論的三種寄存器傳輸
    發表于 02-16 18:12 ?1486次閱讀
    <b class='flag-5'>寄存器</b><b class='flag-5'>傳輸</b>級<b class='flag-5'>低功耗</b>設計方法

    MAX11120-MAX11128低功耗,逐次逼近寄存器串行ADC

    MAX11120 - MAX11128與外部參考和業內領先的1.5MHz的,完整的線性帶寬,高速度,低功耗,串行輸出的逐次逼近寄存器(SAR)模擬-數字轉換的12/10/8位( ADC)的
    發表于 01-31 14:37 ?894次閱讀
    MAX11120-MAX11128<b class='flag-5'>低功耗</b>,逐次逼近<b class='flag-5'>寄存器</b>串行ADC

    在學習低功耗設計看看何解寄存器傳輸功耗問題

    器件中的高功耗雖然是可以容忍的,但是在設計過程中,我們往往都在追求低功耗實現。上篇文章中,小編對MCU的低功耗設計有所解讀。
    發表于 03-18 08:14 ?21次下載
    <b class='flag-5'>在學習</b><b class='flag-5'>低功耗</b>設計<b class='flag-5'>看看</b>如<b class='flag-5'>何解</b>決<b class='flag-5'>寄存器</b><b class='flag-5'>傳輸</b><b class='flag-5'>功耗</b>問題

    DSP不同層次的低功耗設計研究思路綜述

    本論文研究和分析了低功耗設計技術的背景、功耗的組成和降低功耗的方法途徑。目前主要是通過降低工作電壓、降低電容和減小活動性來達到降低功耗的目的。低功耗
    發表于 04-13 16:49 ?19次下載
    DSP不同層次的<b class='flag-5'>低功耗</b>設計研究思路綜述

    芯片RTL設計中如何做到低功耗設計

    ,不要讓你的芯片徒增功耗。 數據通路寄存器打拍 數據寄存器打拍帶上vld,不加復位邏輯,這樣會省去寄存器復位電路的布線面積,而且工具還會給寄存器
    的頭像 發表于 08-26 10:29 ?4122次閱讀

    MCU學習筆記_STM32低功耗模式概述

    MCU學習筆記電源管理系統1. STM32低功耗模式概述2. 寄存器和庫函數配置3. HAL庫配置PVD實例1. STM32低功耗模式概述系統或電源復位后,微控制
    發表于 10-28 17:36 ?9次下載
    MCU<b class='flag-5'>學習</b>筆記_STM32<b class='flag-5'>低功耗</b>模式概述

    STM32超低功耗進階之電源管理庫函數(一)

    一,電源管理寄存器前面的入門文章對 STM32 的超低功耗的做了使用介紹,當然在使用超低功耗的時候還會考慮 RAM 的數據會不會丟失,什么時候重寫 備份寄存器,進入
    發表于 12-07 20:21 ?14次下載
    STM32超<b class='flag-5'>低功耗</b>進階之電源管理庫函數(一)

    門控時鐘實現低功耗的原理

    只有當FPGA工程需要大量降低功耗時才有必要引入門控時鐘,若必須引入門控時鐘,則推薦使用基于寄存器的門控時鐘設計。
    的頭像 發表于 07-03 15:32 ?2375次閱讀

    振弦采集模塊輔助功能寄存器低功耗休眠

    振弦采集模塊輔助功能寄存器低功耗休眠
    的頭像 發表于 01-04 10:14 ?730次閱讀
    振弦采集模塊輔助功能<b class='flag-5'>寄存器</b>之<b class='flag-5'>低功耗</b>休眠

    寄存器陣列低功耗設計方案

    寄存器寫操作的時候會改變寄存器內容,需要時鐘鎖入新的數據。但是,對寄存器進行讀操作的時候,寄存器內容不改變,寄存器不需要時鐘。這個特點工具是
    的頭像 發表于 12-08 11:19 ?649次閱讀
    <b class='flag-5'>寄存器</b>陣列<b class='flag-5'>低功耗</b>設計方案
    百家乐官网发牌| 大发888真钱游戏娱乐城下载| 百家乐怎么玩了| 百家乐官网强对弱的对打法| 百家乐官网自动算牌软件| 百家乐官网娱乐城新澳博| 百家乐官网群html| 亚洲百家乐官网的玩法技巧和规则| 百家乐稳定打法| 粤港澳百家乐赌场娱乐网规则 | 银泰百家乐龙虎斗| ez百家乐技巧| 百家乐顶| 大发888赌博| 措勤县| 海王星百家乐的玩法技巧和规则| 美国太阳城养老社区| 沐川县| 百家乐官网博娱乐平台赌百家乐官网| 葡京百家乐玩法| 澳门百家乐娱乐开户| 威尼斯人娱乐城官方站| 武平县| 百家乐官网双人操作分析仪| 金牌百家乐官网的玩法技巧和规则 | 百家乐官网技巧开户网址| 百家乐孖宝揽| 威尼斯人娱乐网代理| 真人888| 网上百家乐官网能作弊吗| 百家乐官网赌博代理合作| 百家乐网站建设| 百乐门娱乐城注册| 走地皇娱乐城| 江山百家乐官网的玩法技巧和规则 | 百家乐官网代理博彩正网| 中国百家乐官网游戏| 百家乐官网开闲的几率多大| 哪家百家乐优惠最好且信誉不错 | 百家乐官网园sun811.com| 鑫鼎百家乐娱乐城|