新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種基于功耗管理的DSP處理器設計

        一種基于功耗管理的DSP處理器設計

        ——
        作者:西北工業大學 時間:2006-07-17 來源:電子技術應用 收藏

        在信息日益成為一種重要資源的今天,強大的市場需求和微電子技術的發展促成了便攜式電子系統的飛速發展。這些便攜式電子設備,不但對速度和面積要求非常高,而且對系統的平均功耗要求也很嚴格,使功耗問題日漸成為制約便攜式電子設備發展的瓶頸。要獲得高性能低功耗的方案,其實質也就是在處理速度、芯片面積和功耗上來權衡如何滿足數字信號處理系統的要求。

        本文介紹了一種基于并行流水線的低功耗數字信號處理器(DSP)的系統設計,以改善通用處理器的不足,應用于各種便攜式系統中,以便取得良好的效果。

        系統方案中,基于流水線的結構從行為級方面降低了系統的功耗;時鐘管理方案則可以允許系統在不同的工作模式下使用不同的工作頻率,從而使每一個單項任務所消耗的功耗最小;增強型的哈佛結構存儲管理可以大大提高系統的并行性,提高系統效率。

        1 流水線結構

        流水線結構是芯片行為級降低功耗的主要方法之一,下面簡要分析其原理。在傳統的分析方法中,CMOS電路的功耗可用下面的方程進行估計:

        其中f=1/Ts,Ts是原始時序系統的時鐘周期。若是一個M級流水線系統,其關鍵路徑則縮短為原路經長度的1/M,一個時鐘周期內充放電電容則減小為Ccharge/M(注意總電容并沒有變化)。如果時鐘速度保持不變,則在原來對電容Ccharge充放電的同樣時間內,現在只需要對Ccharge/M進行充放電,這就意味著電源電壓可以降低到βVdd,其中β是一個小于1的常數。這樣,流水線濾波器的功耗將為:

        和原始系統相比流水線系統的功耗降低了β2倍。

        該DSP處理器采用如圖1所示的4級流水線結構。各級流水線的功能介紹如下:

        FI:取址階段。由程序地址產生模塊產生指令存儲器地址,并取出指令。
        DI:譯碼階段。通過指令譯碼產生相應的微控制信號,送入相應的控制寄存器。

        FO:取操作數階段。從寄存器堆或外部存儲器讀出相應的數據,通過數據總線送入運算單元或寄存器堆。

        EXE/WB:執行及寫回階段。進行運算或操作,得出相應的結果,并將結果放到寫總線(EB)上。

        2 外圍接口部分

        外圍接口部分提供系統內部和外部的各種連接方式,實現各種方式的信息傳輸。本設計把這些接口分為二大部分:(1)MCU類型的接口,如低速的串行端口(串行外圍接口(SPI)和通用異步收發器(UART))、可編程通信接口(PCI)、通用串行總線(USB)以及一些外圍設備。(2)適于媒體信息收發的高速接口,如異步串行端口和并行外圍接口。

        3 數據傳輸的設計

        數字信號處理是數據量很大的應用,所以如何高效地傳輸數據是一個影響系統性能的關鍵瓶頸。作為DSP處理器,必須有全面的DMA能力以便對數據在芯片內外進行傳輸。因為在DSP芯片內部集成足夠的存儲空間不大現實,所以必須采用DMA來管理流動數據,將數據傳輸和系統控制過程分開。這樣,一方面可以提高數據傳輸的速度,另一方面可以降低處理器內核的負擔,提高系統運行效率。

        系統設計中DMA采用基于描述符的傳送,它在發起DMA傳送序列時,需要一組存儲在存儲器中的參數。這類傳送允許將多個DMA序列鏈接在一起,一個DMA通道可以被編程建立,并且在當前序列完成之后啟動另一個DMA傳送。

        4 乘法器和邏輯單元的設計

        在數字信號處理應用中,實現高速的數據運算是其突出的特點,所以其結構設計中必須具有單獨的乘法器以實現其性能的提高。乘法器和邏輯單元的結構框圖如圖2所示。

        乘法器工作時,用1條LT(Load TR)指令加載TR,由TR提供一個乘數。乘法指令提供另一個操作數,它既可以是來自數據總線,也可以是來自程序總線的立即數。不管在哪種情況下,每個周期都可以獲得穩定的乘積項輸出。

        3個移位器(shifter)是桶式移位器,它提供對16位或32位的操作數進行移位操作,可以大大提高乘后累加的速度。

        5 地址處理模塊

        地址處理模塊是為總線部件計算取指和取數據的地址,也包括處理一些重復指令和跳轉指令。根據指令系統的特點,本文設計的地址處理單元如圖3所示。

        派生地址可能來自S_BUS,或是上一地址的加1值,也可能是總線輸入數據暫存器DataIn之一;指令指針IC的值可能來自S_BUS或者是自增1的結果;預取指針PreIC可能來自IC或者是自加1的結果。最后的輸出地址是派生地址暫存器AddrTemp、指令指針IC、總線輸入數據暫存器DataIn或預取指針PreIC這4種地址之一。

        當執行的指令需要計算有效地址時,輸出地址是派生地址寄存器;當程序跳轉時,輸出地址是指令指針IC;當尋址方式是間接尋址時,輸出地址是DataIn; 當預取指令時,輸出地址是預取指針PreIC。
        因為AddrTemp和IC的增量計算在系統中不可能同時出現,所以結構設計中只設計一個增量器供二者共用。

        6 存儲器的組織管理

        在數字信號處理系統中,數據的吞吐率直接影響系統的性能,傳統的馮



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 安西县| 田林县| 乾安县| 彝良县| 高陵县| 武陟县| 西藏| 雷山县| 神池县| 微山县| 陆良县| 镇雄县| 盈江县| 扎鲁特旗| 高安市| 乐昌市| 宜城市| 宿州市| 灯塔市| 探索| 筠连县| 林州市| 靖宇县| 星座| 阳西县| 溧水县| 广宗县| 周至县| 偃师市| 正定县| 安福县| 耿马| 禹城市| 武乡县| 炎陵县| 武宣县| 隆德县| 家居| 嘉鱼县| 邵阳市| 信阳市|