專利名稱:帶有可重構(gòu)通道數(shù)dma的數(shù)字信號處理器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及的是一種數(shù)字信號處理器,特別是一種帶有可重構(gòu)通道數(shù)DMA(直接存取模塊)的數(shù)字信號處理器,屬于數(shù)字信號處理技術(shù)領(lǐng)域。
背景技術(shù):
1999年美國學(xué)術(shù)出版社(Academic Press)出版的《數(shù)字信號處理器集成電路(DSP Integrated Circuits)》(作者Lars Wanhammar)公開了一種數(shù)字信號處理器,其DMA模塊為DSP中一協(xié)作模塊,其具體作用為在無需核心的處理下將指定的數(shù)據(jù)由一指定區(qū)域移動到另一指定區(qū)域。移動的范圍包括內(nèi)存->內(nèi)存,內(nèi)存->I/O,I/O->內(nèi)存,I/O->I/O;DMA模塊支持線性,二維,三維傳遞,可以為FFT,F(xiàn)IR等多種信號處理算法提供適合的數(shù)據(jù)移動方式。在此DMA模塊中,DMA和CORE使用不同的系統(tǒng)總線,因此在DMA工作時不影響CORE的正常工作。在DMA和CORE需要使用相同的內(nèi)存地址時,可以分別設(shè)定DMA和CORE的優(yōu)先級以產(chǎn)生合理的總線占用協(xié)議。
綜上所述,在傳統(tǒng)的方法下,對于一個DMA模塊的結(jié)構(gòu)而言,其具體的通道數(shù)在設(shè)計時,已經(jīng)被詳細(xì)定義,而無法在具體的各個實現(xiàn)時,實現(xiàn)動態(tài)的定義。其缺點(diǎn)時,在實際應(yīng)用中,可能很大量的DMA通道被閑置,但是,由于初期已經(jīng)設(shè)計的原因,仍占用大量的芯片面積。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)中的不足,提供一種帶有可重構(gòu)通道數(shù)DMA的數(shù)字信號處理器,通過端口信號的設(shè)置對DMA通道數(shù)的多少進(jìn)行重構(gòu)操作,以提高DMA通道在實際應(yīng)用中的效率和利用率。達(dá)到最優(yōu)性價比。
本發(fā)明是通過如下的技術(shù)方案實現(xiàn)的,本發(fā)明主要包括地址發(fā)生器單元、指令譯碼單元、數(shù)字?jǐn)?shù)據(jù)處理單元、數(shù)字?jǐn)?shù)據(jù)存儲器、程序控制單元,包括DMA控制器,所述的DMA控制器的通道數(shù)目可以用外圍端口進(jìn)行設(shè)置,指令譯碼單元連接到程序控制單元,程序控制單元連接到地址發(fā)生單元、指令譯碼單元和數(shù)字?jǐn)?shù)據(jù)處理單元,數(shù)字?jǐn)?shù)據(jù)處理單元雙向連接到數(shù)字?jǐn)?shù)據(jù)存儲器,地址發(fā)生器單元由地址總線連接到數(shù)字?jǐn)?shù)據(jù)存儲器,同時數(shù)字?jǐn)?shù)據(jù)存儲器由數(shù)據(jù)總線連接到地址發(fā)生器單元、指令譯碼單元和數(shù)字?jǐn)?shù)據(jù)處理單元,數(shù)字?jǐn)?shù)據(jù)總線與數(shù)字?jǐn)?shù)據(jù)存儲器相連,程序控制單元根據(jù)所述指令生成控制所述數(shù)字信號處理器其他單元的操作命令信號。
數(shù)字?jǐn)?shù)據(jù)存儲器存儲提供要由所述數(shù)字信號處理器操作的數(shù)字?jǐn)?shù)據(jù),指令譯碼單元為所述數(shù)字信號處理器提取構(gòu)成程序的指令,并把指令翻譯成控制信號和數(shù)據(jù)信號。數(shù)字?jǐn)?shù)據(jù)處理單元根據(jù)控制信號對輸入的數(shù)據(jù)進(jìn)行數(shù)字運(yùn)算或者邏輯運(yùn)算,地址發(fā)生器單元生成訪問數(shù)字?jǐn)?shù)據(jù)存儲器的地址。
本發(fā)明的數(shù)字信號處理器的工作原理如下本次設(shè)計在不同的實際應(yīng)用中,可以定義出具體的DMA通道的數(shù)目,對應(yīng)具有不同的需要,實現(xiàn)滿足需求的DMA個數(shù)。例如在一些具體的應(yīng)用對DMA通道的數(shù)量有較高的要求,但在另一些應(yīng)用中往往僅需要少量的DMA通道即可以。所以本發(fā)明的結(jié)構(gòu),將DMA通道形成一個獨(dú)立的結(jié)構(gòu),可以在實際實現(xiàn)時通過指定通道寄存器參數(shù)來控制通道個數(shù),均衡面積與功能的需要。本次動態(tài)DMA通道的具體實現(xiàn)方法為所有的DMA通道擁有獨(dú)立的地址寄存器,狀態(tài)寄存器及工作寄存器組,所有的寄存器組都可以被實現(xiàn)時所定義的實現(xiàn)參數(shù)所控制(如可以指定通道0的控制寄存器參數(shù)為0xFF01,即將內(nèi)存地址0xFF01為通道0的控制寄存器地址,用戶可以在DSP的程序中,直接操作所指定的地址即可與所指定的DMA通道通訊)。同時在所有DMA模塊的外層有統(tǒng)一的協(xié)議接口層,通過協(xié)議接口層,可以將所有的對DMA通道操作統(tǒng)一做協(xié)議翻譯后,再傳向DMA通道,對于DSP高層應(yīng)用的程序員而言也實現(xiàn)DMA通道的動態(tài)實現(xiàn),而不影響程序的開發(fā)。其具體過程為程序員編寫DSP程序;程序?qū)SP的內(nèi)存端口進(jìn)行讀寫操作;DSP將操作傳遞給DMA模塊;DMA模塊的統(tǒng)協(xié)議接口層進(jìn)行處理后,傳遞給DMA通道,DMA通道獨(dú)立做出反應(yīng)。
本發(fā)明具有實質(zhì)性特點(diǎn)和顯著進(jìn)步,在面對不同的應(yīng)用時動態(tài)的改變通道的數(shù)量,達(dá)到增加效率節(jié)約成本的目的,通過端口信號的設(shè)置對DMA通道數(shù)的多少進(jìn)行重構(gòu)操作,可以提高DMA通道在實際應(yīng)用中的效率和利用率,達(dá)到了最優(yōu)性價比。
圖1本發(fā)明數(shù)字信號處理器的結(jié)構(gòu)框2本發(fā)明數(shù)字信號處理器中DMA的結(jié)構(gòu)框圖具體實施方式
如圖1所示,數(shù)字信號處理器核心5具有程序控制單元1、地址發(fā)生器單元2、指令譯碼單元3、和數(shù)字?jǐn)?shù)據(jù)處理單元4,數(shù)字?jǐn)?shù)據(jù)存儲器6與數(shù)字信號處理器核心5相連。指令譯碼單元3把指令碼翻譯成數(shù)字信號處理器核心5內(nèi)部的代表指令意義的控制信號,這些所述的控制信號連接到程序控制單元1,程序控制單元1向地址發(fā)生單元2、指令譯碼單元3和數(shù)字?jǐn)?shù)據(jù)處理單元4發(fā)出控制這些模塊工作所需的控制信號。數(shù)字?jǐn)?shù)據(jù)處理單元接受來自數(shù)字?jǐn)?shù)據(jù)存儲器6的數(shù)據(jù),對其進(jìn)行運(yùn)算。地址發(fā)生器單元2進(jìn)行地址運(yùn)算,地址運(yùn)算的結(jié)果通過地址總線連接到數(shù)字?jǐn)?shù)據(jù)存儲器6上。數(shù)字?jǐn)?shù)據(jù)存儲器6根據(jù)地址發(fā)生器單元2產(chǎn)生的地址把相應(yīng)的數(shù)字?jǐn)?shù)據(jù)放到數(shù)據(jù)總線上,所述的數(shù)據(jù)總線連接到指令譯碼單元3和數(shù)據(jù)處理單元4,為它們提供指令和操作數(shù)。
如圖2所示,本次設(shè)計在不同的實際應(yīng)用中,可以定義出具體的DMA通道的數(shù)目,對應(yīng)具有不同的需要,實現(xiàn)滿足需求的DMA個數(shù)。例如在一些具體的應(yīng)用對DMA通道的數(shù)量有較高的要求,但在另一些應(yīng)用中往往僅需要少量的DMA通道即可以。所以本發(fā)明的結(jié)構(gòu),將DMA通道形成一個獨(dú)立的結(jié)構(gòu),可以在實際實現(xiàn)時通過指定通道寄存器參數(shù)來控制通道個數(shù),均衡面積與功能的需要。
本次動態(tài)DMA通道的具體實現(xiàn)方法為所有的DMA通道擁有獨(dú)立的地址寄存器,狀態(tài)寄存器及工作寄存器組,所有的寄存器組都可以被實現(xiàn)時所定義的實現(xiàn)參數(shù)所控制(如可以指定通道0的控制寄存器參數(shù)為0xFF01,即將內(nèi)存地址0xFF01為通道0的控制寄存器地址,用戶可以在DSP的程序中,直接操作所指定的地址即可與所指定的DMA通道通訊)。
同時在所有DMA模塊的外層有統(tǒng)一的協(xié)議接口層,通過協(xié)議接口層,可以將所有的對DMA通道操作統(tǒng)一做協(xié)議翻譯后,再傳向DMA通道,對于DSP高層應(yīng)用的程序員而言也實現(xiàn)DMA通道的動態(tài)實現(xiàn),而不影響程序的開發(fā)。其具體過程為程序員編寫DSP程序;程序?qū)SP的內(nèi)存端口進(jìn)行讀寫操作;DSP將操作傳遞給DMA模塊;DMA模塊的統(tǒng)協(xié)議接口層進(jìn)行處理后,傳遞給DMA通道。
權(quán)利要求
1.一種帶有可重構(gòu)通道數(shù)DMA的數(shù)字信號處理器,主要包括地址發(fā)生器單元(2)、指令譯碼單元(3)、數(shù)字?jǐn)?shù)據(jù)處理單元(4)、數(shù)字?jǐn)?shù)據(jù)存儲器(6),其特征在于還包括程序控制單元(1),DMA控制器,所述的DMA控制器的通道數(shù)目可以用外圍端口進(jìn)行設(shè)置,指令譯碼單元(3)連接到程序控制單元(1),程序控制單元(1)連接到地址發(fā)生單元、指令譯碼單元(3)和數(shù)字?jǐn)?shù)據(jù)處理單元(4),數(shù)字?jǐn)?shù)據(jù)處理單元(4)雙向連接到數(shù)字?jǐn)?shù)據(jù)存儲器(6),地址發(fā)生器單元(2)由地址總線連接到數(shù)字?jǐn)?shù)據(jù)存儲器(6),同時數(shù)字?jǐn)?shù)據(jù)存儲器(6)由數(shù)據(jù)總線連接到地址發(fā)生器單元(2)、指令譯碼單元(3)和數(shù)字?jǐn)?shù)據(jù)處理單元(4),數(shù)字?jǐn)?shù)據(jù)總線與數(shù)字?jǐn)?shù)據(jù)存儲器(6)相連,程序控制單元(1)根據(jù)所述指令生成控制所述數(shù)字信號處理器其他單元的操作命令信號。
2.根據(jù)權(quán)利要求1所述的帶有可重構(gòu)通道數(shù)DMA的數(shù)字信號處理器,其特征是,數(shù)字?jǐn)?shù)據(jù)存儲器(6)存儲提供要由所述數(shù)字信號處理器操作的數(shù)字?jǐn)?shù)據(jù),指令譯碼單元(3)為所述數(shù)字信號處理器提取構(gòu)成程序的指令,并把指令翻譯成控制信號和數(shù)據(jù)信號。
3.根據(jù)權(quán)利要求1所述的帶有可重構(gòu)通道數(shù)DMA的數(shù)字信號處理器,其特征是,數(shù)字?jǐn)?shù)據(jù)處理單元(4)根據(jù)控制信號對輸入的數(shù)據(jù)進(jìn)行數(shù)字運(yùn)算或者邏輯運(yùn)算,地址發(fā)生器單元(2)生成訪問數(shù)字?jǐn)?shù)據(jù)存儲器(6)的地址。
全文摘要
一種帶有可重構(gòu)通道數(shù)DMA(直接存取模塊)的數(shù)字信號處理器,屬于數(shù)字信號處理技術(shù)領(lǐng)域,地址發(fā)生器單元、指令譯碼單元、數(shù)字?jǐn)?shù)據(jù)處理單元、數(shù)字?jǐn)?shù)據(jù)存儲器、程序控制單元、DMA控制器,DMA控制器的通道數(shù)目可以用外圍端口進(jìn)行設(shè)置。本發(fā)明在面對不同的應(yīng)用時動態(tài)的改變通道的數(shù)量,達(dá)到增加效率節(jié)約成本的目的,通過端口信號的設(shè)置對DMA通道數(shù)的多少進(jìn)行重構(gòu)操作,可以提高DMA通道在實際應(yīng)用中的效率和利用率,達(dá)到了最優(yōu)性價比。
文檔編號G06F13/20GK1521643SQ0311537
公開日2004年8月18日 申請日期2003年2月13日 優(yōu)先權(quán)日2003年2月13日
發(fā)明者陳進(jìn), 陳 進(jìn) 申請人:上海漢芯半導(dǎo)體科技有限公司