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

通用計(jì)算數(shù)字信號(hào)處理器的制造方法

文檔序號(hào):6525522閱讀:264來(lái)源:國(guó)知局
通用計(jì)算數(shù)字信號(hào)處理器的制造方法
【專利摘要】本發(fā)明公開了一種通用計(jì)算數(shù)字信號(hào)處理器,包括CPU核單元、DSP核單元、多層次互連結(jié)構(gòu)、片內(nèi)共享存儲(chǔ)陣列、片外存儲(chǔ)接口、第一高速輸入輸出接口、第二高速輸入輸出接口、片間直連接口和核間同步裝置,CPU核單元包含若干CPU核,DSP核單元包含若干DSP核,CPU核、DSP核分別通過(guò)多層次互連結(jié)構(gòu)與片內(nèi)共享存儲(chǔ)陣列相連;CPU核與第一高速輸入輸出接口相連,DSP核與第二高速輸入輸出接口、片間直連接口相連;其應(yīng)用程序采用統(tǒng)一并行編程方法將編譯得到CPU端目標(biāo)代碼和DSP端的目標(biāo)代碼進(jìn)行統(tǒng)一編譯鏈接得到。本發(fā)明具有既能夠保持嵌入式DSP基本特征和高性能低功耗的優(yōu)勢(shì),又能夠高效支持通用科學(xué)計(jì)算的優(yōu)點(diǎn)。
【專利說(shuō)明】通用計(jì)算數(shù)字信號(hào)處理器
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及微處理器結(jié)構(gòu)設(shè)計(jì)領(lǐng)域,具體涉及適于64位通用科學(xué)計(jì)算、同時(shí)具有嵌入式數(shù)字信號(hào)處理器基本特征的多核結(jié)構(gòu)的通用計(jì)算數(shù)字信號(hào)處理器(General-Purpose Digital Signal Processor 簡(jiǎn)稱 GPDSP)。
【背景技術(shù)】
[0002]由于其低功耗和強(qiáng)實(shí)時(shí)性的優(yōu)點(diǎn),數(shù)字信號(hào)處理器(Digital Signal Processor簡(jiǎn)稱DSP)作為一種典型的嵌入式微處理器目前已經(jīng)被廣泛應(yīng)用于各種嵌入式系統(tǒng)中。盡管當(dāng)前DSP的體系結(jié)構(gòu)在計(jì)算和控制上具有了與中央處理器(CPU)同質(zhì)的許多特征,但是一般認(rèn)為以下是DSP區(qū)別于CPU的基本特征:1)計(jì)算能力強(qiáng),關(guān)注實(shí)時(shí)計(jì)算勝于關(guān)注控制和事務(wù)處理;2)對(duì)于典型信號(hào)處理有專門硬件支持,如乘加運(yùn)算、線性尋址;3)嵌入式微處理器的共性特征:地址和指令通路不多于32位,多數(shù)數(shù)據(jù)通路不多于32位;非精確中斷;短期離線調(diào)試、長(zhǎng)期在線駐留運(yùn)行的程序工作方式(而非通用CPU調(diào)試即運(yùn)行的方法);4)集成外設(shè)接口以快速外設(shè)為主,特別利于在線收發(fā)高速AD/DA數(shù)據(jù),也支持DSP間高速直連。
[0003]事實(shí)上通用科學(xué)計(jì)算本質(zhì)上也需要高性能功耗比。因此,如何發(fā)揮DSP這種低功耗、高計(jì)算性能的優(yōu)勢(shì)將其用于通用科學(xué)計(jì)算成為一項(xiàng)亟待解決的技術(shù)問(wèn)題。因?yàn)橐话鉊SP用作通用科學(xué)計(jì)算時(shí)存在如下幾個(gè)問(wèn)題:(I)、位寬小,使得計(jì)算精度和尋址空間不足。通用科學(xué)計(jì)算應(yīng)用至少需要64位精度;(2)、缺乏任務(wù)管理、文件控制、進(jìn)程調(diào)度、中斷管理等軟硬件支持,或者說(shuō)缺乏操作系統(tǒng)(OS)硬件環(huán)境,給通用、多道計(jì)算任務(wù)管理帶來(lái)不便;(3)、缺乏統(tǒng)一的高級(jí)語(yǔ)言編程模式支持,對(duì)多核、向量、數(shù)據(jù)并行等的支持基本依靠匯編程序編程,不便于通用編程;(4)、不支持本地宿主的程序調(diào)試模式,僅依靠它機(jī)交叉調(diào)試仿真。這些問(wèn)題嚴(yán)重限制了 DSP在通用科學(xué)計(jì)算領(lǐng)域的應(yīng)用。綜上所述,如何實(shí)現(xiàn)一種既發(fā)揮DSP高性能功耗比的優(yōu)勢(shì)、又適合通用科學(xué)計(jì)算應(yīng)用的新型微處理器,從而既能夠明顯利于提高計(jì)算機(jī)的性能,又能夠?qū)δ切┬枰僮飨到y(tǒng)支持的高精度、高性能嵌入式領(lǐng)域,如雷達(dá)信號(hào)處理、水聲處理等,提供一種合適的新型DSP已經(jīng)成為一項(xiàng)亟待解決的關(guān)鍵技術(shù)問(wèn)題。

【發(fā)明內(nèi)容】

[0004]針對(duì)現(xiàn)有技術(shù)的上述缺點(diǎn),本發(fā)明要解決的技術(shù)問(wèn)題是提供一種既能夠保持嵌入式DSP基本特征和高性能低功耗的優(yōu)勢(shì),又能夠高效支持通用科學(xué)計(jì)算的通用計(jì)算數(shù)字信號(hào)處理器。
[0005]為了解決上述技術(shù)問(wèn)題,本發(fā)明采用的技術(shù)方案為:
一種通用計(jì)算數(shù)字信號(hào)處理器,包括:
CPU核單元,包含至少一個(gè)CPU核,所述CPU核用于負(fù)責(zé)包括存儲(chǔ)管理、文件控制、進(jìn)程調(diào)度、中斷管理任務(wù)在內(nèi)的通用事務(wù)管理以及提供對(duì)通用操作系統(tǒng)的完整支持;
DSP核單元,包含至少一個(gè)用于提供對(duì)64位運(yùn)算以及操作系統(tǒng)微內(nèi)核支持的DSP核; 多層次互連結(jié)構(gòu),用于連接CPU核與DSP核,為CPU核與DSP核之間提供用于任務(wù)調(diào)度、啟動(dòng)停止以及同步操作的快速細(xì)粒度通信以及通過(guò)高速DMA方式實(shí)現(xiàn)大粒度的數(shù)據(jù)通信;片內(nèi)共享存儲(chǔ)陣列,用于為CPU核與DSP核提供高帶寬供數(shù)支持,并提供包含數(shù)據(jù)失效和更新在內(nèi)的硬件直接支持的原子操作來(lái)支持高速緩存一致性操作;
片外存儲(chǔ)接口,用于為CPU核與DSP核實(shí)現(xiàn)片外存儲(chǔ)擴(kuò)展;
第一高速輸入輸出接口,用于實(shí)現(xiàn)CPU核的外部數(shù)據(jù)交換;
第二高速輸入輸出接口,用于實(shí)現(xiàn)DSP核的外部數(shù)據(jù)交換;
片間直連接口,用于支持通用計(jì)算數(shù)字信號(hào)處理器之間的片間直連;
核間同步裝置,用于提供DSP核間硬件同步機(jī)制以支持多核間的同步操作,某個(gè)DSP核通過(guò)核間同步裝置使得其它需要該核新數(shù)據(jù)的DSP核等待,該DSP核產(chǎn)生新數(shù)據(jù)并通過(guò)數(shù)據(jù)回寫機(jī)制寫回到片內(nèi)共享存儲(chǔ)陣列,該DSP核21通過(guò)核間同步裝置使得其它需要該核新數(shù)據(jù)的DSP核繼續(xù)運(yùn)行,其它需要該核新數(shù)據(jù)的DSP核通過(guò)數(shù)據(jù)作廢機(jī)制確保沒(méi)有舊的數(shù)據(jù)并從片內(nèi)共享存儲(chǔ)陣列中讀取新的數(shù)據(jù);
所述CPU核分別通過(guò)多層次互連結(jié)構(gòu)與DSP核相連,所述CPU核、DSP核分別與片內(nèi)共享存儲(chǔ)陣列相連,所述片內(nèi)共享存儲(chǔ)陣列與片外存儲(chǔ)接口相連,所述CPU核與第一高速輸入輸出接口相連,所述DSP核分別與第二高速輸入輸出接口、片間直連接口相連,所述核間同步裝置分別與各個(gè)DSP核相連。
[0006]作為本發(fā)明上述技術(shù)方案的進(jìn)一步改進(jìn):
所述DSP核包括:
64位標(biāo)量處理單元,用于實(shí)現(xiàn)操作系統(tǒng)微內(nèi)核的支持,作為主控單元負(fù)責(zé)標(biāo)量程序的執(zhí)行、負(fù)責(zé)與CPU核之間的通信以及對(duì)64位向量處理陣列的執(zhí)行控制,負(fù)責(zé)64位向量處理陣列中共享的相同操作;
64位向量處理陣列,用于支持應(yīng)用中密集運(yùn)算任務(wù)的解算;
指令派發(fā)部件,用于向64位標(biāo)量處理單元和64位向量處理陣列派發(fā)指令;
所述指令派發(fā)部件分別與64位標(biāo)量處理單元、64位向量處理陣列相連,所述64位標(biāo)量處理單元、64位向量處理陣列之間相互連接。
[0007]本發(fā)明還包括JTAG調(diào)試接口和PCIE接口,所述DSP核還包括一個(gè)可訪問(wèn)DSP核內(nèi)程序員可見(jiàn)的所有存儲(chǔ)器及寄存器的仿真調(diào)試部件,所述仿真調(diào)試部件通過(guò)內(nèi)部總線分別與JTAG調(diào)試接口、PCIE接口、CPU核單元相連。
[0008]本發(fā)明的通用計(jì)算數(shù)字信號(hào)處理器具有下述技術(shù)效果:
1、本發(fā)明包括CPU核單元,DSP核單元,多層次互連結(jié)構(gòu)、片內(nèi)共享存儲(chǔ)陣列、片外存儲(chǔ)接口、第一高速輸入輸出接口、第二高速輸入輸出接口、片間直連接口和同步裝置,CPU核與DSP核分別通過(guò)多層次互連結(jié)構(gòu)相連形成異構(gòu)多核的緊密耦合結(jié)構(gòu)與組織方式,CPU核與DSP核之間通過(guò)多層次互聯(lián)機(jī)制實(shí)現(xiàn)程序控制與數(shù)據(jù)處理緊密耦合的協(xié)作方式:一方面CPU核與DSP核之間設(shè)置快速的控制通路以及寄存器級(jí)的數(shù)據(jù)通路,高效支持具有細(xì)粒度、強(qiáng)實(shí)時(shí)性特點(diǎn)的控制與數(shù)據(jù)交互(如任務(wù)調(diào)度、啟動(dòng)停止、CPU核與DSP核間的協(xié)同程序跳轉(zhuǎn)以及快速同步等);另一方面CPU核與DSP核之間通過(guò)直接存儲(chǔ)器存取(DMA)通道以及共享存儲(chǔ)的方式實(shí)現(xiàn)大粒度的數(shù)據(jù)通信與共享,因此本發(fā)明能夠從不同的層次上實(shí)現(xiàn)了 CPU核與DSP核間的緊密協(xié)同配合,將嵌入式信號(hào)處理與通用科學(xué)計(jì)算相結(jié)合,既保持DSP嵌入式信號(hào)處理中的高度實(shí)時(shí)計(jì)算和低功耗的優(yōu)點(diǎn),又實(shí)現(xiàn)對(duì)通用科學(xué)計(jì)算的精度和通用性的支持。
[0009]2、本發(fā)明的DSP核單元包含至少一個(gè)用于提供對(duì)64位運(yùn)算以及操作系統(tǒng)微內(nèi)核支持的DSP核,適合科學(xué)計(jì)算精度與地址空間的寬數(shù)位DSP核結(jié)構(gòu)與組織方式。通過(guò)將DSP核的指令、數(shù)據(jù)位寬64位以上,地址總線40位以上,從而能夠支持64位雙精度浮點(diǎn)和64位定點(diǎn)算術(shù)邏輯計(jì)算,特別是支持64位雙精度浮點(diǎn)、定點(diǎn)乘加操作,采用包含至少64位位寬的通用寄存器文件和數(shù)據(jù)總線的數(shù)據(jù)通路支持高效的數(shù)據(jù)供給,通過(guò)對(duì)64位運(yùn)算的支持,可以實(shí)現(xiàn)對(duì)計(jì)算精度和尋址空間的大幅提升。
[0010]3、本發(fā)明融合DSP基本特征與通用計(jì)算的控制要求,通過(guò)CPU核用于負(fù)責(zé)包括存儲(chǔ)管理、文件控制、進(jìn)程調(diào)度、中斷管理任務(wù)在內(nèi)的通用事務(wù)管理以及提供對(duì)通用操作系統(tǒng)的完整支持,通過(guò)DSP核提供對(duì)64位運(yùn)算以及對(duì)僅具有任務(wù)調(diào)度以及存儲(chǔ)管理等基本功能的操作系統(tǒng)微內(nèi)核支持,在DSP核中實(shí)現(xiàn)對(duì)復(fù)雜流控結(jié)構(gòu)的適度支持,包括提供對(duì)限制向量陣列處理效率的分支指令的支持;提供對(duì)OS的多層次、可裁剪的支持方案,支持在片上存儲(chǔ)陣列中提供對(duì)諸如數(shù)據(jù)失效、更新等Cache —致性機(jī)制的適度支持,采取軟件、硬件協(xié)同配合的高速緩存的一致性方案,使得本發(fā)明能夠?qū)崿F(xiàn)對(duì)操作系統(tǒng)的多層次支持,明顯提高了本發(fā)明對(duì)任務(wù)管理、文件控制、進(jìn)程調(diào)度、中斷管理的軟硬件支持,方便了通用任務(wù)調(diào)度操作,與此同時(shí),多層次的支持方案也帶來(lái)了硬件實(shí)現(xiàn)的靈活性。
[0011]4、本發(fā)明能夠支持GPDSP結(jié)構(gòu)的統(tǒng)一并行編程方法,通過(guò)編譯指導(dǎo)語(yǔ)句描述CPU核間的線程級(jí)并行、多DSP核間的任務(wù)級(jí)并行、CPU核與DSP核之間的線程級(jí)并行與同步,并分別標(biāo)識(shí)CPU核與DSP核的代碼,在統(tǒng)一的編譯框架中分別調(diào)用CPU和DSP編譯器編譯不同的計(jì)算代碼,并統(tǒng)一鏈接為單芯片的可執(zhí)行代碼,實(shí)現(xiàn)GPDSP中多線程自動(dòng)并行和向量化的統(tǒng)一并行編程,有利于增強(qiáng)高級(jí)語(yǔ)言編程特別是對(duì)多核、向量運(yùn)算陣列等并行資源的開發(fā)效率,具有通用性和易用性好、應(yīng)用范圍廣的優(yōu)點(diǎn)。
[0012]5、本發(fā)明進(jìn)一步包括JTAG調(diào)試接口和PCIE接口,DSP核還包括一個(gè)可訪問(wèn)DSP核內(nèi)程序員可見(jiàn)的所有存儲(chǔ)器及寄存器的仿真調(diào)試部件,仿真調(diào)試部件通過(guò)內(nèi)部總線分別與JTAG調(diào)試接口、PCIE接口、CPU核單元相連,既提供本地CPU宿主調(diào)試、又同時(shí)保持它機(jī)交叉仿真調(diào)試的調(diào)試結(jié)構(gòu)與設(shè)計(jì)方法,因此能夠?qū)崿F(xiàn)它機(jī)宿主與DSP核之間地址資源(諸如寄存器、存儲(chǔ)器等資源)準(zhǔn)確、高速訪問(wèn)機(jī)制,實(shí)現(xiàn)對(duì)DSP運(yùn)行狀態(tài)的準(zhǔn)確獲取,方便實(shí)現(xiàn)對(duì)操作系統(tǒng)微內(nèi)核資源的查看和修改等高級(jí)調(diào)試,具有調(diào)試功能方便且快捷高效的優(yōu)點(diǎn)。
【專利附圖】

【附圖說(shuō)明】
[0013]圖1為本發(fā)明實(shí)施例的整體框架結(jié)構(gòu)示意圖。
[0014]圖2為本發(fā)明實(shí)施例中DSP核的框架結(jié)構(gòu)示意圖。
[0015]圖3為本發(fā)明實(shí)施例的調(diào)試接口示意圖。
[0016]圖4為本發(fā)明實(shí)施例的局部詳細(xì)框架結(jié)構(gòu)示意圖。
[0017]圖5為本發(fā)明實(shí)施例中多線程自動(dòng)并行和向量化的統(tǒng)一編程模型示意圖。
[0018]圖例說(shuō)明:1、CPU核單元;101、JTAG 調(diào)試接口 ;102、PCIE 接口 ;11、CPU 核;2、DSP核單元;21、DSP核;211、64位標(biāo)量處理單元;2111、指令控制部件;2112、一級(jí)高速緩沖;2113、標(biāo)量運(yùn)算單元;2114、標(biāo)量存儲(chǔ)控制部件;2115、標(biāo)量寄存器文件;212、64位向量處理陣列;2121、DMA部件;2122、共享陣列存儲(chǔ)體;2123、處理單元;2124、向量存儲(chǔ)控制部件;2125、向量寄存器文件;2126、向量運(yùn)算單元;213、指令派發(fā)部件;214、仿真調(diào)試部件;3、多層次互連結(jié)構(gòu);4、片內(nèi)共享存儲(chǔ)陣列;5、片外存儲(chǔ)接口 ;6、第一高速輸入輸出接口 ;7、第二高速輸入輸出接口 ;8、片間直連接口 ;9、核間同步裝置。
【具體實(shí)施方式】
[0019]如圖1所示,本實(shí)施例的通用計(jì)算數(shù)字信號(hào)處理器包括:
CPU核單元1,包含多個(gè)CPU核11,CPU核11用于負(fù)責(zé)包括存儲(chǔ)管理、文件控制、進(jìn)程調(diào)度、中斷管理任務(wù)在內(nèi)的通用事務(wù)管理以及提供對(duì)通用操作系統(tǒng)的完整支持;而且,CPU核單元I中包含CPU核11的數(shù)量可以根據(jù)需要進(jìn)調(diào)整,CPU核11的數(shù)量為I個(gè)以上均可以實(shí)現(xiàn)。
[0020]DSP核單元2,包含多個(gè)用于提供對(duì)64位運(yùn)算以及操作系統(tǒng)微內(nèi)核支持的DSP核21 ;而且,DSP核單元2中包含DSP核21的數(shù)量可以根據(jù)需要進(jìn)調(diào)整,DSP核21的數(shù)量為I個(gè)以上均可以實(shí)現(xiàn)。
[0021]多層次互連結(jié)構(gòu)3,用于連接CPU核11與DSP核21,為CPU核11與DSP核21之間提供用于任務(wù)調(diào)度、啟動(dòng)停止以及同步操作的快速細(xì)粒度通信以及通過(guò)高速DMA方式實(shí)現(xiàn)大粒度的數(shù)據(jù)通信。多層次互連結(jié)構(gòu)3連接CPU核11與DSP核21,既能夠通過(guò)“細(xì)粒度控制及數(shù)據(jù)通路”提供用于任務(wù)調(diào)度、啟動(dòng)停止以及同步操作的快速細(xì)粒度通信,又可以通過(guò)“快速DMA”的方式實(shí)現(xiàn)大粒度的數(shù)據(jù)通信。
[0022]片內(nèi)共享存儲(chǔ)陣列4,用于為CPU核11與DSP核21提供高帶寬供數(shù)支持,并提供包含數(shù)據(jù)失效和更新在內(nèi)的硬件直接支持的原子操作來(lái)支持高速緩存一致性操作。片內(nèi)共享存儲(chǔ)陣列4為CPU核11以及DSP核21提供高帶寬供數(shù)支持,進(jìn)一步增強(qiáng)了大粒度數(shù)據(jù)通信的效率,并對(duì)高速緩存一致性具有適度支持功能,可提供諸如數(shù)據(jù)失效和更新等硬件直接支持的原子操作。
[0023]片外存儲(chǔ)接口 5,用于為CPU核11與DSP核21實(shí)現(xiàn)片外存儲(chǔ)擴(kuò)展,使得存儲(chǔ)的擴(kuò)展更加靈活方便。
[0024]第一高速輸入輸出接口 6,用于實(shí)現(xiàn)CPU核11的外部數(shù)據(jù)交換。
[0025]第二高速輸入輸出接口 7,用于實(shí)現(xiàn)DSP核21的外部數(shù)據(jù)交換。
[0026]片間直連接口 8,用于支持通用計(jì)算數(shù)字信號(hào)處理器之間的片間直連。
[0027]核間同步裝置9,用于提供DSP核間硬件同步機(jī)制以支持多核間的同步操作,某個(gè)DSP核21通過(guò)核間同步裝置9使得其它需要該核新數(shù)據(jù)的DSP核21等待,該DSP核21產(chǎn)生新數(shù)據(jù)并通過(guò)數(shù)據(jù)回寫機(jī)制寫回到片內(nèi)共享存儲(chǔ)陣列4,該DSP核21通過(guò)核間同步裝置9使得其它需要該核新數(shù)據(jù)的DSP核21繼續(xù)運(yùn)行,其它需要該核新數(shù)據(jù)的DSP核21通過(guò)數(shù)據(jù)作廢機(jī)制確保沒(méi)有舊的數(shù)據(jù)并從片內(nèi)共享存儲(chǔ)陣列4中讀取新的數(shù)據(jù)。
[0028]CPU核11分別通過(guò)多層次互連結(jié)構(gòu)3與DSP核21相連,CPU核11、DSP核21分另Ij與片內(nèi)共享存儲(chǔ)陣列4相連,片內(nèi)共享存儲(chǔ)陣列4與片外存儲(chǔ)接口 5相連,CPU核11與第一高速輸入輸出接口 6相連,DSP核21分別與第二高速輸入輸出接口 7、片間直連接口 8相連,核間同步裝置9分別與各個(gè)DSP核21相連。
[0029]如圖2所示,DSP核21包括:
64位標(biāo)量處理單元211,用于實(shí)現(xiàn)操作系統(tǒng)微內(nèi)核的支持,作為主控單元負(fù)責(zé)標(biāo)量程序的執(zhí)行、負(fù)責(zé)與CPU核11之間的高效通信以及對(duì)64位向量處理陣列212的執(zhí)行控制,負(fù)責(zé)64位向量處理陣列212中共享的相同操作(包括公共變量的配置和修改、處理陣列的統(tǒng)一流控操作)。
[0030]64位向量處理陣列212,用于支持應(yīng)用中密集運(yùn)算任務(wù)的解算。
[0031]指令派發(fā)部件213,用于向64位標(biāo)量處理單元211和64位向量處理陣列212派發(fā)指令。
[0032]指令派發(fā)部件213分別與64位標(biāo)量處理單元211、64位向量處理陣列212相連,64位標(biāo)量處理單元211、64位向量處理陣列212之間相互連接。
[0033]本實(shí)施例的DSP核21通過(guò)64位標(biāo)量處理單元211、64位向量處理陣列212,能夠提供對(duì)64位運(yùn)算的支持,特別是提供對(duì)雙精度浮點(diǎn)和定點(diǎn)操作的高效支持,通過(guò)其64位標(biāo)量處理單元211提供對(duì)僅支持進(jìn)程調(diào)度、存儲(chǔ)管理等基本功能的操作系統(tǒng)微內(nèi)核的支持,通過(guò)其64位向量處理陣列212支持應(yīng)用中密集運(yùn)算任務(wù)的解算。在執(zhí)行計(jì)算時(shí),指令派發(fā)部件213分別派發(fā)出標(biāo)量指令給64位標(biāo)量處理單元211、派發(fā)向量指令到64位向量處理陣列212。64位標(biāo)量處理單元211和64位向量處理陣列212之間協(xié)同配合,提供對(duì)影響向量陣列執(zhí)行效率的復(fù)雜流控操作的適度支持,例如對(duì)循環(huán)體中分支結(jié)構(gòu)的支持,這些流控操作包括循環(huán)體中的分支結(jié)構(gòu),以及while類循環(huán)次數(shù)不確定的循環(huán)結(jié)構(gòu)。
[0034]如圖3所示,本實(shí)施例還包括JTAG調(diào)試接口 101和PCIE接口 102,DSP核21還包括一個(gè)可訪問(wèn)DSP核21內(nèi)程序員可見(jiàn)的所有存儲(chǔ)器及寄存器的仿真調(diào)試部件214,仿真調(diào)試部件214通過(guò)內(nèi)部總線分別與JTAG調(diào)試接口 10UPCIE接口 102、CPU核單元I相連。仿真調(diào)試部件214可以,提供對(duì)DSP核單元2運(yùn)行狀態(tài)的準(zhǔn)確獲取,以及對(duì)操作系統(tǒng)微內(nèi)核資源的查看和修改等高級(jí)調(diào)試功能,這些存儲(chǔ)器和寄存器也被64位標(biāo)量處理單元211、64位向量處理陣列212訪問(wèn)。由于仿真調(diào)試部件214通過(guò)內(nèi)部總線分別與JTAG調(diào)試接口 101、PCIE接口 102、CPU核單元I相連,因此本實(shí)施例能夠支持三種調(diào)試模式:JTAG調(diào)試模式、PCIE調(diào)試模式和CPU調(diào)試模式。仿真調(diào)試部件214支持來(lái)自JTAG調(diào)試接口 101的調(diào)試請(qǐng)求,并根據(jù)這些請(qǐng)求訪問(wèn)本實(shí)施例內(nèi)的存儲(chǔ)器或寄存器。JTAG調(diào)試接口 101是傳統(tǒng)DSP普遍支持的仿真接口,支持外部主機(jī)訪問(wèn)DSP內(nèi)部存儲(chǔ)器和寄存器。由于JTAG調(diào)試接口 101使用的JTAG接口協(xié)議屬于串行協(xié)議,且時(shí)鐘頻率通常小于100MHz,其訪問(wèn)速度較慢。本實(shí)施例還支持通過(guò)內(nèi)部總線支持本地的CPU核單元I或外部主機(jī)通過(guò)PCIE接口 102的調(diào)試請(qǐng)求,由于內(nèi)部總線采用并行傳輸協(xié)議且工作頻率遠(yuǎn)大于JTAG調(diào)試接口 101的接口頻率,因此能夠支持高速調(diào)試訪問(wèn)。通過(guò)這種高速調(diào)試訪問(wèn),CPU核11與DSP核21之間就具有快速的控制通路以及寄存器級(jí)的數(shù)據(jù)通路,對(duì)諸如任務(wù)調(diào)度、啟動(dòng)停止、CPU核11與DSP核21間的協(xié)同程序跳轉(zhuǎn)以及快速同步等具有細(xì)粒度、強(qiáng)實(shí)時(shí)性特點(diǎn)的交互提供高效支持。
[0035]本實(shí)施例融合了 DSP基本特征與通用計(jì)算的控制要求,通過(guò)CPU核11提供對(duì)OS的完整支持,DSP核21采用超長(zhǎng)指令字結(jié)構(gòu),DSP核21包含64位標(biāo)量處理單元211和64位向量處理陣列212,64位標(biāo)量處理單元211能夠?qū)崿F(xiàn)對(duì)僅具有任務(wù)調(diào)度以及存儲(chǔ)管理等基本功能的OS微內(nèi)核的支持。如圖4所示,64位標(biāo)量處理單元211內(nèi)部包括指令控制部件2111、一級(jí)高速緩沖2112、標(biāo)量運(yùn)算單元2113、標(biāo)量存儲(chǔ)控制部件2114、標(biāo)量寄存器文件2115,指令控制部件2111分別與指令派發(fā)部件213、標(biāo)量寄存器文件2115、一級(jí)高速緩沖2112相連,一級(jí)高速緩沖2112與片內(nèi)共享存儲(chǔ)陣列4相連,標(biāo)量存儲(chǔ)控制部件2114分別與一級(jí)高速緩沖2112、標(biāo)量寄存器文件2115相連,標(biāo)量運(yùn)算單元2113則與標(biāo)量寄存器文件2115相連。指令控制部件2111負(fù)責(zé)從一級(jí)高速緩沖2112中獲取指令并發(fā)送到指令派發(fā)部件213,指令派發(fā)部件213再將相應(yīng)指令分別發(fā)送到64位標(biāo)量處理單元211、64位向量處理陣列212中進(jìn)行處理。64位向量處理陣列212包括DMA部件2121、共享陣列存儲(chǔ)體2122和同構(gòu)或異構(gòu)的多個(gè)處理單元2123,處理單元2123之間通過(guò)共享陣列存儲(chǔ)體2122實(shí)現(xiàn)數(shù)據(jù)的協(xié)同處理與相互通信,共享陣列存儲(chǔ)體2122則通過(guò)DMA部件2121與片內(nèi)共享存儲(chǔ)陣列4相連。其中,處理單元2123用于負(fù)責(zé)應(yīng)用中密集運(yùn)算任務(wù)的解算,每一個(gè)處理單元2123包括依次相連的向量存儲(chǔ)控制部件2124、向量寄存器文件2125和向量運(yùn)算單元2126。需要說(shuō)明的是,本實(shí)施例也可以根據(jù)需要采用其它結(jié)構(gòu)的64位標(biāo)量處理單元211和64位向量處理陣列212,在此不再贅述。本實(shí)施例中,DSP核21能夠?qū)崿F(xiàn)對(duì)復(fù)雜流控結(jié)構(gòu)的適度支持,首先DSP核21通過(guò)兩種機(jī)制來(lái)減少分支開銷:第一種機(jī)制是采用條件執(zhí)行指令,條件執(zhí)行指令可根據(jù)寄存器文件(標(biāo)量寄存器文件2115或者向量寄存器文件2125)中某一寄存器狀態(tài)判斷是否執(zhí)行,如果不執(zhí)行,該指令轉(zhuǎn)變?yōu)榭詹僮?。分支條件的值被放入某一寄存器,基本塊中的指令均可使用條件指令,而不需要使用分支指令,避免分支帶來(lái)的開銷。同時(shí),采用分支延遲槽將分支前面的基本塊指令調(diào)度到分支延遲槽中,硬件保證在執(zhí)行分支指令后,分支延遲槽內(nèi)的指令必須執(zhí)行。該機(jī)制可減少分支指令的開銷。第二種機(jī)制是基于向量處理陣列狀態(tài)的分支指令,該指令根據(jù)64位向量處理陣列212中每個(gè)向量寄存器文件2125中的某一同編號(hào)寄存器的值決定是否發(fā)生跳轉(zhuǎn)。各個(gè)DSP核21之間的數(shù)據(jù)一致性維護(hù)由軟件和硬件協(xié)同完成,硬件提供一級(jí)高速緩沖2112的數(shù)據(jù)寫回機(jī)制以及核間同步轉(zhuǎn)置,軟件通過(guò)操作一級(jí)高速緩沖2112以及核間同步裝置9實(shí)現(xiàn)核間數(shù)據(jù)一致性操作。此外,DSP核21的一級(jí)高速緩沖2112還提供數(shù)據(jù)作廢機(jī)制,可使一級(jí)高速緩沖2112內(nèi)的全部或部分?jǐn)?shù)據(jù)無(wú)效,核間同步裝置9實(shí)現(xiàn)多個(gè)DSP核21之間的同步,本實(shí)施例中維護(hù)核間數(shù)據(jù)一致性的詳細(xì)步驟如下:(I)某個(gè)DSP核21通過(guò)核間同步裝置9使得其它需要該核新數(shù)據(jù)的DSP核21等待;(2)該DSP核21產(chǎn)生新數(shù)據(jù)并通過(guò)一級(jí)高速緩沖2112提供的數(shù)據(jù)回寫機(jī)制,將新數(shù)據(jù)寫回到片內(nèi)共享存儲(chǔ)陣列4 ;(3)該DSP核21通過(guò)核間同步裝置9,使得其它需要該核新數(shù)據(jù)的DSP核21繼續(xù)運(yùn)行;(4)其它需要該DSP核21新數(shù)據(jù)的核通過(guò)一級(jí)高速緩沖2112的數(shù)據(jù)作廢機(jī)制確保沒(méi)有舊的數(shù)據(jù),并從片內(nèi)共享存儲(chǔ)陣列4中讀取新的數(shù)據(jù)。
[0036]本實(shí)施例的硬件結(jié)構(gòu)能夠支持GPDSP結(jié)構(gòu)的統(tǒng)一并行編程方法,本實(shí)施例的統(tǒng)一并行編程實(shí)現(xiàn)方法是在標(biāo)準(zhǔn)的OpenMP并行編程方法基礎(chǔ)上,通過(guò)擴(kuò)充若干DSP編譯指導(dǎo)語(yǔ)句,實(shí)現(xiàn)對(duì)CPU+DSP異構(gòu)多核處理器中多線程自動(dòng)并行和向量化的統(tǒng)一并行編程,通過(guò)編譯指導(dǎo)語(yǔ)句描述CPU核11間的線程級(jí)并行、多DSP核21間的任務(wù)級(jí)并行、CPU核11與DSP核21之間的線程級(jí)并行與同步,并分別標(biāo)識(shí)CPU核11與DSP核21的代碼,在統(tǒng)一的編譯框架中分別調(diào)用CPU和DSP編譯器編譯不同的計(jì)算代碼,并統(tǒng)一鏈接為單芯片的可執(zhí)行代碼,實(shí)現(xiàn)多線程自動(dòng)并行和向量化的統(tǒng)一并行編程。如圖5所示,本實(shí)施例支持的通用計(jì)算數(shù)字信號(hào)處理器的統(tǒng)一并行編程方法的詳細(xì)步驟如下:
1)程序員使用標(biāo)準(zhǔn)編程語(yǔ)言和語(yǔ)法(如標(biāo)準(zhǔn)C/C++語(yǔ)法)編寫應(yīng)用程序,同時(shí)在要求CPU核單元多線程并行執(zhí)行的語(yǔ)句塊前插入OpenMP編譯指導(dǎo)語(yǔ)句、在要求DSP核單元執(zhí)行計(jì)算的語(yǔ)句塊前插入DSP編譯指導(dǎo)語(yǔ)句;
2)在編譯應(yīng)用程序時(shí),OpenMP編譯指導(dǎo)語(yǔ)句指導(dǎo)CPU編譯器實(shí)現(xiàn)多線程自動(dòng)并行化,DSP編譯指導(dǎo)語(yǔ)句指導(dǎo)DSP編譯器實(shí)現(xiàn)DSP核端的向量化代碼編譯;
3) CPU端編譯器工具對(duì)CPU端的目標(biāo)代碼和DSP端的目標(biāo)代碼進(jìn)行統(tǒng)一編譯和鏈接,最終輸出可用于通用計(jì)算數(shù)字信號(hào)處理器執(zhí)行的可執(zhí)行代碼。
[0037]因此,根據(jù)不同通用科學(xué)計(jì)算的需要進(jìn)行上述步驟I)?3)進(jìn)行統(tǒng)一并行編程即可得到對(duì)應(yīng)的可執(zhí)行代碼,可執(zhí)行代碼可直接使用通用計(jì)算數(shù)字信號(hào)處理器執(zhí)行,從而能夠利用本實(shí)施例通用計(jì)算數(shù)字信號(hào)處理器中CPU核單元I和DSP核單元2,在保持嵌入式DSP基本特征和高性能低功耗的優(yōu)勢(shì)的基礎(chǔ)上,高效地支持通用科學(xué)計(jì)算。本實(shí)施例支持的統(tǒng)一并行編程方法通過(guò)編譯指導(dǎo)語(yǔ)句描述CPU核間的線程級(jí)并行、多DSP核間的任務(wù)級(jí)并行、CPU核與DSP核之間的線程級(jí)并行與同步,并分別標(biāo)識(shí)CPU核與DSP核的代碼,在統(tǒng)一的編譯框架中分別調(diào)用CPU和DSP編譯器編譯不同的計(jì)算代碼,并統(tǒng)一鏈接為單芯片的可執(zhí)行代碼,實(shí)現(xiàn)GPDSP中多線程自動(dòng)并行和向量化的統(tǒng)一并行編程,有利于增強(qiáng)高級(jí)語(yǔ)言編程特別是對(duì)多核、向量運(yùn)算陣列等并行資源的開發(fā)效率,具有通用性和易用性好、應(yīng)用范圍廣的優(yōu)點(diǎn)。
[0038]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,本發(fā)明的保護(hù)范圍并不僅局限于上述實(shí)施例,凡屬于本發(fā)明思路下的技術(shù)方案均屬于本發(fā)明的保護(hù)范圍。應(yīng)當(dāng)指出,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理前提下的若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種通用計(jì)算數(shù)字信號(hào)處理器,其特征在于包括: CPU核單元(I ),包含至少一個(gè)CPU核(11 ),所述CPU核(11)用于負(fù)責(zé)包括存儲(chǔ)管理、文件控制、進(jìn)程調(diào)度、中斷管理任務(wù)在內(nèi)的通用事務(wù)管理以及提供對(duì)通用操作系統(tǒng)的完整支持; DSP核單元(2),包含至少一個(gè)用于提供對(duì)64位運(yùn)算以及操作系統(tǒng)微內(nèi)核支持的DSP核(21); 多層次互連結(jié)構(gòu)(3),用于連接CPU核(11)與DSP核(21),為CPU核(11)與DSP核(21)之間提供用于任務(wù)調(diào)度、啟動(dòng)停止以及同步操作的快速細(xì)粒度通信以及通過(guò)高速DMA方式實(shí)現(xiàn)大粒度的數(shù)據(jù)通信; 片內(nèi)共享存儲(chǔ)陣列(4 ),用于為CPU核(11)與DSP核(21)提供高帶寬供數(shù)支持,并提供包含數(shù)據(jù)失效和更新在內(nèi)的硬件直接支持的原子操作來(lái)支持高速緩存一致性操作;片外存儲(chǔ)接口(5),用于為CPU核(11)與DSP核(21)實(shí)現(xiàn)片外存儲(chǔ)擴(kuò)展; 第一高速輸入輸出接口(6),用于實(shí)現(xiàn)CPU核(11)的外部數(shù)據(jù)交換; 第二高速輸入輸出接口(7),用于實(shí)現(xiàn)DSP核(21)的外部數(shù)據(jù)交換; 片間直連接口(8),用于支持通用計(jì)算數(shù)字信號(hào)處理器之間的片間直連; 核間同步裝置(9),用于提供DSP核間硬件同步機(jī)制以支持多核間的同步操作;某個(gè)DSP核(21)通過(guò)核間同步裝置(9 )使得其它需要該核新數(shù)據(jù)的DSP核(21)等待,該DSP核(21)產(chǎn)生新數(shù)據(jù)并通過(guò)數(shù)據(jù)回寫機(jī)制寫回到片內(nèi)共享存儲(chǔ)陣列(4),該DSP核(21)通過(guò)核間同步裝置(9)使得其它需要該核新數(shù)據(jù)的DSP核(21)繼續(xù)運(yùn)行,其它需要該核新數(shù)據(jù)的DSP核(21)通過(guò)數(shù)據(jù)作廢機(jī)制確保沒(méi)有舊的數(shù)據(jù)并從片內(nèi)共享存儲(chǔ)陣列(4)中讀取新的數(shù)據(jù);` 所述CPU核(11)分別通過(guò)多層次互連結(jié)構(gòu)(3)與DSP核(21)相連,所述CPU核(11 )、DSP核(21)分別與片內(nèi)共享存儲(chǔ)陣列(4)相連,所述片內(nèi)共享存儲(chǔ)陣列(4)與片外存儲(chǔ)接口( 5 )相連,所述CPU核(11)與第一高速輸入輸出接口( 6 )相連,所述DSP核(21)分別與第二高速輸入輸出接口(7)、片間直連接口(8)相連,所述核間同步裝置(9)分別與各個(gè)DSP核(21)相連。
2.根據(jù)權(quán)利要求1所述的通用計(jì)算數(shù)字信號(hào)處理器,其特征在于所述DSP核(21)包括: 64位標(biāo)量處理單元(211),用于實(shí)現(xiàn)操作系統(tǒng)微內(nèi)核的支持,作為主控單元負(fù)責(zé)標(biāo)量程序的執(zhí)行、負(fù)責(zé)與CPU核(11)之間的通信以及對(duì)64位向量處理陣列(212)的執(zhí)行控制,負(fù)責(zé)64位向量處理陣列(212)中共享的相同操作; 64位向量處理陣列(212),用于支持應(yīng)用中密集運(yùn)算任務(wù)的解算; 指令派發(fā)部件(213 ),用于向64位標(biāo)量處理單元(211)和64位向量處理陣列(212 )派發(fā)指令; 所述指令派發(fā)部件(213 )分別與64位標(biāo)量處理單元(211 )、64位向量處理陣列(212 )相連,所述64位標(biāo)量處理單元(211)、64位向量處理陣列(212)之間相互連接。
3.根據(jù)權(quán)利要求1或2所述的通用計(jì)算數(shù)字信號(hào)處理器,其特征在于:還包括JTAG調(diào)試接口(101)和PCIE接口(102),所述DSP核(21)還包括一個(gè)可訪問(wèn)DSP核(21)內(nèi)程序員可見(jiàn)的所有存儲(chǔ)器及寄存器的仿真調(diào)試部件(214),所述仿真調(diào)試部件(214)通過(guò)內(nèi)部總線分別與jtag調(diào)試接口(101)、pcie 接口(102)、cpu核單元(1) 相連
【文檔編號(hào)】G06F15/167GK103714039SQ201310725118
【公開日】2014年4月9日 申請(qǐng)日期:2013年12月25日 優(yōu)先權(quán)日:2013年12月25日
【發(fā)明者】陳書明, 楊學(xué)軍, 萬(wàn)江華, 劉仲, 陳海燕, 郭陽(yáng) 申請(qǐng)人:中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
济源市| 福鼎市| 怀柔区| 新竹县| 西宁市| 潍坊市| 溧阳市| 广西| 垦利县| 塘沽区| 鹤峰县| 宝兴县| 姚安县| 高阳县| 朝阳县| 全南县| 咸丰县| 行唐县| 江达县| 美姑县| 临沂市| 秦皇岛市| 抚宁县| 孙吴县| 广东省| 梓潼县| 天气| 开原市| 岳普湖县| 新化县| 谢通门县| 新闻| 焉耆| 沈丘县| 丘北县| 宝鸡市| 泊头市| 赤水市| 商南县| 交口县| 惠来县|