周雅芳 范玉娜 張耀寰 張曉彬(沈陽理工大學,遼寧 沈陽110159)
Visual C++6.0是由Microsoft公司推出的一款面向對象的計算機程序開發(fā)工具,是編程入門的良好編譯工具。Visual C++6.0集成開發(fā)環(huán)境功能強大,界面簡潔,占用資源少,操作方便,在Windows環(huán)境下很常用,是使用最廣的開發(fā)工具。
AOS系統(tǒng)主要用來達成航天器與地面站之間的雙向傳送,包括音頻、視頻、科學實驗等多種不同類型的數(shù)據(jù)[1-2],并通過信道多路復用技術和幀同步技術,來保證數(shù)據(jù)傳輸?shù)母哔|量和高可靠性。幀同步技術是為了使系統(tǒng)接收端能夠確定一幀的開始,AOS標準規(guī)定數(shù)據(jù)幀以固定長度傳輸,在幀前面添加ASM幀同步頭,在數(shù)據(jù)的接收方查找ASM幀同步頭,并提取出來[3]。
幀的同步技術實質就是如何檢測ASM幀同步頭,常用三種不同的ASM幀同步頭包括16位的幀同步頭EB90(二進制碼流形式為11101011 10010000)、32位的幀同步頭1ACFFC1D(二進制碼流形式為00011010 11001111 11111100 00011101)和64位的幀同步頭FFF2D58B65466000(二進制碼流形式為11111111 11110010 11010101 10001011 01100101 01000110 01100000 00000000)[3]。
AOS系統(tǒng)的幀同步過程中的四種狀態(tài):搜索態(tài)L、同步態(tài)SL、同步校核態(tài)SC與失步校核態(tài)LC[3],設計基于VC++的幀同步過程仿真流程圖如圖1所示。
圖1 幀同步過程仿真流程圖
根據(jù)上述原理,借助Visual C++[4],進行了本次實驗,得到的仿真結果如圖2、圖3所示:
圖2 幀同步前仿真結果
圖3 幀同步后仿真結果
圖2幀同步仿真實驗結果顯示的是對txt文本數(shù)據(jù)的幀同步處理,文本中的前兩個字節(jié)11101011 10010000(EB90)是幀同步過程中搜索的ASM幀同步頭,文本數(shù)據(jù)總幀數(shù)為2164幀,總字節(jié)數(shù)為216400個字節(jié),每個CPPDU含有20個字節(jié),每個MPDU含有5個CPPDU,每個VCDU對應1個MPDU。圖3為幀同步后去掉ASM幀同步頭的實驗結果。經過驗證之后,傳輸?shù)目値瑪?shù)相同,幀同步完全正確。
[1]Tian ye,Li Qingfan,F(xiàn)eng yongxin,Gao xiaoling.A virtual channels scheduling algorithm with broad applicability based on movable boundary[J].Mathematical Problems in Engineering,2013,9:1-8.
[2]田野,馮永新,馬玉峰,劉桂君.高級在軌系統(tǒng)中的多路復用與差錯控制技術研究[M].北京:科學出版社,2014,4.
[3]李帥.基于AOS的幀同步與鏈路建立技術的研究[D].沈陽:沈陽理工大學,2010.
[4]謝賢芬.21天學通Visual C++[M].2版.北京:電子工業(yè)出版社,2001,2.