在航空電子綜合化系統中,快速、有效的數據傳輸對整個航空電子系統的性能有很大影響,因此數據總線被稱為現代航空電子系統的“骨架”。ARINC429是航空電子系統之間最常用的通信總線之一。要在計算機上實現與機載設備的ARINC429總線數據通信,必須實現429總線與計算機總線之間的數據傳輸。本文設計了基于USB總線的便攜式ARINC429總線通信設備,并通過實際運行測試,對該設備的可靠性和穩定性進行了驗證。 1 系統總體設計 1.1 系統功能分析 該系統主要分為3大功能單元:中央控制單元、429數據收發單元、429電平轉換單元。系統的功能結構框圖如圖1所示。中央控制單元與PC機進行USB通信,將USB總線轉換為自定義總線,并根據PC機發來的任務指令,通過自定義總線(數據線、地址線、控制線)控制429數據收發單元完成相應的429總線數據收發任務。 1.2 主要器件選擇 1.2.1 中央控制單元 中央控制單元負責與PC機進行USB通信,并控制429數據收發單元完成通信工作。該單元采用SiliconLabs公司推出的C8051F340單片機。它是完全集成的混合信號SoC級MCU芯片,片內集成有1個采樣率為200ksps的10位ADC、1個可編程增益放大器、2個電壓比較器、1個電壓基準、1個具有5個捕捉/比較模塊的可編程計數器/定時器陣列(PCA)、5個通用的16位定時器、40個通用數字I/O端口,以及1個片上64 KB的Flash存儲器和4 KB的RAM,支持多種總線通信接口(I2C/SMBus、SPI、UART、USB)。C8051F340的最大指令處理速度為48 MIPS,具有片內VDD監視器、WDT和時鐘振蕩器,能有效地管理模擬和數字外設。 C8051F340最大的優勢是在片內集成了一個USB總線控制器,與USB2.0完全兼容,支持低速和全速兩種模式。這樣,在硬件上只需一片C8051F340就能與PC機直接進行USB通信,無需外加USB接口芯片。 1.2.2 429數據收發單元 目前市面上的429通信專用芯片(如HS-3282、DEI1016、HI-8585)只能實現1路發送或接收,要滿足本設計需求就需要8組429通信專用芯片(共計16片)。無論從成本上,還是從設計本身的可行性、可靠性來考慮,都是難以實現的。本文采用Actel公司的ProASIC3型FPGA,將設備的核心部分——429通信協議模塊在FPGA中實現。這樣使整體設計更加簡潔,充分體現了模塊化設計和SoC設計思想,同時大大降低了設計成本。 Actel公司的ProASIC3型F=PGA采用獨一無二的Flash架構。與基于SRAM架構的FPGA不同,它掉電后數據不易失,無需配置芯片,從而實現了真正意義上的單芯片設計思想。同時,它支持FlashLock、AES加密技術,安全性強;最高支持350 MHz單端翻轉率和700 MHz的差分信號;支持19種I/O電平標準。 2 硬件設計 2.1 C8051F340接口設計 C8051F340作為設備的中央控制單元,其外圍接口主要分為兩部分:與PC機的USB通信接口和與ProASIC3的自定義總線接口。C8051F340的外圍接口電路如圖2所示。 由于C8051F340片內集成了一個USB總線控制器,因此它與上位機的USB通信直接通過D+和D-兩個差分信號引腳完成的,接口非常簡單。C8051F340與ProASIC3之間的通信通過C8051F340的8位數據線、16位地址線,以及讀(RD)、寫(WR)、復位(RESET)3個控制信號來完成。 C8051F340與ProASIC3均采用USB總線供電,C8051F340采用3.3 V供電,而ProASIC3采用3.3 V和1.5 V供電。由于USB總線提供的是5 V電源,因此在本設計中采用了美國NS公司的電源穩壓芯片LMlll7。該芯片根據電壓輸出的不同分為不同的型號,這里選用了1.5 V和3.3 V兩種型號。 2.2 429電平轉換電路設計 2.2.1 429發送通道電平轉換電路 429發送通道電平轉換電路的功能是將ProASIC3產生的CMOS電平信號轉換為429電平信號。目前有幾家公司專門從事429通信芯片的生產,其中也包括429發送通道電平轉換芯片。采用這種專用芯片的優點是接口電路設計簡單,缺點是芯片價格昂貴。本設計的需求為8路發送通道,從成本上考慮,不易采用專用芯片,而是利用集成運放設計發送通道的電平轉換電路。圖3為429發送通道電平轉換電路。圖中的A和B是由ProASIC3產生的信號,TXA和TXB是經電平轉換電路調理后形成的ARINC429信號。 表1為429發送通道電平轉換電路的功能表: 該電路設計采用了Linear公司的雙運放集成芯片LT1497。該芯片的最大特點為輸出功率大,最大輸出電流為±125 mA,完全滿足ARINC429通信標準的功率要求。采用NI公司的Multisim10進行電路仿真,并實際運行測試。測試表明,仿真結果與實際運行結果一致,完全符合ARINC429通信標準要求。 2.2.2 429接收通道電平轉換電路 429接收通道電平轉換電路的功能與429發送通道電平轉換電路的功能完全相反,它是將429電平信號轉換為CMOS電平信號,以便讓ProASIC3對其進行處理。接收通道的電平轉換采用HOLT公司的HI-8448實現。HI-8448為8路429接收芯片,可負責8路429接收通道的電平轉換。 3 軟件設計 系統軟件程序主要由ProASIC3內核、C8051F340固件程序和上位機控制界面程序3部分組成。 3.1 ProASIC3內核設計 ProASIC3內核開發是在Actel公司提供的LiberoIDE 8.5集成開發環境下完成的。該環境集成了目前業界最權威的幾大FPGA開發軟件,其中綜合工具采用了Synplify公司的Synthesis 9.6A工具,仿真工具采用MentorGraphic公司的Modelsim *A軟件。整個設計采用Verilog語言編程。ProASIC3內核的總體框架設計如圖4所示。ProASIC3內核設計包括收發控制器、發送FIFO、接收FIFO、發送邏輯轉換模塊、接收邏輯轉換模塊、時鐘發生器模塊。收發控制器負責與C8051F340進行總線通信,協調ProASIC3內部各個模塊之間的工作;發送FIFO用于緩存待發送的429數據;接收FIFO用于緩存待讀取的429數據;發送邏輯轉換模塊是將發送FIFO送來的并行數據組合為429串行數據,然后通過端口TXA、TXB發送出去;接收邏輯轉換模塊是將收到的429串行數據轉換為并行數據,然后通過8位數據線傳給接收FIFO;時鐘發生器是用于產生各個模塊所需的工作時鐘。 3.2 C8051F340固件程序設計 C8051F340固件程序的開發是在Silicon Labs公司的C8051Fxxx IDE集成開發環境下完成的,采用C語言編程。Silicon Labs公司專為USB開發推出了USBXpress工具,USBXpress將單片機固件程序和上位機應用程序所需的USB設備驅動函數進行了封裝,開發人員只需調用相關函數即可。圖5為C8051F340固件程序的流程。其中,USB_clock_Start()、USB_Init()、USB_Int_Enable()均由USBXpress工具提供,可直接調用。 3.3 上位機控制界面程序 上位機控制界面程序的開發在VC 6.0環境下完成。作為人機交互界面,其基本功能有:對設備進行復位;與設備進行USB通信;設置429通信的波特率、校驗方式、數據長度;設置數據發送方式(手動或定時);設置定時發送時間;顯示接收數據。 在上位機控制界面程序中,與設備間的USB通信是通過調用USBXpress工具提供的API函數完成的。USBXpress工具提供了10個API函數,其中最重要的就是SI_Write()和SI_Read()兩個函數,它們分別實現寫USB總線操作和讀USB總線操作。 4 結 論 目前,該設備已投入某型機載設備的地面內場檢測維護工作中。本文利用Silicon Labs公司的C8051F340單片機和Actel公司的ProASIC3系列FPGA設計的基于USB的便攜式ARINC429總線通信設備,在地面內場檢測維護工作中,工作狀態穩定,性能可靠,很好地滿足了預先的設計要求。 |