本發(fā)明涉及雷達(dá)信號(hào)處理技術(shù)領(lǐng)域,具體涉及一種c6678多dsp陣列的自適應(yīng)檢測(cè)方法。
背景技術(shù):
美國(guó)德州儀器(texasinstruments,簡(jiǎn)稱ti)公司的tms320c6678(簡(jiǎn)稱為c6678)是2014年后嵌入式高性能計(jì)算場(chǎng)合使用較廣泛的多核數(shù)字信號(hào)處理器(dsp)芯片。
一片c6678內(nèi)部有8個(gè)核,每個(gè)核有獨(dú)立的運(yùn)算單元、寄存器組和l1、l2高速緩存,片內(nèi)8核共享4mb的共享內(nèi)存。c6678支持的對(duì)外通信接口有以太網(wǎng)、srio(高速串行通信)、hyperlink(超鏈接)、pcie(pciexpress)、spi(串行外設(shè)接口)、gpio(通用輸入輸出)、i2c(兩線式串行總線)等,可以掛載ddr3、norflash、nandflash等多種外設(shè)。
如此多的接口和外設(shè),使c6678的復(fù)雜程度非常高。在加上在一些大規(guī)模應(yīng)用dsp的場(chǎng)合,如雷達(dá)信號(hào)處理,系統(tǒng)中的dsp個(gè)數(shù)往往會(huì)達(dá)到數(shù)十片。這就使得c6678多dsp陣列檢測(cè)成為了一個(gè)比較大的問題。
一些設(shè)備廠商推出了c6678的板卡產(chǎn)品,部分附帶了檢測(cè)功能,可以檢測(cè)一些故障點(diǎn)。但是,這些功能往往都是針對(duì)特定的板卡,且缺少系統(tǒng)級(jí)的板間通信檢測(cè)功能,導(dǎo)致故障點(diǎn)覆蓋不足,測(cè)試力度不夠,為后期的生產(chǎn)和維護(hù)帶來較大的麻煩。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述問題,本發(fā)明提供了一種c6678多dsp陣列的自適應(yīng)檢測(cè)方法,通過以太網(wǎng)或pcie探測(cè)陣列中存在的dsp,并測(cè)試dsp內(nèi)部的存儲(chǔ)空間和片間通信,測(cè)試結(jié)果返回給上位機(jī)。
采取的主要步驟包括:
步驟一、板卡內(nèi)部或板間使用以太網(wǎng)交換器連接各dsp,或者,板卡內(nèi)部或板間通過pcie交換器連接各dsp,形成多dsp陣列;
步驟二、通過網(wǎng)線把所述多dsp陣列與上位機(jī)相連;
步驟三、上位機(jī)通過網(wǎng)絡(luò)掃描出所述多dsp陣列中存在的dsp;
步驟四、對(duì)所述掃描出的dsp進(jìn)行讀寫測(cè)試。
優(yōu)選的是,所述多dsp陣列包括一個(gè)根dsp以及若干從dsp,所述根dsp設(shè)置在第一板卡上,所述板卡內(nèi)部的dsp通過pcie交換器相連,第一板卡的pcie交換器與其它板卡的pcie交換器相連,所述根dsp與所述上位機(jī)通過以太網(wǎng)相連。
優(yōu)選的是,所述多dsp陣列包括多個(gè)板卡,任一板卡包括一個(gè)根dsp以及若干從dsp,所述板卡內(nèi)部的dsp通過pcie交換器相連,所述多個(gè)根dsp通過以太網(wǎng)交換器與所述上位機(jī)相連。
優(yōu)選的是,所述多dsp陣列包括若干板卡,所述板卡內(nèi)部的dsp通過sgmii交換器相連,多個(gè)sgmii交換器依次串聯(lián),并通過以太網(wǎng)連接所述上位機(jī)。
優(yōu)選的是,所述多dsp陣列包括若干板卡,所述板卡內(nèi)部的dsp通過sgmii交換器相連,第一板卡的pcie交換器與其它板卡的pcie交換器相連,多個(gè)sgmii交換器通過以太網(wǎng)交換器與所述上位機(jī)相連。
優(yōu)選的是,所述根dsp連接上位機(jī)后,由上位機(jī)通過網(wǎng)絡(luò)抓包的形式獲取根dsp的mac地址,之后由根dsp啟動(dòng)pcie枚舉,識(shí)別出pcie總線上的各從dsp。
優(yōu)選的是,在對(duì)所述掃描出的dsp進(jìn)行讀寫測(cè)試之前,識(shí)別出各dsp外掛的ddr3的實(shí)際容量。
優(yōu)選的是,采用增強(qiáng)型直接存儲(chǔ)器訪問方法讀寫所述ddr3,覆蓋所述ddr3的全部有效地址空間,根據(jù)起始、結(jié)束時(shí)間及數(shù)據(jù)量計(jì)算傳輸速度,并對(duì)比寫入和讀出的數(shù)據(jù),檢查是否存在錯(cuò)誤,完成讀寫測(cè)試。
本發(fā)明的優(yōu)點(diǎn):
1)可以實(shí)現(xiàn)故障的快速定位,方便調(diào)試和板卡的批量生產(chǎn);
2)完全不需要使用jtag,避免了jtag不穩(wěn)定帶來的各種問題;
3)接口簡(jiǎn)單,dsp陣列和計(jì)算機(jī)之間僅需要一根網(wǎng)線;
4)不針對(duì)特定的板卡,自適應(yīng)檢測(cè)可適用的規(guī)模可大可?。?/p>
5)測(cè)試速度快,如完成12片c6678的識(shí)別和檢測(cè)只需不到3分鐘。
6)覆蓋了最關(guān)鍵的通信檢測(cè)和穩(wěn)定性檢測(cè)。
本發(fā)明可適用于使用tms320c6678dsp的嵌入式信息處理系統(tǒng)中,如航空、航天、船舶、通信、軟件無(wú)線電、人工智能等領(lǐng)域。
附圖說明
圖1為本發(fā)明c6678多dsp陣列的自適應(yīng)檢測(cè)方法的一優(yōu)選實(shí)施例的流程圖。
圖2為本發(fā)明一優(yōu)選實(shí)施例的板內(nèi)、板間均通過pcie相連的架構(gòu)圖。
圖3為本發(fā)明另一優(yōu)選實(shí)施例的板間通過以太網(wǎng)相連的架構(gòu)圖。
圖4為本發(fā)明另一優(yōu)選實(shí)施例的板內(nèi)、板間均通過以太網(wǎng)相連的架構(gòu)圖。
圖5為本發(fā)明另一優(yōu)選實(shí)施例的板間通過以太網(wǎng)串聯(lián)架構(gòu)圖。
具體實(shí)施例
為使本發(fā)明實(shí)施的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行更加詳細(xì)的描述。在附圖中,自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。下面通過參考附圖描述的實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。下面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明
本發(fā)明的目的為:
1)自動(dòng)識(shí)別陣列中存在的c6678,實(shí)現(xiàn)自適應(yīng)規(guī)模的c6678通用檢測(cè),無(wú)論單片、單板或多板都可以適用;
2)實(shí)現(xiàn)板內(nèi)和板間的hyperlink、以太網(wǎng)、pcie、srio通信高強(qiáng)度檢測(cè);
3)實(shí)現(xiàn)ddr3存儲(chǔ)器的全覆蓋高強(qiáng)度讀寫測(cè)試;
4)測(cè)量各種通信和讀寫的速度,確定系統(tǒng)性能是否滿足要求。
圖1為本發(fā)明c6678多dsp陣列的自適應(yīng)檢測(cè)方法流程圖,主要包括以下步驟:
步驟一、板卡內(nèi)部或板間使用以太網(wǎng)交換器連接各dsp,或者,板卡內(nèi)部或板間通過pcie交換器連接各dsp,形成多dsp陣列;
步驟二、通過網(wǎng)線把所述多dsp陣列與上位機(jī)相連;
步驟三、上位機(jī)通過網(wǎng)絡(luò)掃描出所述多dsp陣列中存在的dsp;
步驟四、對(duì)所述掃描出的dsp進(jìn)行讀寫測(cè)試。
圖2-圖5給出了步驟一中的四個(gè)dsp連接架構(gòu),該示例中,包含一臺(tái)上位機(jī),即調(diào)試計(jì)算機(jī),以及包含三個(gè)板卡,板卡1-板卡3,每個(gè)板卡包含4個(gè)dsp,本實(shí)施例特指c6678。
實(shí)施例1、
圖2是一種板內(nèi)板間均為pcie連接的架構(gòu)圖,其中,在板卡1上設(shè)置一個(gè)根dsp,即根c6678,該根c6678與上位機(jī)通過以太網(wǎng)(eth)相連,除該根c6678以外,其余dsp為從c6678,每個(gè)板卡內(nèi)的c6678通過pcie交換機(jī)(pcieswitch)相連,板卡1的pcie交換機(jī)與板卡2的pcie交換機(jī)通過總線相連,同樣,板卡1的pcie交換機(jī)與板卡3的pcie交換機(jī)通過總線相連。
實(shí)施例2、
圖3是另一系統(tǒng)架構(gòu)圖,所述多dsp陣列包括多個(gè)板卡,板卡1-板卡3,任一板卡包括一個(gè)根c6678以及若干從c6678(本實(shí)施例為3個(gè)從c6678),所述板卡內(nèi)部的c6678通過pcie交換器相連,三個(gè)根c6678通過以太網(wǎng)交換器與所述上位機(jī)相連。
實(shí)施例3、
圖4是另一系統(tǒng)架構(gòu)圖,多dsp陣列包括三個(gè)板卡,所述板卡內(nèi)部的c6678通過sgmii交換器相連,多個(gè)sgmii交換器依次串聯(lián),并通過以太網(wǎng)連接所述上位機(jī)。
需要說明的是,三個(gè)sgmii交換器最后通過以太網(wǎng)以星狀拓?fù)涞男问讲⑷氲揭粋€(gè)總的交換器后,再通過以太網(wǎng)連接上位機(jī)。
實(shí)施例4、
圖5給出了板間通過以太網(wǎng)串聯(lián)的系統(tǒng)架構(gòu)圖,所述多dsp陣列包括若干板卡,所述板卡內(nèi)部的dsp通過sgmii交換器相連,多個(gè)sgmii交換器依次串聯(lián),并通過以太網(wǎng)連接所述上位機(jī)。
可以理解的是,該實(shí)施例板間連接方式除上述串聯(lián)方式以外,還可以采用如實(shí)施例1描述的方式相連,即采用星狀網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。同樣,實(shí)施例1的備選實(shí)施方式中也可以采用類似本實(shí)施例中的串聯(lián)方式進(jìn)行板間交換器的連接。
對(duì)于實(shí)施例1及實(shí)施例2,所述根dsp連接上位機(jī)后,由上位機(jī)通過網(wǎng)絡(luò)抓包的形式獲取根dsp的mac地址,之后由根dsp啟動(dòng)pcie枚舉,識(shí)別出pcie總線上的各從dsp。具體的,設(shè)置所有通過以太網(wǎng)連接上位機(jī)的dsp為以太網(wǎng)加載,上位機(jī)通過網(wǎng)絡(luò)抓包(可以使用winpcap函數(shù)庫(kù))識(shí)別boot包,從而得到網(wǎng)絡(luò)上所有dsp的mac地址,之后,上位機(jī)通過網(wǎng)絡(luò)加載已識(shí)別的dsp,并讓所有根dsp啟動(dòng)pcie枚舉,識(shí)別出pcie總線存在的各從dsp。
最后,加載pcie總線上的各dsp,識(shí)別出外掛的ddr3的實(shí)際容量,進(jìn)行各dsp的讀寫測(cè)試。
本實(shí)施例中,采用增強(qiáng)型直接存儲(chǔ)器訪問方法(edma3)讀寫所述ddr3,覆蓋所述ddr3的全部有效地址空間,根據(jù)起始、結(jié)束時(shí)間及數(shù)據(jù)量計(jì)算傳輸速度,并對(duì)比寫入和讀出的數(shù)據(jù),檢查是否存在錯(cuò)誤,完成讀寫測(cè)試。主要包括以下測(cè)試形式:
啟動(dòng)edma3讀寫pcie總線上各從dsp的存儲(chǔ)空間(適用于實(shí)施例1及實(shí)施例2所示的系統(tǒng)架構(gòu)),根據(jù)起始、結(jié)束時(shí)間和數(shù)據(jù)量計(jì)算傳輸速度,并對(duì)比寫入和讀出的數(shù)據(jù),檢查是否存在錯(cuò)誤,有錯(cuò)誤則上報(bào)。
啟動(dòng)edma3通過hyperlink總線讀寫對(duì)應(yīng)dsp的存儲(chǔ)空間,根據(jù)起始、結(jié)束時(shí)間和數(shù)據(jù)量計(jì)算傳輸速度,并對(duì)比寫入和讀出的數(shù)據(jù),檢查是否存在錯(cuò)誤,有錯(cuò)誤則上報(bào)。
通過srio總線和srio交換器讀寫各dsp的存儲(chǔ)空間,根據(jù)起始、結(jié)束時(shí)間和數(shù)據(jù)量計(jì)算傳輸速度,并對(duì)比寫入和讀出的數(shù)據(jù),檢查是否存在錯(cuò)誤,有錯(cuò)誤則上報(bào)。
上位機(jī)通過以太網(wǎng)udp協(xié)議和tcp協(xié)議讀寫以太網(wǎng)上的所有dsp的存儲(chǔ)空間,根據(jù)起始、結(jié)束時(shí)間和數(shù)據(jù)量計(jì)算傳輸速度,并對(duì)比寫入和讀出的數(shù)據(jù),檢查是否存在錯(cuò)誤,有錯(cuò)誤則上報(bào)。
至此,完成陣列中所有dsp的識(shí)別與檢測(cè)。
通過本發(fā)明,
可以實(shí)現(xiàn)故障的快速定位,方便調(diào)試和板卡的批量生產(chǎn);
完全不需要使用jtag,避免了jtag不穩(wěn)定帶來的各種問題;
接口簡(jiǎn)單,dsp陣列和計(jì)算機(jī)之間僅需要一根網(wǎng)線;
不針對(duì)特定的板卡,自適應(yīng)檢測(cè)可適用的規(guī)模可大可?。?/p>
測(cè)試速度快,如完成12片c6678的識(shí)別和檢測(cè)只需不到3分鐘。
覆蓋了最關(guān)鍵的通信檢測(cè)和穩(wěn)定性檢測(cè)。
本發(fā)明可適用于使用tms320c6678dsp的嵌入式信息處理系統(tǒng)中,如航空、航天、船舶、通信、軟件無(wú)線電、人工智能等領(lǐng)域。
最后需要指出的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制。盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。