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

應用RTOS的TD-LTE無線綜測儀的實現

2012-07-26 11:04:08李小文
自動化儀表 2012年2期
關鍵詞:分配系統

李小文 肖 壘,2

(重慶市移動通信重點實驗室1,重慶 400065;重慶郵電大學通信與信息工程學院2,重慶 400065)

0 引言

隨著我國通信市場需求的進一步增加,現階段對通信前沿技術的研究呈現迅速增長的態勢,與此同時,公眾對通信軟件服務質量的要求也越來越嚴格。這使得人們對通信軟件的實時性、可靠性要求越來越高,從而催生了通信行業對新一代無線通信系統的研究與開發。

在2011年世界移動通信大會上,4 G網絡的發展成為各界關注的焦點,TD產業聯盟已將重點放在TDLTE端到端的產業鏈成果上。由此可以預測,日后通信行業對TD-LTE產品的測試擁有極大的潛在需求。在對TD-LTE終端綜合測試儀的設計過程中,采用了Nucleus操作系統。Nucleus PLUS是由美國ATI公司開發設計的實時操作系統(real-time operating system,RTOS)嵌入式產品,它是一種實時、搶占、多任務內核,被應用于有強實時性要求的應用領域。由于RTOS中大約95%的程序由ANSI C編寫,所以非常便于移植,現已被廣泛應用于通信、航天航空、自動化控制和國防等領域[1]。TD-LTE終端綜合測試儀目前已經進入試驗階段,正式產品已在2011年4月底完成。

1 Nucleus PLUS簡介

Nucleus PLUS操作系統是目前應用較為廣泛的操作系統之一,其核心區代碼不超過20 kB。它采用軟件組件的方法,每個組件可以完成特定的功能。組件通常由使用C或匯編語言編寫的模塊組成,為外部應用程序提供清晰的接口。Nucleus PLUS不但提供源程序代碼,且具有性價比高、易學易用、功能模塊豐富等特點[2]。

Nucleus PLUS系統結構如圖1所示。

從圖1可知,Nucleus PLUS開發平臺提供多種模塊,用戶僅需編寫任務模塊和中斷服務程序(interrupt service routines,ISR),然后利用各模塊接口獲取相應服務,由Nucleus PLUS操作系統調度多個用戶任務并行運行,從而共享系統資源。Nucleus PLUS根據優先級和時間片調度各任務分時、分優先級地占用系統資源,各任務間通過郵箱、隊列或管道進行通信,使用信號量、事件組和信號進行同步與互斥。同時,Nucleus PLUS提供分區內存和動態內存兩種存儲器管理機制,并提供定時器,用于處理周期性事件、任務超時[3]。

2 TD-LTE無線綜測儀簡介

TD-LTE終端綜合測試儀可以實現TD-LTE系統下行物理通道發生、呼叫建立、釋放和尋呼、上下行功率控制等多種功能。其主要用來精確測量TD-LTE終端的各種射頻指標,可模擬TD-LTE基站、無線網絡控制器(radio network controller,RNC)和核心網的信令功能,測試TD-LTE終端在多種狀態下的性能指標。TD-LTE終端綜合測試儀廣泛應用于TD-LTE終端的設計、研發、生產、認證以及維修等領域。

TD-LTE終端綜合測試儀能對被測終端發起如頻率誤差(error of frequency,FOE)、誤差向量幅度(error vector magnitude,EVM)、比特誤碼率(bit error rate,BER)和塊誤碼率(block error ratio,BLER)等各種基本測量,進行射頻(radio frequency,RF)工作模式、串行數據處理等模式的設置,以及實現小區激活、去激活和重配置等。它為出廠終端設備的檢測提供了最直觀的測試方式,同時也為TD-LTE終端設備的開發提供了極大的便利。TD-LTE終端綜合測試儀對出廠終端進行測量的基本方式如圖2所示。

圖2中,TD-LTE終端綜合測試儀模擬網絡端對終端進行測試。為防止測試中測試信號外泄對正常無線信號造成干擾,測試中需使用專用的測試線將被測終端連接至測試儀表。綜測儀前端面板可簡單劃分為顯示和控制兩個區域。顯示區域用來顯示測試結果,如測試波形、圖形等;控制區域用來配置并發送測試命令,如開機請求、小區激活請求和測量請求等指令。在測試中,還需將測試用計算機與綜測儀相連,從而更詳細地顯示或者處理得到的各種測試數據[4-5]。

3 系統設計

3.1 系統任務劃分

系統任務的劃分是實時通信系統設計中最關鍵的一步,只有合理地劃分各任務,系統的設計才能得到簡化,同時也使后續的調試更為方便。如任務劃分不恰當,則系統硬件的設計和軟件的調試會存在較大困難,系統甚至會出現致命的錯誤。在對TD-LTE終端測試儀表軟件部分進行設計中,根據不同的功能實現特點,系統被劃分為八個任務[6],它們分別是PDN網關(PDN-gateway,PGW)、業務網關(service-gateway,SGW)、增強型會話管理(EPS session management,ESM)、增強型移動性管理(EPS mobility management,EMM)、無線資源控制(radio resource control,RRC)、分組數據匯聚(packet data convergence protocol,PDCP)、無線鏈路控制(radio link control,RLC)以及媒體接入控制(medium access control,MAC)。任務共有執行、就緒、掛起、停止和完成這五個不同狀態屬性,但任何任務只能處于其中一種狀態。在多任務系統中,只有在競爭到系統資源的情況下任務才能得到執行。任務擁有的資源情況是不斷被改變的,因此,任務的狀態也不斷隨之變化。

任務的優先級代表該任務對工作內容的優先程度。Nucleus PLUS實時操作系統可提供基于任務優先級的搶占式調度,它提供0~255共256個不同的優先級,0代表最高優先級,255代表最低優先級。對于重要的任務,可賦予較高的優先級;反之亦然。在該系統的實現過程中,通過整體分析,考慮到越底層的處理需要越高的優先級。因此,對各任務優先級分配如下:MAC的優先級分配為40,RLC的優先級分配為50,PDCP的優先級分配為60,RRC的優先級分配為70,EMM的優先級分配為80,ESM的優先級分配為90,SGW的優先級分配為100,PGW的優先級分配為110。

3.2 任務間通信

Nucleus PLUS實時操作系統提供任務間同步、互斥以及通信機制。在對該系統進行設計時,各任務不是相互獨立的,它們之間存在各種聯系。因此,必須處理好任務間通信,才能使系統達到最佳的使用效率,避免發生死鎖甚至崩潰等災難性后果。

在系統設計過程中,使用消息隊列實現消息間通信。消息隊列由消息隊列控制塊統一進行管理,系統可以動態地分配或回收消息隊列控制塊。當一個消息被創建以后,Nucleus PLUS內核將會為其分配一個唯一的隊列控制塊(queue control block,QCB)和標志,同時分配消息存儲緩沖區、一個或多個任務等待列表等。消息隊列的創建者可通過接口程序設置隊列長度與最大消息長度。一個任務包括兩個列表:發送任務等待列表和接收任務等待列表。僅當消息隊列為空時,才開始填充接收任務等待列表;同樣地,僅當消息隊列為滿時,才開始填充發送任務等待列表[7]。

任務在等待一個空隊列時會被掛起,同樣地,當任務試圖發送一個消息到滿隊列中時也會被掛起。圖3通過RRC隊列簡單展示了隊列通信的基本原理。根據系統前期設計,對應八個任務創建了八個消息隊列,隊列長度為30(可存儲30條不同消息),消息最大長度為1(只需存儲消息首地址)。用戶創建RRC隊列后,該隊列處于空狀態,此時EMM、PDCP、RLC和MAC等任務都可以將消息發送至RRC隊列而無需等待。當RRC隊列中存滿30條消息后,隊列即被存滿,無空間接收其他消息,所以圖3中任務EMM與任務MAC將會進入發送等待隊列而被掛起。同時,對于該隊列進行接收的任務RRC,可以從隊列中取出相應消息,當隊列中的消息個數為0時,接收任務RRC即被掛起,直到隊列中又存儲了消息。

圖3 消息隊列示意圖Fig.3 Sketch map of message queue

3.3 內存管理

內存分配組件負責管理Nucleus PLUS所有的內存設備。在對系統設計時,根據實際需要為它分配五個內存池,每個內存池中包括一定數目的、固定大小的內存單元,分別為52 B、140 B、352 B、2000 B 和60000 B,適用于不同的內存需求。當任務申請內存時,系統首先檢查其合法性,對于合法的內存申請,系統選擇對應內存池并按照先后順序分配固定大小內存單元,同時在該內存池中進行相應記錄[8]。

任務MAC需要申請40 B的內存空間,系統根據MAC該次申請的內存大小(0<40<52)選擇對應的內存池PM_POOL_1。緊接著,根據可用首地址(Pm_available_list)中存儲的地址值(指針(N+1)),系統將編號為(N+1)的內存單元分配給MAC任務,并將該內存單元中的地址(N+1)設置為空,此時可用首地址中存儲的就是下一個未分配的內存單元N的首地址(指針N),并標記了該內存空間的使用情況。當RRC任務需要釋放內存單元時,只需將該內存單元的首地址(指針M)告知系統,系統根據內存池標示 PM_POOL_1知道該單元屬于內存池1;然后將該內存單元的地址域(空)設置為可用首地址中的值(指針N),同時將可用首地址的值設置為該內存單元的首地址(指針M),即說明該內存單元可以被再次使用。

內存申請與釋放的基本步驟如圖4所示。

圖4 內存申請與釋放Fig.4 Allocation and release of memory

3.4 任務調度

根據在運行過程中能否響應中斷的情況,可將任務分為搶占式調度和非搶占式調度。Nucleus PLUS操作系統提供基于優先級的搶占式調度,同時也提供基于時間片的輪轉調度。時間片輪轉調度是指當同優先級的多個就緒任務,需要根據就緒的先后順序,分配一定的時間片給先就緒的任務,運行完后再執行后就緒的任務。在測試儀表軟件的實現中并未定義同優先級的任務,所以只需利用操作系統提供的基于優先級的搶占式調度[9-10]。

基于優先級的搶占式調度過程如圖5所示。在系統運行后,任務RRC需占用系統資源,此時CPU未被任何其他任務占用,申請被允許。任務RRC執行完成后,向任務PDCP發送相關處理指令,任務PDCP接收到該指令后需申請相應資源,系統根據資源占用情況分配一定資源給 PDCP,觸發其進行處理。在任務PDCP的執行過程中,優先級高的任務MAC需要占用系統資源,系統將PDCP掛起,并運行就緒的MAC任務,直到MAC運行完成后才開始執行掛起的任務PDCP。在PDCP執行的過程中,任務EMM需占用系統資源進行處理,但由于其優先級低于正在執行的任務,所以必須等待;當PDCP執行完成后,系統才開始EMM任務的處理。

圖5 任務調度Fig.5 Task scheduling

圖5中,當EMM任務執行完成后,它會向ESM任務發送一個處理信號,要求ESM任務進行處理。此時若系統發現并無優先級高的任務調用資源,則任務ESM開始執行。經過一段時間,優先級較高的PDCP任務需要占用資源,系統將使用權交給任務PDCP,而在其執行過程中,優先級更高的RLC任務需要調用系統資源,此時系統將使用權交給任務RLC,然后交還給掛起的任務PDCP與任務ESM。任務調用過程完成后,系統掛起所有任務。

3.5 整體體設計

在底層硬件支持、射頻發射模塊以及應用層實現的基礎上,結合系統軟件部分,就可以完全實現TDLTE終端綜合測試儀。綜測儀的整體設計如圖6所示。

圖6 整體設計圖Fig.6 Overall design

圖6中,當綜測儀開機后,首先對底層硬件、射頻發射模塊以及應用層相關組件進行初始化,然后對操作系統進行初始化,包括隊列、應用以及匯編初始化。應用層初始化部分是重點,它由用戶自行設計,大體上包括地址分配、串口和終端初始化、任務創建、定時器創建及其初始化。

如前所述,根據綜測儀的設計,在創建任務時創建了八個不同的任務,其都由Nucleus PLUS操作系統進行調度并共享系統資源。當綜測儀開機完成后,測試人員可通過人機操作界面發送請求。該請求通過中斷的方式告知給Nucleus PLUS操作系統,操作系統根據系統資源使用情況分配相應的資源給任務PGW,從而及時處理人機接口下發的請求。任務PGW將處理產生的消息發送至相應隊列(SGW隊列),觸發SGW任務執行相應操作,此時操作系統又將分配相應資源給SGW任務使用CPU。如此循環往復,直到將消息(需要對被測終端進行操作)通過射頻模塊發送出去或觸發(配置綜測儀)綜測儀本身進行相應動作。

4 結束語

本文所設計的系統采用了實時多任務操作系統Nucleus PLUS。首先利用其任務分配機制將系統劃分成不同功能的多個任務,且不同的任務擁有不同的優先級,高優先級任務優先占用系統資源;然后利用內存分配機制為占用資源的任務分配合理空間,同時通過隊列實現各任務間的通信。對比于其他單任務操作系統,采用該實時操作系統既可以滿足通信軟件對實時性和可靠性的高要求,又方便了系統調試。這種實現方案對其他類似的應用場合同樣具有一定的啟示作用。

[1]管武.基于ARM的嵌入式測控平臺的設計及實現[D].上海:上海大學,2008.

[2]胡曙輝,陳健.幾種嵌入式實時操作系統的分析與比較[J].單片機與嵌入式系統應用,2007(5):5-9.

[3]鄭宗漢.實時系統軟件基礎[M].北京:清華大學出版社,2003.

[4]李小文,李貴勇.TD-SCDMA第三代移動通信系統、信令及實現[M].北京:人民郵電出版社,2003.

[5]沈嘉.3GPP長期演進(LTE)技術原理與系統設計[M].北京:人民郵電出版社,2008.

[6]張曉輝,羅毅.μC/OS-Ⅱ在應用系統中任務劃分及優先級設置[J].工業控制計算機,2005(7):40-44.

[7]羅蕾.嵌入式實時操作系統及其應用開發[M].2版.北京:北京航空航天大學出版社,2007.

[8]李侯清.嵌入式系統內存管理簡述[J].經濟技術協作信息,2010(33):128-129.

[9]朱麗英,蔡家楣.基于Nucleus PLUS的嵌入式系統的軟件設計[J].計算機應用于軟件,2005,22(2):33 -34.

[10]劉洲洲.基于嵌入式Nucleus系統的多進程實現方案[J].微處理機,2010(2):85-87.

猜你喜歡
分配系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
基于可行方向法的水下機器人推力分配
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
應答器THR和TFFR分配及SIL等級探討
基于PowerPC+FPGA顯示系統
遺產的分配
一種分配十分不均的財富
半沸制皂系統(下)
績效考核分配的實踐與思考
主站蜘蛛池模板: 国产精品视频公开费视频| 日日拍夜夜嗷嗷叫国产| 国产精品尤物在线| a级免费视频| 亚洲欧洲日韩综合色天使| 欧美成人手机在线视频| 欧美日韩免费观看| 国产精品人成在线播放| 国产97公开成人免费视频| 国产精品福利尤物youwu| 国产免费网址| 久久免费视频播放| 五月丁香在线视频| 亚洲欧美日韩天堂| 亚洲国产成人综合精品2020 | 国内视频精品| 毛片手机在线看| 欧美在线导航| 污网站在线观看视频| 国产91av在线| 国产精品漂亮美女在线观看| 全部无卡免费的毛片在线看| www.国产福利| 亚洲国产精品一区二区高清无码久久| 欧美日韩久久综合| 成人午夜精品一级毛片| 午夜精品福利影院| 在线看片免费人成视久网下载| 无码日韩人妻精品久久蜜桃| 精品国产污污免费网站| 久久国产亚洲偷自| 国产丝袜啪啪| 亚洲成人手机在线| 亚洲国产亚洲综合在线尤物| 精品综合久久久久久97| 91视频国产高清| 国产精品女主播| 亚洲天堂伊人| 亚洲欧美激情小说另类| 亚洲国产成人在线| 无码免费视频| 天堂av综合网| 午夜无码一区二区三区在线app| 国产欧美日韩18| 在线观看精品国产入口| 日韩二区三区| 老司机久久99久久精品播放 | 免费看的一级毛片| a级毛片毛片免费观看久潮| 毛片久久久| 欧美成人一级| 一级一级一片免费| 国产69精品久久久久孕妇大杂乱| 波多野结衣二区| 亚洲成人黄色在线观看| 国产精品9| AⅤ色综合久久天堂AV色综合| 精品一区二区无码av| 亚洲一本大道在线| 色婷婷成人网| 国产日本一区二区三区| 伊人久久精品无码麻豆精品 | 亚洲国产精品不卡在线 | 欧美视频免费一区二区三区| 欧美国产在线看| h网址在线观看| 国产在线自乱拍播放| 日韩欧美成人高清在线观看| 亚洲日产2021三区在线| av一区二区无码在线| 五月婷婷亚洲综合| 久久大香伊蕉在人线观看热2| 欧美在线免费| 日本免费福利视频| 亚洲中文无码h在线观看 | 亚洲综合网在线观看| 少妇高潮惨叫久久久久久| 在线观看国产黄色| 亚洲区一区| 久久综合色天堂av| 欧美人在线一区二区三区| 久久久久久尹人网香蕉|