欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)字信號(hào)處理設(shè)備的制作方法

文檔序號(hào):6465405閱讀:180來源:國(guó)知局
專利名稱:數(shù)字信號(hào)處理設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及執(zhí)行多個(gè)操作的數(shù)字信號(hào)處理設(shè)備,該設(shè)備包括多個(gè)功能單元,其中每一個(gè)功能單元適合執(zhí)行操作;和控制所述功能單元的控制裝置。另外,本發(fā)明涉及在數(shù)字信號(hào)處理設(shè)備中處理數(shù)字信號(hào)的方法,該數(shù)字信號(hào)處理設(shè)備包括多個(gè)功能單元,其中每一個(gè)功能單元適合執(zhí)行操作。
通常在數(shù)字信號(hào)處理器(DSP)中實(shí)現(xiàn)這種設(shè)備和方法。為了提高它們的性能,該數(shù)字信號(hào)處理器包含若干通常運(yùn)行在小循環(huán)中的處理單元。存在二種常規(guī)的解決方案,即設(shè)置(1)VLIW處理器,該處理器包括若干功能單元和一個(gè)中央控制,以及(2)帶有協(xié)處理器的中央處理器,這些協(xié)處理器中的每一個(gè)自發(fā)進(jìn)行固定功能。
EP 0 403 729 A2公開了一種數(shù)字信號(hào)處理設(shè)備,該設(shè)備包括二個(gè)或更多的與至少一個(gè)指令存儲(chǔ)器相關(guān)的地址寄存器、數(shù)據(jù)存儲(chǔ)器或系數(shù)存儲(chǔ)器、和二個(gè)或更多的與計(jì)算塊(computing block)相關(guān)的數(shù)據(jù)寄存器。這些二個(gè)或更多的寄存器在由計(jì)算塊同時(shí)處理的不同作業(yè)之間被負(fù)載循環(huán)(duty circle)切換以便能夠在作業(yè)的單芯片上進(jìn)行有效處理,可以采用不同的處理速度處理這些作業(yè),如適合高速或者低速處理的作業(yè)。
在美國(guó)加州,Los Alamitons 2000年出版的“第六屆異步電路與系統(tǒng)高級(jí)研究討論會(huì)的會(huì)議錄”第176-186頁的會(huì)議論文(“proceedings Sixth International Symposium on AdvancedResearch in Asynchronous Circuits and System(ASYNC200)”(Cat.No PR00586),published 2000 in Los Alamitos,CA,USA)中,Brackenbury描述了一種用于低功率異步數(shù)字信號(hào)處理器的結(jié)構(gòu),該處理器準(zhǔn)備用于GSM(數(shù)字蜂窩電話)芯片組的目標(biāo)應(yīng)用。該結(jié)構(gòu)的關(guān)鍵部分是一個(gè)指令緩沖器,該緩沖器既可以提供預(yù)取指令的存儲(chǔ)又可以進(jìn)行硬件循環(huán)。這需要低的等待時(shí)間和合理快的循環(huán)時(shí)間,但是還必須適合低功率運(yùn)行。在該論文中,提出了一種基于字片(word-slice)FIFO(先入先出)結(jié)構(gòu)。這避免了與微線性流水線FIFO關(guān)聯(lián)的輸入等待和功率消耗,并且這種結(jié)構(gòu)反應(yīng)性容易地導(dǎo)致其本身所需的循環(huán)特性。該指令緩沖器的循環(huán)時(shí)間比微流水線FIFO大約慢三倍。但是,該指令緩沖器顯示出每次操作的能量為微流水線結(jié)構(gòu)(低得多的能力)的能量的48%-62%之間??誇IFO的輸入至輸出的等待比微流水線設(shè)計(jì)低10倍。
US 5,655,090 A公開了一種外部控制的數(shù)字信號(hào)處理器,該數(shù)字信號(hào)處理器設(shè)有進(jìn)行異步操作并且獨(dú)立于系統(tǒng)環(huán)境的輸入/輸出FIFO。該系統(tǒng)結(jié)構(gòu)包括連接于第一FIFO緩沖器數(shù)據(jù)輸出與第二FIFO緩沖器數(shù)據(jù)輸出之間的數(shù)字信號(hào)處理裝置、控制數(shù)字信號(hào)處理裝置的控制裝置,該裝置對(duì)第一FIFO緩沖器和第二FIFO緩沖器中存有或者沒有數(shù)據(jù)和所接收的來自控制信號(hào)源的控制信號(hào)起作用。數(shù)據(jù)的吞吐異步進(jìn)行并且獨(dú)立于系統(tǒng)環(huán)境,其包括以下步驟在第一FIFO緩沖器的輸入端接收數(shù)據(jù)、將該數(shù)據(jù)傳送給數(shù)字信號(hào)處理器、對(duì)數(shù)據(jù)進(jìn)行處理、然后將處理過的數(shù)據(jù)傳送給第二FIFO緩沖器以備當(dāng)數(shù)據(jù)接收機(jī)準(zhǔn)備好接收數(shù)據(jù)時(shí)輸出。
在5,515,329 A中,示出了一個(gè)存儲(chǔ)器系統(tǒng),該系統(tǒng)通過其中包含有數(shù)字信號(hào)處理器和附屬的動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器顯示出處理數(shù)據(jù)的能力。數(shù)字信號(hào)處理器提供在空閑時(shí)有效的數(shù)據(jù)處理而附屬的動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器陣列提供附加的緩存能力。將輸入和輸出FIFO連接到數(shù)字信號(hào)處理器的數(shù)據(jù)和地址總線。利用串行通信鏈接通過主處理器將數(shù)字信號(hào)處理器控制連接到該數(shù)字信號(hào)處理器。
US 5,845,093 A公開了一種在集成電路上的數(shù)字信號(hào)處理器,該處理器采用多端口數(shù)據(jù)流結(jié)構(gòu),該結(jié)構(gòu)的特征在于有四個(gè)端口即一個(gè)獲取端口、二個(gè)數(shù)據(jù)端口、和一個(gè)系數(shù)端口。所有四個(gè)端口均可以是雙向的,從而可以通過DSP系統(tǒng)從相應(yīng)端口讀出和向相應(yīng)端口寫入數(shù)據(jù)。該結(jié)構(gòu)允許一種數(shù)據(jù)流管理模式,其中數(shù)據(jù)通過獲取端口或者任何數(shù)據(jù)端口之一輸入處理器。當(dāng)處理數(shù)據(jù)時(shí),它可以在數(shù)據(jù)端口之間,或者數(shù)據(jù)端口與獲取端口之間往復(fù)轉(zhuǎn)換(ping pong)。在DSP算法結(jié)束時(shí),可以通過獲取端口或者數(shù)據(jù)端口提供輸出數(shù)據(jù)以滿足具體應(yīng)用的需要。系數(shù)端口通常用于為DSP算法提供系數(shù)或旋轉(zhuǎn)因子。將每一個(gè)數(shù)據(jù)端口附加到專用獨(dú)立數(shù)據(jù)存儲(chǔ)器。這為多通道算法提供了優(yōu)化。
SUN公司開發(fā)了一種被稱為“MAJC”的多線程處理器,該處理器允許同時(shí)執(zhí)行多線程。在該處理器中,每一個(gè)功能單元接收相對(duì)于一個(gè)或多個(gè)線程的指令并且按順序執(zhí)行。通過單個(gè)控制強(qiáng)制這些功能單元同時(shí)執(zhí)行相對(duì)于相同線程的指令。因?yàn)榫€程以隊(duì)列交替方式執(zhí)行所以不存在自治任務(wù)。但是,MAJC處理器不是用于上述的處理而是用于網(wǎng)絡(luò)處理。


圖1示出了一個(gè)計(jì)算矢量積的數(shù)字信號(hào)處理器(DSP)循環(huán)的實(shí)例,該矢量積很好地代表一大類DSP算法(例如FIR過濾)。圖1a示出了可以編成普通DSP核心的普通匯編代碼的原始C代碼,圖1b示出了該匯編代碼。
圖2a示出了一個(gè)標(biāo)準(zhǔn)DSP核心。執(zhí)行上述代碼的最簡(jiǎn)單的標(biāo)準(zhǔn)DSP核心是一種序列機(jī)(有時(shí)稱之為標(biāo)量處理器),該序列機(jī)一次讀一個(gè)指令,然后以流水線的方式執(zhí)行該指令。通過單控制點(diǎn)確定指令流-獲取單元2(對(duì)照?qǐng)D2a)-其確定從存儲(chǔ)器6獲取哪一個(gè)指令并發(fā)布在處理單元4中的執(zhí)行。
現(xiàn)代DSP核心借助于同時(shí)執(zhí)行多指令試圖打破這種隊(duì)列方法。因?yàn)橛行╆?duì)列指令既不共源也不進(jìn)行數(shù)據(jù)交換,即是獨(dú)立的,因此這是可行的。最廣泛采用的方法是基于非常大的指令字(VLIW)結(jié)構(gòu)。在這種情況下,將這種指令組成束(bundle)。同時(shí)從存儲(chǔ)器中取出一束,然后同步執(zhí)行相同束中的指令,即,同時(shí)發(fā)布、解碼和執(zhí)行。圖2b示出VLIW DSP核心方框圖的一個(gè)實(shí)例。從圖2b可以注意到獲取單元2提出控制點(diǎn),該控制點(diǎn)對(duì)以與圖2a的簡(jiǎn)單DSP核心相同方式的指令流負(fù)責(zé)。
圖1所示的VLIW DSP的計(jì)算的矢量積會(huì)看起來象圖3給出的代碼。由逗號(hào)分隔開的指令組成束,而束本身由分號(hào)分隔開。即使束的數(shù)目少于原始代碼中的指令數(shù)目(對(duì)照?qǐng)D1b與圖3),但是基本指令的數(shù)目增加了;實(shí)際上,不可能總能找到填充束的獨(dú)立指令,因此需要所謂的“非操作”(nop)指令。
本發(fā)明的一個(gè)目標(biāo)是進(jìn)一步提高性能,特別是獲得數(shù)字信號(hào)處理設(shè)備和方法,該方法將VLIW的靈活性與由設(shè)置協(xié)處理器提供的粗粒度并行性相結(jié)合。
為了獲得上述目標(biāo)以及其它目標(biāo),根據(jù)本發(fā)明的第一方面提供了一個(gè)數(shù)字信號(hào)處理設(shè)備以同時(shí)執(zhí)行多個(gè)操作,該裝置包括多個(gè)功能單元,其中每一個(gè)功能單元適合執(zhí)行操作;以及一個(gè)控制所述功能單元的控制裝置,其特征在于所述控制裝置包括多個(gè)控制單元,其中至少一個(gè)控制單元與任何功能單元分別有效關(guān)聯(lián),用于控制其功能,并且每一個(gè)功能單元適合在與之相關(guān)的控制單元的控制下以自治方式執(zhí)行操作。根據(jù)本發(fā)明的第二方面,還提供一種用于在數(shù)字信號(hào)設(shè)備中處理數(shù)字信號(hào)的方法,該數(shù)字設(shè)備包括多個(gè)功能單元,其中每一個(gè)功能單元適合執(zhí)行操作,其特征在于所述功能單元受多個(gè)控制單元控制,其中至少一個(gè)控制單元與任何功能單元分別有效相關(guān),從而每一個(gè)功能單元能夠在與之相關(guān)的控制單元的控制下以自治方式執(zhí)行操作。
因此,每一個(gè)功能單元有一個(gè)專用地控制單元。換言之,每一個(gè)功能單元設(shè)有“私有”控制裝置,提供給每一個(gè)功能單元其自己的專用模塊以控制其功能。該功能單元可以執(zhí)行正常指令(如同常規(guī)處理器)或者執(zhí)行特殊指令(所謂指示),該只是使其自治地執(zhí)行一個(gè)所謂的進(jìn)程或者任務(wù),其中進(jìn)程或者任務(wù)意味著對(duì)某個(gè)操作(其一個(gè)或多個(gè)正常指令)執(zhí)行指定的次數(shù)。
為了獲得上述的和其它目標(biāo),根據(jù)本發(fā)明的第三方面提供一個(gè)數(shù)字信號(hào)處理設(shè)備用于執(zhí)行多個(gè)操作,該設(shè)備包括多個(gè)功能單元,其中每一個(gè)功能單元適合執(zhí)行操作;以及控制所述功能單元的控制裝置,其特征在于FIFO(先輸入/先輸出)寄存器裝置,該裝置適合支持在所述功能單元中的數(shù)據(jù)流通信。根據(jù)本發(fā)明的第四方面,還提供一種在數(shù)字處理設(shè)備中處理數(shù)字信號(hào)的數(shù)字信號(hào)處理方法,該設(shè)備包括多個(gè)功能單元,其中每一個(gè)功能單元適合執(zhí)行操作,其特征在于由FIFO(先入/先出)寄存器裝置支持的在所述功能單元中的數(shù)據(jù)流通信。根據(jù)本發(fā)明的第四方面,還提供一種用于在數(shù)字信號(hào)處理設(shè)備中處理數(shù)字信號(hào)的方法,該設(shè)備包括多個(gè)FIFO(先入/先出)寄存器裝置支持在所述功能單元中的數(shù)據(jù)流通信。
當(dāng)然,可以將上述的本發(fā)明的第一和第三方面以及上述的本發(fā)明的第二和第四方面分別組合在一起,以便提供數(shù)字信號(hào)處理設(shè)備和處理數(shù)字信號(hào)的方法,該方法包括由每一個(gè)功能單元的局域控制單元的分布式控制以及借助FIFO的數(shù)據(jù)流支持。
與常規(guī)VLIW處理器相比,本發(fā)明的優(yōu)點(diǎn)在于由于任務(wù)級(jí)并行性的較好的可測(cè)量性(scalability)和較高的性能,該任務(wù)級(jí)的并行性使其比較容易保持功能單元的處于忙碌狀態(tài)。另外,需要較少的程序存儲(chǔ)訪問,其結(jié)果導(dǎo)致較低的功率和存儲(chǔ)器帶寬(存儲(chǔ)器支持的每一個(gè)時(shí)間單位最大訪問數(shù))。
與其它當(dāng)前的數(shù)字信號(hào)處理器,諸如菲利普公司的“R.E.A.L”數(shù)字信號(hào)處理器相比較,本發(fā)明的優(yōu)點(diǎn)在于由于指令組規(guī)則并且為非定制VLIW,例如需要ASI用于上述的處理器,所以本發(fā)明編譯簡(jiǎn)單。
畢竟,本發(fā)明提供了將VLIW處理器的靈活性與由協(xié)處理器提供的粗粒度的并行性相結(jié)合的解決方案。
根據(jù)本發(fā)明,可以獨(dú)立地以并行方式一致和/或同時(shí)執(zhí)行操作。另外,采用本發(fā)明可以選擇進(jìn)行該結(jié)構(gòu)的異步實(shí)施、該結(jié)構(gòu)的同步實(shí)施或者混合實(shí)施。
在提供根據(jù)本發(fā)明的FIFO的情況下,這種FIFO為可配置。通常該數(shù)字處理器設(shè)備包括一個(gè)寄存器文件,從而可以將該寄存器文件用FIFO寄存器裝置擴(kuò)展,其中FIFO寄存器裝置可以擁有分離的地址或者是寄存器文件的部分。因此,除了常規(guī)寄存器以外,還可以是FIFO寄存器裝置。通常FIFO寄存器裝置包括多個(gè)FIFO寄存器,因此可以采用若干支持在功能單元中進(jìn)行數(shù)據(jù)流通信的FIFO將寄存器文件擴(kuò)展。這里應(yīng)當(dāng)注意的是寄存器與FIFO之間的差別是FIFO擁有將發(fā)送機(jī)和接收機(jī)“同步化”的裝置。
最好提供包括多個(gè)級(jí)的流水線,并且由功能單元執(zhí)行每一個(gè)級(jí)。具體而言,通過連接經(jīng)FIFO的子任務(wù)在軟件級(jí)上形成一個(gè)流水線。
功能單元之間的FIFO不僅可以用于經(jīng)過所形成流水線的數(shù)據(jù)流而且可以用于對(duì)該流的控制。如何進(jìn)行利用的一個(gè)實(shí)例是當(dāng)在功能單元的流水線中,每一個(gè)單元必須進(jìn)行相同數(shù)目的操作。只有流水線的頭需要知道該數(shù)目,并且它可以是取決于數(shù)據(jù)的。其它的功能單元通過檢查例如被添加到FIFO數(shù)據(jù)中的額外位可能會(huì)了解數(shù)據(jù)結(jié)尾。另外一個(gè)實(shí)例是如果不知道某些功能單元中的重復(fù)數(shù),諸如取樣可能有時(shí)會(huì)被添加到或者扔出。
值得注意的是在VLIW處理器中建立流水線的開端程序和收尾程序是不需要的,因?yàn)樗匀坏貋碜訤IFO的同步化。出于舉例解釋的目的,假定采用用于執(zhí)行流水線的VLIW處理器,該流水線包括例如三級(jí),功能單元F1、F2、F3分別執(zhí)行其中的每一級(jí)。例如,F(xiàn)1從存儲(chǔ)器中讀值,并將這些值傳遞到F2。F2進(jìn)行計(jì)算并將結(jié)果傳送到F3。F3將結(jié)果寫回該存儲(chǔ)器。實(shí)例中的所有這三個(gè)功能單元在一個(gè)VLIW指令的控制下以全速同時(shí)發(fā)揮其功能。但是,在循環(huán)開始之前,有二個(gè)指令對(duì)該循環(huán)進(jìn)行初始化,即,首先執(zhí)行F1的指令,隨后執(zhí)行F1和F2的指令(稱為開端程序)。在循環(huán)之后,有類似的情形,通過首先執(zhí)行F2和F3的指令,最后執(zhí)行F3的指令(稱為收尾程序)來請(qǐng)求流水線。如上所述,在本發(fā)明的結(jié)構(gòu)中不需要這種開端程序和收尾程序。而且,本發(fā)明的結(jié)構(gòu)支持流水線中的指令級(jí)并行性(在指令級(jí)上的流水線中的子任務(wù))以及任務(wù)級(jí)并行性(若干流水線可以同時(shí)互相以及同時(shí)以主線程激活)。
在本發(fā)明的另一個(gè)實(shí)施方案中,給每一個(gè)控制單元提供指令寄存器和計(jì)數(shù)器,其中計(jì)數(shù)器指明指令的執(zhí)行次數(shù),該指令存儲(chǔ)在指令寄存器中而且必須由相應(yīng)功能單元執(zhí)行。該指令寄存器保持一個(gè)操作或者一序列操作,并且計(jì)數(shù)器指明還必須執(zhí)行該操作的頻繁程度。另外,該控制單元通常也可以包括地址寄存器。該計(jì)數(shù)器可以作為分離器件或者作為相關(guān)控制單元的一部分實(shí)現(xiàn)。但是,其它結(jié)構(gòu)也是可能的;例如基于XOR的操作(采用Galois場(chǎng)表示)和向上計(jì)數(shù)(up-counting)直至到達(dá)邊界也都是有效的。
在本發(fā)明另一個(gè)優(yōu)選的實(shí)施方案中,設(shè)置程序存儲(chǔ)器裝置用于存儲(chǔ)主程序,主程序包括命令控制單元的指示(directive)。根據(jù)本發(fā)明,如以上所述,這些功能單元有其自己的控制邏輯電路,以及該主程序包括命令這些邏輯電路的指示(例如“執(zhí)行該操作n次”)。因此,通常有一個(gè)主程序的程序計(jì)數(shù)器的中央控制。該中央控制被稱為主控單元,而功能單元的控制單元被稱為從動(dòng)控制單元。主控單元獲取指令并相應(yīng)地命令從動(dòng)控制單元。一旦中央或者主控單元建立了流水線,它可以進(jìn)行和例如啟動(dòng)其它的流水線;這種并行性被稱為任務(wù)級(jí)并行性。因此,根據(jù)本發(fā)明的功能單元的分散控制支持該指令級(jí)并行性,而中央控制可以照顧任務(wù)級(jí)并行性(分級(jí)控制結(jié)構(gòu))。
關(guān)于對(duì)諸如存儲(chǔ)在局域控制單元中的局域存儲(chǔ)器的指令編碼,注意到可以獨(dú)立于對(duì)主指令流中指令的編碼來選擇該編碼,該主指令流諸如是通過中央控制觀察的。例如,因?yàn)閷?duì)局域控制單元選項(xiàng)(option)編碼比局域控制單元庫(arsenal)需要較少的位,所以可以選擇“窄”編碼。因此假定進(jìn)程只采用給定局域控制單元的基本操作,該局域控制單元本身只存儲(chǔ)從指示本身給定的進(jìn)程中的較短的指令型式。另外的選擇是讓中央控制發(fā)送部分解碼的指令給局域控制單元,該局域控制單元潛在地包含更多位。
結(jié)合優(yōu)選實(shí)施方案和附圖的說明將使本發(fā)明上述的和其它目的與特征更加清晰,在附圖中圖1示出了計(jì)算矢量積的DSP循環(huán)的簡(jiǎn)單實(shí)例,它們分別用C代碼表達(dá)(a)和用普通匯編代碼表達(dá)(b);圖2示出標(biāo)準(zhǔn)DSP核心(a)和現(xiàn)代VLIW DSP核心(b)的方框圖;圖3示出了VLIW DSP核心的矢量積;圖4示出了處理器識(shí)別的實(shí)例和最終代碼外觀;圖5示出了采用局域邏輯控制而沒有FIFO寄存器的DSP的方框圖;圖6示出了采用局域控制和中心源的定義的實(shí)例;圖7示出了僅采用局域控制的進(jìn)程的實(shí)例,它要求仍然以VLIW DSP核心方式的時(shí)序同步(a)以及采用局域控制和移動(dòng)數(shù)據(jù)流上同步的FIFO寄存器以便簡(jiǎn)化進(jìn)程定義和減少所需指令的數(shù)目(b);圖8示出原始標(biāo)準(zhǔn)DSP代碼(a)和采用局域控制和FIFO寄存器的DSP相同段的代碼(b)的一個(gè)可能版本;和圖9示出采用局域控制邏輯與FIFO寄存器的DSP的方框圖。
圖3中的代碼建議每一個(gè)功能單元實(shí)際上只工作在給定代碼的子集。如果該循環(huán)的本體被隔離,那么三個(gè)任務(wù)或進(jìn)程可能實(shí)際上被確認(rèn),這實(shí)際上分別由三個(gè)功能單元執(zhí)行。這被標(biāo)為進(jìn)程A、B、和C(參照?qǐng)D4)。另外,假定總是由DSP核心的相同的功能單元執(zhí)行每一個(gè)進(jìn)程。
圖5所示的是一個(gè)與圖2b的DSP核心相似的DSP核心,但是不同之處在于每一個(gè)功能單元(圖5的執(zhí)行單元)設(shè)置有專用的控制邏輯(圖5的局域控制12),該控制邏輯可以執(zhí)行一個(gè)給定進(jìn)程一定的次數(shù)。每一個(gè)局域控制12包括一個(gè)指令寄存器或維持一個(gè)或一序列操作的存儲(chǔ)器、指明還必須執(zhí)行的操作的頻繁程度和或許地址寄存器(注意圖5未示出局域控制的結(jié)構(gòu))。除專用控制邏輯或與每一個(gè)功能單元或執(zhí)行單元10相關(guān)的局域邏輯控制12外,在獲取單元2中,設(shè)置有一個(gè)中央控制邏輯(圖5中的全局控制)。圖2所示的標(biāo)準(zhǔn)或現(xiàn)代VLIW DSP核心的獲取單元2已經(jīng)包括這種中央控制邏輯僅作為唯一控制裝置。因此,該控制邏輯通常作為標(biāo)準(zhǔn)或現(xiàn)代VLIW DSP核心被集中化,即一次獲取一個(gè)指令,然后發(fā)布給一個(gè)功能單元或執(zhí)行單元。但是,在圖5所示的DSP核心中,當(dāng)啟動(dòng)一個(gè)循環(huán)時(shí),將控制傳送給相應(yīng)執(zhí)行單元10的局域控制12。
除了局域控制,必須包括對(duì)具體進(jìn)程的支持。以簡(jiǎn)單和緊湊的方式提供簡(jiǎn)單指令以指定一個(gè)進(jìn)程,只要它只包括簡(jiǎn)單操作如加載、存儲(chǔ)和乘(參照?qǐng)D6)。在啟動(dòng)該循環(huán)之前,總是對(duì)進(jìn)程加以限定。但是,可能出現(xiàn)由循環(huán)本身限定進(jìn)程中的一個(gè)的情況。當(dāng)進(jìn)程已經(jīng)完成,將控制傳送至獲取單元。該解決方案總體減少了循環(huán)體中的指令數(shù),從而減少了對(duì)外部存儲(chǔ)器的訪問和有時(shí)將循環(huán)轉(zhuǎn)換為重復(fù)語句,該語句只訪問存儲(chǔ)器一次。這降低了功率消耗并加快了操作而對(duì)代碼尺度沒有明顯的影響。此外,局域控制利用局域寄存器(程序員無法看到)處理循環(huán)中所用的索引,因此減小了寄存器壓力;例如在圖6中,實(shí)際上沒有用寄存器$r1指定進(jìn)程,而是指定了它的增量+1。
但是采用局域控制可能需要按照一個(gè)具體的時(shí)間順序執(zhí)行指令,該時(shí)間順序?qū)?yīng)于相同VLIW DSP核心束中的指令同步(參照?qǐng)D7a)。因此,在每一個(gè)循環(huán)中都涉及所有功能單元或執(zhí)行單元。為了放松這種約束,延遲對(duì)數(shù)據(jù)的同步。只停止等待新數(shù)據(jù)的進(jìn)程中的指令。為了輕易地包括這種數(shù)據(jù)同步,加入到局域控制設(shè)置中的是以寄存器方式使用的先進(jìn)/先出(FIFO)隊(duì)列(在圖7的實(shí)例中被表示為$f而不是圖3和6的實(shí)例中的標(biāo)準(zhǔn)寄存器$r)。只有當(dāng)FIFO完整才停止相向FIFO中寫入指令;而只有當(dāng)數(shù)據(jù)無法獲得時(shí),才停止讀取FIFO寄存器指令。通過這種方法,如圖7b所示,在進(jìn)程中指令通過FIFO交換數(shù)據(jù),并且在該進(jìn)程中不需要另外的“nop”指令。對(duì)數(shù)據(jù)的同步允許以超級(jí)標(biāo)量處理器的方式無序執(zhí)行進(jìn)程。
圖8示出了一個(gè)在原始標(biāo)準(zhǔn)DSP核心(a)中和在采用局域控制的DSP核心和FIFO寄存器(b)中進(jìn)行標(biāo)量積循環(huán)的可能代碼。
按照?qǐng)D8a,每一個(gè)指令可以被編成32位碼。但是,根據(jù)圖8b,“define_process”指示指定了一個(gè)3指令進(jìn)程。該指示本身是32位的并且局域控制12(參照?qǐng)D5)只存儲(chǔ)其18位信息(而不是根據(jù)圖8a可能會(huì)需要的96位)。寄存器保持地址#b存儲(chǔ)在其標(biāo)簽信息{$f3、Read、first_instruction}等等。當(dāng)然,標(biāo)簽的大小取決于該信息如何編碼和復(fù)雜性。
圖9示出具有與圖5所示相同結(jié)構(gòu)的DSP代碼,但是另外還設(shè)置有FIFO寄存器14。
將圖8與圖3和4相比較,可以清楚地看到最終代碼比原始代碼短;它把循環(huán)語句替換為定義作為進(jìn)程B重復(fù)體的重復(fù)語句。由于對(duì)數(shù)據(jù)和局域控制都進(jìn)行同步,所以所有功能單元或執(zhí)行單元與處理器無關(guān),此處進(jìn)程已經(jīng)完成或者未使用(如進(jìn)程C),將控制傳送給獲取單元,然后可以執(zhí)行與該循環(huán)本身并行的循環(huán)本身之后的指令。這在標(biāo)準(zhǔn)的解決方案中(例如常規(guī)VLIW DSP)是不可能的,實(shí)際上,沒有涉及計(jì)算的單元被停止或者執(zhí)行“nop”操作以考慮時(shí)間約束。
權(quán)利要求
1.用于執(zhí)行多個(gè)操作的數(shù)字信號(hào)處理設(shè)備,該設(shè)備包括多個(gè)功能單元(10),其中每一個(gè)功能單元適合執(zhí)行操作,和用于控制所述功能單元(10)的控制裝置,其特征在于所述控制裝置包括多個(gè)控制單元(12),其中至少一個(gè)控制單元(12)與任何功能單元(10)分別有效相關(guān),為了控制其功能,以及每一個(gè)功能單元(10)適合在與其相關(guān)的控制單元(12)的控制下以自治方式執(zhí)行操作。
2.根據(jù)權(quán)利要求1的設(shè)備,其特征在于FIFO(先進(jìn)/先出)寄存器裝置(14),該裝置適合在所述功能單元(10)中的數(shù)據(jù)流通信。
3.用于執(zhí)行多個(gè)操作的數(shù)字信號(hào)處理設(shè)備,該設(shè)備包括多個(gè)功能單元(10),其中每一個(gè)功能單元適合執(zhí)行操作,和用于控制所述功能單元(10)的控制裝置,其特征在于FIFO(先進(jìn)/先出)寄存器裝置(14),該裝置適合在所述功能單元(10)中的數(shù)據(jù)流通信。
4.根據(jù)權(quán)利要求2或者3的設(shè)備,該設(shè)備包括寄存器文件(8),其特征在于采用所述FIFO寄存器裝置(14)擴(kuò)展所述寄存器文件。
5.根據(jù)權(quán)利要求2至4任意之一的設(shè)備,其特征在于所述FIFO寄存器(14)裝置包括多個(gè)FIFO寄存器。
6.根據(jù)前述權(quán)利要求至少任意之一的設(shè)備,其特征在于功能單元(10)中的每一個(gè)設(shè)置有至少一個(gè)控制單元(12)。
7.根據(jù)前述權(quán)利要求至少之一的設(shè)備,該設(shè)備適合執(zhí)行多個(gè)級(jí)的流水線,其中功能單元(10)執(zhí)行每一個(gè)級(jí)。
8.根據(jù)前述權(quán)利要求至少之一的設(shè)備,其特征在于為每一個(gè)控制單元(12)設(shè)置指令寄存器和計(jì)數(shù)器,其中所述計(jì)數(shù)器指明由對(duì)應(yīng)功能單元(10)必須執(zhí)行的存儲(chǔ)在所述指令寄存器中的指令的次數(shù)。
9.根據(jù)前述權(quán)利要求至少任意之一的設(shè)備,該設(shè)備還包括存儲(chǔ)主程序的程序存儲(chǔ)器裝置(6),其特征在于所述主程序包含命令所述控制單元的指示。
10.在數(shù)字信號(hào)處理設(shè)備中處理數(shù)字信號(hào)的方法,該數(shù)字信號(hào)處理設(shè)備包括多個(gè)功能單元(10),其中每一個(gè)功能單元適合執(zhí)行操作,其特征在于所述功能單元(10)受多個(gè)控制單元(12)控制,其中至少一個(gè)控制單元(12)分別與任何功能單元(10)有效相關(guān),從而,每一個(gè)功能單元(10)能夠在與其相關(guān)的控制單元(12)的控制下以自治方式執(zhí)行操作。
11.根據(jù)權(quán)利要求9的方法,其特征在于FIFO(先進(jìn)/先出)寄存器裝置(14)支持在所述功能單元(10)中的數(shù)據(jù)流通信。
12.在數(shù)字信號(hào)處理設(shè)備中處理數(shù)字信號(hào)的方法,該數(shù)字信號(hào)處理設(shè)備包括多個(gè)功能單元(10),其中每一個(gè)功能單元適合執(zhí)行操作,其特征在于FIFO(先進(jìn)/先出)寄存器裝置(14)支持在所述功能單元(10)中的數(shù)據(jù)流通信。
13.根據(jù)權(quán)利要求11或者12的方法,其中設(shè)置有包括多個(gè)級(jí)的流水線,并且功能單元(10)執(zhí)行每一個(gè)級(jí)。
14.根據(jù)權(quán)利要求10至13至少任意之一的方法,其特征在于相應(yīng)的控制單元(12)對(duì)由功能單元(10)必須執(zhí)行所存儲(chǔ)指令的次數(shù)進(jìn)行計(jì)數(shù)。
15.根據(jù)權(quán)利要求9至14至少任意之一的方法,其中主程序存儲(chǔ)在程序存儲(chǔ)器裝置(6)中,其特征在于所述主程序包含命令所述控制單元的指示。
全文摘要
本發(fā)明涉及執(zhí)行多個(gè)操作的數(shù)字信號(hào)處理設(shè)備,該設(shè)備包括多個(gè)功能單元(10),其中每一個(gè)功能單元適合執(zhí)行操作,和用于控制所述功能單元(10)的控制裝置,其中所述控制裝置包括多個(gè)控制單元(12)。其中至少一個(gè)控制單元(12)與任何功能單元(10)分別有效相關(guān),為了控制其功能,以及每一個(gè)功能單元(10)適合在與其相關(guān)的控制單元(12)的控制下以自治方式執(zhí)行操作,和/或其中設(shè)置有FIF0(先進(jìn)/先出)寄存器裝置(14)適合支持在所述功能單元中的數(shù)據(jù)流通信。另外,本發(fā)明涉及一種在數(shù)字信號(hào)處理設(shè)備中處理數(shù)字信號(hào)的方法,該設(shè)備包括多個(gè)功能單元(10),其中每一個(gè)功能單元(10)適合執(zhí)行操作,并且所述功能單元(10)受多個(gè)控制單元(12)控制,其中至少一個(gè)控制單元(12)分別與任何功能單元有效相關(guān),從而每一個(gè)功能單元(10)能夠以自治方式在與之相關(guān)的控制單元的控制下執(zhí)行操作,和/或其中FIF0(先進(jìn)/先出)寄存器裝置(14)支持在所述功能單元(10)中的數(shù)據(jù)流通信。
文檔編號(hào)G06F9/38GK1398369SQ01804625
公開日2003年2月19日 申請(qǐng)日期2001年11月22日 優(yōu)先權(quán)日2000年12月7日
發(fā)明者F·佩斯索拉諾, J·L·W·科斯塞斯, A·M·G·皮特斯 申請(qǐng)人:皇家菲利浦電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
闽侯县| 东方市| 车险| 新营市| 临泉县| 资兴市| 滨海县| 巴青县| 淮安市| 崇文区| 武汉市| 三亚市| 浠水县| 毕节市| 甘泉县| 敦煌市| 名山县| 云浮市| 定陶县| 浦县| 湖州市| 遂溪县| 靖宇县| 石泉县| 石门县| 根河市| 六盘水市| 天柱县| 墨玉县| 北安市| 甘孜县| 河池市| 千阳县| 泾阳县| 那曲县| 杭州市| 淳化县| 西吉县| 东港市| 新兴县| 石门县|