999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于VxWorks的無中心組網協議實現

2014-01-01 03:09:36劉春冉倪光華
無線電工程 2014年3期
關鍵詞:嵌入式系統

劉春冉,張 航,倪光華

(中國電子科技集團公司第五十四研究所,河北石家莊050081)

0 引言

在無線通信系統的移動自組織網絡中,一方面由于場景不斷變換,使得移動節點間形成的網絡拓撲隨時可能發生變化;另一方面,這些通信設施存在著發生故障的可能性,如果發生故障的是中心節點,則影響整個通信系統的正常運作,所以采用基于TDMA的無中心自組網通信協議,各個節點之間相互獨立,地位平等,可以隨意地移動,任意2個節點之間的通信都不需要經過第三方中轉,亦不需要中心節點的控制,可以在任何時刻任何地方快速自動組網。其中的節點可以隨時加入和離開網絡,任意節點的故障不會影響整個網絡的運行。與有中心網絡相比,無中心的自組織網絡可以快速實現自動組網,具有很強的抗毀性,非常適于多節點的組網通信。

1 VxWorks操作系統及其硬件

VxWorks是由美國Wind River公司設計開發的一款性能卓越的嵌入式實時多任務操作系統,為程序員提供了高效的實時多任務調度、中斷管理,以及實時的任務間通信,保證了數據通信的實時性要求,并具有友好的開發調試環境,便于應用程序的開發調試。VxWorks只占用了很小的存儲空間,并可高度裁減,保證了系統能以較高的效率運行。其優越的持續發展能力、良好的開發環境以及高性能的微內核結構使得VxWorks在通信、航空航天等對實時性要求極高的領域得到廣泛的應用[1]。

硬件采用PowerPC通信處理器的MPCXX系列,PowerPC的處理器是針對高端嵌入式領域設計的,支持網絡通信接口多,通信處理能力強,特別適合進行計算和通信處理,廣泛應用于網絡通信領域。MPCXX器件的內核運行頻率高達幾百MHz,內置單RISC QUICC EngineTM通信模塊,高集成和低功耗,外設PCI總線、USB 2.0和快速以太網等多個接口[2]。相應的硬件結構如圖1所示[3]。

可編程邏輯芯片(FPGA)控制模塊用于對調制解調器進行設置,調制或解調不同速率相對應的波形;FLASH存儲單元存放用戶應用程序、操作系統以及其他在系統掉電后需要保存的用戶數據;SDRAM存儲單元作為系統運行時的主要區域,系統、用戶數據及堆棧均位于其中;以太網單元為系統提供以太網接入的物理通道,通過該接口系統能以10 M/100 M的速率接入以太網;RS232串行接口用于嵌入式系統與用戶端進行串行通信和監控時使用;USB接口可提供多種設備終端的接入接口[4]。

圖1 硬件結構

2 無中心組網協議的關鍵技術

為保證一個通信系統有完整的通信功能,需要有一套完善的通信協議來支撐。通信系統無中心,每個用戶地位平等,它們自主決定是否發送信號。所以,每次通信都是由組網中的所有用戶共同協調完成的,每實現一次通信,就會改變用戶信道的占用情況。無中心組網協議基于TDMA模式,通過實時對鄰居節點進行檢測,根據信道的狀態對時隙進行動態分配,實現了組網內各節點之間可靠的信息交換和傳輸。

OSI參考模型將計算機網絡系統分為5層模型,按照底層至上層的順序依次是:物理層、數據鏈路層、網絡層、傳輸層和應用層[5]。計算機網絡系統模型如圖2所示。

圖2 計算機網絡系統模型

物理層的主要任務包括:信道檢測、信號的調制與發送、信號的接收以及解調,是該通信系統中的核心部分,主要由FPGA芯片及其相關電路完成。

數據鏈路層是通信協議調度層。主要是通過VxWorks操作系統完成通信系統中多個節點的組網,調整各個節點的時隙狀態,進行節點間的動態數據傳輸。通過跟蹤捕獲GPS秒信號,實現組網內各個節點的同步:首先對各個節點以秒為單位的長幀進行同步,然后對短幀進行同步,進而實現短幀內各個時隙的同步。

無中心組網協議的流程主要由鄰居發現、節點建鏈和業務傳輸3部分組成。首先通過天線全方位掃描得到周圍的鄰居節點以及其相應的位置。然后建立自身節點和鄰居節點之間基本的通信,傳輸各種控制命令。當有業務傳輸時可以根據用戶業務的速率自適應地調整無線傳輸帶寬,并根據業務量大小動態地給通信節點分配相應的數據時隙,業務傳輸完畢后釋放為空閑時隙。

無中心組網面臨著暴露終端和隱藏終端的問題,為解決這個問題,協議對分配的時隙狀態除了設定“接收”和“發送”狀態以外,還設定了“可發”、“可收”、“不可發”和“不可收”等狀態,并根據局部拓撲結構進行動態調整,隱藏終端不同時發送,暴露終端被動接收,這樣有效地避免了數據沖突和信道延遲。

網絡層:采用AODV協議完成路由的功能。每個節點發現鄰居節點以后,都會維護一張包含所有鄰居節點路由信息的路由表,并周期性地進行路由信息交互,根據拓撲結構隨時對自身的路由表進行更新,對不同子網的節點通信采取多跳轉發的方式進行數據傳輸。

傳輸層:采用UDP協議從鏈路層向應用層提供端到端的可靠傳輸。

應用層:對通信系統進行實時監控,數據確認與統計,檢測誤碼率,顯示頻譜和眼圖狀態,以及節點各個時隙的利用狀態。

3 VxWorks的相關設計

3.1 VxWorks系統中任務的設置

任務在VxWorks嵌入式操作系統中是一個核心的概念,是動態的抽象對象。它可以在運行時創建或刪除,是競爭系統資源的最小單位。通信系統中有多個節點,每個節點上具體的任務功能劃分及優先級設置需要根據實際的應用需求來統一設定,由于每個節點都需要接收數據、發送數據,整個協議基于TDMA模式,需要進行時隙的動態分配,所以創建了2個任務,分別進行該時隙的讀或寫操作。在協議中,讀任務和寫任務同等重要,所以將任務的優先級設置為相同。

task1=taskSpawn(“tDemo1”,160,0,20000,(FUNCPTR)main_rx,0,0,0,0,0,0,0,0,0,0);

task2=taskSpawn(“tDemo2”,160,0,20000,(FUNCPTR)main_tx,0,0,0,0,0,0,0,0,0,0);

3.2 任務之間的通信

VxWorks提供了一套完備的任務間通信機制,讀寫任務間的通信方式主要采用以下2種[6]:

①共享內存。這是任務間通信的最簡單方法,對于全局變量,讀寫任務都共享同一地址空間的數據,可以快速地訪問內存,可以得到與任務相關的大量數據和全局變量,并根據協議需要對其進行相應的操作,更新節點和時隙狀態,期間沒有用到緩存、數據復制等操作,可以節約大量的內存和CPU資源,不會加重系統負擔。

②信號量。系統中多任務需要共同分享一個CPU,本協議采用二進制信號量,用于任務間的同步操作和切換,很好地解決了多任務間的競爭與合作關系。

首先使用semBCreate創建讀信號量sem1和寫信號量sem2,用于讀寫中斷和讀寫任務的同步。讀任務一直在等待獲取中斷信號量,當檢測到讀中斷時,通過pciIntConnect函數將中斷服務程序和中斷號掛接起來,在中斷服務程序中做清中斷等短而必須的操作,調用semGive函數釋放讀信號量sem1,使該信號量變為可用狀態,讀任務一直在等待讀信號量sem1,用semTake函數獲取信號量,如果信號量sem1可用,則讀任務task1獲得信號量,讀任務可以從就緒隊列中調出來,執行讀取數據并處理的相關工作;如果信號量不可用,則讀任務會阻塞,將被加入到阻塞隊列中等待。同理,寫任務也是一樣。

通信系統中讀中斷服務程序示例代碼如下[7]:

為保障中斷的及時響應,VxWorks中的讀寫中斷服務程序與讀寫任務分開獨立運行,并保持中斷服務程序的精簡。

通信系統中讀任務示例代碼如下[8]:

3.3 PCI接口

通過PCI(Peripheral Component Interconnect)局接口可以較好地實現物理層和MAC層數據的交互,并使2層的開發工作相對獨立,物理層負責調制解調數據的傳輸,MAC層以上負責協議的實現。PCI接口設計結構如圖3所示。

圖3 PCI接口設計結構

基帶單元中PowerPC(VxWorks)實現PCI主設備控制功能(PCI-Master),調制解調單元中的FPGA實現PCI從設備控制功能(PCI-Slave),兩者通過PCI連接器進行連接[9]。

在TDMA系統中,基帶單元與調制解調單元之間的數據交互必須按照一個較為嚴格的時間基準進行,需要高穩定度的高鐘來精確定位時間,這對于FPGA較容易實現,但對于用VxWorks實現的協議則較為復雜,需要外部提供較為精確的中斷信號,協助其保證系統對時敏性的要求。所以中斷信號由FPGA提供,FPGA根據GPS模塊提供的秒脈沖信號產生秒中斷來同步多個節點,節點的每個時隙產生讀寫中斷信號傳送到基帶單元,基帶單元響應讀寫中斷后,進行相應的讀寫操作。

為保證PCI的高速傳輸,采用PCI的突發傳輸模式,PowerPC和PCI接口的數據傳輸采用DMA模式[10],DMA操作需要將源地址、目的地址、數據長度和通道數寫入相應的寄存器,通過直接內存訪問將數據在PCI和緩存之間傳輸。

dmaTransfer(uint32 srcAddr,uint32 dstAddr,

uint32 byteCount,uint32 channelNum)

通過ping操作可以測試ip數據的解析以及傳輸,驗證了網絡層協議和PCI數據傳輸的正確性。

4 結束語

實現了多節點無中心組網協議的設計,完成了基于VxWorks的程序編寫以及基于PowerPC的硬件和相關接口的調試,實現了多節點的動態無中心組網信息傳輸。通信系統中內16個節點可以快速自動搜索確定自身的鄰居節點,形成鄰居列表,并定時根據新用戶的加入或原用戶的退出情況更新鄰居表。根據用戶的業務需求和信道容量,通過協議中時隙的動態分布進行業務傳輸。節點的目標終端機可以實時監控誤碼率、信號頻譜以及時隙分配狀態。

[1] 張 珍.基于VxWorks信息控制系統的開發研究[D].北京:中國科學院研究生院碩士學位論文,2010:10.

[2] 賴明壯,張正階.基于MPC8309的嵌入式linux系統的移植[J].儀器儀表用戶,2012,1(19):85 -87.

[3] 宋桂景,崔美英,班亞明.VxWorks下的多串口卡設計[J].無線電通信術,2012,38(2):59 -61.

[4] 閻連龍.基于ARM的嵌入式網關多協議轉換的研究[D].焦作:河南理工大學碩士學位論文,2008:28-35.

[5] 朱世宇,劉春雷,甘 科.TCP/IP協議在VxWorks嵌入式平臺上的實現[J].自動化與儀器儀表,2011(5):115-116.

[6] 王金輝.VxWorks嵌入式實時操作系統的原理和實現[J].無線電工程,2007,37(1):62 -64.

[7] 武 華,劉軍偉.基于 VxWorks的多任務程序設計[J].計算機技術與發展,2011,9(21):163 -166.

[8] 唐曉平,何 峰,梁甸農.基于VxWorks的多中斷處理設計[J].計算機工程,2009,35(13):249 -251.

[9] 閆 改,郭曉光.基于DSP的PCI總線高速DMA數據傳輸[J].無線電工程,2013,43(8):19 -21.

[10]雷 宙,李立京,文懷濤.基于VxWorks和DSP的PCI總線數據傳輸的實現[J].微計算機信息,2011,27(1):59-61.

猜你喜歡
嵌入式系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發平臺
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
主站蜘蛛池模板: 国产丝袜第一页| 国产精品不卡片视频免费观看| 亚洲精品午夜无码电影网| 欧美啪啪一区| 亚洲成人精品在线| 97在线公开视频| 久久精品视频一| 天堂网国产| 久久久久亚洲AV成人人电影软件 | 国产精品专区第1页| 在线观看91香蕉国产免费| 喷潮白浆直流在线播放| 无码网站免费观看| 午夜激情福利视频| 伊人婷婷色香五月综合缴缴情| jizz在线观看| 亚洲开心婷婷中文字幕| 成年看免费观看视频拍拍| 无码电影在线观看| 亚洲av无码人妻| 日韩无码视频专区| 少妇精品在线| 无码乱人伦一区二区亚洲一| 色悠久久久久久久综合网伊人| 婷婷开心中文字幕| 五月婷婷伊人网| 国产成本人片免费a∨短片| 国产成人高清在线精品| 国产精品微拍| 韩日无码在线不卡| 69av免费视频| 91无码网站| 亚洲成人黄色在线观看| 91无码网站| 精品日韩亚洲欧美高清a| 国产粉嫩粉嫩的18在线播放91| 日本精品视频一区二区| 久久精品一卡日本电影| 久久9966精品国产免费| 色网站免费在线观看| 亚洲伊人电影| 日韩精品资源| 欧美在线中文字幕| 国模沟沟一区二区三区| 中文无码影院| 亚洲第一成年网| 亚洲av日韩av制服丝袜| 日本www在线视频| 91精品人妻一区二区| 国产屁屁影院| 亚洲另类国产欧美一区二区| 国产青青操| 国产原创第一页在线观看| 国产精品视频第一专区| 欧美无遮挡国产欧美另类| 天天综合亚洲| 久久久久免费看成人影片| 99久久99这里只有免费的精品| 国产香蕉一区二区在线网站| 国产熟睡乱子伦视频网站| 精品视频一区在线观看| 久久婷婷五月综合色一区二区| 国内精品免费| AV网站中文| 国产欧美日韩另类| 国产免费精彩视频| 国产精品区视频中文字幕| 国产99免费视频| 国产精品熟女亚洲AV麻豆| 在线亚洲天堂| 亚洲Va中文字幕久久一区| 亚洲黄色高清| 日韩高清中文字幕| 午夜高清国产拍精品| 制服丝袜亚洲| 在线无码九区| 综合色在线| 久久婷婷综合色一区二区| 极品av一区二区| 又粗又大又爽又紧免费视频| 欧美a在线| 天堂中文在线资源|