《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 如何利用SDL開發TD-SCDMA高層信令

如何利用SDL開發TD-SCDMA高層信令

2008-09-25
作者:羅一靜 段紅光

??? 摘? 要: 介紹TD-SCDMA" title="TD-SCDMA">TD-SCDMA系統的UE結構以及根據實際工作經驗提出利用SDL開發TD-SCDMA高層信令" title="信令">信令系統的方法。?

??? 關鍵詞: TD-SCDMA系統? SDL語言? MSC? 實時操作系統?

?

1 SDL語言介紹?

??? SDL(規范描述語言)廣泛地用于描述通信系統的行為。它是CCITT推薦的規范描述語言。經過ITU-T" title="ITU-T">ITU-T的發展和標準化,定義在蘭皮書Z.100建議中。ITU-T在1988年推出了第一個正式版,以后每四年進行一次增補更新。作為國際標準化的正式語言,它被用來規范實時多任務系統的描述。SDL與其它一些相關技術如Z.120建議——消息序列圖和Z.105建議及抽象語法符號一起形成一個完整的描述語言。?

??? 在協議軟件的開發流程中,SDL被應用在系統規范描述和設計階段。它完全獨立于硬件實現與操作系統。Telelogic Tau公司提供的SDL軟件不僅可以用于規范描述和設計,還可以把SDL的描述和設計直接生成標準的C代碼。用戶也可以直接在SDL描述和設計中嵌入C代碼,從而完成圖1中的實現部分的功能。經SDL描述產生的C代碼(包括嵌入的C代碼)可以直接與多種嵌入式(或非嵌入式)實時多任務操作系統集成,如NUCLUES、pSOS、Solaris、Vrtx、OSE等,集成后的代碼可以直接在目標板上運行,從而方便用戶進行協議軟件的開發。?

?

?

??? 與SDL相對應的MSC(信息序列圖),是ITU-T規范中用來表示信息序列的語言。在1991年,ITU-T對MSC進行了標準化。用MSC圖可以方便地表示出信號的流向,即信號是從什么進程發送到什么進程,信號是否帶有參數、具體的參數值等都可以直觀地表示在SDL MSC圖中,這對了解和分析信號在各個模塊間的傳遞帶來了很大的方便。不僅如此,通過MSC圖還可以將SDL的各功能有機地聯系在一起。在軟件的跟蹤及調試過程中,使用Simulator和Validator可以產生MSC圖。在軟件的TTCN測試過程中,MSC圖還經常被用于分析測試的結果。通過MSC圖還可以直觀地描述信號發送的先后次序,而這些在SDL描述中是辦不到的。?

??? 開發的最后一步是使用TTCN進行測試。TTCN(樹表結合表示法)是由ISO和ITU定義在ISO/IEC 9646-3中的一個規范測試語言,是ISO/IEC 9646的第三部分標準,用于OSI一致性測試集的測試表示法。樹表結合表示法,顧名思義,就是采用以樹和表格為表現形式的測試表示法,其中表格主要用于數據類型、原語、協議觀察點、約束等,而樹則用于描述測試集、測試例、測試步。對標準有效性的驗證和通信軟件的一致性測試就顯得非常重要。?

??? 用SDL設計的系統是一個等級結構的系統,它包括了系統、功能塊和進程等。一個系統可以包含多個塊,每個塊可由一個或多個進程組成。進程是SDL系統中的最小處理單元,采用EFSM描述,所有用戶的處理和操作都在進程中完成。在系統級下定義的內容(信號、數據結構等)可以在該系統下所有的塊和進程中使用,在塊下定義的內容可以在該塊的任何進程中使用。?

??? 正是SDL的這些特點,在開發協議軟件中起著不可比擬的作用,下面以SDL開發TD-SCDMA高層信令簡單說明SDL的使用。?

2 TD-SCDMA系統結構?

??? 首先介紹一下TD-SCDMA系統結構。根據TSM協議的要求和實際開發產品的需要,可將TD-SCDMA系統用戶終端協議軟件分成圖2所示的系統結構(沒有包括分組數據業務部分)。整個系統結構滿足TSM協議的分層結構,同時根據控制和軟件的需要增添了TSR、HL1模塊,是一個SDL塊級的TD-SCDMA的UE端高層信令結構。整個系統共有六個模塊,每個模塊對應SDL中的一個塊,每個模塊分別完成不同的功能。下面簡要介紹每個模塊的功能和接口。?

?

?

??? CM模塊完成連接管理功能,包括呼叫控制、短消息和附加業務三部分,即圖2中的CM塊。?

??? MM模塊完成在電路交換模式下的移動性管理功能,實現UE的移動性、安全性以及連接管理,即圖2中的MM塊。?

??? TSR模塊是一個信號中轉模塊,是MM子層的一部分,主要實現信號路由的功能;同時基于CM子層中各實體的多實例(如建立多個呼叫)特性,對CM模塊進行多實例的管理。?

??? RRM模塊完成無線資源管理和控制功能。在空閑模式下,RRM模塊執行小區選擇和小區重選、為響應網絡尋呼或高層的RR建立請求而發起RR連接建立以及切換等任務;在RR連接建立過程中,RRM控制HL1模塊發起立即指派過程、主信令鏈路" title="鏈路">鏈路的建立過程;在連接模式下,RRM主要完成連接模式的資源管理,如指派、信道模式改變和切換等控制過程;處理隨路信令,如分析和處理系統信息類型5、類型6;發送測量報告以及對在FACCH信道上接收到的層3消息進行分析和處理等任務。另外RRM模塊還控制HL1模塊對服務小區和鄰近小區的測量等過程。?

??? DL模塊完成無線連接控制功能,主要包括:信道上提供一個或多個數據鏈路的連接,不同的連接通過數據鏈路連接標識DLCI區分;提供幀類型的識別機制;允許層3消息在2個層3對等實體之間進行透明傳輸;順序控制,以保持幀通過一條數據鏈路連接后的順序;具有在數據鏈路上對格式和操作性錯誤的檢測功能;當出現數據鏈路的不可恢復性錯誤時,具有向層3實體報告錯誤的機制;具有流量控制的功能;在RACH上完成接入請求后,當需要建立一條數據鏈路時具有解決沖突的功能。?

??? HL1模塊是連接協議層與物理層的橋梁。按系統的硬件設計,協議層和應用層的任務由ARM處理器完成,DSP處理器負責完成具體的物理層底層任務,如信源和信道的編解碼、交織、各種物理層參數的測量、擴頻及調制等。兩種處理器之間通過中斷交換數據。HL1根據協議層的請求,通過對協議層的任務分解和規劃,對物理層資源進行調度和控制。主要包括:在小區選擇過程中,HL1模塊控制物理層進行鄰近小區的碼功率的測量,解讀BSIC,解讀DwPTS的相位,讀取BCCH塊等任務;在空閑狀態下,HL1模塊控制物理層執行服務小區和鄰近小區的測量,解讀服務小區的系統信息和最強6個鄰近小區的系統信息類型1,并把測量結果和讀取的系統信息報告給RRM模塊;在隨機接入過程中,根據RRM模塊的控制信號,HL1模塊控制并調度物理層執行隨機接入過程的消息發送與接收;在連接模式下HL1控制物理層執行數據的收發、服務和鄰近小區的測量以及切換過程等。?

??? 圖2中,每個模塊對應SDL描述中的一個塊級結構,在每個塊級結構中又可以分成很多個進程,高層信令可以通過PHI信道和物理層進行通信。向上可以通過MMI、CMMI、MMSIM信號和人機界面進行信息交互。而人機界面可以由WINCE系統完成,硬件驅動部分可以直接編程實現[3]。?

3 利用SDL系統開發TD-SCDMA方法?

??? 在圖2的TD-SCDMA系統描述中,可以利用Telelogica Tau AB公司的SDL Editor將其描述成標準的SDL描述形式。但不是系統所有的部分都可以使用SDL開發。在硬件驅動、物理層具體的算法、信道的編解碼以及SIM卡的操作等都需要C語言(或者其他語言)完成。最后將所有的代碼編譯成一個可以執行的目標代碼。具體過程如圖3所示。系統開發代碼運行平臺是ARM,操作系統是NUCLUES PLUS。?

?

?

??? 利用SDL實現TD-SCDMA高層信令軟件過程如下:?

??? 第一步:首先根據詳細報告的描述,定義出所有的數據結構。例如保存系統信息的結構體、IMSI碼結構、TMSI碼以及任務規劃等結構定義,這些數據結構可以C/C++語言格式或是ANS.1格式完成,它們都可以被SDL使用。C/C++描述可以被SDL提供的CPP2SDL.EXE工具很方便地轉換成SDL,可以直接使用PR文本[8]。?

??? 第二步:利用SDL工具將圖2中完成的TD-SCDMA系統描述和生成相關的PR描述,根據需要編譯成不同的C/C++代碼,最常用的有兩種:一種是在目標板上運行的代碼(通常選用Cadvanced模式),另一種是可以提供給TTCN測試的代碼。?

??? 第三步:由于生成的目標代碼和測試代碼具有很好的一致性,利用TTCN可以檢查出SDL設計中的問題,以保證SDL設計的正確性。這也是利用SDL進行TD-SCDMA系統開發的優勢之一。根據TSM 11(TD-SCDMA系統測試規范)系列所編寫的測試例,方便進行協議的一致性測試,最大可能地發現開發中出現的問題,避免了這些錯誤帶到板級調試中,從而加快了軟件開發" title="軟件開發">軟件開發速度。?

??? 第四步:SDL描述生成的C源代碼要在ARM硬件系統上運行,還需要與選定的RTOS操作系統進行集成。SDL可以與多種RTOS系統相互集成,它們的集成原理相同。根據 SDL的進程任務,在RTOS系統中的處理情況可以分成兩種,一種是深度集成,另外一種是輕度集成。它們的效果相同,其區別在于深度集成將SDL描述中的每一個進程作為RTOS中的一個進程來處理,而輕度集成則將整個SDL系統作為一個RTOS進程進行處理。在實際應用中,大多使用第二種方法。這種方法便于SDL和RTOS系統的集成,集成時只需要修改SDL的接口文件setenv.c。在該接口文件中,增加下列NUCLEUS的函數:?

??? NU_Create_Memory_Pool()?

??? NU_Allocate_Memory()?

??? NU_Create_Task()?

??? 前兩個函數被NUCLEUS用來分配內存,保存SDL進程控制塊。NU_Create_Task()函數用于創建NUCLEUS的任務,它是SDL進程與NUCLEUS接口的關鍵函數。該函數共有11個參數:Task_Ptr、“SDL_fn”、SDL_main、0、NULL、Stack_Ptr、MANAGER_STACK_SIZE、MANAGER_TASK_PRIORITY、MANAGER_TIME_SLICE、NU_PREEMPT、NU_START;其中Task_Prt是指向進程的控制塊、“SDL_fn”是進程的名字、Stack_Ptr是進程的堆棧指針、MANAGER_STACK_SIZE是堆棧的大小;MANAGER_TIME_SLICE是進程可以占用的最大時間(以ticks來計算)。經過修改后的接口函數只要與SDL生成的源代碼和操作系統提供的代碼一起編譯即可。每次啟動系統后,NUCLEUS將SDL描述當作是一個獨立的任務進行處理。SDL進程由SDL內核管理,而整個SDL系統則由NUCLEUS管理。NUCLEUS系統有自己一套完整的消息處理機制,同時SDL生成的代碼也有自己一套信號處理機制,它們相互獨立,共同作用組成應用系統[9]。?

??? 最后將SDL生成的代碼、NUCLUES代碼和所編寫的硬件驅動統一編寫成ARM運行代碼。?

??? 在整個軟件開發過程中,實際開發過程不是完全由第一步到第四步這么簡單,有時它們交織在一起。在TTCN以及目標板測試中發現的問題反饋到設計過程,不斷修正,直到系統的最后完善。

??? 從以上過程描述可以看出SDL有以下優勢:?

??? (1)SDL工具可以同時支持圖形(GR)和文本描述(PR),并且可以相互轉換。圖形方式方便設計人員直觀了解設計結果,而文本方式便于保存。?

??? (2)便于軟件設計,可以將詳細設計報告和代碼設計過程有機地結合在一起,SDL可以把利用SDL描述的詳細報告部分直接生成所需要的代碼。?

??? (3)由于SDL具有一致性的目標源代碼和測試代碼,可以利用TTCN直接測試,大大提高了SDL設計的源代碼的正確性。同時SDL具有豐富的MSC接口,在測試的Validator、Simulator、TTCN過程中都有MSC圖輸出,可以提供設計人員檢查設計中存在的問題。?

??? SDL生成的代碼可以在多種實時多任務平臺上運行,可以方便地與pSOS、Nuclues Plus、Solaris、VxWorks、OSEDelta等RTOS系統相互集成,具有較好的可一致性。?

??? SDL工具可以將整個軟件開發過程、需求報告、總體設計報告、詳細設計報告、代碼設計及測試和維護集成一體。各個部分的設計都可以使用SDL的不同功能來描述,最大限度地節省人力和物力。?

??? 本文沒有介紹SDL的UML部分可以完成軟件開發的需求分析、總體或概要設計。結合SDL的功能,Telelogical Tau AB提供的SDL工具將軟件開發的全過程有機地結合在一起,從需求分析到代碼生成。加快了軟件開發速度,縮短了軟件開發周期。在整個TD-SCDMA高層項目開發中,SDL工具軟件起關鍵作用。?

??? 但是SDL在協議軟件的開發中也不是萬能的,雖然SDL的描述直觀、方便,但是SDL生成的代碼非常復雜,不便于修改和閱讀。這也是惟一對SDL擔憂的地方。通常在生成代碼中一個不起眼的BUG,將永遠都不會找到。具體的解決辦法可以參考文獻[8]。?

參考文獻?

1 Telelogic tau AB.Telelogic tauTM SDL suite 4.0 Getting??Started. 2001?

2 Telelogic tau AB. Telelogic tauTM SDL suite 4.0 Methodology Guidelines. 2001?

3 TSM 04.08. China Wireless Telecommunication Standard;?3G digital cellular telecommunications system;Mobile radio?interface layer 3 specification.?

4 Nucleus company. Nucleus PLUS internals. Accelerated?Technology. 2000,0001027-001 Rev 101?

5 Nucleus company. Nucleus PLUS Reference Manual.2000,?0001026-001 Rev.102?

6 Nucleus company. ARM Developer Suite Nucleus Target?Specific Notes. 2000,0001000-001 Rev.108?

7 李小文. TD-SCDMA第三代移動通信系統信令及實現.?北京:人民郵電出版社,2003?

8 段紅光.如何在SDL中調用C語言函數的研究. 電子技術應用, 2003;29(2)?

9 羅一靜.SDL進程及SDL環境通信接口分析.重慶郵電學報,2003

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 粉嫩小仙女扒开双腿自慰| 伊人久久精品线影院| 99精品视频免费观看| 日本中文字幕第一页| 亚洲成a人不卡在线观看| 精品视频一区二区三三区四区| 国产欧美日韩视频在线观看一区二区| eeuss影院天堂影院| 日本vs黑人hd| 亚洲人成在线播放网站| av无码免费看| 日本精品在线观看视频| 亚洲欧洲久久精品| 精品乱子伦一区二区三区| 国产女人91精品嗷嗷嗷嗷| 91华人在线视频| 好男人好资源影视在线4| 久久久香蕉视频| 欧美一级黄色片在线观看| 亚洲视频456| 99久热任我爽精品视频| 成在线人免费无码高潮喷水| 亚洲av永久无码嘿嘿嘿| 波多野结衣被绝伦在线观看 | 久久精品夜色噜噜亚洲A∨| 欧美猛男做受视频| 免费一级毛片在线播放不收费| 范冰冰hd未删减版在线观看| 国产日韩精品中文字无码| 91精品国产人成网站| 好吊妞788免费视频播放| 中文字幕无线码中文字幕免费| 日韩伦理一区二区| 亚洲偷偷自拍高清| 永久在线免费观看| 免费观看一级特黄欧美大片| 中文字幕丝袜制服| 国精品午夜福利视频不卡757| 万古战神txt下载| 日本三级韩国三级在线观看a级| 亚洲av午夜福利精品一区|