趙 君,蔡曉樂,張宇坤,郭建奇
(西安航空計算技術研究所,西安 710065)
星載數傳分系統是遙感衛星中合成孔徑雷達(SAR)的重要組成部分。當衛星在軌運行時,數傳分系統主要針對星上有效載荷捕獲的高分辨率圖像數據完成接收、存儲與傳輸功能[1-2]。針對數傳分系統地面聯試需求,避免價格昂貴的星上有效載荷在地面聯試中頻繁操作降低其壽命,通常使用SAR載荷數據模擬器(SAR數據源)代替星上真實有效載荷進行測試[3]。
文中的SAR數據源針對LVDS接口型數傳分系統進行測試,根據功能對LVDS信號進行分類,一般包括時鐘、門控和數據信號。系統通過時鐘信號的上升沿觸發信號改變,如果門控信號在時鐘上升沿有效,則數據有效,反之數據無效[4]。理想條件下,系統要求門控和數據均在時鐘上升沿跳變,信號接收與發送端均遵循此原則以保證數據的準確性。
但是,在數傳分系統實際工作中,時鐘、門控和數據信號存在相位偏移,主要原因包括邏輯綜合約束,線纜長度不等長、寄生電容分布不均勻、高速信號振鈴效應等,而此類問題只有在整星集成后才能暴露出來。為了縮短數傳分系統正樣機研制周期,降低研制風險,需要SAR數據源與數傳分系統模擬星上實際工況聯試,用于測試數傳分系統數據接收功能的正確性與穩定性。因此要求SAR數據源能夠模擬時鐘、門控與數據信號時序不同步的情況。
SAR數據源可以模擬符合衛星在軌運行時的數據及時序,基于SAR數據源的數傳分系統測試原理如圖1所示。

圖1 SAR數據源測試原理
SAR數據源支持基于PN碼自生成數據與本地加載數據輸出兩種輸出模式,時鐘頻率44.44 MHz,可以設置數據出處正程和逆程。
SAR數據源通道與數傳分系統通信類型為LVDS接口,該通信接口包括CLK、Flag、DATA[15:0]、RESET四類信號,信號功能如下:
1) CLK,是SAR數據源與數傳分系統接收控制器的同步傳輸時鐘信號,時鐘可配置,頻率最高支持44.44MHz;
2) Flag,是決定數據正程與逆程的門控信號;
3) DATA[15:0],是信號數據線,支持I/Q模式配置;
4) RESET,數傳分系統系統復位信號,由SAR模擬發起;
SAR模擬源與數傳分系統接口時序關系如圖2所示。

圖2 SAR模擬源與數傳分系統接口時序關系示意圖
SAR數據源支持多種成像工作模式,主要包括聚束模式、標準條帶模式、寬/窄幅掃描模式、超精細條帶模式、波模式等。
SAR數據源系統基于FPGA構建的核心嵌入式測試模塊,實現了數據模擬與傳輸的基本功能,并支持基于該模塊進行數據源時序拉偏測試。嵌入式測試模塊主要包括:數據處理單元、通訊單元、輸出接口單元三部分,系統硬件架構如圖3所示。

圖3 SAR數據源嵌入式測試模塊原理
1.2.1 數據處理單元設計
數據處理單元是嵌入式測試模塊的核心,該單元通過USB總線接收上位機發送的SAR載荷數據,并將數據按照上位機配置的控制參數完成數據發送,同時,可以將BIT信息反饋至上位機。數據處理單元以FPGA為基礎,采用Virtex-5系列FPGA芯片XC5VLX 330T作為核心控制芯片。同時,設計DDR2內存實現數據緩沖,構成容量達1 Gbit的數據存儲空間,通過FPGA的MMU控制功能,完成數據傳輸的緩沖功能。針對SAR載荷數據存儲需求,數據處理單元采用K4T1G164QF大容量NAND FLASH完成數據存儲,該芯片存儲容量高達1 TB,最高訪問速度可達800 Mbit/s。
1.2.2 通訊單元設計
通訊單元實現嵌入式測試模塊與上位機通訊功能,上位機通過USB總線控制發送SAR數據與控制命令至嵌入式測試模塊,同時嵌入式測試模塊也將系統工作狀態通過USB總線反饋至上位機。本系統采用CY7C68013A專用USB協議芯片實現數據傳輸和邏輯控制,該芯片將USB總線協議集成在專用接口芯片內部,并為用戶提供簡單的訪問接口。采用這種方法的優勢在于設計靈活,USB功能可以在任何控制器上實現,可靠性高,開發周期短,易實現,系統成本低。
1.2.3 輸出接口單元設計
SAR數據源系統具備兩組SAR信號輸出通道,包括:CLK,DATA[15:0]、Flag、RESET;以及兩組DPU信號輸出通道,包括:CLK,DATA、Flag,因此根據需求共需要44路LVDS輸出接口。LVDS接口芯片選用SN65LVDS31[5],該芯片具備4路LVDS接口,符合ANSITIA/EIA-644標準,且輸出典型延時小于500 ps,滿足本系統設計需求。
SAR數據源在每次測試之前,系統應首先進行自檢。自檢功能包括:FPGA健康監測,存儲器BIT,輸出接口BIT等。
FPGA健康監測采用心跳字的方式定時反饋FPGA工作狀態。當FPGA處于正常工作狀態時,以固定時間間隔,按照依次遞增的規律,向主控平臺發送心跳字。主控軟件通過判斷心跳字是否符合要求,判斷FPGA的工作狀態,如有異常,則設備自動報警,顯示故障信息。
存儲器BIT是指在系統開始工作前,按照固定規律,對存儲器每一個地址進行規律數據寫入。然后將數據讀出。如果數據正常,則系統存儲器狀態符合使用要求,否則設備自動報警,顯示故障信息。
輸出接口BIT是針對LVDS輸出接口的發送功能檢測。自檢時,對外輸出LVDS接口與相應的BIT接口(LVDS接收電路)構成回路。發送自檢命令后,通過對外輸出接口發送一組固定的監測數據流,相應的BIT接口將收到的數據反饋回上位機。如果收發數據滿足合格判據,則工作正常。同時,在正常工作時,FPGA對所輸出數據進行監控,并將監控數據狀態周期反饋至上位機,如果發送數據與所設置數據異常,則自動報警,顯示故障信息。
為了滿足時間偏移測試需求,提出調用Xilinx原語IODELAY和IDELAYCTRL方式實現產生納秒級偏移的設計方案,其中IODELAY是輸入/輸出延遲單元,IODELAY可以連接到ILOGIC/ISERDES或OLOGIC/OSERDES模塊,也可同時連接到這兩個模塊。
IODELAY是具有64個tap的環繞延遲單元,具有標定的tap分辨率,64個tap的環繞延遲單元產生的延時為參考時鐘(Frequency used for IDELAYCTRL)的一個周期。
鐘-碼拉偏功能通過基于時鐘偏移的延遲單元設計、正/負向延時輸出設計與正/負方向延時切換設計同時作用完成[6-7]。
SAR數據源輸出時鐘實測結果如圖4所示,藍線為時鐘信號偏移輸出結果,紅線為原始時鐘信號,延時值設定為0 ns。圖4(a)為原始時鐘和偏移時鐘對比結果(t0=8 ns),圖4(b)為原始時鐘和偏移時鐘對比,延時值設定為-8 ns(校正0點);圖4(c)為原始時鐘和偏移時鐘對比(t1=4 ns),延時值設定為12 ns。

圖4 時序拉偏測試結果
SAR數據源中數據處理單元軟件采用Verilog HDL編程語言設計實現,本設計的編程環境是Xilinx公司推出的ISE 14.4。

圖5 嵌入式控制器功能示意圖
圖5中,主控軟件通過通訊接口將SAR數據、DPU數據、輔助指令等控制信息輸入嵌入式控制模塊。FPGA內部需要完成數據傳輸控制,MMU控制,控制LVDS接口進行SAR數據傳輸等工作。同時,FPGA需要完成BIT功能,將系統工作狀態實時反饋給主控軟件。
FPGA與CY7C68013A完成數據交互,首先判斷OUT FIFO空標志是否表示為空,如果不為空,則有數據到來,讀取OUT FIFO中數據。FPGA對讀取的數據進行解析,如果解析結果表示需要上傳數據,則準備好數據,判斷IN FIFO是否為滿,不為滿,表示可以寫入數據,將準備好的數據寫入到IN FIFO中。其中,OUT FIFO與IN FIFO是完成上位機與FPGA通信的數據緩沖區。
圖6為MMU控制的程序狀態機流程圖。該流程圖表示FPGA控制緩沖單元完成數據緩沖的整個控制流程。

圖6 MMU控制的程序狀態機流程圖
圖6中共有8個狀態:IDLE,WR_S,Wr_EN,WrEnd,RD_S,Rd_EN,Get_Data,RdEnd,功能分別為:
1)IDLE:一個初始狀態,復位后進入此狀態;
2)WR_S:寫操作開始狀態,當寫操作標志置位時進入此狀態。將CS拉低,地址寫到地址線上;
3)Wr_EN:把WE信號拉低,將數據寫到數據線上;
4)WrEnd:Wr_EN持續至少12 ns后進入此狀態,將CS信號拉高,將WE信號拉高,跳回IDLE狀態;
5)RD_S:讀操作開始狀態,當讀操作標志置位時進入此狀態。將CS拉低,地址寫到地址線上;
6)Rd_EN:將OE信號拉低;
7)GetData:從數據線上讀取數據;
8)Rd_End:將CS信號拉高,將OE信號拉高,跳回IDLE狀態。
數傳分系統測試中,對SAR數據源數據輸出時序和DPU數據源數據輸出時序有嚴格要求,該時序的實現主要由嵌入式控制器完成。本設計對嵌入式控制器板卡軟件輸出時序進行仿真驗證和實驗測試。圖7為仿真波形,圖8為系統聯試實際測試結果。

圖7 仿真波形
對數據處理單元軟件仿真采用ISIM軟件,圖8中:Clk、Flag、Rest、數據輸出分別指輸出時鐘:44.44 MHz(DPU為50 MHz)、門控信號:低有效、復位信號:低有效(DPU沒有該位)、輸出數據(SAR數據為16 bit;DPU數據為1 bit);時鐘占空比為50%;門控信號、輸出數據在輸出時鐘的上升沿跳變;復位信號中t0>12 500 μs,t1=2 500 μs,t2=215 000 μs。滿足設計要求中:t0>400 ns,t1>500 ns,t2>300 ns的需求。

圖8 嵌入式控制器輸出波形
圖8為采用軟件ChipScope對嵌入式控制器輸出波形實時采集結果,其中:Clk、Flag、Reset、數據輸出分別指輸出時鐘(44.44MHz)、門控信號(低有效)、復位信號(低有效)、輸出數據;時鐘占空比為50%;門控信號、輸出數據在輸出時鐘的上升沿跳變;復位信號中t0=1 000 μs,t1=2 500 μs,t2>15 000 μs。滿足系統測試判據:t0>400 ns,t1>500 ns,t2>300 ns的指標需求。
人機交互軟件主要完成配置星上LVDS接口輸出的數據格式,對各通道參數進行設置,選擇發送模式進行數據發送,其主要功能包括:加載指定測試文件、SAR/DPU模式選擇、設置工作模式參數(直傳/記錄/變速/恒速)、正/逆程設置、文件輸出/PN碼輸出、SAR模式拉偏與配置信息加載、保存等功能。人機交互界面如圖9所示,圖中各標號區域功能如下:

圖9 SAR數據源人機交互界面
1)設備操作區:打開、關閉設備,退出軟件;
2)SAR模式設置區:設置SAR模式輸出模式,有直傳模式、記錄模式可選,變速模式、恒速模式可選,可配置數據率及正程長度;
3)通道設置區:在此區域內可以對實驗通道及DPU模式各參數進行設置;
4)SAR基本設置區:
在此區域內設置SAR通道實驗基本參數;
5)操作區:在此區域內可完成配置加載,開始/停止試驗,信息加載,信息保存等操作;
6)日志顯示區:此區域內顯示操作日志。
針對實際應用中星上載荷與數傳分系統間高速數據交換的時序測試需求,依據測試信號類型進行時序控制分析,提出基于FPGA的SAR數據源設計方法,并采用IODELAY原語設計受控延時單元用于數傳分系統數據傳輸時序測試,降低了數傳分系統測試復雜度,并提高了SAR數據源系統的可擴展性。結果表明,基于校正方法降低SAR數據源內傳輸延時誤差,滿足了針對用戶指標要求的星載數傳分系統的鐘-碼拉偏測試需求,鐘碼拉偏調整范圍達到-8 ns至8 ns,步進1 ns,CLK時鐘頻率最高可以達到120 MHz。