馮俊濤,楊新年
(1.中國(guó)電子科技集團(tuán)公司第三十八研究所,安徽 合肥 230088;2.安徽博微長(zhǎng)安電子有限公司,安徽 合肥 237014)
?
星載雷達(dá)主控軟件設(shè)計(jì)與實(shí)現(xiàn)
馮俊濤1,楊新年2
(1.中國(guó)電子科技集團(tuán)公司第三十八研究所,安徽 合肥 230088;2.安徽博微長(zhǎng)安電子有限公司,安徽 合肥 237014)
針對(duì)某星載雷達(dá),結(jié)合軟件的可靠性設(shè)計(jì)思想,實(shí)現(xiàn)雷達(dá)主控軟件的設(shè)計(jì)。同時(shí)詳細(xì)描述了AT697F、1553B等芯片的控制過(guò)程,并介紹了設(shè)計(jì)過(guò)程中需要注意的問(wèn)題。
雷達(dá)主控軟件;AT697F;1553B;可靠性
隨著航天技術(shù)的不斷發(fā)展,對(duì)于深空探測(cè)的認(rèn)知活動(dòng)也越來(lái)越成為各國(guó)科學(xué)家日益關(guān)注的重點(diǎn)領(lǐng)域。合成孔徑雷達(dá)作為一種全天候探測(cè)傳感器,在情報(bào)偵察、地形地貌測(cè)繪、資源考察方面具有得天獨(dú)厚的優(yōu)勢(shì),也成為星載探測(cè)的重要載荷[1]。軟件作為雷達(dá)的核心和大腦,發(fā)揮作用越來(lái)越大,但同時(shí)面臨的挑戰(zhàn)也日益增大[2]。一方面,由于受到結(jié)構(gòu)、體積、重量、功耗等多方面的限制,星載雷達(dá)的硬件趨向于小型化、集成化;另一方面,由于空間電磁場(chǎng)輻射和高能粒子的轟擊,極易放大軟件的設(shè)計(jì)缺陷,從而引發(fā)整個(gè)雷達(dá)載荷的失效甚至災(zāi)難性事故,因此對(duì)于軟件可靠性設(shè)計(jì)又提出非常嚴(yán)苛的要求[3-5]。
1.1 系統(tǒng)拓?fù)?/p>
星載雷達(dá)由于受到結(jié)構(gòu)、體積、重量、功耗等因素的影響,往往設(shè)計(jì)得比較緊湊。在本雷達(dá)中,所有的后端數(shù)字部分設(shè)計(jì)在一塊電路板上,需要完成收發(fā)的數(shù)字化處理、雷達(dá)時(shí)序的產(chǎn)生、信號(hào)處理以及雷達(dá)系統(tǒng)的主控,整個(gè)雷達(dá)的數(shù)字部分拓?fù)浣Y(jié)構(gòu)如圖1所示。其中,雷達(dá)主控作為整個(gè)雷達(dá)的大腦,掌控整個(gè)雷達(dá)的執(zhí)行。主控軟件駐留在AT697F芯片上,通過(guò)1553B接收星上控制系統(tǒng)的控制指令,最終的雷達(dá)成像數(shù)據(jù)通過(guò)低壓差分信號(hào)(LVDS)傳送給星上控制系統(tǒng)。
1.2 AT697F
AT697F芯片是Atmel 公司的基于 SPARCV8 體系結(jié)構(gòu)的高集成度、高性能 32 bit 精簡(jiǎn)指令集計(jì)算機(jī)(RISC)處理器。該處理器有非常好的性能功耗比,其內(nèi)部包含1個(gè)片上整型運(yùn)算單元、1個(gè)浮點(diǎn)運(yùn)算單元(FPU),并有分離的指令 Cache 和數(shù)據(jù) Cache、硬件乘法器和除法器,集成了中斷控制器、帶跟蹤緩沖的調(diào)試支持單元(DSU)、2個(gè) 24 位定時(shí)器、串行接口、外圍部件互聯(lián)(PCI) 接口、看門狗定時(shí)器以及存儲(chǔ)器控制器等。AT697 采用的 Sparcv8 體系結(jié)構(gòu),其存儲(chǔ)器為大端模式,因此在設(shè)計(jì)存儲(chǔ)系統(tǒng)的時(shí)候,需要考慮存儲(chǔ)芯片與AT697F之間的數(shù)據(jù)線連接。
AT697F內(nèi)部的擴(kuò)展地址段如表1所示。
表1 AT697F存儲(chǔ)空間地址映射
AT697F初始化過(guò)程如下:
(1) 配置TBC、MCFG、FAILSR、SCAR、SCAC、ITMP、IODIR、IOIT、CCR、UASCA、PSR、WIM寄存器;
(2) 初始化中斷向量表,并寫入TBR寄存器;
(3) 初始化堆棧指針,將堆棧的首地址寫入sp寄存器;
(4) 將bss段清零;
(5) 初始化FSR寄存器;
(6) 初始化32個(gè)FPU寄存器。
1.3 1553B
1553B總線采用曼徹斯特Ⅱ型編碼,其通訊協(xié)議應(yīng)遵從MIL-STD-1553B標(biāo)準(zhǔn),接口協(xié)議芯片采用B65170。
1553B初始化過(guò)程如下:
(1) 配置起始/復(fù)位、時(shí)標(biāo)、中斷屏蔽寄存器;
(2) 配置寄存器#1、#2、#3、#4;
(3) 設(shè)置方式碼選擇中斷表;
(4) 設(shè)置方式碼數(shù)據(jù);
(5) 設(shè)置子地址0~31的接收、發(fā)送、廣播模式的數(shù)據(jù)緩沖區(qū);
(6) 設(shè)置子地址控制字;
(7) 設(shè)置忙位查詢表以及命令非法化表。
1.4 Flash
在本項(xiàng)目中共采用了2片S29JL064H,作為程序存儲(chǔ)空間以及參數(shù)存儲(chǔ)空間,根據(jù)其地址空間,連接在AT697F的A[23~2]上。S29JL064H分為142個(gè)Sector,其中前8個(gè)和后8個(gè)Sector為8 kB,中間126個(gè)Sector為64 kB。對(duì)其操作有其特殊的地方,其搽除按照Sector進(jìn)行,讀寫按照地址偏移讀寫。Flash的初始化過(guò)程如下:
(1) 定義Flash的結(jié)構(gòu)體,并將基地址及Sector大小賦值;
(2) 讀取Manufacturer ID和Device ID,并判斷是否為特定的數(shù)值;
(3) 首次讀寫判斷程序分配參數(shù)存儲(chǔ)的Sector是否被擦除,如果未擦除,則一次性擦除,并將相關(guān)的參數(shù)寫入Sector中;
(4) 判斷狀態(tài)是否pass,是則結(jié)束初始化過(guò)程。
2.1 數(shù)據(jù)交換設(shè)計(jì)
在星載軟件的設(shè)計(jì)中,數(shù)據(jù)的交換一般采用空間系統(tǒng)咨詢委員會(huì)(CCSDS)規(guī)范標(biāo)準(zhǔn)。CCSDS是多國(guó)空間組織組成的國(guó)際性標(biāo)準(zhǔn)化組織,為空間數(shù)據(jù)系統(tǒng)制定了150多項(xiàng)標(biāo)準(zhǔn),涵蓋了空間數(shù)據(jù)通信業(yè)務(wù)、空間關(guān)口業(yè)務(wù)、空間信息交換業(yè)務(wù)等方面。本項(xiàng)目中,主控軟件遵循CCSDS數(shù)據(jù)交換標(biāo)準(zhǔn)。
(1) 時(shí)間系統(tǒng)
在本項(xiàng)目中,由于存在多個(gè)不同的載荷體制,相互之間的時(shí)間碼具有較大的不同。對(duì)于雷達(dá)來(lái)說(shuō),時(shí)間碼格式采用時(shí)間規(guī)范域(T-Field)來(lái)表示,其基本時(shí)間單元是ms,分段二進(jìn)制時(shí)間計(jì)數(shù)碼指定由 CDS(符合CCSDS協(xié)議的分段時(shí)間格式)表示,如圖2所示。
(2) 工程參數(shù)
工程參數(shù)涉及到雷達(dá)與上級(jí)部件以及雷達(dá)內(nèi)部的信息交換。在本項(xiàng)目中,對(duì)雷達(dá)的工程參數(shù)的設(shè)計(jì)主要包含了標(biāo)識(shí)域、長(zhǎng)度域、控制域、數(shù)據(jù)域以及校驗(yàn)域五部分,每部分按規(guī)定的格式確定。
2.2 流程設(shè)計(jì)
雷達(dá)主控軟件控制整個(gè)雷達(dá)的探測(cè)過(guò)程,在流程設(shè)計(jì)中重點(diǎn)考慮流程的健壯性,尤其是當(dāng)出現(xiàn)諸如中斷缺失、數(shù)據(jù)異常等情況時(shí),需要相應(yīng)的異常處理機(jī)制保證。主控軟件的處理流程如圖3所示。
2.3 可靠性設(shè)計(jì)
星載雷達(dá)軟件尤其重視可靠性設(shè)計(jì),可靠性除了要求選擇滿足指標(biāo)的抗輻照器件以外,在設(shè)計(jì)上主要是通過(guò)冗余技術(shù)來(lái)避免空間輻照導(dǎo)致的單粒子翻轉(zhuǎn)。一般來(lái)說(shuō),冗余技術(shù)主要包括硬件冗余、信息冗余、執(zhí)行冗余和軟件冗余。
(1) 硬件冗余往往受到體積、重量、功耗等因素的影響,大多數(shù)情況下只能采用部分冗余。在本文中主要采用了軟件方面的設(shè)計(jì)來(lái)保障可靠性。
(2) 信息冗余容錯(cuò)技術(shù)是為了檢測(cè)與糾正數(shù)據(jù)在傳輸或存儲(chǔ)過(guò)程中的錯(cuò)誤而外加一部分冗余信息碼元。信息冗余容錯(cuò)技術(shù)使用的檢錯(cuò)與糾錯(cuò)碼通常有奇偶校驗(yàn)碼、漢明碼、循環(huán)冗余校驗(yàn)碼(CRC 校驗(yàn))等。其中 CRC 校驗(yàn)已成為數(shù)據(jù)傳輸差錯(cuò)控制的標(biāo)準(zhǔn)形式,其對(duì) 16 位內(nèi)信息碼的錯(cuò)誤檢出率為 100%。在本文中,所有的信息交換均采用CRC16的校驗(yàn)機(jī)制。
(3) 執(zhí)行冗余容錯(cuò)技術(shù)是靠犧牲系統(tǒng)的時(shí)間來(lái)?yè)Q取可靠性。對(duì)于大部分執(zhí)行過(guò)程來(lái)說(shuō),在沒(méi)有受到單粒子影響的情況下,執(zhí)行結(jié)果應(yīng)是正確無(wú)誤的。但當(dāng)瞬時(shí)受到單粒子影響,將會(huì)導(dǎo)致執(zhí)行過(guò)程正確而結(jié)果錯(cuò)誤。因此,在本文中,設(shè)計(jì)了當(dāng)程序檢測(cè)到錯(cuò)誤的執(zhí)行結(jié)果時(shí),將對(duì)前面執(zhí)行代碼重復(fù)執(zhí)行3次,并將執(zhí)行結(jié)果進(jìn)行比較,選取正確的結(jié)果,以消除瞬態(tài)性的故障。
(4) 軟件冗余主要是通過(guò)增加不同的功能模塊、數(shù)據(jù)存儲(chǔ)模塊來(lái)實(shí)現(xiàn)對(duì)功能和數(shù)據(jù)的表決冗余。但是由于本身星載器件的能力有限,如果全部采用功能模塊、數(shù)據(jù)存儲(chǔ)模塊的冗余,將大大增加處理器的資源。因此,在設(shè)計(jì)中往往是對(duì)重要的數(shù)據(jù)和功能進(jìn)行冗余。在本文中,軟件冗余是重要的冗余手段,主要采取了以下措施:
(a) 存儲(chǔ)冗余。在外部存儲(chǔ)器中,將執(zhí)行程序體分別存放在不同的存儲(chǔ)空間,并將程序體的CRC校驗(yàn)和存放在存儲(chǔ)空間中。在系統(tǒng)上電搬運(yùn)前,將會(huì)讀取程序體,計(jì)算校驗(yàn)和,并與存儲(chǔ)空間中的校驗(yàn)和進(jìn)行比較,以避免程序體受到破壞。
(b) 接口冗余。對(duì)于所有和上級(jí)執(zhí)行機(jī)構(gòu)以及內(nèi)部信息交換,本文均采用了三分之二的舉手表決機(jī)制,降低在信息交換階段出現(xiàn)的錯(cuò)誤。
(c) 重要數(shù)據(jù)冗余。對(duì)中斷標(biāo)識(shí)、大循環(huán)的循環(huán)標(biāo)志、重要的數(shù)據(jù)等均采用三分之二舉手表決機(jī)制;對(duì)于單Bit判斷位,本文采用了五分之三表決。
本文介紹一種星載雷達(dá)主控軟件的設(shè)計(jì),軟件設(shè)計(jì)的好壞是衡量雷達(dá)質(zhì)量的重要部分,對(duì)于航天型號(hào)來(lái)說(shuō),更要注重軟件的可靠性設(shè)計(jì)。該設(shè)計(jì)應(yīng)用于某星載探測(cè)雷達(dá)項(xiàng)目,取得了較好的效果。
[1] 張光義.雷達(dá)系統(tǒng)[M].北京:國(guó)防工業(yè)出版社,1994.
[2] 連卉,郝燕艷,李延濱,等.基于信息流的星載軟件需求分析方法[J].航天器工程,2015,24(2):68-73.
[3] 何國(guó)偉,王緯.軟件可靠性[M].北京:國(guó)防工業(yè)出版社,1998.
[4] 李芳華.星載軟件可靠性設(shè)計(jì)方法[J].上海航天,2003(3):24-27.
[5] 袁利,王磊.星載軟件可測(cè)試性設(shè)計(jì)方法[J].中國(guó)空間科學(xué)技術(shù),2010(4):31-37.
DesignandRealizationofMainControlSoftwareforStarborneRadar
FENG Jun-tao1,YANG Xin-nian2
(1.No.38 Research Institute of CETC,Hefei 230088,China; 2.Anhui Brainware Changan Electronics Co.,Ltd,Hefei 237014,China)
Aiming at a certain starborne radar,this paper realizes the design of main control software for radar combining with the reliability design idea of the software,at the same time describes the control process of chip AT697F,chip 1553B,etc.detailedly,and introduces some problems should be noted in the design process.
main control software of radar;AT697F;1553B;reliability
2017-03-07
TP311
:A
:CN32-1413(2017)03-0086-03
10.16426/j.cnki.jcdzdk.2017.03.021