信息處理機(圖1)用于完成導彈上多路遙測信息的采集、處理、組包發(fā)送。主要功能包括高速1553B總線(xiàn)的數據收發(fā) 、422接口設備的數據加載與檢測、多路數據融合和數據接收、處理、組包發(fā)送的功能。其中,總線(xiàn)數據和其他422接口送來(lái)的數據同時(shí)進(jìn)行并行處理;各路輸入信息按預定格式進(jìn)行融合與輸出;數據輸出速率以高速同步422口的幀同步脈沖為源,如果高速同步422口異常不影響總線(xiàn)數據和其它422口的數據融合與輸出功能。在CPU發(fā)生異;蚩偩(xiàn)數據異常時(shí)不影響其它422口數據的融合與輸出功能;能夠對從總線(xiàn)上接收的數據進(jìn)行二次篩選、組包,并發(fā)送往總線(xiàn),供其它設備接收。 圖1 信息處理機功能框圖彈上功能框圖 CPU選擇 4M 1553B總線(xiàn)數據的采集,由4M總線(xiàn)智能通訊接口管理,經(jīng)CPU接收、組包,再回到4M總線(xiàn),發(fā)送至FPGA進(jìn)行采集。CPU選擇Atmel公司的AT91FR40162S, 內部自帶256KB的SRAM和容量為2M x 8b FLASH存儲器,主頻最高可達75MHz。該ARM的等待電路由硬件等待邏輯產(chǎn)生,在FPGA內部實(shí)現。ARM外部中斷源主要有:4M 1553B通訊控制器中斷;20ms緩沖區切換中斷。其中,4M 1553B通訊控制器中斷信號經(jīng)過(guò)FPGA整形后送入ARM。20ms緩沖區切換中斷提供給FPGA內部各個(gè)同步、異步通訊IP組幀狀態(tài)機用于緩沖區切換。 3路輸入數字量接口 3路輸入數字量,碼速率分別為:1.28Mbps、115.2Kbps、38.4Kbps的數據流,數據流在FPGA內部經(jīng)過(guò)串并轉換將接收的數據存儲在數據緩沖區A和數據緩沖區B中,再經(jīng)過(guò)狀態(tài)控制機來(lái)控制數據的不斷更新。 同步422接口輸出 采用兩路單向RS422同步串行通訊接口,差分傳輸,一路為串行數據,一路為時(shí)鐘數據 ,采用雙線(xiàn)制傳輸。輸出碼速率2.56Mbps,15位加擾。 FPGA設計 當3 路輸入數字量的數據流和4M的1553數據在20ms的時(shí)間內傳輸時(shí),所需的內存約為10KB。 緩沖區存儲切換有2種方式: 1)當1.28M的同步串行接口接收的數據個(gè)數達到64x100時(shí)切換; 2)由內部的20ms定時(shí)器切換。 因此當ARM異常后,能夠確保除4M總線(xiàn)數據之外的其它通道正常輸出。當1.28M的同步串行接口異常后,FPGA內的狀態(tài)機自動(dòng)切換到內部的20ms定時(shí)器進(jìn)行切換。FPGA設計及IP核通過(guò)SPARTAN3AN集成開(kāi)發(fā)環(huán)境進(jìn)行仿真驗證。 FPGA選用Xilinx公司的SPARTAN3AN系列的XC3S700AN-4FG484,電壓1.2~3.3V,電流50mA~2A,主頻最高達70MHz以上。 地面單元測試儀的設計 單元測試儀(圖2)主要完成對信息處理機各種功能和參數的測試,模擬產(chǎn)生彈上機的所有輸入信號,并測試其所有輸出信號,可用于信息處理機的生產(chǎn)調試、出廠(chǎng)測試和外廠(chǎng)維修。 單元測試儀由便攜式工控機內插相應PCI板卡和相應軟件程序組成,PCI板卡為1塊COM通訊測試板卡,其主要實(shí)現和彈上高速內總線(xiàn)4Mbps(或以上)1553B總線(xiàn)接口,在軟件的控制下,向彈上發(fā)送各種測試命令、并接收彈上機的測試結果。 圖2 地面單元測試儀框圖 信息處理機的系統工作流程見(jiàn)圖3,具體包括: (1)上電復位及初始化 上電后,FPGA和ARM同時(shí)復位,進(jìn)行初始化過(guò)程,其中FPGA初始化中, FPGA內部寄存器和邏輯狀態(tài)的初始值、內部緩沖區數據清零依靠復位信號來(lái)完成,其中的“FPGA參數設定”由監控程序負責執行或由FPGA使用缺省參數完成。 如果上電或復位時(shí)出現問(wèn)題,FPGA使用缺省參數自動(dòng)初始化所有參數并自動(dòng)進(jìn)行后續工作。 (2)20ms緩沖區切換信號同步 完成初始化后,FPGA內部的“20ms緩沖區切換信號”生成邏輯,自動(dòng)執行和“1.28M同步輸入串口”的同步過(guò)程,同步過(guò)程中不向外發(fā)送任何數據,一旦同步后,會(huì )給出同步鎖定信號Sync Locked=“1”,所有通道的數據采集工作均開(kāi)始,進(jìn)入遙測信息接收過(guò)程。 (3)遙測信息接收 通道的數據采集都以FPGA內部產(chǎn)生的“20ms緩沖區切換信號SwitchBuf”為20ms周期標志進(jìn)行緩沖區的切換(雙端口),分別為A,B兩個(gè)緩沖區。 1.28M通道在20ms內應完成32x100=3200 Bytes的數據接收。并根據字計數器反轉當前的SwitchBuf信號。 4M 1553B通道應由ARM完成4M 1553B總線(xiàn)遙測數據的接收、過(guò)濾、打包,形成20ms內約1500 Bytes的遙測數據包填入分配給它的包緩沖區,由FPGA自動(dòng)生成對應的包長(cháng)度信息放入一個(gè)包長(cháng)度FIFO中。此后,ARM重新開(kāi)始下一20ms數據接收工作,,如此反復循環(huán)下去。組幀狀態(tài)機(MFSTM)在組幀過(guò)程中,一旦發(fā)現包長(cháng)度FIFO不空,就從包緩沖區FIFO中讀取對應長(cháng)度的數據包,按照規定格式和位置填入數據融合表。 圖3 信息處理機工作流程 115.2K異步串行輸入通道由FPGA的UART IP核完成串行輸入數據的接收.緩沖區由一個(gè)FIFO組成。組幀狀態(tài)機會(huì )隨時(shí)查詢(xún)該FIFO空滿(mǎn)狀態(tài),若不空,則就開(kāi)始連續的讀取過(guò)程,每間隔200μs從FIFO中讀取一個(gè)數據并按照規定格式和位置填入數據融合表,直到該FIFO的數據取完為止,若為空,則新幀對應通道的位置數據填零。 (4)組幀 組幀工作即遙測數據的數據融合,將各路遙測信息按照給定的數據融合格式組織成一個(gè)完整的100幀(1幀200us,100幀20ms)格式進(jìn)行發(fā)送,該功能由設計在FPGA內部“組幀狀態(tài)機(MFSTM)IP”完成。 (5)數據融合表 上電復位后,組幀狀態(tài)機MFSTM等待同步鎖定信號Sync Locked=“1”后開(kāi)始工作,并根據20ms緩沖區切換信號SwitchBuf進(jìn)行周期性的切換。按照數據融合表設計好的順序依次訪(fǎng)問(wèn)1.28M同步輸入串口緩沖區、4M 1553B總線(xiàn)數據緩沖區、115.2K異步輸入串口緩沖區、38.4K異步輸入串口緩沖區等等,并讀取指定數量的數據依次填入本次20ms的數據融合表中,重復100次,從而完成表中1~100行數據的填寫(xiě)。數據融合表的數據結構設計成FIFO, 使用FIFO可以平衡快速的組幀狀態(tài)機和慢速的發(fā)送狀態(tài)機之間的速度差異,使發(fā)送的數據流保持在2.56Mbps的波特率之下,持續發(fā)送。 (6)發(fā)送 數據融合表的發(fā)送則由“發(fā)送狀態(tài)機(SendSTM) IP”完成。它以數據融合表FIFO、2.56M發(fā)送時(shí)鐘為輸入,一旦啟動(dòng)就不再停止。發(fā)送狀態(tài)機首先查詢(xún)數據融合表FIFO, 若FIFO為空,則等待;若FIFO不空,則以2.56M/8的固定時(shí)鐘頻率持續讀取數據融合表FIFO的數據,再送入“15段加擾器”進(jìn)行加擾,加擾后的數據和時(shí)鐘經(jīng)RS-422驅動(dòng)電路轉化為RS-422差分形式發(fā)送給加密器,即2.56M輸出。 (7)1.28M同步輸入串口故障檢測 FPGA中的故障檢測單元(FDU)負責檢測1.28M同步輸入串口的輸入信號是否正常。當故障檢測單元FDU發(fā)現1.28M同步輸入串口產(chǎn)生的SwitchBuf信號的周期和晶振產(chǎn)生的20ms時(shí)鐘周期誤差超過(guò)△T(如±2ms),則認為1.28M同步輸入串口故障,立即將SwitchBuf信號切換到由晶振分頻產(chǎn)生的20ms時(shí)鐘上。 系統仿真 以下為相關(guān)軟件對系統主要功能進(jìn)行的仿真: 圖4 ISE編譯后得出的FPGA資源利用情況 圖5 數據融合表的仿真結果 數據融合表的結構為100行,64列,第1-32列為高速同步接口數據,第33-50列為總線(xiàn)數據,第51、52列分別為115.2K、38.4K接口數據,還有少量模擬量數據、全幀計數、同步碼組等。 圖6 數據融合表輸入及輸出的對比 圖7 2.56M發(fā)送數據 用FPGA代替常規處理器實(shí)現多路數據的采集、融合并實(shí)時(shí)發(fā)送,利用FPGA豐富的可編程邏輯資源和內部存儲器進(jìn)行邏輯設計,大大減少了外圍元器件種類(lèi)和數量,提高了系統的處理和I/O帶寬。 同時(shí),FPGA在航天領(lǐng)域的應用也推動(dòng)了可編程技術(shù)的發(fā)展。 |