摘 要: 應用MC8051軟核處理器,,在FPGA上設計實現了基于軟核的輻射計的科學數據采集,,并通過1553B總線將數據傳送到地面接收的采集系統。該方案在Xilinx公司FPGA芯片XC2V3000上得到了驗證,,滿足航天星載微波輻射計多通道高分辨率的要求,。
關鍵詞: 微波輻射計,;數據采集系統;現場可編程邏輯門陣列;片上可編程系統;軟核處理器
微波輻射計是一種高靈敏度的接收機,其對科學數據和溫度等輔助數據的采集精度和速度都要求較高,。片上可編程系統的高效性和靈活性可以充分滿足微波輻射計的高分辨率、高采樣率的多通道快速數據采集要求,,提高了輻射計數據采集和控制的效率,。
1 系統結構
所述多通道高分辨率輻射計采集系統共16個輸入通道,Ch1~Ch16為16路采集通道輸入,,采集模擬電平范圍為-10 V~10 V,。其系統結構框圖如圖1所示,由多路選通AD轉換電路,、FPGA電路和通信電路3個部分組成,,多路選通AD轉換電路部分由多路選通芯片ADG506ATQ和AD轉換芯片AD976A組成。通道采集電信號由ADG-506ATQ選擇需要采集的電信號輸出到AD轉換芯片進行轉換,,這樣只需要使用1片AD芯片即可分時采集16個通道的信號,,大大節(jié)省了AD的芯片數,,降低了硬件的成本和復雜度,。AD976A是ADI公司生產的模數轉換器,具有功耗低,、速度快,、精度高等特點,采集精度達到16 bit,。單通道最高采樣速率達200 kS/s,,16 bit的分辨率,最大積分非線性誤差僅為2 LSB,,并可做到16 bit不失碼,,在輸入電壓為-10 V~10 V的條件下達到的采集精度為0.003 V,高靈敏度的星載微波輻射計需要的采集精度為±3 mV,,采用該芯片有效地保證了采集的精度,。
1.1 MC8051 IP核的結構
嵌入式片上可編程系統SoPC包括硬核處理器和軟核處理器兩種類型[1],本星載輻射計多通道高分辨率數據采集系統采用的處理器屬于軟核處理器,。
MC8051 IP核頂層結構圖如圖2所示,,核心由定時器/計數器、ALU,、串行接口和控制單元各模塊組成,。ROM 和RAM 模塊不包括于核心內,,處于設計的頂層,方便不同的應用設計及仿真,。
圖3為綜合后時序報告的一部分,,給出了Mc8051_core的時序??梢钥吹?,雖然設計中處理器以12 MHz的時鐘頻率運行,但其最大路徑延時僅為3.359 ns,,所以處理器軟核在此芯片中理論上最高可達到297.681 MHz的頻率,。
1.2 數據采集系統電路實現
1.2.1 FPGA部分電路設計
FPGA電路部分由兩個8051軟核、RAM和FIFO組成,。其中第一個軟核處理器負責分時選擇16路通道的數據并控制AD轉換芯片轉換成數字信號,,按順序存儲到FIFO中,供第二個8051軟核處理器讀取,。第二個軟核處理器則負責將存儲到FIFO的采集數據按照一定的數據格式形成數據包,,通過BU65170控制的1553B總線下傳給地面接收站供后期使用和處理。1553B是目前通用的星上設備通信總線,,通過該總線進行通信保證了數據的可靠傳輸,。
1.2.2 多通道AD轉換電路設計
多通道選擇AD轉換電路如圖4所示。電路的供電為±12 V兩路,,輸入通道信號為±10 V的電壓,,經ADG506選通一路輸入到AD976,由8051核處理器給一個轉換脈沖啟動AD轉換,,轉換結束后AD976的數據線即輸出轉換后的數字信號,,再由8051核處理器讀取,存儲到FPGA內部的FIFO里[2],。
1.2.3 1553B通信接口設計
1553B通信接口的實現選用了DDC′s ACE/Mini-ACE系列的BU-65170芯片,。該芯片在FPGA和MIL-STD-1553B總線之間提供了完整、靈活的接口,,完整的BC/RT/MT多協議,、存儲器管理和中斷邏輯,4K×16字(每字16 bit)的靜態(tài)分配內存作為到處理器總線的接口,。本文選用的是BU-65170的遠程終端模式(RT)[3],。
Bu-65170可選擇在12 MHz和16 MHz兩種時鐘頻率下工作,集成了編碼/解碼器,,雙收發(fā)器和協議處理器,,數據按一定的協議經編碼/解碼器處理,通過雙收發(fā)器A/B 來完成與1553B總線間的數據傳遞,,數據的傳輸速度最大可達1 Mb/s[4],。
2 數據采集系統軟件設計
軟件采用匯編語言開發(fā),,使用MedWin平臺。選擇匯編語言的原因是:它可以直接對寄存器進行操作,,與自定義的51軟核處理器可以進行更好的配合,。另外,匯編語言的每一條命令執(zhí)行時間可以準確判斷,,這使其可以更好地滿足設計中對于精確時間控制的要求,。指令執(zhí)行時間為1~4個時鐘周期,如果采用12 MHz頻率的時鐘,,一個時鐘周期為83 ns左右,。兩個8051核處理器之間有一個握手的過程,其中采集8051軟核處理器會給出一個通知讀取數據包的中斷信號,,通知通信的8051軟核處理器讀取FIFO的采集數據包,。采集軟核處理器程序流程圖如圖5所示,FPGA程序流程圖如圖6所示,。
采用最通用Modelsim進行仿真,。圖7為FIFO數據讀寫仿真結果。兩幅圖中自上至下的信號依次為輸入數據,、輸出數據,、空標識、滿標識,、半滿標識,、讀時鐘、讀使能,、寫時鐘,、寫使能。圖7(a)為向FIFO寫數據的過程,,讀時鐘不變,空標識在有數據輸入之后變?yōu)?lsquo;0’,。圖7(b)為從FIFO讀數據的過程,,在半滿標識有效后,通信模塊處理器開始輸出讀時鐘讀出數據,。從圖中可以看到寫入和讀出的數據相符,。
3 數據采集系統仿真與調試
圖8是對BU-65170芯片寄存器區(qū)寫入初始化參數的一部分。圖中S_SELECT信號為片選信號,,strbd為數據有效信號,,最后一組信號為寫入數據。由于持續(xù)為寫狀態(tài),,所以RD信號保持不變,。
結果表明,,FPGA各模塊工作正常,符合設計要求,。
本文結合航天應用的星載微波輻射計工程實現的要求,,討論了基于微波輻射計的多通道、高分辨率數據采集系統的原理,,并采用現場可編程門陣列(FPGA)和片上可編程系統SoPC的8051軟核處理器實現了該數據采集系統的硬件設計和FPGA模塊設計,,進行了部分模塊的功能仿真和時序仿真,通過了系統調試仿真驗證,,實現了設計的目的,。
參考文獻
[1] 郭兵,沈艷,,林永宏,,等.SoC技術原理與應用[M].北京:清華大學出版社,2006.
[2] 孫茂華,,鄭震藩,,張升偉,等.風云三號衛(wèi)星微波濕度計數據處理與系統控制的冗余設計方案[J].遙感技術與應用,,2007,,22(2):147-151.
[3] DDC公司.ACE/Mini-ACE series BC/RT/MT advanced communication engine Integrated 1553 terminal user′s guide[Z].2007.
[4] DDC公司.MIL-STD-1553 designer′s guide[Z].1998.