文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.182874
中文引用格式: 陸玉芳,,莊奕琪,,吳旋輝. 基于SIP概念的電氣控制組合設(shè)計與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2019,,45(6):113-119.
英文引用格式: Lu Yufang,,Zhuang Yiqi,Wu Xuanhui. Design and implementation of upper stage ELMC based on SIP concept[J]. Application of Electronic Technique,,2019,45(6):113-119.
0 引言
隨著微電子和計算機(jī)技術(shù)的發(fā)展,,航天、航空等領(lǐng)域電子系統(tǒng)正逐漸向著集成化,、綜合化[1],、信息化、模塊化,、智能化及通用化等方向發(fā)展,。本文以某型號商業(yè)火箭上面級電子系統(tǒng)提出的綜合化、集成化及通用化等要求為研究背景,,參考集成電路系統(tǒng)設(shè)計理念,,提出了一種基于數(shù)模混合型FPGA芯片將電氣控制組合控制系統(tǒng)小型化為一個SIP系統(tǒng)的方法,,使用微波隔離[2]等平面化技術(shù)將外圍的隔離驅(qū)動電路及固態(tài)開關(guān)陣列小型化,,并在VITA-46標(biāo)準(zhǔn)的3U結(jié)構(gòu)中完成了箭上上面級電氣控制組合的設(shè)計與實(shí)現(xiàn),體積,、重量不到傳統(tǒng)設(shè)計的三分之一,,通信速率提高了近百倍,通用性,、可靠性,、安全性及測試性等性能指標(biāo)有顯著提升。
1 系統(tǒng)方案設(shè)計
某型號箭上上面級綜合電子系統(tǒng)整體采用全新的模塊化概念單元(Modular Conceptual Unit,,MCU)設(shè)計理念,,對系統(tǒng)中的電氣控制組合提出了高速、小型化,、輕量化及高可靠性等要求,。電氣控制組合作為上面級綜合電子系統(tǒng)中的重要功能單元,需具有多路配電控制,、數(shù)十路時序點(diǎn)火控制,、多路模擬信號采集,、多路開關(guān)量信號采集、應(yīng)急控制,、千兆光纖以太網(wǎng)通信及狀態(tài)信息上報等功能,,還需通過控制系統(tǒng)內(nèi)的輔助健康管理系統(tǒng)對主控系統(tǒng)等關(guān)鍵部位的工作狀態(tài)進(jìn)行實(shí)時監(jiān)控,并可通過CAN總線將系統(tǒng)實(shí)時工作情況上報,。
通過需求分析,,上面級電氣控制組合由SIP控制系統(tǒng)、電源隔離變換模塊,、微波隔離驅(qū)動模塊,、隔離放大模塊、隔離采樣模塊及固態(tài)開關(guān)陣列等模塊組成,,其中SIP控制系統(tǒng)又由主控系統(tǒng)和輔助健康管理系統(tǒng)兩部分組成,。主控系統(tǒng)可通過雙冗余1000BASE-X總線接收上位機(jī)指令,經(jīng)微波隔離驅(qū)動模塊進(jìn)行電氣隔離后,,控制固態(tài)開關(guān)陣列完成時序點(diǎn)火及用電設(shè)備配電控制輸出,,可采集調(diào)理電路輸入的電壓和開關(guān)量等信號,通過1000BASE-X上傳上位機(jī),,并具有應(yīng)急控制功能,;主控系統(tǒng)采用單片數(shù)模混合型FPGA處理器實(shí)現(xiàn),。輔助健康管理系統(tǒng)主要由溫度采集,、供電電壓采集、主控系統(tǒng)配置狀態(tài)檢測,、主控系統(tǒng)心跳檢測,、SIP模塊生命周期信息記錄(包括上電時間,上電次數(shù),,主控系統(tǒng)軟件版本等)等軟核組成,,采用單片F(xiàn)lash架構(gòu)的數(shù)模混合SoC處理器實(shí)現(xiàn),。上面級電氣控制組合原理框圖如圖1所示,。
2 SIP控制系統(tǒng)設(shè)計
2.1 主控系統(tǒng)設(shè)計
主控系統(tǒng)主要接收上位機(jī)指令完成時序點(diǎn)火、配電控制,、開關(guān)量采集,、模擬量采集及實(shí)時狀態(tài)監(jiān)控等功能。主控系統(tǒng)設(shè)計包括:主協(xié)議引擎核,、千兆光纖以太網(wǎng)通信核,、模擬信號處理核、開關(guān)反饋核,、開關(guān)控制核,、緊急控制核,、信息存儲核及時間同步核,其中主協(xié)議引擎核為控制核心,,采用片內(nèi)總線完成與其他軟核間的數(shù)據(jù)交換,主控系統(tǒng)架構(gòu)邏輯框圖如圖2所示,。設(shè)計中例化了兩路相同的以太網(wǎng)通信核,,實(shí)現(xiàn)兩冗余總線通信控制,每個以太網(wǎng)核設(shè)計專用FIFO完成與主協(xié)議引擎核的數(shù)據(jù)交互,;主協(xié)議引擎核由主協(xié)議接收引擎核與主協(xié)議發(fā)送引擎核組成,,接收引擎核主要完成數(shù)據(jù)的拆包,應(yīng)用層CRC校驗(yàn),,數(shù)據(jù)分配下發(fā),;發(fā)送引擎核主要完成發(fā)送數(shù)據(jù)CRC計算,將數(shù)據(jù)打包成應(yīng)用層通信數(shù)據(jù)格式并發(fā)送至以太網(wǎng)通信核等功能,;子功能核分別完成設(shè)定功能,,并行工作,并設(shè)計專用FIFO來完成與主協(xié)議引擎核的數(shù)據(jù)交互,。
2.1.1 千兆以太網(wǎng)通信核設(shè)計
千兆以太網(wǎng)通信核架構(gòu)中包含1個UDP核,,1個接收FIFO,1個發(fā)送FIFO,;UDP核控制系統(tǒng)實(shí)現(xiàn)UDP協(xié)議通信,,包括5個子核,分別為以太網(wǎng)接收子核IPReceiveCore_Unit,、以太網(wǎng)發(fā)送子核IPSendCore_Unit,、接收CRC校驗(yàn)子核RecCrc_Unit、發(fā)送CRC校驗(yàn)核SendCrc_Unit以及接收緩存RAM核RecRam,。千兆以太網(wǎng)通信核主要架構(gòu)如圖3所示,。
2.1.1.1 以太網(wǎng)接收核設(shè)計
以太網(wǎng)接收核設(shè)計時,定義Gmii_Rx_Dv為接收信號狀態(tài)標(biāo)志,,GMII_Rx_Er為接收信號數(shù)據(jù)標(biāo)志,,Gmii_Rxd[7:0]為接收數(shù)據(jù)信號接口,其他前綴為ARP的接口與以太網(wǎng)發(fā)送核相連,,用于傳遞ARP信號,,接口如圖4所示。以太網(wǎng)接收核狀態(tài)機(jī)編碼方式設(shè)計為One-Hot碼(獨(dú)熱碼),,采用三段式狀態(tài)機(jī),。控制器檢測接收信號有效時(Gmii_Rx_Dv==1),,結(jié)束閑置狀態(tài)(IDLE==0),,進(jìn)入接收進(jìn)程,。接收進(jìn)程設(shè)計為3個階段,每個階段都有相應(yīng)長度的寄存器緩存,,其中CRC的計算從以太網(wǎng)首部的目標(biāo)MAC地址開始,,直到UDP數(shù)據(jù)區(qū)結(jié)束為止,接收時判斷目的IP地址,、目的端口號等信息是否匹配,。如匹配,則接收UDP數(shù)據(jù),,同時將其寫入BlockRAM中緩存,,待幀結(jié)束時所有校驗(yàn)與CRC校驗(yàn)都通過時,才將BlockRAM數(shù)據(jù)寫入到接收FIFO中供主協(xié)議引擎核解析應(yīng)用數(shù)據(jù),;另外,,在接收數(shù)據(jù)的過程中判斷接收的以太網(wǎng)幀為數(shù)據(jù)幀或ARP幀,若為ARP幀時,,則判斷是否為詢問幀,,校驗(yàn)?zāi)康腎P是否匹配;校驗(yàn)通過后置標(biāo)志位,,并通知以太網(wǎng)發(fā)送核回復(fù)ARP幀,,其流程圖如圖4所示。
2.1.1.2 以太網(wǎng)發(fā)送核設(shè)計
以太網(wǎng)發(fā)送核設(shè)計時,,定義Gmii_Tx_En為發(fā)送信號標(biāo)準(zhǔn),,Gmii_Tx_Er為發(fā)送數(shù)據(jù)標(biāo)志,Gmii_Txd[7:0]為發(fā)送數(shù)據(jù)信號,。發(fā)送流程為:首先,,當(dāng)檢測到有發(fā)送數(shù)據(jù)請求時(及發(fā)送核FIFO的Empty標(biāo)志為0),狀態(tài)機(jī)進(jìn)入發(fā)送狀態(tài),。先將Gmii_Tx_En標(biāo)志置1,,按照以太網(wǎng)幀格式將數(shù)據(jù)傳遞至Gmii_Txd,當(dāng)發(fā)送UDP數(shù)據(jù)區(qū)時,,連續(xù)讀出發(fā)送FIFO中的數(shù)據(jù)進(jìn)行發(fā)送,,最后發(fā)送幀尾的CRC校驗(yàn)值完成后,狀態(tài)機(jī)回到閑置狀態(tài),;對于ARP回復(fù)請求,,在確保無發(fā)送數(shù)據(jù)請求的前提下,跳轉(zhuǎn)發(fā)送ARP回復(fù)幀,。發(fā)送數(shù)據(jù)請求的優(yōu)先級高于ARP回復(fù)請求,。以太網(wǎng)發(fā)送核流程如圖5所示。
2.1.2 主協(xié)議引擎核設(shè)計
主協(xié)議引擎核分為主協(xié)議接收引擎核與主協(xié)議發(fā)送引擎核兩個子核,兩個子核的對外接口操作同為對FIFO端口操作,,且兩個模塊間沒有數(shù)據(jù)交互,,保證數(shù)據(jù)傳輸?shù)倪壿嬓浴?/p>
2.1.2.1 主協(xié)議接收引擎核設(shè)計
主協(xié)議接收引擎核主要完成判斷以太網(wǎng)FIFO是否接收到數(shù)據(jù)并將數(shù)據(jù)從以太網(wǎng)通信核的接收FIFO中讀出等功能。由于主控系統(tǒng)雙冗余,,以太網(wǎng)總線同一時刻只有一路在線,,因此總線為閑置狀態(tài)時,主協(xié)議接收引擎核檢測兩個以太網(wǎng)接收FIFO是否為空,;若某一接收FIFO不為空,,則表明該路接收到數(shù)據(jù),狀態(tài)機(jī)跳轉(zhuǎn),,并從該路接收FIFO中讀取數(shù)據(jù);主協(xié)議接收引擎核完成一幀數(shù)據(jù)讀取后,,則跳轉(zhuǎn)到CRC計算,,若CRC計算通過時,置標(biāo)志CrcChecked為1,,
否則為0,;主協(xié)議接收引擎核將數(shù)據(jù)寫入子功能核FIFO中,狀態(tài)機(jī)跳轉(zhuǎn)至閑置狀態(tài),。主協(xié)議接收引擎核的狀態(tài)圖如圖6所示,。系統(tǒng)通信采用特定幀格式,包含2字節(jié)幀頭,,1字節(jié)命令類型,,1字節(jié)收發(fā)指示,1字節(jié)錯誤次數(shù),,對應(yīng)長度的數(shù)據(jù)內(nèi)容,,2字節(jié)Crc校驗(yàn)值,2字節(jié)幀尾,,如表1所示,。
2.1.2.2 主協(xié)議發(fā)送引擎核設(shè)計
設(shè)計時,將整個主協(xié)議發(fā)送引擎核分為三個狀態(tài)機(jī),。第一個狀態(tài)機(jī)的功能是從對應(yīng)的子功能核中讀出需要上報的數(shù)據(jù),,采用輪詢指針的方式,掃描子功能核1到子功能核N中FIFO是否為空,;如某一子功能核FIFO不為空,,則將數(shù)據(jù)讀出至發(fā)送引擎核的寄存器組中,然后等待第三個狀態(tài)機(jī)完成發(fā)送,,發(fā)送完成后,,則掃描下一個子功能核的FIFO;若該子功能核的FIFO為空,,則掃描下一子功能核,;完成輪詢后,,第一個狀態(tài)機(jī)跳轉(zhuǎn)回掃描子功能核1。第二個狀態(tài)機(jī)的功能為CRC校驗(yàn)值計算,,當(dāng)檢測到第一個狀態(tài)機(jī)已完成FIFO讀取,,該狀態(tài)機(jī)離開閑置狀態(tài),跳轉(zhuǎn)至計算對應(yīng)數(shù)據(jù)幀的CRC值,;計算完成后等待第三個狀態(tài)機(jī)完成數(shù)據(jù)幀發(fā)送,并跳轉(zhuǎn)至閑置狀態(tài),。第三個狀態(tài)機(jī)為數(shù)據(jù)打包發(fā)送,當(dāng)檢測到第二個狀態(tài)機(jī)已完成CRC校驗(yàn)值計算,,并處于等待狀態(tài),,則第三個狀態(tài)機(jī)離開閑置狀態(tài),將數(shù)據(jù)打包成相應(yīng)幀格式寫入到對應(yīng)的以太網(wǎng)通信核的發(fā)送FIFO中,;完成后第三個狀態(tài)機(jī)回到閑置狀態(tài),。此時,第二,、第三個狀態(tài)機(jī)同時回到閑置狀態(tài),,第一個狀態(tài)機(jī)則繼續(xù)掃描。主協(xié)議發(fā)送引擎核的狀態(tài)圖如圖7所示,。
2.1.3 子功能核設(shè)計
子功能核設(shè)計為兩種架構(gòu),,第一種為帶有收發(fā)FIFO的子功能核,第二種為帶有雙口RAM的子功能核,。第一種架構(gòu)的工作模式為檢測接收FIFO是否不為空,,若不為空則跳轉(zhuǎn)讀出數(shù)據(jù),完成后跳轉(zhuǎn)一周期執(zhí)行,,再跳轉(zhuǎn)到將數(shù)據(jù)寫入本模塊發(fā)送FIFO,;第二種架構(gòu)的工作模式與第一組相似,其判斷條件為Received信號為1時,,開始接收執(zhí)行功能流程,。開關(guān)反饋核、開關(guān)控制核,、緊急控制核,、信息存儲核及時間同步核采用第一種架構(gòu)設(shè)計,模擬信號采集核采用第二種架構(gòu)設(shè)計,,如圖8所示,。
2.2 輔助健康管理系統(tǒng)設(shè)計
輔助健康管理系統(tǒng)(Assist Health Management,AHM)功能為監(jiān)測主控系統(tǒng)的實(shí)時工作狀態(tài)并將信息打包上傳至上位機(jī)進(jìn)行處理,。AHM系統(tǒng)中使用集成ARM硬核的FPGA處理器完成系統(tǒng)管理,,搭建CoreGPIO軟核實(shí)現(xiàn)溫度采集、主控系統(tǒng)配置狀態(tài)檢測功能,搭建CoreSPI軟核實(shí)現(xiàn)供電電壓采集,,SIP控制系統(tǒng)生命周期信息記錄功能,,搭建CoreUART實(shí)現(xiàn)主控系統(tǒng)心跳檢測,獲取主控系統(tǒng)軟件版本功能,。
輔助健康管理系統(tǒng)的工作流程為:上電后首先初始化,,由于FPGA芯片為Flash架構(gòu),初始化時間快于主控系統(tǒng),,初始化完成后將SIP控制系統(tǒng)上次的工作狀態(tài)信息從FRAM中讀出,,檢查主控系統(tǒng)的FPGA的配置狀態(tài),掃描主控系統(tǒng)的FPGA工作電壓采集模塊是否采集完成,,若采集完成則讀取主控系統(tǒng)溫度傳感器溫度值,,掃描主控系統(tǒng)心跳包,將SIP模塊數(shù)據(jù)更新存入FRAM中,,完成一次工作循環(huán),,返回到檢測FPGA配置狀態(tài)。上報數(shù)據(jù)是通過CAN模塊中斷,,當(dāng)有上報需求時,將對應(yīng)數(shù)據(jù)打包上報,。輔助健康管理系統(tǒng)的工作流程圖如圖9所示,。
3 綜合及布線
主控系統(tǒng)使用Xilinx公司的Vivado開發(fā)環(huán)境進(jìn)行設(shè)計,使用Verilog HDL完成系統(tǒng)開發(fā),,對系統(tǒng)進(jìn)行綜合,,生成的主控系統(tǒng)邏輯層次圖如圖10所示。左上角為兩路以太網(wǎng)通信核EthernetMacCore_Unit1和EthernetMacCore_Unit2,,右上角為主協(xié)議引擎核的發(fā)送與接收模塊,,前綴都為MainCommander,左下角為開關(guān)控制核,,右下角則為其他子功能核,。
輔助健康管理系統(tǒng)采用Microsemi公司的Libreo Soc開發(fā)環(huán)境進(jìn)行設(shè)計,使用Verilog HDL完成系統(tǒng)開發(fā),,對系統(tǒng)進(jìn)行綜合,,RTL圖如圖11所示。
4 仿真及測試
4.1 仿真實(shí)驗(yàn)
使用Verilog HDL完成各功能核設(shè)計后,,通過編寫TestBench完成各功能核的邏輯正確性測試及仿真,,以下是電氣控制組合SIP控制系統(tǒng)主要IP核的仿真試驗(yàn)情況。
4.1.1 以太網(wǎng)核仿真
對以太網(wǎng)核進(jìn)行仿真時,,模擬一幀以太網(wǎng)數(shù)據(jù)接收,,在接收的同時將數(shù)據(jù)寫入緩存RAM中;接收完成后,進(jìn)行CRC32校驗(yàn),;校驗(yàn)通過后,,進(jìn)行端口號以及IP號等匹配,并將數(shù)據(jù)從緩存RAM中讀出,,然后寫入以太網(wǎng)接收核的FIFO中,。仿真結(jié)果如圖12、圖13所示,,滿足要求,。
4.1.2 主協(xié)議引擎核仿真
分別對主協(xié)議引擎核中的接收引擎子核和發(fā)送引擎子核進(jìn)行數(shù)據(jù)流控制仿真,測試工作流程是否與圖6及圖7相符,,仿真結(jié)果如圖14和圖15所示,,滿足要求。
4.1.3 子功能核仿真
子功能核仿真時,,選取帶FIFO的開關(guān)控制核進(jìn)行仿真,。在接收完數(shù)據(jù)后,Control_Enable信號為1,,驅(qū)動開關(guān)信號進(jìn)程,,一個時鐘后,將發(fā)送數(shù)據(jù)寫入發(fā)送FIFO中,,仿真結(jié)果如圖16所示,,滿足要求。
4.2 性能測試
在Xilinx的Artix7系列的FPGA芯片平臺及MicroSemi SmartFusion2系列SOC芯片平臺上分別對主控系統(tǒng)及輔助健康管理系統(tǒng)設(shè)計在進(jìn)行了驗(yàn)證,,功能滿足設(shè)計要求,。將SIP控制系統(tǒng)封裝成模塊(如圖17所示),并在某型號上面級電氣控制組合進(jìn)行性能測試,,試驗(yàn)環(huán)境如圖18所示,。在PC運(yùn)行測試上位機(jī)軟件模擬上面級計算機(jī)進(jìn)行性能測試,運(yùn)行WireShark軟件進(jìn)行抓包測試,。測試結(jié)果如圖19~圖21所示,,其中圖19為上位機(jī)控制界面,圖20為使用WireShark捕捉的通信建立時發(fā)送ARP幀,,圖21為PC在通信建立前后MAC表的變化,,圖22為WireShark捕捉到的正常通信數(shù)據(jù)。測試結(jié)果表明設(shè)計滿足要求,。
5 結(jié)論
本文開展了基于SIP理念的箭上上面級電氣控制組合設(shè)計與實(shí)現(xiàn)方法研究,,并著重介紹了電氣控制組合內(nèi)部SIP控制系統(tǒng)設(shè)計與實(shí)現(xiàn)方法。簡要介紹了電負(fù)載管理中心的原理,,詳細(xì)介紹了其SIP控制系統(tǒng)架構(gòu)設(shè)計及重要IP核設(shè)計,,在Xilinx及Microsemi FPGA芯片平臺上進(jìn)行了驗(yàn)證,,并應(yīng)用于某型商業(yè)火箭上面級綜合電子系統(tǒng)。該方法在很小的體積內(nèi)實(shí)現(xiàn)了電氣控制組合主控系統(tǒng),、輔助健康管理系統(tǒng),,并實(shí)現(xiàn)雙冗余光纖以太網(wǎng)通信,較傳統(tǒng)實(shí)現(xiàn)方法在體積,、重量,、性能、通信速率及成本等方面均有較大優(yōu)勢,,具有較好的推廣價值,。
參考文獻(xiàn)
[1] HU X,LIANG Q.Research on digital simulation of satellite integrated electronic system[C].IEEE International Conference on Control & Automation.IEEE,,2014.
[2] 陸玉芳,,黃敏,陳春海,,等.微波隔離固態(tài)繼電器及其運(yùn)行方法:中國,,CN106067802A[P].2016-11-02.
[3] 孫兆偉,邢雷,,徐國棟,,等.基于可重構(gòu)技術(shù)的上面級航天器綜合電子系統(tǒng)[J].光學(xué)精密工程,2012,,20(2):296-304.
[4] 朱源,,韓峰,楊超.運(yùn)載火箭上面級供配電一體化設(shè)計[J].現(xiàn)代防御技術(shù),,2017,45(6).
[5] Xilinx Corporation.UltraFast design methodology guide for the vivado design suite[Z].2017.
[6] Xilinx Corporation.7 Series FPGAs GTP transceivers user guide[Z].2017.
[7] Microsemi Corporation.IGLOO2 and SmartFusion2 SoC FPGA datasheet[Z].2017.
[8] Microsemi Corporation.SmartFusion2 SoC FPGA product brief[Z].2017.
作者信息:
陸玉芳1,,2,,莊奕琪1,吳旋輝2
(1.西安電子科技大學(xué) 微電子學(xué)院,,陜西 西安710071,;2.桂林航天電子有限公司,廣西 桂林541002)