蔣炯煒,查婕,雷志軍
(中國電子科技集團(tuán)公司第五十八研究所,江蘇無錫 214035)
在彈藥的制導(dǎo)化改造過程中,所有的改造措施都必須通過靶場的實(shí)彈測試完成驗(yàn)證[1]。為了最大限度發(fā)揮實(shí)彈測試的驗(yàn)證效果,離線式彈載采集存儲設(shè)備在實(shí)彈測試的過程中發(fā)揮著重要作用[2]。在測試中需要通過數(shù)據(jù)回讀對數(shù)據(jù)解析后得到相關(guān)飛行參數(shù),以便進(jìn)行后續(xù)試驗(yàn)[3]。當(dāng)今彈載數(shù)據(jù)記錄儀的功能越來越豐富,記錄數(shù)據(jù)的類型越來越多,飛控、舵機(jī)、雷達(dá)乃至圖像信息都在需要記錄的數(shù)據(jù)范圍內(nèi)[4]。這使得記錄儀存儲速度不僅要快,容量還要大,而且數(shù)據(jù)回讀時間也要盡可能短。如果導(dǎo)彈飛行數(shù)據(jù)從記錄儀中導(dǎo)出太慢,靶場試驗(yàn)時現(xiàn)場人員無法及時地對相關(guān)參數(shù)進(jìn)行統(tǒng)計(jì)和分析,并根據(jù)分析結(jié)果作出下一步的試驗(yàn)調(diào)整,將會影響整體的試驗(yàn)質(zhì)量[5]。
隨著電子技術(shù)的不斷發(fā)展,數(shù)據(jù)記錄儀在存取數(shù)據(jù)靈活性、存儲速率和可靠性等方面不斷提高[6]。本文設(shè)計(jì)了一款高性能數(shù)據(jù)記錄儀,選用大容量、傳輸速度快的嵌入式多媒體卡(eMMC)芯片作為存儲介質(zhì),通過TI 公司的DSP 處理器與Xinlix 公司的FPGA 相互配套協(xié)作,最終實(shí)現(xiàn)了3 路CAN 和1 路RS485 數(shù)據(jù)的采集及壓縮、32 GB 容量雙備份循環(huán)存儲,并可以用USB 接口快速將eMMC 中的存儲數(shù)據(jù)上傳給上位機(jī)以進(jìn)行進(jìn)一步分析,從而對導(dǎo)彈飛行模擬系統(tǒng)的關(guān)鍵性能參數(shù)進(jìn)行評估。
圖1 為記錄儀的硬件平臺設(shè)計(jì)框圖,采用了Spartan6 系列FPGA 搭配C2000 系列DSP,實(shí)現(xiàn)數(shù)據(jù)的接收、存儲和回讀功能。通信接口主要包括:3 路CAN 接口、1 路RS485 接口,用于接收飛行時傳輸?shù)年P(guān)鍵信息;1 路USB2.0 接口,用于對記錄儀的數(shù)據(jù)回讀和FPGA 程序升級;1 路RS422 接口,用于設(shè)備調(diào)試時信息反饋和DSP 程序升級。存儲接口主要包括1 片256×16 bit 的SRAM 和2 片32 GB 的eMMC。在一些對存儲容量和速度有較高要求的場合,可以使用eMMC 這種大容量存儲芯片[7],其內(nèi)部自帶的錯誤檢查和糾正(ECC)算法會自動計(jì)算出對應(yīng)數(shù)據(jù)的ECC值[8],可靠性高。硬件平臺中FPGA 主要完成CAN 控制器IP 核集成、CAN 數(shù)據(jù)緩存、RS485 數(shù)據(jù)緩存及eMMC 的讀寫驅(qū)動。DSP 主要對所有需要存儲的數(shù)據(jù)進(jìn)行加工和封裝,并按照特定格式存于eMMC 芯片中。
圖1 記錄儀的硬件平臺設(shè)計(jì)框圖
記錄儀外部的電源電壓輸入范圍為16~36 V,可以轉(zhuǎn)換為多級電源供電。外部輸入電源經(jīng)瞬態(tài)電壓抑制器(TVS)、浪涌抑制器、電磁干擾(EMI)濾波器到電容網(wǎng)絡(luò)進(jìn)一步處理后,輸入給掉電檢測電路,便于系統(tǒng)掉電時通知記錄儀完成最后的數(shù)據(jù)處理和存儲工作;同時也通過隔離的DC/DC 電源,降壓轉(zhuǎn)換為5 V二級電源給法拉電容充電,系統(tǒng)掉電時記錄儀還可以繼續(xù)工作一段時間。通過LDO 生成三級電源,如1.2 V FPGA 內(nèi)核電源、1.9 V DSP 內(nèi)核電源和3.3 V I/O 電源。實(shí)際評測28 V 電源輸入時,記錄儀整體電流約為150 mA,功耗小于5 W。
記錄儀上各接口的數(shù)據(jù)傳輸速率如圖2 所示。外部24 MHz 的有源晶振同時向DSP 和FPGA 提供時鐘。DSP 和FPGA 分別通過內(nèi)部鎖相環(huán)(PLL)將主頻倍至120MHz 和96MHz,其中FPGA 還向USB 芯片和eMMC 存儲芯片提供工作所需的時鐘信號。數(shù)據(jù)存儲時,F(xiàn)PGA 與eMMC 的接口傳輸速率可達(dá)10 Mbit/s。數(shù)據(jù)回讀時,F(xiàn)PGA 與USB 的接口傳輸速率可達(dá)40Mbit/s。
圖2 數(shù)據(jù)傳輸速率示意圖
通信總線上所有的數(shù)據(jù)都由FPGA 進(jìn)行接收,其內(nèi)部給CAN 通信開設(shè)的FIFO 能緩存1 kB 的數(shù)據(jù),給RS485 通信開設(shè)的FIFO 能緩存4 kB 的數(shù)據(jù)。RS485 數(shù)據(jù)以2 Mbit/s 的速率發(fā)送,而CAN 總線上的數(shù)據(jù)以800 kbit/s 的速率發(fā)送,速率比為2.5∶1,而對應(yīng)的FIFO 緩存比為4∶1,等效于總線100%負(fù)載的條件下,數(shù)據(jù)填滿緩存RS485 的FIFO 和緩存CAN 的FIFO 的時間比為1.6∶1。按照理論計(jì)算,填滿緩存CAN數(shù)據(jù)的FIFO 時間為[(1×1 024×8)/800]ms=10.24 ms,填滿緩存RS485 數(shù)據(jù)的FIFO 時間為(10.24×1.6)ms=16.38 ms。實(shí)際應(yīng)用環(huán)境中,CAN 幀的格式主要為擴(kuò)展幀,一共為13 個字節(jié)(1 字節(jié)幀信息+4 字節(jié)報(bào)文識別碼+8 字節(jié)實(shí)際數(shù)據(jù))。RS485 幀格式為4 字節(jié)幀頭+508 字節(jié)數(shù)據(jù)。對應(yīng)當(dāng)前FPGA 所開設(shè)的FIFO 大小,能分別最大緩存78 幀CAN 數(shù)據(jù)和8 幀RS485 數(shù)據(jù)。在滿負(fù)載率條件下,DSP 需要在(10.24/78)ms=0.13 ms內(nèi)取完CAN 數(shù)據(jù)、在(16.38/8)ms=2.0 ms 內(nèi)取完RS485 數(shù)據(jù)才不會丟數(shù)據(jù),因此對FPGA 與DSP 之間的數(shù)據(jù)交互速率要求很高,兩者通過XINTF 接口進(jìn)行數(shù)據(jù)交換,設(shè)計(jì)時將XINTF 接口速率配置成30 Mbit/s可以滿足實(shí)際要求。
記錄儀軟件主要分為DSP 軟件、FPGA 軟件和上位機(jī)軟件。對數(shù)據(jù)存儲時,DSP 軟件先讀取eMMC 存儲的地址信息,判斷需要存儲數(shù)據(jù)的起始地址。FPGA軟件按照CAN 總線協(xié)議和RS485 協(xié)議從外部接口接收對應(yīng)的數(shù)據(jù)后,將其存入內(nèi)部CAN/RS485 FIFO。DSP 軟件通過XINTF 協(xié)議查詢FPGA 內(nèi)CAN/RS485 FIFO 是否有數(shù)據(jù),若有數(shù)據(jù)則從FPGA 將數(shù)據(jù)取走,完成封裝處理后回傳給FPGA 內(nèi)的eMMC FIFO 完成存儲。同時DSP 軟件會判斷CAN 數(shù)據(jù)每幀的ID 號,確認(rèn)該幀是否為指令幀。若為指令幀,DSP 軟件將根據(jù)指令要求進(jìn)行對應(yīng)的操作(讀取數(shù)據(jù)存儲器狀態(tài)或者進(jìn)行eMMC 擦除),指令執(zhí)行完成響應(yīng)后,再將響應(yīng)幀數(shù)據(jù)通過FPGA 發(fā)送至通信總線上。數(shù)據(jù)回讀時,上位機(jī)先通過USB 接口向記錄儀發(fā)送回讀指令,F(xiàn)PGA 軟件解析指令后,根據(jù)JEDEC 協(xié)議將數(shù)據(jù)從eMMC 芯片中讀出,再通過USB 協(xié)議將數(shù)據(jù)上傳至PC 端的上位機(jī)。
DSP 軟件完成數(shù)據(jù)存儲的過程如圖3 所示,文件列表和數(shù)據(jù)塊分離,分別存儲在eMMC 內(nèi)兩塊連續(xù)的地址空間。每個文件的存儲地址固定,且每個文件對應(yīng)的數(shù)據(jù)塊大小也均固定為16 MB,順序存儲。記錄儀上電后,DSP 先從eMMC 的固定地址0x3801000 開始掃描文件個數(shù),找出當(dāng)前最后一個文件描述符所在地址后,文件列表地址加1 新建一個文件。數(shù)據(jù)存儲累計(jì)滿16 MB 后會再新建一個文件,且文件列表地址加1。以此類推,直至數(shù)據(jù)存滿整個eMMC 芯片后自動循環(huán)覆蓋第一個文件,重新開始存儲。
圖3 DSP 軟件存儲數(shù)據(jù)過程
FPGA 軟件實(shí)現(xiàn)的主要功能及模塊組成包括:CAN 驅(qū)動模塊,使用成熟的IP 實(shí)現(xiàn)CAN 總線通信的標(biāo)準(zhǔn)協(xié)議后,完成通信數(shù)據(jù)的接收和發(fā)送;RS485 驅(qū)動模塊,具備自適應(yīng)波特率的功能,并根據(jù)約定的通信協(xié)議判斷數(shù)據(jù)的有效性,只接收不發(fā)送;eMMC 驅(qū)動模塊,根據(jù)標(biāo)準(zhǔn)的JEDEC 協(xié)議,實(shí)現(xiàn)對eMMC 存儲芯片的訪問,主要包括讀、寫和擦除功能;USB 驅(qū)動模塊,通過標(biāo)準(zhǔn)的USB2.0 協(xié)議與上位機(jī)進(jìn)行通信,根據(jù)指令要求將指定的數(shù)據(jù)塊從eMMC 存儲芯片中回讀出來,同時也可以根據(jù)特定指令完成FPGA 程序的在線升級;RS422 驅(qū)動模塊,作為上位機(jī)和DSP 之間的橋梁,可以實(shí)現(xiàn)記錄儀狀態(tài)信息的上傳打印,也可以根據(jù)上位機(jī)指令要求,將DSP 從工作模式切換成串口升級的模式,不需要使用仿真器與JTAG 相連[9],就能將上位機(jī)發(fā)送的升級代碼燒寫到DSP 中,完成程序的更新。
FPGA 軟件驅(qū)動模塊如圖4 所示。
圖4 FPGA 軟件驅(qū)動模塊
上位機(jī)開發(fā)環(huán)境為Visual Studio 2010,數(shù)據(jù)記錄儀的上位機(jī)有如下功能:固件驅(qū)動自動加載功能、顯示剩余存儲容量和剩余存儲容量百分比、顯示文件名稱、顯示文件大小、記錄開始時間、記錄結(jié)束時間、支持保存原始數(shù)據(jù)功能、支持保存解析數(shù)據(jù)功能、支持快速擦除和全片擦除功能,數(shù)據(jù)記錄儀上位機(jī)界面如圖5 所示。
圖5 數(shù)據(jù)記錄儀上位機(jī)界面
點(diǎn)擊“保存原始文件”可以保存數(shù)據(jù)記錄儀存儲的原始數(shù)據(jù)為.dat 的十六進(jìn)制文件,CAN 數(shù)據(jù)和RS485 數(shù)據(jù)混合,可讀性較差。點(diǎn)擊“保存解析文件”,是在原始文件的基礎(chǔ)上,保存上位機(jī)根據(jù)通信數(shù)據(jù)幀格式進(jìn)行格式整理后生成.txt 的文件,方便用戶查看分析。表1 為CAN 數(shù)據(jù)幀的格式,表2 為RS485 數(shù)據(jù)幀的格式。
表1 CAN 數(shù)據(jù)幀格式
表2 RS485 數(shù)據(jù)幀格式
記錄儀的機(jī)械結(jié)構(gòu)如圖6 所示,數(shù)據(jù)記錄儀的外殼長為100 mm,寬為100 mm,高度為70 mm,殼體材質(zhì)選用了鋁合金,整體質(zhì)量約為0.9 kg。內(nèi)部腔體從上往下依次放置通信板、控制板和電源板。固定板子的臺階采用探出式結(jié)構(gòu),在保證連接可靠性的前提下,可以有效減少外殼重量,也為電路板尺寸留出了更多的裕量。
圖6 記錄儀的機(jī)械結(jié)構(gòu)
殼體設(shè)計(jì)時在電磁兼容方面也做了充分考慮。由于電源板上的電源模塊開關(guān)頻率較高,會通過輻射和傳導(dǎo)這兩條路徑對控制板和通信板造成一定的電磁干擾,為提升EMC 性能,采取下列措施:在殼體蓋板上將外部供電線纜和信號線纜分開,分別使用單獨(dú)的連接器,減小電源和信號線之間的相互耦合;在PCB布局時,將電源模塊、EMI 電源濾波器和浪涌抑制器均放置在電源板上,安裝在殼體底部并設(shè)置了隔層進(jìn)行屏蔽和散熱,隔絕電源模塊EMI 輻射耦合路徑;為了避免電源線纜從殼體頂部接插件貫穿通信板和控制板才能至底部的電源板,專門在殼體內(nèi)壁上設(shè)計(jì)了一個封閉式的通道,使電源線纜經(jīng)過頂部接插件后直接連接至殼體底部的電源板,減少了電源模塊EMI 傳導(dǎo)耦合路徑。電源線傳導(dǎo)發(fā)射(CE102)檢測(10 kHz~10 MHz 電源線傳導(dǎo)發(fā)射測試)結(jié)果表明,數(shù)據(jù)記錄儀的EMC 性能良好,滿足指標(biāo)要求。
本文提出了一種高性能彈載數(shù)據(jù)記錄儀的設(shè)計(jì)方法,采用了擅長數(shù)據(jù)處理的DSP 作為主控器,靈活性高的FPGA 配合完成通信數(shù)據(jù)收發(fā)和存儲,大容量、高可靠的eMMC 顆粒作為存儲介質(zhì),進(jìn)一步提高了數(shù)據(jù)記錄儀的整體性能。實(shí)現(xiàn)了通信總線在速率4.4 Mbit/s 滿載條件下不丟幀接收,完成32 GB 大容量的雙備份循環(huán)存儲。數(shù)據(jù)導(dǎo)出采取USB 方式,導(dǎo)出速率可達(dá)5 MB/s。產(chǎn)品還通過了CE102 電磁兼容試驗(yàn),整體性能優(yōu)于同類產(chǎn)品。