《電子技術應用》
您所在的位置:首頁 > 模拟设计 > 设计应用 > AOS上行链路控制器的设计与实现
AOS上行链路控制器的设计与实现
丁艳会,郝俊寿
摘要: 在对AOS系统进行功能模块划分的基础上,介绍了系统中一个非常关键的组成部分即上行链路控制器。该方案采用我国自主知识产权的方舟系列CPU芯片,在Linux操作系统下设计与实现上行链路控制器,并给出了其主要的工作流程。试验结果表明该上行链路控制器较好地实现了信道分路器传送数据的解复用和解包装。
Abstract:
Key words :

0 引言
    隨著航天技術的進一步發(fā)展,于1982年成立的空間數據系統(tǒng)咨詢委員會(CCSDS)制定了以滿足復雜航天器的需要為目標的高級在軌系(AO-S)體制和標準。目前該標準仍在不斷修正補充與發(fā)展。它是航天測控與通信進入國際合作時代的產物,也是航天測控與通信技術發(fā)展的必然。航天任務越來越具有強烈的國際性質,為合理開發(fā)與利用空間資源必須走國際合作的道路。我國的航天技術要走向世界,與AOS標準接軌是最好的選擇。
    根據標準的相關要求,可以將AOS系統(tǒng)分成如下幾個主要部分:數據源、鏈路控制器、合路器/分路器等。上行鏈路控制器首先接收分路器傳來的VCD格式數據,并從中提取M_PDU,然后相應恢復成M_SDU或E_PDU,并根據應用進程標識符(APID)的值,把數據傳送到相應的業(yè)務用戶。
    由以上功能劃分來看上行鏈路控制器是整個系統(tǒng)中的關鍵設備,屬于空間鏈路層中的硬件實體,其作用相當于虛擬信道鏈路控制子層數據存取過程。

1 控制器的設計
    AOS體制主要用于復雜航天器的數據系統(tǒng)中。復雜航天器需要傳輸的數據種類很多,有圖像、話音、數據、文件、電子郵件等,數據的碼速率也相差很大,從幾個b/s到幾百Gb/s,總信息量很大。AOS體制的特點是能夠對不同類型的數據采用不同的業(yè)務,而不同業(yè)務對數據的處理方法和格式是不同的。
    采用AOS體制的航天器數據系統(tǒng)中,上行鏈路控制器存在于空間數據鏈路層的VCLC層中,其主要功能有:對由分路器傳給上行鏈路控制器的數據(VC_PDU),利用虛擬信道存取子層的VCA業(yè)務進行解VCA,生成M-PDU數據單元,再進行解多路復用,生成E_PDU數據,對E_PDU數據進行解包裝功能,分別生成路徑業(yè)務數據(O_SDU,P_SDU)及網間業(yè)務數據(I_SDU)。
    上行鏈路控制器的功能框圖如圖1所示。

a.JPG


    幾種主要數據單元格式如下:
    (1)虛擬信道數據單元
    虛擬信道數據單元(VCDU)如下:

a1.jpg


    (2)M_PDU數據單元
    M_PDU數據單元如下:

a2.jpg


    (3)包裝協(xié)議數據單元
    包裝協(xié)議數據單元(E_PDU)如下:

a3.jpg



2 控制器的實現
    在控制器的實現平臺的選擇上使用了我國方舟(ARCA)科技公司GT2000嵌入式開發(fā)板,因為GT2000是方舟科技的一款基于方舟二號為核心的嵌入式CPU產品,是我國第一個具有自主知識產權CPU。它在主頻400 MHz下運行時最大功耗只有360 mW,具有高性能、低功耗的特點,對于研究具有我國自主知識產權的AOS的底層接口器件、關鍵模塊和設備具有重要的意義。GT2000提供兩個串口,一個以太網口及其他外設接口。鏈路控制器就是利用其提供的以太網口進行數據傳輸。同時由于GT2000內嵌Linux操作系統(tǒng)使進程間通信機制十分靈活,而且Linux系統(tǒng)所提供的Socket通信接口和各種豐富的系統(tǒng)異步時間處理方式為在其上快速地處理數據提供了極大的方便。
    根據前述控制器所完成的功能,在Linux平臺上采用標準的C語言進行實現。
    上行鏈路控制器工作過程中最重要的是解復用功能。首先判斷首導頭指針,當首導頭的指針在M_PDU數據域長度范圍內時,M_PDU模塊把首導頭指針所指示的上一個CCSDS包的剩余部分放入CCSDS緩沖區(qū),此時CCSDS緩沖區(qū)的數據是一個完整的CCSDS格式包,然后判斷它的數據類型,如果是包裝數據,則調用DE_PDU模塊,進行解包,然后進行轉發(fā),緩沖區(qū)清零。接著處理M_PDU包區(qū)中新開始的CCSDS包,首先判斷該CC-SDS導頭是否包含長度域,如果不包含長度域,則把該M_PDU包的剩余部分全部放入CCSDS緩沖區(qū),繼續(xù)接收下一個M_PDU包。如果包含有長度域,則計算此CCSDS包的長度,并與M_PDU剩余的長度進行比較,CCSDS包的長度大于M_PDU剩余長度時,則把M_PDU的剩余部分數據全部放入CCSDS緩沖區(qū),繼續(xù)接收下一個M_PDU數據。CCSDS包的長度等于M_PDU剩余長度時,則把M_PDU的剩余部分數據全部放入CCSDS緩沖區(qū),繼續(xù)接收下一個M_PDU數據。CCSDS包的長度小于M_PDU剩余長度時,則把此CCSDS包全部放入CCSDS緩沖區(qū),判斷其版本號,如果是可復用數據就直接轉發(fā)出去,如果是不可復用數據,則調用解包裝模塊DE_PDU,進行解包,再進行轉發(fā),然后循環(huán)判斷M_PDU中下一個CCSDS包,直至CCSDS包的長度大于或等于M_PDU剩余長度后,繼續(xù)接收時的剩余部分數據全部放入CCSDS緩沖區(qū),繼續(xù)接收下一個M_PDU數據。解復用模塊的工作流程如圖2所示。

b.JPG



3 測試及驗證
    鏈路控制器可以支持多路數據,首先模擬一些真實的數據:非定界字符串,IPV6,IPV4,CP_PDU,把PC機和控制器通過以太網口相聯,把模擬的各種數據發(fā)送給控制器,控制器接收數據進行識別處理。測試結果表明該控制器可以較好地進行數據的解VCA和解復用,無丟包現象,工作穩(wěn)定、可靠。

4 結語
    本文介紹了基于國產芯片設計的AOS系統(tǒng)的上行鏈路控制器,采用該控制器可以較好地處理模擬的航天器數據,并且對數據傳輸中的一些關鍵技術進行了驗證,為今后進一步的研究打下基礎。

此內容為AET網站原創(chuàng),未經授權禁止轉載。

相關內容