當(dāng)前位置:首頁(yè) > 測(cè)試測(cè)量 > 測(cè)試測(cè)量
[導(dǎo)讀]摘要:為了解決虛擬試驗(yàn)系統(tǒng)中具有不同總線類型的各實(shí)物子系統(tǒng)互聯(lián)的實(shí)時(shí)性問題,設(shè)計(jì)了一種多協(xié)議轉(zhuǎn)換器。按協(xié)議高低優(yōu)先級(jí)分配軟硬件資源,硬件設(shè)計(jì)采用DM642+FPGA的結(jié)構(gòu),使用FPGA實(shí)時(shí)匹配高優(yōu)先級(jí)協(xié)議,并對(duì)DM64

摘要:為了解決虛擬試驗(yàn)系統(tǒng)中具有不同總線類型的各實(shí)物子系統(tǒng)互聯(lián)的實(shí)時(shí)性問題,設(shè)計(jì)了一種多協(xié)議轉(zhuǎn)換器。按協(xié)議高低優(yōu)先級(jí)分配軟硬件資源,硬件設(shè)計(jì)采用DM642+FPGA的結(jié)構(gòu),使用FPGA實(shí)時(shí)匹配高優(yōu)先級(jí)協(xié)議,并對(duì)DM642分類返回不同中斷信息;軟件設(shè)計(jì)時(shí),按地址分塊存儲(chǔ)協(xié)議以提高的協(xié)議的查找效率,并根據(jù)DSP/BIOS中各類線程的特點(diǎn),合理分配任務(wù)并分類觸發(fā)不同任務(wù),以加快數(shù)據(jù)處理速度并保證高優(yōu)先級(jí)協(xié)議實(shí)時(shí)性。
關(guān)鍵詞:多協(xié)議轉(zhuǎn)換器;實(shí)時(shí)性;DM642;DSP/BIOS

0 引言
    在虛擬試驗(yàn)系統(tǒng)中,需要將不同總線類型和不同傳輸協(xié)議的各實(shí)物子系統(tǒng)進(jìn)行互聯(lián),實(shí)物設(shè)備子系統(tǒng)常采用1553B,ARINC429,RS 232等總線,協(xié)議轉(zhuǎn)換的實(shí)時(shí)性對(duì)整個(gè)虛擬試驗(yàn)系統(tǒng)試驗(yàn)結(jié)果的真實(shí)性具有重要的影響,因此設(shè)計(jì)了基于DM642的實(shí)時(shí)多協(xié)議轉(zhuǎn)換器
    協(xié)議轉(zhuǎn)換方法有過程控制級(jí)轉(zhuǎn)換和現(xiàn)場(chǎng)設(shè)備級(jí)實(shí)現(xiàn)。OPC(OLE for Process Control)為最常用控制級(jí)轉(zhuǎn)換方法,所有的工作全部在上位機(jī)中由軟件完成,簡(jiǎn)單方便,但總線系統(tǒng)中節(jié)點(diǎn)間的通信較慢,實(shí)時(shí)性較差。采用現(xiàn)場(chǎng)設(shè)備級(jí)轉(zhuǎn)換方法的協(xié)議,如Profibus,DeviceNet等,需專門開發(fā)軟硬件,但可以實(shí)現(xiàn)差異較大協(xié)議總線間的轉(zhuǎn)換,可以滿足實(shí)時(shí)性要求。曾翠榮等采用現(xiàn)場(chǎng)設(shè)備級(jí)轉(zhuǎn)換方法,設(shè)計(jì)出通用報(bào)文格式和地址分配方法,簡(jiǎn)單明了,但不同總線協(xié)議間的轉(zhuǎn)換必須借助于上位機(jī)和網(wǎng)絡(luò),僅滿足傳輸延時(shí)小于20 ms。本文借鑒現(xiàn)場(chǎng)設(shè)備級(jí)轉(zhuǎn)換方法,設(shè)計(jì)了一種高實(shí)時(shí)多協(xié)議的轉(zhuǎn)換器。設(shè)計(jì)中,采用C6000系列高速DSP,將協(xié)議分為高低優(yōu)先級(jí),采用FPGA實(shí)時(shí)識(shí)別高優(yōu)先級(jí)協(xié)議,按地址塊存儲(chǔ)協(xié)議描述信息,使用了DSP/BIOS提供的不同類型線程,并采用觸發(fā)不同消息的方法跳轉(zhuǎn)線程,有效地保證了實(shí)時(shí)性。

1 協(xié)議傳輸格式及描述方法
    虛擬試驗(yàn)系統(tǒng)中不同總線上傳輸?shù)臄?shù)據(jù)流通常按如圖1所示的方式傳輸,一幀數(shù)據(jù)由幀頭、數(shù)據(jù)長(zhǎng)度、數(shù)據(jù)體、幀尾、數(shù)據(jù)校驗(yàn)等組成,幀頭標(biāo)志不同協(xié)議,幀尾或幀長(zhǎng)標(biāo)志該幀數(shù)據(jù)流的長(zhǎng)度,幀頭和幀尾可以是1個(gè)、2個(gè)或者4個(gè)數(shù)據(jù)字,數(shù)據(jù)體由多個(gè)數(shù)據(jù)字組成。但協(xié)議以數(shù)據(jù)元素作為基本單位進(jìn)行編解碼,數(shù)據(jù)元素由一個(gè)或多個(gè)數(shù)據(jù)字組成,有具體的物理含義,可以表示一個(gè)具體的物理量,也可以按位表示多個(gè)不同的工作狀態(tài)。協(xié)議解碼時(shí),先根據(jù)幀頭識(shí)別出協(xié)議類型,然后根據(jù)數(shù)據(jù)長(zhǎng)度或幀尾提取出數(shù)據(jù)體,再按協(xié)議提取出數(shù)據(jù)元素,將數(shù)據(jù)元素乘以或加上特定系數(shù)轉(zhuǎn)換為具體物理意義數(shù)據(jù),或提取出每一狀態(tài)位;編碼過程為解碼的逆過程。


    為便于協(xié)議的識(shí)別、編解碼,建立由數(shù)據(jù)幀、數(shù)據(jù)元素、數(shù)據(jù)位三級(jí)描述結(jié)構(gòu)體組成的協(xié)議描述表,各級(jí)協(xié)議描述結(jié)構(gòu)體所描述的信息如圖2所示。



2 硬件設(shè)計(jì)
    本系統(tǒng)采用如圖3所示的DM642+FPGA的設(shè)計(jì)方式,實(shí)現(xiàn)了雙通道RS 232總線、雙通道ARINC429,單通道雙冗余1553B總線以及LAN總線的通信。DM642為TI公司的C6000系列高速DSP,其主頻最高可達(dá)720 MHz,數(shù)據(jù)處理能力達(dá)4 800 MIPS,其收發(fā)通道獨(dú)立的EMAC和MDIO可以很好的支持10 Mb/s和100 Mb/s以太網(wǎng)。DM642還擴(kuò)展32 MB SDRAM和8 MB FLASH,用于緩存數(shù)據(jù)和存儲(chǔ)協(xié)議。FPGA選擇Altera公司的EP3C55F4 84,其LE單元、儲(chǔ)存單元、可用I/O均比較豐富。DM642實(shí)現(xiàn)以太網(wǎng)接口,控制系統(tǒng)并完成協(xié)議的編解碼。FPGA中的總線單元實(shí)現(xiàn)RS 232等總線的物理層收發(fā),總線管理單元協(xié)調(diào)DM642與各總線單元間的通信。采用專業(yè)芯片實(shí)現(xiàn)各總線的電氣轉(zhuǎn)換。


    總線管理單元管理各總線,并協(xié)調(diào)各總線與DM642的通信。為防止總線沖突,總線管理單元中記錄DM642及RS 232等總線單元的工作狀態(tài)。1553B總線與RS 232總線和ARINC429總線不同,其收發(fā)是相關(guān)的,無論其收發(fā)數(shù)據(jù)時(shí),總線管理單元都視其被占用。當(dāng)DM642處理高優(yōu)先級(jí)協(xié)議時(shí),總線管理單元將對(duì)DM642屏蔽低優(yōu)先級(jí)協(xié)議產(chǎn)生的中斷,直至DM642完成相應(yīng)數(shù)據(jù)處理。對(duì)為了防止總線被“鎖死”,總線管理單元對(duì)超過一定時(shí)長(zhǎng)處于忙狀態(tài)而未被使用的總線復(fù)位,并對(duì)DM642產(chǎn)生總線異常中斷。


    每個(gè)總線單元都采用如圖4所示的結(jié)構(gòu),“總線收發(fā)”實(shí)現(xiàn)相應(yīng)總線物理層收發(fā)。在總線單元中實(shí)現(xiàn)8個(gè)幀頭識(shí)別單元和一個(gè)幀尾識(shí)別單元,實(shí)時(shí)匹配和提取協(xié)議。幀頭識(shí)別單元記錄有高優(yōu)先級(jí)協(xié)議的幀頭、幀尾、幀長(zhǎng)等信息,DM642在識(shí)別出低優(yōu)先級(jí)協(xié)議后,將該協(xié)議的幀尾、幀長(zhǎng)等信息寫入幀尾識(shí)別單元。無論是DM642還是任一幀頭幀尾識(shí)別單元協(xié)議匹配成功后,幀頭幀尾識(shí)別管理單元都將使其它幀頭幀尾識(shí)別單元處于非工作狀態(tài),在該幀頭幀尾識(shí)別單元根據(jù)幀尾或幀長(zhǎng)提取完協(xié)議后,其它幀頭幀尾識(shí)別單元將再次使能。幀頭幀尾識(shí)別管理單元在識(shí)別出協(xié)議和完成協(xié)議提取時(shí),將向總線管理單元產(chǎn)生不同中斷??偩€發(fā)送FIFO由非空變?yōu)榭眨伯a(chǎn)生發(fā)送完成中斷。

3 軟件設(shè)計(jì)
3.1 協(xié)議存儲(chǔ)、加載方法
    為了使上電復(fù)位后無需重新加載協(xié)議,將協(xié)議描述表存儲(chǔ)于FLASH中,F(xiàn)LASH的分配方法的存儲(chǔ)空間分配方法如圖5所示。


    8 MB存儲(chǔ)空間的前128 KB存儲(chǔ)空間用于存儲(chǔ)DSP程序,剩余的空間劃分為252個(gè)32 KB大小的數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊用于存儲(chǔ)一條協(xié)議的所有信息;每個(gè)32 KB大小數(shù)據(jù)塊在劃分為512個(gè)64 B大小的次級(jí)數(shù)據(jù)塊,第1個(gè)次級(jí)數(shù)據(jù)塊用于存儲(chǔ)數(shù)據(jù)幀描述表,后511個(gè)次級(jí)數(shù)據(jù)塊存儲(chǔ)數(shù)據(jù)元素的相關(guān)信息;64 B存儲(chǔ)空間的前32 B用于存儲(chǔ)數(shù)據(jù)元素描述表,后32 B用于存儲(chǔ)數(shù)據(jù)位描述表,同一個(gè)數(shù)據(jù)元素最多支持8個(gè)數(shù)據(jù)位操作。采用這種協(xié)議存儲(chǔ)方法的好處是,方便了協(xié)議的加載及修改,DM642很容易計(jì)算出每個(gè)數(shù)據(jù)幀、數(shù)據(jù)元素、數(shù)據(jù)位描述表的地址,加快了協(xié)議信息的查找,但對(duì)存儲(chǔ)空間的浪費(fèi)也比較大。
3.2 DSP程序設(shè)計(jì)
    軟件程序調(diào)用CCS 2提供實(shí)時(shí)操作系統(tǒng)DSP/BIOS,DSP/BIOS采用搶先式多任務(wù)內(nèi)核,支持硬件中斷、軟件中斷、任務(wù)、后臺(tái)線程等4種線程,并提了同步機(jī)制。在DSP/BIOS下調(diào)用NDK的函數(shù)庫(kù)進(jìn)行TCP/IP協(xié)議編程時(shí),需配置EMAC并開啟線程監(jiān)控網(wǎng)絡(luò)接口,參考文獻(xiàn)詳細(xì)介紹了DSP/BIOS下的TCP/IP協(xié)議編程,這里把網(wǎng)絡(luò)總線視為普通接口。
    為了保證系統(tǒng)實(shí)時(shí)性,需合理使用DSP/BIOS提供的不同類型線程,并協(xié)調(diào)好各線程間的通信。協(xié)議及各總線的配置數(shù)據(jù)均存儲(chǔ)于FLAS-H,也上電后通過以太網(wǎng)在線動(dòng)態(tài)加載至DM642。在主線程中對(duì)DM642和FPGA進(jìn)行初始化配置。硬件中斷的實(shí)時(shí)性最高,監(jiān)控各總線狀態(tài),并根據(jù)從FPGA讀回的中斷信息,生成相應(yīng)消息并觸發(fā)軟件中斷和線程。硬件中斷的流程如圖6所示,依次掃描各總線中斷信息,根據(jù)中斷信息觸發(fā)總線異常、接收數(shù)據(jù)、幀頭識(shí)別、協(xié)議接收完成、發(fā)送完成等中斷的處理程序。


    在接收數(shù)據(jù)所遵從的傳輸協(xié)議未知時(shí),先觸發(fā)軟件中斷識(shí)別協(xié)議類型,在傳輸協(xié)議已知時(shí),直接觸發(fā)總線管理線程。任務(wù)可以被阻塞和掛起,支持動(dòng)態(tài)內(nèi)存分配等API函數(shù),對(duì)以太網(wǎng)及RS 232等總線建立線程分別建立總線管理線程。各總線管理線程的流程如圖7所示,根據(jù)觸發(fā)的消息類型,建立和釋放緩沖區(qū),編解碼協(xié)議,觸發(fā)數(shù)據(jù)發(fā)送總線,監(jiān)控總線狀態(tài),協(xié)調(diào)總線發(fā)送通道的使用。在識(shí)別出傳輸協(xié)議為高優(yōu)先級(jí)協(xié)議時(shí),總線管理線程會(huì)調(diào)用API函數(shù)提高自身優(yōu)先級(jí),以達(dá)到搶占CPU的目的,處理完協(xié)議后會(huì)再次恢復(fù)以前的優(yōu)先級(jí)。軟件中斷優(yōu)先級(jí)低于硬件中斷,對(duì)堆棧要求小,用于低優(yōu)先級(jí)協(xié)議的幀頭識(shí)別。采用觸發(fā)跳轉(zhuǎn)至相應(yīng)處理程序的方法可以加快數(shù)據(jù)處理,保證高優(yōu)先級(jí)協(xié)議的實(shí)時(shí)性。各級(jí)線程都會(huì)盡量在等待數(shù)據(jù)或資源時(shí)跳轉(zhuǎn)至阻塞狀態(tài),以便釋放CPU。

4 結(jié)語
    本設(shè)計(jì)采用以下幾個(gè)方法保證多協(xié)議轉(zhuǎn)換實(shí)時(shí)性:采用高速DSP加快數(shù)據(jù)處理速度;將協(xié)議分為高低優(yōu)先級(jí),采用FPGA實(shí)時(shí)識(shí)別高優(yōu)先級(jí)協(xié)議,大大提高了高優(yōu)先級(jí)協(xié)議匹配速度;按地址將協(xié)議的幀描述表、數(shù)據(jù)元素描述表、數(shù)據(jù)位描述表等信息存儲(chǔ)與FLAsH,提高了協(xié)議信息的查找效率;使用了DSP/BIOS提供的不同類型線程,并采用觸發(fā)不同消息的方法跳轉(zhuǎn)線程,提高了數(shù)據(jù)處理效率,并保證了高優(yōu)先級(jí)協(xié)議優(yōu)先編解碼。FPGA識(shí)別協(xié)議、DM642編解碼、線程轉(zhuǎn)換所產(chǎn)生的延時(shí)均為微秒級(jí)至幾十微秒級(jí),因此本設(shè)計(jì)在一定程度上可以保證對(duì)高優(yōu)先級(jí)協(xié)議單個(gè)數(shù)據(jù)元素的編解碼延時(shí)小于1 ms,但在支持協(xié)議的通用性上可以進(jìn)一步研究。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉