两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種rrc狀態(tài)機實現(xiàn)方法及裝置的制造方法

文檔序號:8530875閱讀:528來源:國知局
一種rrc狀態(tài)機實現(xiàn)方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于無線通信領(lǐng)域,具體涉及一種RRC狀態(tài)機實現(xiàn)方法及裝置。
【背景技術(shù)】
[0002]RRC(Rad1 Resource Control,無線資源控制)是層3控制面協(xié)議,是GMR-1 3G系統(tǒng)中空中接口部分協(xié)議??刂泼婀δ艿膶嶋H載體,負責空中接口無線鏈路過程的執(zhí)行。主要負責無線資源的分配與管理、系統(tǒng)消息廣播、尋呼、RRC連接建立和釋放、RRC連接移動性管理(小區(qū)更新、GRA更新)、RB管理、NAS層消息傳遞、測量控制、加密等等。
[0003]RRC層主要分為空閑狀態(tài)和連接狀態(tài),其中連接狀態(tài)又細分為RRC-Cell_Shared、RRC-Cell_Dedicated和RRC_GRA_PCH三種狀態(tài)。RRC連接模式下,RRC層會執(zhí)行相關(guān)的過程,進而實現(xiàn)相關(guān)的功能。
[0004]RRC消息的觸發(fā)和執(zhí)行使用一個線程進行控制,由狀態(tài)機進行過程執(zhí)行的決策控制。所以,狀態(tài)機的實現(xiàn)是開發(fā)協(xié)議棧RRC層的核心部分,通過接收RRC消息的到來以及根據(jù)RRC消息的接收情況來觸發(fā)相應的RRC處理過程,從而實現(xiàn)狀態(tài)機的跳轉(zhuǎn),維持協(xié)議棧的運行。另外,在收到上層或下層實時性的請求,狀態(tài)機控制模塊能夠做出正確處理。在整個子系統(tǒng)運行過程中,狀態(tài)機控制模塊還能夠管理和維護RRC過程,包括并行性處理,過程的事務(wù)性管理。對具有事務(wù)性處理的過程能夠保存和恢復過程的正確狀態(tài)。因此,如何設(shè)計狀態(tài)機使其更清晰地維護狀態(tài)機跳轉(zhuǎn),同時高效地完成RRC的各個過程,將直接影響著整個協(xié)議棧的運行效率和穩(wěn)定性。
[0005]狀態(tài)機的一般運行方式是:在某個狀態(tài)下,收到某個事件,執(zhí)行相應的動作,轉(zhuǎn)到相應的狀態(tài),再在新的狀態(tài)下,重復上述循環(huán),直至結(jié)束。其中事件可以是收到的消息,某個定時器的到達等;相應的動作一般可以是執(zhí)行相應的函數(shù)處理等。
[0006]現(xiàn)有技術(shù)主要針對一般復雜度的狀態(tài)機系統(tǒng),涉及到的有單一并行狀態(tài)機的處理,有單一串行狀態(tài)機的處理;有采用狀態(tài)機族方法,有采用兩層狀態(tài)機結(jié)構(gòu),有表格驅(qū)動的,有基于狀態(tài)事件的數(shù)組結(jié)構(gòu)的。而RRC層協(xié)議棧狀態(tài)機復雜,涉及的過程較多,現(xiàn)有的技術(shù)沒有完全考慮到RRC層協(xié)議棧的特點,實現(xiàn)起來,要么消耗過多的資源,要么線程多,運行繁雜,造成后續(xù)開發(fā)維護困難,影響整個系統(tǒng)的穩(wěn)定性。

【發(fā)明內(nèi)容】

[0007]本發(fā)明的目的是針對RRC協(xié)議棧的特點,提出了一種適合RRC狀態(tài)機運行的RRC狀態(tài)機實現(xiàn)方法及裝置,解決協(xié)議棧開發(fā)運行時資源消耗多、運行維護復雜等問題,簡化了狀態(tài)機的復雜度,保證系統(tǒng)運行的高效性和穩(wěn)定性。
[0008]本發(fā)明采取的技術(shù)方案之一是:一種RRC狀態(tài)機實現(xiàn)方法,該方法將RRC的各個功能分類,明確過程之間的相互關(guān)系和優(yōu)先級,對每一個可能引起RRC_Idle、RRC-Ce11_Shared,RRC-Cell_Dedicated和RRC_GRA_PCH基本狀態(tài)改變的功能過程,添加過程執(zhí)行的各個觸發(fā)子狀態(tài);實現(xiàn)步驟如下: (1)用結(jié)構(gòu)數(shù)組記錄所有過程中出現(xiàn)的狀態(tài)事件及對應的處理函數(shù),并初始化;
(2)當接收到事件后,確定事件類型,再判斷當前的狀態(tài),判斷當前的狀態(tài)下收到的事件是否在結(jié)構(gòu)數(shù)組記錄中有相應的處理函數(shù),若有,調(diào)用回調(diào)函數(shù)執(zhí)行相應的函數(shù),將狀態(tài)改變到新的狀態(tài);若沒有相應的處理函數(shù),則丟棄收到的消息,不作處理,狀態(tài)保持不變;
(3)重復步驟(2),過程直至結(jié)束。
[0009]進一步的,所述結(jié)構(gòu)數(shù)組的構(gòu)成如下:
結(jié)構(gòu)數(shù)組3{
參數(shù)I狀態(tài);
參數(shù)2事件;
參數(shù)3回調(diào)函數(shù)(形參1,形參2,形參3);
} rrc_sm[] = {
{狀態(tài)0,事件1,函數(shù)1},
{狀態(tài)1,事件2,函數(shù)2},
{狀態(tài)2,事件3,函數(shù)3},
{狀態(tài)2,事件1,函數(shù)4},.........其他……
{狀態(tài)4,事件1,函數(shù)2}
} ; O
[0010]所述結(jié)構(gòu)數(shù)組中的參數(shù)3是一個回調(diào)函數(shù),函數(shù)1、2、3、4有相同的形參,符合回調(diào)函數(shù)的要求。
[0011]進一步的,所述回調(diào)函數(shù)構(gòu)成如下:
循環(huán)判斷for(i=0; i〈rrm_sm數(shù)組大小;i++) {
if (收到事件所處的狀態(tài)==rrm_sm[i]中的狀態(tài)且收到的事件==rrm_sm[i]中的事件){
執(zhí)行rrm_sm[i]對應的回調(diào)函數(shù)}
1
[0012]所述的方法中,RRC層的信令過程包括RRC連接建立過程、初始直傳過程、上下行直傳過程、小區(qū)更新過程;其中RRC連接建立過程要先完成,這個過程分為0、1、2三個小的子狀態(tài),該過程完成后基本狀態(tài)從空閑狀態(tài)轉(zhuǎn)到連接狀態(tài),在所述的連接狀態(tài)下,初始直傳過程、上下行直傳過程、小區(qū)更新過程都可以發(fā)生,但是上下行直傳過程必須要等到初始直傳過程發(fā)生后才能完成,而小區(qū)更新過程和初始直傳過程沒有聯(lián)系,小區(qū)更新過程的優(yōu)先級高。這樣,在完成RRC連接建立過程后,如果同時收到初始直傳過程、上下行直傳和小區(qū)更新過程的事件,則優(yōu)先處理小區(qū)更新過程。
[0013]進一步的,所述初始直傳過程包括子狀態(tài)3、4、5,上下行直傳過程包括子狀態(tài)6、7,小區(qū)更新過程包括子狀態(tài)8、9、10 ;所述子狀態(tài)3、4、5、6、7、8、9、10都處在一個大的基本狀態(tài)下,在這個大的基本狀態(tài)下,只要收到最高優(yōu)先級的事件觸發(fā)小區(qū)更新過程,就立即轉(zhuǎn)到子狀態(tài)8執(zhí)行小區(qū)更新過程。
[0014]本發(fā)明采取的技術(shù)方案之二是:
一種RRC狀態(tài)機實現(xiàn)裝置,其包括: 記錄單元:記錄所有過程的子狀態(tài)以及在該子狀態(tài)下可能收到哪個事件,并能作出哪種響應;然后存儲下來;
接收單元:當狀態(tài)機啟動后,用于接收外部來的或本身的觸發(fā)事件,確定事件類型,在記錄單元中查找對應當前狀態(tài)和事件存在的響應;
回調(diào)單元:回調(diào)當前狀態(tài)和事件對應的響應;
執(zhí)行單元:執(zhí)行實際的響應,轉(zhuǎn)變到新的狀態(tài)。
[0015]本發(fā)明的有益效果是:本發(fā)明采用單一線程來管理狀態(tài)機運行,將協(xié)議棧中的各個過程首先分解成子狀態(tài)觸發(fā),用數(shù)組結(jié)構(gòu)形式存儲狀態(tài)事件及對應的處理函數(shù),處理函數(shù)表示成回調(diào)函數(shù)形式,只需用一個上述數(shù)組結(jié)構(gòu)就能完全將協(xié)議棧所有過程之間的關(guān)系和優(yōu)先級體現(xiàn)出來,節(jié)省資源,簡化協(xié)議棧的開發(fā),提高協(xié)議棧運行的效率和穩(wěn)定性,使狀態(tài)機支持信令連接級獨立運行,及多業(yè)務(wù)并存。實際開發(fā)中,代碼清晰,協(xié)議后續(xù)若有擴展過程,可快速、準確、靈活地將新過程加入到狀態(tài)機控制中,節(jié)省開發(fā)時間,并且,代碼簡單,易于維護。
【附圖說明】
[0016]圖1是狀態(tài)機運行流程圖。
[0017]圖2是狀態(tài)轉(zhuǎn)移圖。
[0018]圖3是狀態(tài)機實現(xiàn)裝置結(jié)構(gòu)圖。
【具體實施方式】
[0019]下面結(jié)合附圖對本發(fā)明作進一步說明。
[0020]本發(fā)明提供一種針對GMR-1 3G RRC協(xié)議棧狀態(tài)機的實現(xiàn)方法和裝置,根據(jù)RRC層協(xié)議棧的復雜度以及涉及到的過程的相互關(guān)系,對每一個可能引起4個基本狀態(tài)改變(RRC_Idle、RRC-Cell_Shared、RRC_Cell_Dedicated 和 RRC_GRA_PCH)的功能過程,添加了該過程執(zhí)行的各個觸發(fā)子狀態(tài),以此來控制各個過程中對接收到相應消息的處理判斷,通過單一線程來管理協(xié)議棧的運行,保證了協(xié)議棧運行的高效和穩(wěn)定。提出的裝置包括:記錄單元、接收單元、回調(diào)單元、執(zhí)行單元。
[0021]本發(fā)明首先根據(jù)協(xié)議,將RRC的各個功能分類,哪些過程必須是按先后順序?qū)崿F(xiàn)的,之間有明確的因果關(guān)系;哪些是可以并行實現(xiàn)的,即在某個狀態(tài)下都有可能發(fā)生;哪些功能的實現(xiàn)優(yōu)先級最高;然后再添加各個過程的觸發(fā)子狀態(tài),明確哪個子狀態(tài)能收到哪條消息(對應事件),執(zhí)行什么樣的動作(對應處理函數(shù));之后將其記錄保存下來,可以用狀態(tài)事件表保存,也可以利用數(shù)組保存,保證記錄的完整準確,同時要能體現(xiàn)過程之間的相互關(guān)系和優(yōu)先級。實現(xiàn)的流程圖如I所示,具體實現(xiàn)步驟如下:
I)用結(jié)構(gòu)數(shù)組記錄所有過程中出現(xiàn)的狀態(tài)事件及對應的處理函數(shù),并初始化,數(shù)組結(jié)構(gòu)構(gòu)成如下:
struct rrc_state {uintstate;uintevent;
int (木route) (int a, int b, void木 c);} rrc_sm[] = {
{狀態(tài)0,事件1,函數(shù)1},
{狀態(tài)1,事件2,函數(shù)2},
{狀態(tài)2,事件3,函數(shù)3},
{狀態(tài)2,事件1,函數(shù)4},
{狀態(tài)4,事件1,函數(shù)2}
};
上述數(shù)組結(jié)構(gòu)中的route是一個回調(diào)函數(shù),函數(shù)1、2
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
梁平县| 乡城县| 临沭县| 临猗县| 安西县| 景泰县| 沭阳县| 鄂伦春自治旗| 余姚市| 昭平县| 玉环县| 永新县| 望都县| 翼城县| 肃北| 含山县| 宜城市| 清新县| 桃江县| 道孚县| 湖口县| 池州市| 黄梅县| 宜兴市| 云阳县| 乐安县| 信宜市| 嘉荫县| 秭归县| 张家港市| 图木舒克市| 凤山市| 海门市| 始兴县| 石楼县| 潞城市| 葵青区| 米脂县| 安阳市| 江津市| 成都市|