徐進 王強 王錦程
(北京航天長征飛行器研究所 北京市 100076)
隨著飛行器的技術發展,帶來了多樣化的測量需求,包括圖像信息、導航信息、總線信息等多種新的測量需求[1][2],而傳統的測量存儲系統架構是多鏈路測量存儲架構,如圖1 所示。針對每個測量需求,需要不同獨立的采集存儲設備去實現,這種系統架構隨著測量需求類型的增加,必然會帶來設備越來越多,系統越來越龐大和復雜,與測量存儲系統小型化趨勢的沖突勢必越來越嚴重。
本文提出了集中式測量存儲架構,如圖2 所示,不同的測量需求通過采集后,再一起進行集中的合成編幀,最終進行統一的存儲。這種架構所帶來的好處是隨著測量需求的增加,只需要增加采集接口,而關鍵的合成設備和存儲設備可以沿用,系統的適用性更加通用,可快速滿足不同的項目需求。
按照集中式測量存儲架構,測量存儲系統方案如圖3 所示,可以看出對各路采集數據進行統一合成的核心設備是接口控制器,完成各類測量需求數據的接收組幀工作,組幀后形成一路數據送至存儲器進行存儲。

圖1:多鏈路測量存儲架構
接口控制器采用模塊化設計思想,組成框圖如圖4 所示,由電源模塊、服務器模塊、LVDS 模塊和422 接口模塊等四個模塊組成,其中服務器模塊完成測試接口的轉換、與外系統通信和存儲器狀態字接收功能;422 接口模塊完成測量需求2 的接收工作;LVDS 接口模塊完成測量需求1、測量需求3 和測量需求4 的接收工作,并與422 數據進行組幀,發送給存儲器。各個功能模塊相對獨立,當系統需求變化時,只需要更換模塊來滿足系統的測量需求,不需要對整個系統架構進行大的變化。
為適應飛行器存儲測量需求多樣化的發展趨勢,采用集中式的測量存儲架構,只需對外部采集接口進行相應更改就能滿足系統需求,而在單機的設計中采用模塊化設計思想,能夠將系統的更改快速分配到某一單個模塊的更改,實現能夠快速重構的存儲測量系統。
傳統數據存儲系統中,數據通過并行總線傳輸給數據存儲裝置,數據線和數據線未進行數據同步,因此只能夠提供小于150MB/s 的數據帶寬;此外,由于存儲芯片本身的限制,導致存儲容量的增加的同時數據存儲的誤碼率亦急劇上升,無法滿足對測量存儲系統提出的需求。本文提出基于高速串行總線的大容量數據實時存儲系統,通過高速串行總線、ECC 校驗、讀寫流水線及數據重對齊等先進技術的應用,實現了2.4Gbps 帶寬的數據傳輸和存儲,系統實現框圖如圖5 所示。
接口控制器和存儲器之間通過高速串行總線實現數據的交互,總線包括4 對差分LVDS 數據和1 對隨路差分LVDS 時鐘,可以實現2.4Gbps 帶寬的信息穩定可靠傳輸,其工作流程如下所示:
(1)接口控制器實現總線的發送控制。數據發送時,接口控制器從有效數據中提取4 字節,聯合1 字節總線控制信息,對40位并行比特流進行串化操作,得到4 路串行數據流,例如當發送32位數據為“0x12345678”的時候,添加控制信息“0xC0”(表明當前為數據字),得到40 位數據為“0xC012345678”,將該數據串化后得到4 路比特流,每路10bit,即第一路為40 位數據的0~9 位,第二路為10~19 位,依次類推;在串化得到數據的同時,鎖相環回路產生一路時鐘信號,保證接收端實現數據的同步讀取。
(2)存儲器用于實現總線的接收控制。數據接收時,存儲器接收高速總線發送的4 路LVDS 差分數據和1 路LVDS 隨路差分時鐘,通過隨路時鐘將4 路數據進行解串,得到40 位并行數據進行存儲,單通道解串操作時序如圖6 所示;得到40 位并行數據后(包含8 位控制數據和32 位存儲數據),通過FIFO 方式進行變位寬處理,每得到128 位數據后,將變位寬后的數據在FLASH 陣列控制器的控制作用下同時寫入16 片FLASH 中。
實時存儲系統利用ECC 編碼技術進行數據存儲的實時糾錯[3]。存儲器對FLASH 進行寫操作前,首先對數據進行ECC 編碼,編碼規則采用Hamming 碼,Hamming 碼生成器將每512 個字節有效數據產生3 個字節的ECC 糾錯碼,并將ECC 糾錯碼保存到FLASH用戶空閑區中,流程如圖7 所示。存儲器對FLASH 進行讀操作時,需要同時讀取ECC 糾錯碼,并對讀取的數據進行ECC 編碼操作,得到的結果與保存在FLASH 中的ECC 糾錯碼進行比對,根據ECC 糾錯碼糾正數據中的比特翻轉。
為了實現高速總線的可靠傳輸,需要對4 路LVDS 差分數據進行同步處理,實時存儲系統通過插入延遲操作實現總線數據的重對齊,從而滿足數據的同步要求??偩€數據接收時,如果來自4 路LVDS 差分數據的不同步時,向信號超前的通道插入延遲位,以圖8 為例,總線串化因子為4,當某通道輸入數據RX_IN 超前于其他通道數據一個時鐘時,產生DATA_ALIGN 延遲位插入指示信號,即在DATA_ALIGN 的上升沿在接收的RX_IN 中插入延遲位X,得到輸出數據為RX_OUT,從而實現了超前通道與其他通道的同步,保證了數據傳輸的正確性。

圖2:集中式測量存儲架構

圖3:集中式架構的存儲測量方案

圖4:接口控制器組成框圖
基于高速串行總線的大容量數據實時存儲系統突破了數據高速可靠傳輸技術,解決了大容量存儲誤碼率提高的問題,實現了測量存儲系統數據的大容量高速率實時可靠存儲。
本文提出的集中式存儲測量架構和單機模塊化設計方法,解決了目前存儲測量系統的測量需求多樣化帶來的問題,能夠將系統的更改快速分配到某一單個模塊的更改,實現具備快速重構能力的存儲測量系統平臺。采用的基于高速串行總線的實時存儲技術,通過4 路串行低壓差分傳輸對實現2.4Gbps 的數據傳輸,采用的數據同步技術和ECC 糾錯算法保障了傳輸和存儲的可靠性,實現了高速、穩定可靠的設備間數據傳輸。

圖5:基于高速串行總線的大容量實時存儲系統組成原理框圖

圖6:單通道數據解串操作示意圖

圖7:ECC 糾錯碼生成流程示意圖

圖8:串行總線同步流程示意圖
基于集中式架構的高速率大容量測量存儲系統經過搭建和調試,實現了多個傳統測量存儲系統的功能,并具有良好的擴展性。在后續多個項目實施過程中,針對測量需求的變化,能夠快速進行更改適應新的需求,為推進飛行器研發提供了重要的保障。