某型機(jī)載作戰(zhàn)任務(wù)加載器的設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:為了保證飛機(jī)作戰(zhàn)任務(wù)信息傳輸和傳遞的準(zhǔn)確性和安全性,并考慮數(shù)據(jù)加載的方便快捷,文章提出了一種采用DSP實(shí)現(xiàn)安全可靠加載任務(wù)數(shù)據(jù)的解決方案。設(shè)計(jì)方案采用USB標(biāo)準(zhǔn)線性FLASH存儲卡作為任務(wù)數(shù)據(jù)加密存儲和傳遞載體,在飛機(jī)座艙操縱臺安裝一個(gè)集成USB存儲卡,集數(shù)據(jù)讀取解密和1553B總線數(shù)據(jù)加載等功能為一體的作戰(zhàn)任務(wù)加載器。文章從應(yīng)用需求出發(fā),對加載器的軟硬件設(shè)計(jì)與實(shí)現(xiàn)方法進(jìn)行了較為詳盡的描述。此作戰(zhàn)任務(wù)加載器的應(yīng)用豐富了任務(wù)數(shù)據(jù)的加載方式,減少了飛行員的操作,并能保證作戰(zhàn)任務(wù)數(shù)據(jù)的可靠傳輸。
關(guān)鍵詞:數(shù)據(jù)加載器;DSP;USB;1553B
引言
軍用飛機(jī)作戰(zhàn)任務(wù)具有較高的保密要求,飛行員需要從作戰(zhàn)指揮部獲取作戰(zhàn)任務(wù)數(shù)據(jù),然后在飛機(jī)執(zhí)行任務(wù)起飛前將作戰(zhàn)任務(wù)相關(guān)參數(shù)通過數(shù)據(jù)加載設(shè)備傳輸?shù)交鹂赜?jì)算機(jī)中?;鹂叵到y(tǒng)根據(jù)裝訂的信息參數(shù)引導(dǎo)飛行,在載機(jī)到達(dá)程序裝訂的目標(biāo)區(qū)域時(shí)提醒飛行員做好戰(zhàn)斗準(zhǔn)備,此外攻擊后的退出引導(dǎo)、返場引導(dǎo)等飛行過程都可根據(jù)裝訂的信息自動完成。作戰(zhàn)任務(wù)加載運(yùn)行模式如圖1所示。
1 整體方案考慮
作戰(zhàn)任務(wù)加載器需要實(shí)現(xiàn)三個(gè)功能,包括讀取數(shù)據(jù)存儲卡的數(shù)據(jù)、數(shù)據(jù)解密和通過1553B接口向火控計(jì)算機(jī)發(fā)送數(shù)據(jù)。
數(shù)據(jù)存儲卡用于存儲和傳遞作戰(zhàn)導(dǎo)航數(shù)據(jù),任務(wù)規(guī)劃系統(tǒng)對數(shù)據(jù)存儲卡執(zhí)行編程操作,作戰(zhàn)任務(wù)加載器對數(shù)據(jù)存儲卡執(zhí)行讀取操作。作戰(zhàn)任務(wù)加載器屬于小型機(jī)載嵌入式設(shè)備,其工作頻率較低,數(shù)據(jù)存儲卡應(yīng)選擇工作模式相對簡單、讀取速度快、可靠性較高的產(chǎn)品。作戰(zhàn)任務(wù)加載器采用基于USB接口的NOR Flash存儲卡作為作戰(zhàn)導(dǎo)航參數(shù)信息的存儲載體。NOR Flash也稱為Linear Flash,擁有獨(dú)立的數(shù)據(jù)總線和地址總線,能快速隨機(jī)讀取,可以單字節(jié)/單字編程,但必須以塊為單位或整片執(zhí)行擦除,重新編程之前必須進(jìn)行擦除操作。 NOR Flash存儲卡簡單的訪問方式、快速讀取速度及較高的可靠性適合機(jī)載作戰(zhàn)任務(wù)加載器的工作環(huán)境和工作模式。
作戰(zhàn)任務(wù)編程/加載系統(tǒng)采用數(shù)據(jù)加解密技術(shù)保證移動存儲的安全保密性。所謂數(shù)據(jù)加密技術(shù)是指將信息(或稱明文)經(jīng)過加密鑰匙及加密函數(shù)轉(zhuǎn)換,變成無意義的密文,而接收方將此密文經(jīng)過解密函數(shù)、解密鑰匙還原成明文的技術(shù)。作戰(zhàn)導(dǎo)航參數(shù)信息需要任務(wù)規(guī)劃系統(tǒng)進(jìn)行數(shù)據(jù)加密后存儲在數(shù)據(jù)存儲卡上,作戰(zhàn)任務(wù)加載器對數(shù)據(jù)存儲卡上的密文數(shù)據(jù)進(jìn)行解密處理。作戰(zhàn)任務(wù)加載器固定安裝在飛機(jī)上,應(yīng)用環(huán)境具有較高的安全性??紤]作戰(zhàn)任務(wù)加載器的實(shí)時(shí)性要求較低,且需要解密的導(dǎo)航信息數(shù)據(jù)量較小,加載器采用軟件解密方法即可滿足要求。雖然會帶來軟件運(yùn)行開銷,但可降低硬件成本。
本系統(tǒng)采用IDEA(International Data Encryption Algorithm)加密算法實(shí)現(xiàn)作戰(zhàn)導(dǎo)航數(shù)據(jù)信息在數(shù)據(jù)生成端的加密和數(shù)據(jù)使用端的解密。IDEA被認(rèn)為是目前世界上最好最安全的分組密碼算法,且對計(jì)算機(jī)功能要求不高。IDEA的密鑰長度是128位,相對較長,加密強(qiáng)度高。在窮舉攻擊的情況下,IDEA需要經(jīng)過2128次加密才能恢復(fù)出密鑰,假設(shè)芯片每秒能檢測10億個(gè)密鑰,需要1013年,它被認(rèn)為僅循環(huán)4次即可抵制差分密碼分析,對IDEA算法也不起作用,隨機(jī)選擇密鑰基本沒有危險(xiǎn),故其安全性較高;算法的基礎(chǔ)是16位運(yùn)算,實(shí)現(xiàn)速度與DES相同。加密中從數(shù)碼鎖獲得的密鑰為128比特,明文分組長度是64比特。
采用DSP實(shí)現(xiàn)IDEA解密算法與硬件實(shí)現(xiàn)解密相比具有開發(fā)周期短、成本低的優(yōu)點(diǎn)。另外DSP本身的流水線和運(yùn)算器設(shè)計(jì)也能夠有效提高數(shù)據(jù)解密算法的運(yùn)算速度。
2 硬件設(shè)計(jì)
作戰(zhàn)任務(wù)加載器由數(shù)據(jù)處理模塊、電源系統(tǒng)、機(jī)箱和數(shù)據(jù)存儲卡構(gòu)成,機(jī)箱和電源采用一體化設(shè)計(jì),數(shù)據(jù)處理模塊是作戰(zhàn)任務(wù)加載器內(nèi)部唯一的SRU。數(shù)據(jù)存儲卡直接安裝在數(shù)據(jù)處理模塊上,可簡化整機(jī)結(jié)構(gòu)設(shè)計(jì)。
2.1 DSP選型
數(shù)據(jù)處理模塊采用TI公司的數(shù)字信號處理器SM320F2812,集成1553B、USB、串口、離散量等數(shù)字接口。1553B接口用于向火控系統(tǒng)傳輸數(shù)據(jù),USB接口用于訪問數(shù)據(jù)存儲卡,串口用于顯示維護(hù)BIT的測試結(jié)果,離散量用于控制作戰(zhàn)任務(wù)加載器進(jìn)入不同的工作模式。SM320F2812的額定工作頻率為150MHz,每秒可執(zhí)行1.5億次指令,具有單周期32bit ×32bit的乘和累加操作功能,主要實(shí)現(xiàn)USB存儲卡數(shù)據(jù)讀取、解密、發(fā)送的功能。
F2812的外部接口映射到5塊固定的存儲空間。每個(gè)存儲空間可以單獨(dú)設(shè)置訪問時(shí)的等待狀態(tài)數(shù)目、選通信號的建立時(shí)間和保持時(shí)序,且讀和寫操作的時(shí)序可以獨(dú)立設(shè)置。此外,每個(gè)空間可以分別選擇是否使用外部等待信號(XREADY)來擴(kuò)展所需的等待狀態(tài)。這些片選信號以及可編程的等待狀態(tài)和選通時(shí)序使得 DSP芯片可以和許多外部存儲器或擴(kuò)展外設(shè)間實(shí)現(xiàn)無縫接口。每個(gè)XINTF空間都有自己的時(shí)序寄存器XTIMING,改變時(shí)序寄存器的值將會影響相應(yīng)空間的訪問時(shí)序。1553B接口、RAM、數(shù)據(jù)存儲卡可分別映射到不同的存儲空間,實(shí)現(xiàn)簡化設(shè)計(jì)。
2.2 1553B總線接口電路
作戰(zhàn)任務(wù)加載器與火控計(jì)算機(jī)之間的數(shù)據(jù)傳輸通過1553B總線接口實(shí)現(xiàn)。本設(shè)計(jì)選擇1553B接口芯片HK1553B來實(shí)現(xiàn)通信功能。
1553B總線接口電路工作時(shí)鐘為12MHz,經(jīng)過隔離變壓器連接到1553B總線,模塊上1553B芯片工作在RT方式下,1553B協(xié)議芯片訪問外部存儲器為一片64k×16bitSRAM存儲器,存儲器的訪問控制及1553B協(xié)議芯片請求DSP總線及應(yīng)答信號由FPGA產(chǎn)生。1553B協(xié)議芯片的地址和數(shù)據(jù)總線全部引入FPGA,1553B協(xié)議芯片訪問DSP總線時(shí)地址數(shù)據(jù)通過FPGA掛在EMIF總線上。
2.3 USB接口電路
本系統(tǒng)采用的存儲卡為MagicRAM公司的USBFlash存儲卡,該存儲卡讀取周期最大為200ns,可執(zhí)行100000次寫/擦除操作。該存儲卡的讀寫訪問時(shí)序是典型的異步并行接口訪問時(shí)序。DSP提供了對異步存儲器的無縫訪問接口XINTF,將數(shù)據(jù)存儲卡單獨(dú)映射到DSP的 Zone2外部存儲空間。
USB芯片CY7C68013與FPGA相連,在檢測到USB供電后,通過FPGA實(shí)現(xiàn)對USB接口芯片的復(fù)位,并使能USB接口信號,實(shí)現(xiàn)與上位機(jī)的通信,完成調(diào)試加載功能。USB接口部分結(jié)構(gòu)如圖2所示。[!--empirenews.page--]
FPGA通過USB口電源監(jiān)控電路實(shí)現(xiàn)對USB接口的接口控制,當(dāng)USB接口供電有效時(shí),F(xiàn)PGA輸出USB芯片復(fù)位有效,并使能與USB接口的數(shù)據(jù)總線,在USB不使用條件下USB工作在PowerDown模式,數(shù)據(jù)總線置為三態(tài)。
3 軟件設(shè)計(jì)
作戰(zhàn)任務(wù)加載器的軟件分為三部分,包括驅(qū)動程序、BIT程序和應(yīng)用程序,驅(qū)動程序由BIT程序和應(yīng)用程序調(diào)用。驅(qū)動程序包括DSP初始化、1553B接口驅(qū)動、串口驅(qū)動、GPIO驅(qū)動等。DSP初始化對DSP的工作頻率、XINTF總線時(shí)序、中斷使能和優(yōu)先級進(jìn)行配置。1553B、串口接口驅(qū)動實(shí)現(xiàn)通信初始化配置、數(shù)據(jù)發(fā)送、數(shù)據(jù)接收等基本底層控制操作。
作戰(zhàn)任務(wù)加載器BIT程序包括上電BIT和維護(hù)BIT。作戰(zhàn)任務(wù)加載器上電后通過讀取地面狀態(tài)使能信號GSE#的狀態(tài)進(jìn)入地面工作模式或機(jī)上工作模式。
在地面工作模式,作戰(zhàn)任務(wù)加載器執(zhí)行維護(hù)BIT程序,對FLASH、RAM、1553B接口、USB數(shù)據(jù)存儲卡等硬件資源進(jìn)行測試,對FLASH的測試只進(jìn)行應(yīng)用程序校驗(yàn)和測試,對RAM、USB數(shù)據(jù)存儲卡進(jìn)行讀寫正確性測試,對1553B接口進(jìn)行數(shù)據(jù)傳輸正確性測試。在機(jī)上工作模式,為了保證作戰(zhàn)任務(wù)加載器的功能完備性,首先進(jìn)行上電BIT測試,對應(yīng)用程序FLASH校驗(yàn)和、數(shù)據(jù)RAM讀寫正確性、1553B接口內(nèi)部環(huán)測正確性進(jìn)行測試。上電BIT測試正確后,通過定時(shí)器產(chǎn)生定時(shí)中斷不斷偵測USB接口是否有數(shù)據(jù)傳輸卡存在。當(dāng)正常插入數(shù)據(jù)存儲卡后,任務(wù)加載器可向空地火控計(jì)算機(jī)發(fā)送數(shù)據(jù)加載請求,根據(jù)火控計(jì)算機(jī)的應(yīng)答情況發(fā)起數(shù)據(jù)加載流程,執(zhí)行應(yīng)用程序。如未檢測到數(shù)據(jù)存儲卡或火控計(jì)算機(jī)無應(yīng)答,則循環(huán)執(zhí)行上電BIT測試。作戰(zhàn)任務(wù)加載器的軟件工作流程如圖3所示。
應(yīng)用程序?qū)SB存儲卡內(nèi)密文數(shù)據(jù)和密鑰讀取,采用IDEA解密算法對密文數(shù)據(jù)解密,將解密后的明文數(shù)據(jù)通過1553B接口傳輸給空地火控計(jì)算機(jī),其加載端和目標(biāo)機(jī)均需支持1553B基本數(shù)據(jù)通信,通過握手-響應(yīng)-確認(rèn)機(jī)制來完成數(shù)據(jù)在加載端和目標(biāo)機(jī)的可靠傳輸過程。
4 結(jié)束語
本文介紹了一種可讀取USB數(shù)據(jù)存儲卡并實(shí)現(xiàn)作戰(zhàn)任務(wù)數(shù)據(jù)可靠傳輸?shù)臄?shù)據(jù)加載器。此設(shè)計(jì)方法可應(yīng)用于更多具有安全可靠要求的數(shù)據(jù)加載設(shè)備。數(shù)據(jù)信息載體不局限于USB線性FLASH存儲卡,可根據(jù)處理速度和數(shù)據(jù)量要求采用加固U盤、加固SATA電子盤等移動存儲設(shè)備。與上位機(jī)的數(shù)據(jù)傳輸交互接口也可根據(jù)實(shí)際應(yīng)用需求進(jìn)行設(shè)計(jì),可設(shè)計(jì)為AFD X、ARINC429、ARINC825等串行通信接口。