在信息日益成為一種重要資源的今天,強大的市場(chǎng)需求和微電子技術(shù)的發(fā)展促成了便攜式電子系統的飛速發(fā)展。這些便攜式電子設備,不但對速度和面積要求非常高,而且對系統的平均功耗要求也很?chē)栏?使功耗問(wèn)題日漸成為制約便攜式電子設備發(fā)展的瓶頸。要獲得高性能低功耗的方案,其實(shí)質(zhì)也就是在處理速度、芯片面積和功耗上來(lái)權衡如何滿(mǎn)足數字信號處理系統的要求。 本文介紹了一種基于并行流水線(xiàn)的低功耗數字信號處理器(DSP)的系統設計,以改善通用處理器的不足,應用于各種便攜式系統中,以便取得良好的效果。 系統方案中,基于流水線(xiàn)的結構從行為級方面降低了系統的功耗;時(shí)鐘管理方案則可以允許系統在不同的工作模式下使用不同的工作頻率,從而使每一個(gè)單項任務(wù)所消耗的功耗最小;增強型的哈佛結構存儲管理可以大大提高系統的并行性,提高系統效率。 1 流水線(xiàn)結構 流水線(xiàn)結構是芯片行為級降低功耗的主要方法之一,下面簡(jiǎn)要分析其原理。在傳統的分析方法中,CMOS電路的功耗可用下面的方程進(jìn)行 估計: 其中f=1/Ts,Ts是原始時(shí)序系統的時(shí)鐘周期。若是一個(gè)M級流水線(xiàn)系統,其關(guān)鍵路徑則縮短為原路經(jīng)長(cháng)度的1/M,一個(gè)時(shí)鐘周期內充放電電容則減小為Ccharge/M(注意總電容并沒(méi)有變化)。如果時(shí)鐘速度保持不變,則在原來(lái)對電容Ccharge充放電的同樣時(shí)間內,現在只需要對Ccharge/M進(jìn)行充放電,這就意味著(zhù)電源電壓可以降低到βVdd,其中β是一個(gè)小于1的常數。這樣,流水線(xiàn)濾波器的功耗將為: 和原始系統相比流水線(xiàn)系統的功耗降低了β2倍。 該DSP處理器采用如圖1所示的4級流水線(xiàn)結構。各級流水線(xiàn)的功能介紹如下: FI:取址階段。由程序地址產(chǎn)生模塊產(chǎn)生指令存儲器地址,并取出指令。 DI:譯碼階段。通過(guò)指令譯碼產(chǎn)生相應的微控制信號,送入相應的控制寄存器。 FO:取操作數階段。從寄存器堆或外部存儲器讀出相應的數據,通過(guò)數據總線(xiàn)送入運算單元或寄存器堆。 EXE/WB:執行及寫(xiě)回階段。進(jìn)行運算或操作,得出相應的結果,并將結果放到寫(xiě)總線(xiàn)(EB)上。 圖1 4級流水線(xiàn) 2 外圍接口部分 外圍接口部分提供系統內部和外部的各種連接方式,實(shí)現各種方式的信息傳輸。本設計把這些接口分為二大部分 ![]() 3 數據傳輸的設計 數字信號處理是數據量很大的應用,所以如何高效地傳輸數據是一個(gè)影響系統性能的關(guān)鍵瓶頸。作為DSP處理器,必須有全面的DMA能力以便對數據在芯片內外進(jìn)行傳輸。因為在DSP芯片內部集成足夠的存儲空間不大現實(shí),所以必須采用DMA來(lái)管理流動(dòng)數據,將數據傳輸和系統控制過(guò)程分開(kāi)。這樣,一方面可以提高數據傳輸的速度,另一方面可以降低處理器內核的負擔,提高系統運行效率。 系統設計中DMA采用基于描述符的傳送,它在發(fā)起DMA傳送序列時(shí),需要一組存儲在存儲器中的參數。這類(lèi)傳送允許將多個(gè)DMA序列鏈接在一起,一個(gè)DMA通道可以被編程建立,并且在當前序列完成之后啟動(dòng)另一個(gè)DMA傳送。 4 乘法器和邏輯單元的設計 在數字信號處理應用中,實(shí)現高速的數據運算是其突出的特點(diǎn),所以其結構設計中必須具有單獨的乘法器以實(shí)現其性能的提高。乘法器和邏輯單元的結構框圖如圖2所示。 圖2 CALU及乘法器結構框圖 乘法器工作時(shí),用1條LT(Load TR)指令加載TR,由TR提供一個(gè)乘數。乘法指令提供另一個(gè)操作數,它既可以是來(lái)自數據總線(xiàn),也可以是來(lái)自程序總線(xiàn)的立即數。不管在哪種情況下,每個(gè)周期都可以獲得穩定的乘積項輸出。 3個(gè)移位器(shifter)是桶式移位器,它提供對16位或32位的操作數進(jìn)行移位操作,可以大大提高乘后累加的速度。 5 地址處理模塊 地址處理模塊是為總線(xiàn)部件計算取指和取數據的地址,也包括處理一些重復指令和跳轉指令。根據指令系統的特點(diǎn),本文設計的地址處理單元如圖3所示。 圖3 地址處理模塊結構框圖 派生地址可能來(lái)自S_BUS,或是上一地址的加1值,也可能是總線(xiàn)輸入數據暫存器DataIn之一;指令指針I(yè)C的值可能來(lái)自S_BUS或者是自增1的結果;預取指針PreIC可能來(lái)自IC或者是自加1的結果。最后的輸出地址是派生地址暫存器AddrTemp、指令指針I(yè)C、總線(xiàn)輸入數據暫存器DataIn或預取指針PreIC這4種地址之一。 當執行的指令需要計算有效地址時(shí),輸出地址是派生地址寄存器;當程序跳轉時(shí),輸出地址是指令指針I(yè)C;當尋址方式是間接尋址時(shí),輸出地址是DataIn; 當預取指令時(shí),輸出地址是預取指針PreIC。 因為AddrTemp和IC的增量計算在系統中不可能同時(shí)出現,所以結構設計中只設計一個(gè)增量器供二者共用。 6 存儲器的組織管理 在數字信號處理系統中,數據的吞吐率直接影響系統的性能,傳統的馮·諾曼(Von Neuman)結構是將指令、數據存儲在同一存儲器中統一編址,依靠指令計數器提供的地址來(lái)區分指令和數據。取指令和取數據都訪(fǎng)問(wèn)同一存儲器,數據吞吐率低。而哈佛結構則不同于傳統的馮·諾曼結構的并行系統結構,其主要特點(diǎn)是將程序和數據存儲在不同的存儲空間中,即程序存儲器和數據存儲器是2個(gè)相互獨立的存儲器,每個(gè)存儲器獨立編址,獨立訪(fǎng)問(wèn)。系統中設置了程序和數據2條總線(xiàn),從而使數據的吞吐率提高了1倍。 本文的設計采用如圖4所示的增強型哈佛結構,它包括1個(gè)程序代碼存儲器和2個(gè)數據存儲器,其中程序代碼存儲器只存放指令,程序數據存儲器存放程序數據,而數據存儲器則存放通用數據。對這些存儲器的訪(fǎng)問(wèn)是相互獨立的,系統可以在取指令的同時(shí)提供2個(gè)操作數,因而大大提高了系統的執行效率。 為了使用更大的虛擬地址空間,對存儲器采用分頁(yè)管理,幾個(gè)不同的頁(yè)可以占用同一段地址空間,由各個(gè)存儲器的分頁(yè)寄存器指明當前所訪(fǎng)問(wèn)的是哪一頁(yè)。 圖4 增強型哈佛結構 7 時(shí)鐘管理方案 由公式(1)可以看出,系統的功耗和時(shí)鐘頻率呈線(xiàn)性關(guān)系,因此,通過(guò)降低系統時(shí)鐘可以有效地降低功耗。時(shí)鐘管理方案為系統提供了在不同工作模式下進(jìn)行工作的頻率,其結構如圖5所示。由圖可知,外部輸入時(shí)鐘 CLKI經(jīng)過(guò)全局輸入緩沖器IBUFG連接到延遲鎖相環(huán)DLL,鎖相環(huán)原相時(shí)鐘經(jīng)過(guò)全局緩沖器BUFG輸出,這樣就可以得到穩定的片內原時(shí)鐘;系統在低功耗模式下,可以根據用戶(hù)配置的時(shí)鐘分頻計數器的值將原時(shí)鐘分頻,產(chǎn)生分頻時(shí)鐘;如果系統時(shí)鐘要停止,可直接將低電平作為時(shí)鐘輸出。 圖5 時(shí)鐘管理方案結構圖 以上3種時(shí)鐘經(jīng)過(guò)多路選擇器輸出,該內部產(chǎn)生的時(shí)鐘已經(jīng)不是穩定的時(shí)鐘。因此,將該時(shí)鐘輸出到片外,然后將輸入連接到片上時(shí)鐘專(zhuān)用線(xiàn),即經(jīng)過(guò)全局輸入緩沖器連接到延遲鎖相環(huán),鎖相環(huán)原相時(shí)鐘經(jīng)過(guò)全局緩沖器輸出產(chǎn)生穩定的系統主時(shí)鐘。同時(shí),鎖相環(huán)二分頻時(shí)鐘經(jīng)過(guò)全局緩沖器輸出作為系統狀態(tài)時(shí)鐘,由它參與系統控制。此外,將該鎖相環(huán)的時(shí)鐘鎖定標志LOCKED輸出,便于在系統調試時(shí)觀(guān)察內部時(shí)鐘的穩定性。 本文介紹的低功耗DSP處理器的設計,相對于其他處理器的解決方案具有成本低、復雜性小、產(chǎn)品上市時(shí)間短等優(yōu)點(diǎn),并且能夠以較低的價(jià)格實(shí)現各種便攜式數字信號處理性能。該設計方法可作為同類(lèi)設計的參考。 |