本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種用于數(shù)字信號(hào)處理技術(shù)(英文全稱:digitalsignalprocess,英文簡稱:dsp)芯片文件加載的系統(tǒng)及方法。
背景技術(shù):
dsp芯片具有強(qiáng)大的數(shù)據(jù)處理能力和較高的運(yùn)行速度,在通信技術(shù)領(lǐng)域中日益得到廣泛應(yīng)用。系統(tǒng)設(shè)計(jì)時(shí),常將dsp芯片作為數(shù)據(jù)處理單元。
傳統(tǒng)dsp芯片文件加載方案主要實(shí)現(xiàn)方式是事先利用仿真器將文件燒錄到dsp芯片中,再對系統(tǒng)上電進(jìn)行加載。后來出現(xiàn)利用仿真器將文件燒錄到外部存儲(chǔ)器中,將存儲(chǔ)器設(shè)計(jì)成可插拔模塊,通過插針和插座與電路板連接在一起,通過更換存儲(chǔ)器模塊再對系統(tǒng)上電來更換加載到dsp芯片中的文件。
現(xiàn)有的dsp芯片文件加載方案在文件加載前需對系統(tǒng)進(jìn)行斷電處理,該方案實(shí)現(xiàn)過程比較復(fù)雜,文件加載速率較低,成本相對較高。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種用于數(shù)字信號(hào)處理器芯片文件加載的系統(tǒng)及方法以解決現(xiàn)有技術(shù)在文件加載前需對系統(tǒng)進(jìn)行斷電處理文件加載速率較低和成本高的問題。為了對披露的實(shí)施例的一些方面有一個(gè)基本的理解,下面給出了簡單的概括。該概括部分不是泛泛評述,也不是要確定關(guān)鍵/重要組成元素或描繪這些實(shí)施例的保護(hù)范圍。其唯一目的是用簡單的形式呈現(xiàn)一些概念,以此作為后面的詳細(xì)說明的序言。
根據(jù)本發(fā)明實(shí)施例的第一方面,提供了一種用于dsp芯片文件加載的系統(tǒng),其特征在于,包括:一個(gè)主控制模塊,一個(gè)現(xiàn)場可編程門陣列(英文全稱:field-programmablegatearray,英文簡稱:fpga)芯片和多個(gè)dsp芯片;所述主控制模塊和所述fpga芯片采用緊湊型外設(shè)部件互連標(biāo)準(zhǔn)(英文全稱:compactperipheralcomponentinterconnect,英文簡稱:cpci)總線連接;所述主控制模塊,用于接收控制指令并根據(jù)所述控制指令中目標(biāo)文件的名稱調(diào)用目標(biāo)文件并加載所述目標(biāo)文件至所述fpga芯片;其中,所述主控制模塊包括:基于公共對象請求代理體系結(jié)構(gòu)(英文全稱:commonobjectrequestbrokerarchitecture,英文簡稱:corba)規(guī)范的軟件通信體系框架sca中間件、cpci總線接口和操作系統(tǒng);所述基于corba規(guī)范的軟件通信體系框架(英文全稱:servicecomponentarchitecture,英文簡稱:sca)中間件包括波形應(yīng)用組件和設(shè)備組件;所述操作系統(tǒng)包括外設(shè)部件互連標(biāo)準(zhǔn)(英文全稱:peripheralcomponentinterconnect,英文簡稱:pci)驅(qū)動(dòng);所述波形應(yīng)用組件,用于根據(jù)所述控制指令中dsp芯片id尋找所述設(shè)備組件并將所述控制指令發(fā)送給所述設(shè)備組件;所述設(shè)備組件,用于調(diào)用所述pci驅(qū)動(dòng)讀取目標(biāo)文件;所述pci驅(qū)動(dòng),用于將所述目標(biāo)文件發(fā)送至所述fpga芯片;所述fpga芯片,用于引導(dǎo)加載所述目標(biāo)文件至所述多個(gè)dsp芯片;所述波形應(yīng)用組件和所述設(shè)備組件通過基于corba規(guī)范的接口通信;所述設(shè)備組件還連接至所述cpci總線接口,并通過所述cpci總線接口與所述cpci總線連接;所述多個(gè)dsp芯片之間通過超鏈接hyperlink接口互聯(lián)。
可選地,所述控制指令包括目標(biāo)文件名稱、配置參數(shù)和dsp芯片id;所述fpga芯片按所述dsp芯片id引導(dǎo)加載所述目標(biāo)文件至相應(yīng)的dsp芯片;控制指令包括目標(biāo)文件名稱、配置參數(shù)和dsp芯片id,可以使系統(tǒng)有目的的進(jìn)行文件選擇和加載,加快系統(tǒng)處理速度。
可選地,還包括一個(gè)功能選擇模塊,用于進(jìn)行功能選擇和設(shè)置配置參數(shù)生成控制指令;所述功能選擇模塊和所述主控制模塊通過基于公共對象請求代理體系結(jié)構(gòu)corba規(guī)范的接口通過局域網(wǎng)lan總線進(jìn)行通信。所述功能選擇模塊和所述主控制模塊分工明確,相互連通保證系統(tǒng)工作的完整性。
可選地,所述波形應(yīng)用組件與所述功能選擇模塊中提供的功能選項(xiàng)一一對應(yīng)。所述設(shè)備組件與dsp芯片一一對應(yīng)。所述波形應(yīng)用組件可被加載到不同的所述設(shè)備組件上。所述波形應(yīng)用組件、所述功能選擇模塊中提供的功能選項(xiàng)、所述設(shè)備組件和所述dsp芯片的對應(yīng)關(guān)系保證系統(tǒng)間互連、互通和互操作,降低了開發(fā)的復(fù)雜性,減少了開發(fā)成本。
可選地,所述主控制模塊運(yùn)行的操作系統(tǒng)是vxworks系統(tǒng),所述vxworks系統(tǒng)包含所述pci驅(qū)動(dòng)。
可選地,所述dsp芯片各外接一個(gè)閃存(英文全稱:flasheeprom,英文簡稱:flash)和一個(gè)雙倍速率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器(英文全稱:dualdataratesynchronousdynamicrandomaccessmemory,英文簡稱:ddr),在所述flash內(nèi)固化了dsp芯片驅(qū)動(dòng)文件,用于在所述fpga芯片通過通用輸入/輸出(英文全稱:generalpurposeinputoutput,英文簡稱:gpio)接口給出控制信號(hào)后加載完成dsp芯片的初始化;所述ddr,用于存儲(chǔ)所述目標(biāo)文件。
可選地,所述多個(gè)dsp芯片為兩個(gè)dsp芯片。
可選的,所述控制指令中dsp芯片id用于對各dsp芯片進(jìn)行區(qū)分,包括:設(shè)備號(hào),或,設(shè)備號(hào)和廠商號(hào)。
根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種用于dsp芯片文件加載的方法,包括:主控制模塊接收控制指令;所述主控制模塊解析所述控制指令,得出所述控制指令中包含的目標(biāo)文件的名稱;所述主控制模塊根據(jù)所述目標(biāo)文件的名稱選擇波形應(yīng)用組件;所述波形應(yīng)用組件根據(jù)所述控制指令中包含的dsp芯片id尋找設(shè)備組件并傳遞所述控制指令;所述設(shè)備組件接收所述波形應(yīng)用組件傳遞的所述控制指令;所述設(shè)備組件根據(jù)所述控制指令中目標(biāo)文件的名稱調(diào)用所述pci驅(qū)動(dòng)讀取所述目標(biāo)文件;所述pci驅(qū)動(dòng)將所述目標(biāo)文件發(fā)送至fpga芯片;所述fpga芯片加載所述目標(biāo)文件至所述dsp芯片id對應(yīng)的dsp芯片。
可選地,所述控制指令由功能選擇模塊發(fā)送,所述控制指令包括目標(biāo)文件名稱、配置參數(shù)和dsp芯片id;所述fpga芯片按所述dsp芯片id引導(dǎo)加載所述目標(biāo)文件至相應(yīng)的dsp芯片;控制指令包括目標(biāo)文件名稱、配置參數(shù)和dsp芯片id,可以使系統(tǒng)有目的的進(jìn)行文件選擇和加載,加快系統(tǒng)處理速度。
可選地,所述控制指令中dsp芯片id用于對各dsp芯片進(jìn)行區(qū)分,包括:設(shè)備號(hào),或,設(shè)備號(hào)和廠商號(hào)。
可選地,所述目標(biāo)文件存儲(chǔ)在所述dsp芯片外接的ddr內(nèi)。
可選地,在功能選擇模塊發(fā)送控制指令之前還包括:對所述fpga芯片上電;對所述功能選擇模塊,所述主控制模塊和所述dsp芯片上電。
可選地,還包括:所述fpga芯片發(fā)送控制信號(hào);所述dsp芯片根據(jù)所述控制信號(hào)加載固化在所述dsp芯片外接的flash內(nèi)的dsp芯片驅(qū)動(dòng)文件。
本發(fā)明實(shí)施例提供的技術(shù)方案可以包括以下有益效果:
本實(shí)施例提供的系統(tǒng)基于sca進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì),硬件結(jié)構(gòu)采用dsp+fpga架構(gòu),實(shí)現(xiàn)對dsp芯片文件動(dòng)態(tài)加載,整個(gè)過程不需要重啟加載,提高文件的加載效率,提高了系統(tǒng)的靈活性和兼容性,降低了系統(tǒng)成本低。
應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實(shí)施例,并與說明書一起用于解釋本發(fā)明的原理。
圖1是根據(jù)一示例性實(shí)施例示出的一種用于dsp芯片文件加載的系統(tǒng)結(jié)構(gòu)示意圖;
圖2是根據(jù)一示例性實(shí)施例示出的一種用于dsp芯片文件加載的系統(tǒng)結(jié)構(gòu)示意圖;
圖3是根據(jù)一示例性實(shí)施例示出的一種用于dsp芯片文件加載的方法的框圖;
圖4是根據(jù)一示例性實(shí)施例示出的一種用于dsp芯片文件加載的方法的框圖。
具體實(shí)施方式
以下描述和附圖充分地示出本發(fā)明的具體實(shí)施方案,以使本領(lǐng)域的技術(shù)人員能夠?qū)嵺`它們。實(shí)施例僅代表可能的變化。除非明確要求,否則單獨(dú)的部件和功能是可選的,并且操作的順序可以變化。一些實(shí)施方案的部分和特征可以被包括在或替換其他實(shí)施方案的部分和特征。本發(fā)明的實(shí)施方案的范圍包括權(quán)利要求書的整個(gè)范圍,以及權(quán)利要求書的所有可獲得的等同物。在本文中,各實(shí)施方案可以被單獨(dú)地或總地用術(shù)語“發(fā)明”來表示,這僅僅是為了方便,并且如果事實(shí)上公開了超過一個(gè)的發(fā)明,不是要自動(dòng)地限制該應(yīng)用的范圍為任何單個(gè)發(fā)明或發(fā)明構(gòu)思。本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用于將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不要求或者暗示這些實(shí)體或操作之間存在任何實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素本文中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對于實(shí)施例公開的結(jié)構(gòu)、產(chǎn)品等而言,由于其與實(shí)施例公開的部分相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
如圖1所示,本發(fā)明實(shí)施例提供的用于dsp芯片文件加載的系統(tǒng)包括:一個(gè)主控制模塊1200,一個(gè)fpga芯片1300和多個(gè)dsp芯片。
主控制模塊1200和fpga芯片1300采用緊湊型外設(shè)部件互連標(biāo)準(zhǔn)cpci總線連接。主控制模塊1200,用于接收控制指令并根據(jù)控制指令調(diào)用目標(biāo)文件并加載目標(biāo)文件至fpga芯片1300。
其中,主控制模塊1200包括:基于corba規(guī)范的軟件通信體系框架sca中間件、cpci總線接口和操作系統(tǒng),基于corba規(guī)范的sca中間件包括波形應(yīng)用組件1201和設(shè)備組件1202,操作系統(tǒng)包括外設(shè)部件互連標(biāo)準(zhǔn)pci驅(qū)動(dòng),波形應(yīng)用組件1201,用于根據(jù)控制指令中dsp芯片id尋找設(shè)備組件1202并將控制指令發(fā)送給設(shè)備組件1202。設(shè)備組件1202是與dsp芯片相映射的軟件模塊。與每個(gè)dsp芯片對應(yīng)的有一個(gè)設(shè)備組件1202。設(shè)備組件1202,用于調(diào)用pci驅(qū)動(dòng)讀取目標(biāo)文件,pci驅(qū)動(dòng)將目標(biāo)文件發(fā)送至fpga芯片1300,波形應(yīng)用組件1201和設(shè)備組件1202通過基于corba規(guī)范的接口通信,設(shè)備組件1202還連接至cpci總線接口,并通過cpci總線接口與cpci總線連接。
基于sca的系統(tǒng)架構(gòu)在不同的層面對硬件和軟件進(jìn)行詳細(xì)地定義,為系統(tǒng)的設(shè)計(jì)和開發(fā)提供了詳細(xì)的規(guī)范,建立了獨(dú)立于設(shè)備的結(jié)構(gòu)框架,使系統(tǒng)具有組件的可移植性和復(fù)用性,并確保根據(jù)sca開發(fā)的產(chǎn)品之間的兼容性。sca能保證基于該規(guī)范的各種系統(tǒng)間實(shí)現(xiàn)互連、互通和互操作,同時(shí),它還為不同的sca波形應(yīng)用組件提供了可移植的平臺(tái),并通過充分采用corba規(guī)范封裝復(fù)雜的接口,降低了開發(fā)的復(fù)雜性,減少了開發(fā)成本。憑借sca技術(shù)能夠?qū)崿F(xiàn)文件的動(dòng)態(tài)切換,不需要將設(shè)備斷電或是重啟再加載文件。
fpga芯片1300,用于引導(dǎo)加載目標(biāo)文件至多個(gè)dsp芯片,多個(gè)dsp芯片之間通過超鏈接hyperlink接口互聯(lián)。
hyperlink接口為dsp芯片之間提供一種高速、低延遲,引腳數(shù)少的通信連接接口。數(shù)據(jù)傳輸速度比以往單一的地址數(shù)據(jù)總線更具優(yōu)勢,能滿足高速率的數(shù)據(jù)傳輸要求。
dsp芯片具有強(qiáng)大的數(shù)據(jù)處理能力,可處理復(fù)雜的數(shù)據(jù)類型,軟件算法易修改,外設(shè)資源豐富。本發(fā)明實(shí)施例系統(tǒng)結(jié)構(gòu)硬件采用dsp+fpga架構(gòu),dsp芯片作為處理中心,通過數(shù)據(jù)總線完成與fpga芯片的數(shù)據(jù)交換,實(shí)現(xiàn)復(fù)雜數(shù)據(jù)通信和外部控制。fpga芯片利用其大規(guī)模硬件資源,實(shí)現(xiàn)接口擴(kuò)展及控制功能,并且通過fpga芯片實(shí)現(xiàn)dsp芯片的初始化和文件部署。
本實(shí)施例提供的系統(tǒng)基于sca進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì),硬件結(jié)構(gòu)采用dsp+fpga架構(gòu),實(shí)現(xiàn)對dsp芯片文件動(dòng)態(tài)加載,整個(gè)過程不需要重啟加載,提高文件的加載效率,提高了系統(tǒng)的靈活性和兼容性,降低了系統(tǒng)成本低。
在一些實(shí)施例中,參見圖2,用于dsp芯片文件加載的系統(tǒng)包括功能選擇模塊1100、主控制模塊1200、一個(gè)fpga芯片1301和多個(gè)dsp芯片。
其中,功能選擇模塊1100用于進(jìn)行功能選擇和設(shè)置配置參數(shù)生成控制指令,控制指令包括目標(biāo)文件名稱、配置參數(shù)和dsp芯片id。其中,目標(biāo)文件名稱為加載到dsp芯片的文件的名稱,配置參數(shù)為dsp芯片加載目標(biāo)文件后執(zhí)行相應(yīng)功能時(shí)的配置參數(shù),dsp芯片id為加載目標(biāo)文件的dsp芯片id。
功能選擇模塊1100提供的不同的功能選項(xiàng)對應(yīng)不同的目標(biāo)文件。主控制模塊1200與功能選擇模塊1100基于corba規(guī)范定義的接口通過局域網(wǎng)(英文全稱:localareanetwork,英文簡稱:lan)進(jìn)行通信。功能選擇模塊1100和主控制模塊1200分工明確,相互連通保證系統(tǒng)工作的完整性
主控制模塊1200,運(yùn)行vxworks操作系統(tǒng),基于corba規(guī)范的sca中間件部署在主控制模塊1200上,其中,所述sca中間件以。xml文件和。out文件形式存在,由spectracx軟件生成。sca中間件包括波形應(yīng)用組件1201和設(shè)備組件1202。波形應(yīng)用組件1201,根據(jù)控制指令中dsp芯片id尋找設(shè)備組件1202并將控制指令發(fā)送給設(shè)備組件1202,設(shè)備組件1202,用于調(diào)用vxworks操作系統(tǒng)的pci驅(qū)動(dòng)讀取目標(biāo)文件,將目標(biāo)文件寫到控制指令中dsp芯片id對應(yīng)的pci地址中,并將目標(biāo)文件發(fā)送至fpga芯片1301。每個(gè)dsp芯片均有一個(gè)獨(dú)有的id,用于對各dsp芯片進(jìn)行區(qū)分,包括dsp芯片的設(shè)備號(hào),進(jìn)一步的,還包括廠商號(hào)。針對每一dsp芯片抽象出一個(gè)設(shè)備組件1202,波形應(yīng)用組件1202通過dsp芯片id查找對應(yīng)的設(shè)備組件1202,并將控制指令傳送給設(shè)備組件1202。波形應(yīng)用組件1201是與功能選擇模塊1100中提供的功能選項(xiàng)相映射的軟件模塊,與每個(gè)功能選項(xiàng)對應(yīng)的有一個(gè)波形應(yīng)用組件1201。設(shè)備組件1202是與dsp芯片相映射的軟件模塊。與每個(gè)dsp芯片對應(yīng)的有一個(gè)設(shè)備組件1202。一個(gè)波形應(yīng)用組件1201可以加載到不同的設(shè)備組件1202上。波形應(yīng)用組件1201、功能選擇模塊1100中提供的功能選項(xiàng)、設(shè)備組件1202和dsp芯片的對應(yīng)關(guān)系保證系統(tǒng)間互連、互通和互操作,降低了開發(fā)的復(fù)雜性,減少了開發(fā)成本。
dsp芯片各外接一個(gè)flash和一個(gè)ddr,在flash內(nèi)固化了dsp芯片驅(qū)動(dòng)文件,dsp芯片上電后加載dsp芯片驅(qū)動(dòng)文件,在接收到fpga芯片1301通過通用輸入/輸出gpio接口給出控制信號(hào)后完成dsp芯片的初始化。ddr內(nèi)存儲(chǔ)目標(biāo)文件。
在本實(shí)施例中ddr采用ddr3,fpga芯片采用sprtan-6,dsp芯片采用tms320c6670芯片。tms320c6670芯片上有四個(gè)集成的c66xdsp的corepac,每個(gè)核心運(yùn)行在1.0至1.20ghz。硬件加速提供了高集成度,低功耗和易于使用的平臺(tái)。
fpga芯片1301通過cpci總線和主控制模塊1200連接,多個(gè)dsp芯片通過hyperlink接口連接。
系統(tǒng)上電過程為:fpga芯片1301首先上電完成加載,然后功能選擇模塊1100和主控制模塊1200以及dsp芯片上電。因?yàn)閐sp芯片的初始化及文件加載需要fpga芯片1301的控制實(shí)現(xiàn),所以要先對fpga芯片1301上電。
系統(tǒng)完成上電后,dsp芯片加載固化在flash內(nèi)的dsp芯片驅(qū)動(dòng)文件,在接收到fpga芯片1301通過通用輸入/輸出gpio接口給出的控制信號(hào)后完成dsp芯片的初始化。然后執(zhí)行dsp芯片文件加載過程。
文件動(dòng)態(tài)加載過程為:通過功能選擇模塊1100選擇需要加載的功能和需要配置的參數(shù),生成控制指令,通過基于corba規(guī)范的接口傳遞給主控制模塊1200。其中,控制指令包含與選擇的功能對應(yīng)的目標(biāo)文件名稱、需要配置的參數(shù)及需要加載的dsp芯片id。目標(biāo)文件為二進(jìn)制(英文全稱:binary,英文簡稱:bin)文件,通過仿真器生成。dsp芯片id指示將目標(biāo)文件加載至指定dsp芯片。當(dāng)主控制模塊1200接收到功能選擇模塊1100發(fā)出的控制指令,波形應(yīng)用組件1201會(huì)根據(jù)控制指令中dsp芯片id尋找對應(yīng)的設(shè)備組件1202,并將指令發(fā)送給設(shè)備組件1202。當(dāng)設(shè)備組件1202接收到波形應(yīng)用組件1201傳遞的控制指令,調(diào)用vxworks操作系統(tǒng)的pci驅(qū)動(dòng)從dsp芯片外接的ddr內(nèi)讀取目標(biāo)文件,將目標(biāo)文件寫到控制指令中dsp芯片id對應(yīng)的pci地址中,并將目標(biāo)文件發(fā)送至fpga芯片1301,由fpga芯片1301引導(dǎo)加載至指定的dsp芯片,直接替代原來的文件完成dsp芯片文件。當(dāng)需要切換功能時(shí),在功能選擇模塊1100進(jìn)行功能切換,并依次執(zhí)行前述步驟完成對dsp芯片文件動(dòng)態(tài)加載,整個(gè)過程不需要重啟加載。
本實(shí)施例提供的系統(tǒng)基于sca進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì),硬件結(jié)構(gòu)采用dsp+fpga架構(gòu),實(shí)現(xiàn)對dsp芯片文件動(dòng)態(tài)加載,整個(gè)過程不需要重啟加載,提高文件的加載效率,提高了系統(tǒng)的靈活性和兼容性,降低了系統(tǒng)成本低。
在一些實(shí)施例中,系統(tǒng)包括兩個(gè)dsp芯片。
與前述系統(tǒng)實(shí)施例相對應(yīng),參見圖3,本發(fā)明實(shí)施例提供的用于dsp芯片文件加載的方法包括如下步驟。
步驟s301,主控制模塊1200接收控制指令。
主控制模塊1200接收的控制指令包括目標(biāo)文件名稱,目標(biāo)文件名稱為加載到dsp芯片的文件的名稱。
步驟s302,所述主控制模塊1200解析所述控制指令,得出所述控制指令中包含的目標(biāo)文件的名稱。
步驟s303,所述主控制模塊1200根據(jù)所述目標(biāo)文件的名稱選擇波形應(yīng)用組件1201。
目標(biāo)文件的名稱不同,對應(yīng)的波形應(yīng)用組件1201不同,主控制模塊1200根據(jù)目標(biāo)文件的名稱選擇對應(yīng)的波形應(yīng)用組件1201。
步驟s304,所述波形應(yīng)用組件1201根據(jù)所述控制指令中dsp芯片id尋找設(shè)備組件1202并將所述控制指令發(fā)送給所述設(shè)備組件1202。
步驟s305,所述設(shè)備組件1202接收所述控制指令。
步驟s306,所述設(shè)備組件1202根據(jù)所述控制指令調(diào)用pci驅(qū)動(dòng)讀取所述目標(biāo)文件,并將所述目標(biāo)文件發(fā)送至fpga芯片1300。
步驟s307,所述fpga芯片1300加載所述目標(biāo)文件至所述dsp芯片id對應(yīng)的dsp芯片。
本實(shí)施例提供的方法可以實(shí)現(xiàn)對dsp芯片文件動(dòng)態(tài)加載,整個(gè)過程不需要重啟加載,提高文件的加載效率,提高了系統(tǒng)的靈活性和兼容性,降低了系統(tǒng)成本低。
在一些實(shí)施例中,參見圖4,用于dsp芯片文件加載的方法包括如下步驟。
步驟s401,fpga芯片1300上電。
步驟s402,功能選擇模塊1100,主控制模塊1200和dsp芯片上電。
fpga芯片1300實(shí)現(xiàn)dsp芯片的初始化和文件部署,在系統(tǒng)進(jìn)行工作前首先對fpga芯片1300上電,當(dāng)fpga芯片1300上電后再對其他模塊進(jìn)行上電。
步驟s403,所述dsp芯片加載固化在所述dsp芯片外接的flash內(nèi)的dsp芯片驅(qū)動(dòng)文件。
dsp芯片外接的flash內(nèi)固化了dsp芯片驅(qū)動(dòng)文件,在系統(tǒng)完成上電后,dsp芯片會(huì)自動(dòng)加載dsp芯片驅(qū)動(dòng)文件。
步驟s404,所述dsp芯片根據(jù)所述fpga芯片1300發(fā)送的控制信號(hào)完成初始化。
dsp芯片在加載文件前首先要進(jìn)行初始化,fpga芯片1300發(fā)送控制信號(hào)控制dsp芯片進(jìn)行初始化。
步驟s405,功能選擇模塊1100發(fā)送控制指令。
功能選擇模塊1100可以進(jìn)行功能選擇和設(shè)置配置參數(shù)并生成控制指令。對應(yīng)不同的功能加載的目標(biāo)文件不同,因此每個(gè)功能對應(yīng)一個(gè)目標(biāo)文件名稱。
步驟s406,主控制模塊1200接收控制指令。
主控制模塊1200接收的控制指令包括目標(biāo)文件名稱、配置參數(shù)和dsp芯片id。其中,目標(biāo)文件名稱為加載到dsp芯片的文件的名稱,配置參數(shù)為dsp芯片加載目標(biāo)文件后執(zhí)行相應(yīng)功能時(shí)的配置參數(shù),dsp芯片id為加載目標(biāo)文件的dsp芯片id。
步驟s407,主控制模塊1200解析所述控制指令,得出所述控制指令中包含的目標(biāo)文件的名稱。
步驟s408,主控制模塊1200根據(jù)所述目標(biāo)文件的名稱選擇波形應(yīng)用組件1201。
功能選擇模塊1100提供的不同的功能選項(xiàng)對應(yīng)不同的目標(biāo)文件,波形應(yīng)用組件1201是與功能選擇模塊1100中提供的功能選項(xiàng)相映射的軟件模塊,與每個(gè)功能選項(xiàng)對應(yīng)的有一個(gè)波形應(yīng)用組件1201,主控制模塊1200根據(jù)目標(biāo)文件的名稱選擇對應(yīng)的波形應(yīng)用組件1201。
步驟s409,所述波形應(yīng)用組件1201根據(jù)所述控制指令中dsp芯片id尋找設(shè)備組件1202并將所述控制指令發(fā)送給所述設(shè)備組件1202。
設(shè)備組件1202是與dsp芯片相映射的軟件模塊。與每個(gè)dsp芯片對應(yīng)的有一個(gè)設(shè)備組件1202。波形應(yīng)用組件1201根據(jù)目標(biāo)文件的名稱選擇對應(yīng)的設(shè)備組件1202。
步驟s410,所述設(shè)備組件1202接收所述控制指令。
步驟s411,所述設(shè)備組件1202根據(jù)所述控制指令調(diào)用pci驅(qū)動(dòng)讀取所述目標(biāo)文件,并將所述目標(biāo)文件發(fā)送至fpga芯片1300。
設(shè)備組件1202調(diào)用pci驅(qū)動(dòng)讀取目標(biāo)文件,pci驅(qū)動(dòng)將目標(biāo)文件寫入dsp對應(yīng)的pci地址中,并將目標(biāo)文件發(fā)送至fpga芯片1300。目標(biāo)文件存儲(chǔ)在dsp芯片外接的ddr中。pci驅(qū)動(dòng)被包含在由主控制模塊1200運(yùn)行的vxworks操作系統(tǒng)。步驟s412,所述fpga芯片1300加載所述目標(biāo)文件至所述dsp芯片id對應(yīng)的dsp芯片。
控制指令包括dsp芯片id,fpga芯片1300根據(jù)控制指令包含的dsp芯片id將目標(biāo)文件加載至對應(yīng)的dsp芯片。
當(dāng)執(zhí)行上述步驟完成一次目標(biāo)文件的加載后。系統(tǒng)等待功能選擇模塊1100發(fā)送控制指令,當(dāng)在功能選擇模塊1100做出功能切換時(shí),則執(zhí)行步驟s406及之后的步驟,完成dsp芯片文件的動(dòng)態(tài)加載。
本實(shí)施例提供的方法可以實(shí)現(xiàn)對dsp芯片文件動(dòng)態(tài)加載,整個(gè)過程不需要重啟加載,提高文件的加載效率,提高了系統(tǒng)的靈活性和兼容性,降低了系統(tǒng)成本低。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的流程及結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。