《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > TD-LTE系統(tǒng)中MAC層子幀調(diào)度研究與實現(xiàn)
TD-LTE系統(tǒng)中MAC層子幀調(diào)度研究與實現(xiàn)
來源:電子技術(shù)應(yīng)用2013年第2期
蔣忠均,,張德民,,庹 勤
重慶郵電大學(xué) 移動通信重點實驗室,,重慶400065
摘要: 為滿足TD-LTE系統(tǒng)對實時性的要求,通過對媒體接入控制(MAC)層和物理層之間的實時性研究以及對操作系統(tǒng)Nucleus PLUS的機制分析,,實現(xiàn)了MAC層子幀調(diào)度,。根據(jù)TD-LTE無線綜合測試儀中的設(shè)計要求,詳細(xì)介紹了Nucleus PLUS任務(wù)循環(huán)調(diào)度以及MAC子幀調(diào)度的流程設(shè)計,。在實現(xiàn)MAC層基本功能的同時滿足了TD-LTE對系統(tǒng)實時性、子幀同步與任務(wù)資源管理的需求,。
中圖分類號: TN929
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2013)02-0015-03
Research and implementation of the sub-frame scheduling of MAC in TD-LTE system
Jiang Zhongjun,,Zhang Demin,Tuo Qin
Laboratory of Mobile Communications, Chongqing University of Posts and Telecommunications,Chongqing 400065,,China
Abstract: ase on the real-time requirements in TD-LTE system,,the sub-frame scheduling of MAC layer has been achieved based on the study of real-time between the MAC layer and physical layer and the analysis of Nucleus PLUS operating mechanism. According to the real-time requirements in TD-LTE wireless comprehensive tester, loop scheduling mechanism of Nucleus PLUS task has been described in detail and the MAC sub-frame scheduling process has been designed. While the basic functions of the MAC layer has been realized, the real-time capability of the TD-LTE and the needs of sub-frame synchronization with the resource management of task have been met.
Key words : TD-LTE;MAC,;real-time capability,;sub-frame scheduling

    為了加速TD-LTE(Long Term Evolution)在中國的全面成長和產(chǎn)業(yè)鏈的的形成,2011年我國啟動了“新一代寬帶無線移動通信網(wǎng)”重大專項,。本文介紹了在國家重大專項“TD-LTE無線綜合測試儀表開發(fā)”的基礎(chǔ)上,,對TD-LTE網(wǎng)絡(luò)端 MAC(Medium Access Control)調(diào)度的實現(xiàn)。目前關(guān)于MAC層的文獻(xiàn)有不少,,但大都局限于簡單的協(xié)議研究和設(shè)計[1],。在協(xié)議棧里所有的數(shù)據(jù)都需要通過MAC層的調(diào)度才能走向空中接口和時間軸上,MAC層是實現(xiàn)實時性和調(diào)度機制的樞紐[2],,所以設(shè)計MAC層子幀調(diào)度方案顯得尤為重要,。

1 Nucleus操作機制
    Nucleus主控程序的操作機制是采用等待檢測機制[3],不斷循環(huán)檢測當(dāng)前執(zhí)行任務(wù)或高級中斷的封閉循環(huán),僅當(dāng)有中斷到達(dá),、未處理任務(wù)設(shè)置或復(fù)位時才跳出循環(huán),。主控程序首先檢測當(dāng)前是否有高優(yōu)先級中斷被激活,如果有,,則跳出循環(huán)進(jìn)入高優(yōu)先級中斷處理服務(wù)函數(shù),;如果沒有,則繼續(xù)檢測當(dāng)前是否有未處理激活任務(wù),。如果有未處理激活任務(wù),,則轉(zhuǎn)入任務(wù)處理模塊;如果沒有,,則返回繼續(xù)檢測,。
    TD-LTE系統(tǒng)為每層設(shè)置狀態(tài)機入口函數(shù),函數(shù)設(shè)計為一個死循環(huán)。函數(shù)從相應(yīng)層隊列中接收消息,,根據(jù)當(dāng)前不同狀態(tài)進(jìn)入相應(yīng)消息處理函數(shù)[4],;最后將承載消息內(nèi)存釋放,依次循環(huán),,直到隊列為空時掛起當(dāng)前任務(wù),,跳出循環(huán),返回操作系統(tǒng),。圖1為MAC狀態(tài)機入口函數(shù)的處理機制,。在隊列中所有消息接收完成后,系統(tǒng)將在隊列中掛起MAC任務(wù),,返回操作系統(tǒng)主控程序[5],。

2 MAC調(diào)度
    根據(jù)TD-LTE整體硬件設(shè)計,經(jīng)過實際調(diào)試,,對于不同大小消息,,DSP和FPGA處理消息的總時間為0.8 ms~0.9 ms,ARM處理MAC層消息的總時間為0.4 ms~0.5 ms,。從而得出,,消息處理的總時間為1.2 ms~1.4 ms。圖2為消息在實際調(diào)試中的處理時間:示波器通道1高電平為ARM處理消息所消耗時間(為465 μs),;通道2高電平為DSP和FPGA處理消息所消耗時間(為882 μs),。總時間為1 347 μs,。所以MAC層必須提前2子幀配置消息,, MAC調(diào)度設(shè)計方案[6]才能得到實現(xiàn)。
    在代碼實現(xiàn)中,,MAC調(diào)度器維護(hù)一個消息發(fā)送標(biāo)志數(shù)組assignment_flag[i][j],,其中,,0&le;i<10,0&le;j<1 023,。數(shù)組的行代表子幀號,,列代表幀號。這樣,,assignment_flag[i][j]總共可表示10 240個子幀時刻,。由于每一調(diào)度時刻只允許發(fā)送一個任務(wù),因此在第j幀的第i子幀有消息發(fā)送任務(wù)被配置后,,assignment_flag[i][j]被置1,。每當(dāng)有新消息被調(diào)度發(fā)送時,任務(wù)調(diào)度指針p_assignment_flag將查詢assignment_flag[i][j]變量,,如果assignment_flag[i][j]不為1,,則將消息配置在assignment_flag[i][j]-2的時刻發(fā)送至物理層。如圖3所示,,設(shè)在第39幀的子幀9收到RLC層新數(shù)據(jù)發(fā)送任務(wù),,p_assignment_flag指針繼續(xù)向后查詢,可得第40幀中第3子幀無發(fā)送任務(wù),。調(diào)度器將assignment_flag[3][40]變量置1,,并提前2個子幀,在40幀的子幀1將此消息發(fā)送至物理層,。

3 MAC子幀中斷服務(wù)函數(shù)
    子幀中斷信號由FPGA提供,,每1 ms觸發(fā)1次中斷,MAC層的任務(wù)調(diào)度將通過子幀中斷觸發(fā),。當(dāng)每1 ms的子幀中斷到達(dá)時,,子幀中斷觸發(fā)MAC層進(jìn)入子幀中斷服務(wù)函數(shù)INT_Schedule。下面是子幀中斷服務(wù)函數(shù)INT_Schedule的實現(xiàn)方案,。
    (1)同步,。進(jìn)入INT_Schedule函數(shù)讀取當(dāng)前幀號和子幀號并保存至本地,,以達(dá)到本地與硬件計數(shù)同步,。
    (2)狀態(tài)選擇。在同步之后,,根據(jù)MAC當(dāng)前狀態(tài)進(jìn)入狀態(tài)分支,。
    (3)任務(wù)執(zhí)行判斷。在進(jìn)入MAC當(dāng)前狀態(tài)分支后,,調(diào)度器將規(guī)劃的待發(fā)送消息的發(fā)送幀號和子幀號與當(dāng)前幀號和子幀號對比,,如果相等則轉(zhuǎn)入步驟(4);如果不相等,,則跳出狀態(tài)分支,,轉(zhuǎn)入步驟(5),。
    (4)消息發(fā)送。進(jìn)入原語組裝函數(shù),,組裝原語直接發(fā)送給物理層,。
    (5)跳出子幀中斷服務(wù)函數(shù)。
    此方案的處理方法比較簡潔,,在消息數(shù)據(jù)量非常小時具有可執(zhí)行性,。但隨著數(shù)據(jù)量逐漸增大,MAC組裝原語的數(shù)據(jù)搬移時間也隨之變長,。MAC層處理消息時間為465 &mu;s,,從而子幀中斷擴展至約0.5 ms,使得ARM芯片一直處于硬件中斷中,,造成其他低優(yōu)先級中斷無法響應(yīng),。更加嚴(yán)重的是,如果子幀中斷時間大于1 ms,,則下一個子幀中斷也將無法響應(yīng),,使得TD-LTE系統(tǒng)無法正常運行,所以該方案缺乏可執(zhí)行性,。為此,,對該方案進(jìn)行以下改進(jìn)。
3.1 子幀中斷處理改進(jìn)方案1
    (1)同步,。進(jìn)入INT_Schedule后,,MAC首先讀取當(dāng)前幀號和子幀號并保存至本地使用。
    (2)狀態(tài)選擇,。在同步之后,,MAC根據(jù)當(dāng)前狀態(tài)進(jìn)入狀態(tài)分支。
    (3)任務(wù)執(zhí)行判斷,。在進(jìn)入MAC當(dāng)前狀態(tài)分支后,,MAC將之前規(guī)劃的待發(fā)送消息的發(fā)送幀號和子幀號與當(dāng)前幀號和子幀號對比,如果相等則轉(zhuǎn)入步驟(4),;否則轉(zhuǎn)入步驟(5),。
    (4)發(fā)送消息。向MAC隊列發(fā)送一條消息,,消息體為空,,消息頭附帶所要發(fā)送的原語ID,激活一個MAC任務(wù),。
    (5)跳出子幀中斷服務(wù)函數(shù),。
    由于發(fā)送隊列所占用的時間特別短,子幀中斷服務(wù)函數(shù)很快結(jié)束跳出中斷,。該方案巧妙地將發(fā)送原語交至操作系統(tǒng)執(zhí)行,,操作系統(tǒng)在循環(huán)檢測中檢測到存在MAC任務(wù)時即進(jìn)入MAC狀態(tài)機處理MAC任務(wù),,使耗時較多的數(shù)據(jù)搬移放到了MAC狀態(tài)機中去執(zhí)行,很好地解決了原始方案中子幀中斷耗時長的問題,。但在操作系統(tǒng)任務(wù)繁多時,,子幀中斷中激活的MAC任務(wù)并不會立即得到執(zhí)行,而是在操作系統(tǒng)中排隊等待,。由于子幀中斷規(guī)劃的MAC任務(wù)要求很強的實時性,,長時間的排隊等待將使得MAC任務(wù)被延遲執(zhí)行,最終導(dǎo)致消息不能實時發(fā)送,,所以該方案也缺乏實時性,。
3.2 子幀中斷處理改進(jìn)方案2
    (1)利用子幀中斷處理函數(shù)INT_Schedule完成以下操作:
    ①激活高級中斷HISR。
    ②跳出子幀中斷服務(wù)函數(shù),。
    (2)利用高優(yōu)先級中斷服務(wù)函數(shù)HISR_Schedule完成以下操作:
    ①同步,。進(jìn)入INT_Schedule后,MAC首先讀取當(dāng)前幀號和子幀號并保存至本地使用,。
    ②狀態(tài)選擇,。在同步之后,MAC根據(jù)當(dāng)前狀態(tài)進(jìn)入狀態(tài)分支,。
    ③任務(wù)執(zhí)行判斷,。在進(jìn)入MAC當(dāng)前狀態(tài)分支后,MAC將之前規(guī)劃的待發(fā)送消息的發(fā)送幀號和子幀號與當(dāng)前幀號和子幀號對比,,如果相等轉(zhuǎn)入步驟(4),;如果不相等,轉(zhuǎn)入步驟(5),。
    ④發(fā)送消息,。如果此時滿足了發(fā)送消息的條件,MAC立即組裝原語直接發(fā)送給物理層,。
    ⑤跳出HISR服務(wù)函數(shù),。
    由于該方案的子幀中斷只占用一個激活高優(yōu)先級中斷的時間,使得子幀中斷的時間變得非常短,,滿足了子幀中斷快速跳出的特性,。高優(yōu)先級中斷的優(yōu)先級別比一般任務(wù)高,在激活HISR后,,在操作系統(tǒng)循環(huán)檢測中將優(yōu)先處理HISR進(jìn)入HISR_Schedule函數(shù),,把消息發(fā)送至物理層,,使該方案避免了任務(wù)隊列的等待時間,,有效滿足了MAC任務(wù)的實時性。圖4為改進(jìn)的HISR中斷服務(wù)函數(shù)示意圖,。

    圖5是子幀中斷優(yōu)化方案2的示波器截圖,,圖中通道3波形為子幀中斷,,通道1高電平為MAC層處理消息時需要耗費時間長度(為465 &mu;s)。從圖5中可以看出,,子幀中斷的時間非常的短,,幾乎可以忽略不計。而在子幀中斷結(jié)束時,,MAC任務(wù)被很快地得到了執(zhí)行,,說明HISR的改進(jìn)方案使得MAC層任務(wù)優(yōu)先得到了執(zhí)行。

 

 

    本文給出了TD-LTE系統(tǒng)中MAC層子幀調(diào)度和子幀中斷函數(shù)的實現(xiàn)機制,。通過示波器測出MAC層與物理層之間消息處理的時間偏移,,提出子幀調(diào)度方案,并驗證了其正確性,;通過幾個子幀中斷函數(shù)的比較,,找到了運用HISR設(shè)計子幀中斷函數(shù)的最佳方案,并得到了最佳的效果,。最后通過板級調(diào)試驗證了本設(shè)計方案具有較強的獨立性和實時性,,優(yōu)化了系統(tǒng)資源利用率,實現(xiàn)了任務(wù)中斷與任務(wù)調(diào)度的高強度反復(fù)的穩(wěn)定性,。
參考文獻(xiàn)
[1] 陳燕燕.LTE基站MAC-PHY API接口的設(shè)計和實現(xiàn)[D].北京:北京郵電大學(xué),,2011.
[2] 李小文,李貴勇,,陳賢亮,,等.TD-SCDMA第三代移動通信系統(tǒng)、信令及實現(xiàn)[M].北京:人民郵電出版社,,2003:402-405.
[3] 李小文,,肖壘.應(yīng)用RTOS的TD-LTE無線綜測儀的實現(xiàn)[J].自動化儀表,2012,,33(2):25-28.
[4] 道理.Nucleus體系結(jié)構(gòu)分析及應(yīng)用研究[D].長沙:中南大學(xué),,2007.
[5] 管武.基于ARM的嵌入式測控平臺的設(shè)計及實現(xiàn)[D].上海:上海大學(xué),2008.
[6] 魏振華,,洪炳熔,,喬永強,等.嵌入式實時操作系統(tǒng)Nucleus中線程控制部件的實現(xiàn)方法[J].計算機應(yīng)用研究,,2003,,20(4):97-99.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。