屈盼讓,劉衛(wèi)華,孫少華
(中國航空工業(yè)集團公司西安航空計算技術研究所,陜西 西安 710065)
飛機機電系統(tǒng)包含大量的28 V/開和地/開離散量輸入接口,用于采集閥門等開關元件的狀態(tài)。傳統(tǒng)的28 V/開和地/開離散量采集接口通過阻容等分立器件將輸入信號調(diào)理成28 V/地信號,再通過光耦等隔離芯片將其轉(zhuǎn)換為標準的TTL/LVTTL電平信號,輸入到處理器的通用IO上進行采集[1],這種電路均采用的是分離式無源器件,設計簡單,可靠性高,但是單通道離散量采集電路占用PCB板面積較大,功耗較高,重量較重。
近年來,以航空電子高度綜合技術需求為牽引,國內(nèi)相繼開展了離散量采集電路的集成化研究,推出了全國產(chǎn)化多通道離散量采集芯片HKA03201[2,3],并基于HKA03201設計了機載離散量采集電路[4,5]和離散量采集控制器[6],然而基于HKA03201的離散量采集電路主要存在以下兩點劣勢:
1) 離散量采集模式不可在線配置,通過外部電阻的離線配置方式適配成本較高,通用性較低;
2) 離散量采集過程需要處理器參與,CPU參與HKA03201的采集BIT過程,處理器負載較大。
針對以上兩種問題,本文基于國產(chǎn)化離散量采集芯片HKA1223,設計了單通道采集模式可在線配置的高通用化離散量采集電路,并基于FPGA設計了離散量采集控制器,實現(xiàn)了HKA1223的自主采集與BIT,實現(xiàn)了CPU與HKA1223之間解耦控制,減輕了CPU負擔,增強了系統(tǒng)的穩(wěn)定性和可靠性。
本文采用“CPU+FPGA+HKA1223”的方式實現(xiàn)對8通道離散量多模式可在線配置采集,其中,HKA1223控制器基于FPGA實現(xiàn),電路的結構框圖如圖1所示。
圖1 離散量采集電路結構圖
HKA1223的傳統(tǒng)控制方式是將其控制信號直接引入CPU的GPIO上,通過GPIO翻轉(zhuǎn)和延時等待實現(xiàn)芯片的時序控制,然而這種方式因驅(qū)動軟件復雜,移植性差,不能適配多種處理器等問題被詬病。本設計中CPU僅作為數(shù)據(jù)處理單元與FPGA通過并行總線通訊,在上電初始化階段通過寫操作完成HKA1223配置信息下發(fā),并在正常工作階段,通過讀操作周期讀取HKA1223的采集與BIT結果,而不直接參與HKA1223的時序控制,極大的簡化了軟件流程,減輕了處理器負擔,增強了代碼的可移植性。
FPGA與CPU之間通過并行總線通訊,與HKA1223之間通過SPI總線通訊,F(xiàn)PGA內(nèi)部配置有HKA1223控制器,其作為管理與控制中心,依據(jù)CPU下發(fā)的配置信息,通過SPI總線自主在線完成HKA1223的模式配置、周期BIT和周期采集,并將采集結果按址存儲,供CPU周期查詢,實現(xiàn)了CPU與HKA1223解耦,提高了系統(tǒng)可靠性。HKA1223采用模塊化設計,適配于各種型號的可編程邏輯器件,移植性強。同時,F(xiàn)PGA擁有大量的用戶IO,四線制SPI總線占用FPGA的IO數(shù)量較少,在IO數(shù)量緊張的情況下,亦可通過共用SCK、SDI和SDO等信號的并聯(lián)方式進行擴展,可擴展性強。
HKA1223是一款全國產(chǎn)8通道可配置離散量采集芯片,不同于HKA03201的通過外部電阻實現(xiàn)28 V/開和地/開采集模式的離線可配方式,HKA1223可通過寫內(nèi)部配置寄存器實現(xiàn)采集模式和BIT模式以及28 V/開和地/開模式的在線配置,極大的降低了離散量采集電路的適配成本,提高了離散量采集電路的通用化水平。
HKA1223離散量采集控制器基于FPGA實現(xiàn),其結構框圖如圖2所示,具體包含寄存器、控制計數(shù)器和串并轉(zhuǎn)換等3個模塊.
圖2 HKA1223控制器結構框圖
寄存器模塊包含配置寄存器、結果寄存器和測試寄存器。其中,配置寄存器用于存儲CPU下發(fā)的模式配置信息HKA1223_config,位寬為8 bit,分別表示對應通道的采集模式,其中‘1’表示將所對應通道配置為地/開模式,‘0’表示將所對應通道配置為28 V/開模式。結果寄存器位寬為8 bit,分別用于存儲HKA1223正常模式下離散量采集結果,當采集模式為28 V/開時,‘1’表示28 V,‘0’表示開;當采集模式為地/開時,‘1’表示開,‘0’表示地。測試寄存器位寬為8 bit,分別用于存儲HKA1223的BIT結果,‘1’表示該通道故障,‘0’表示該通道正常。
控制計數(shù)器模塊包含一個周期為1 ms的計數(shù)器,并根據(jù)計數(shù)值產(chǎn)生使能信號,控制串并轉(zhuǎn)換模塊發(fā)起與HKA1223的SPI通訊,具體分為以下四種情況:
1) 當計數(shù)值為0.00 ms,產(chǎn)生單脈沖信號,使能串并轉(zhuǎn)換模塊的SPI寫操作,同時生成配置數(shù)據(jù)[1′b1, HKA1223_config],將HKA1223配置成BIT模式;
2) 當計數(shù)值為0.25 ms,產(chǎn)生單脈沖信號,使能串并轉(zhuǎn)換模塊的SPI讀操作,讀取HKA1223的采集結果,并將采集結果與HKA1223_config做異或運算,將運算結果存儲在測試寄存器中;
3) 當計數(shù)值為0.50 ms,產(chǎn)生單脈沖信號,使能串并轉(zhuǎn)換模塊的SPI寫操作,同時生成配置數(shù)據(jù)[1′b0, HKA1223_config],將HKA1223配置成正常模式;
4) 當計數(shù)值為0.75 ms,產(chǎn)生單脈沖信號,使能串并轉(zhuǎn)換模塊的SPI讀操作,讀取HKA1223的采集結果,并將采集結果存儲在結果寄存器中。
串并轉(zhuǎn)換模塊依據(jù)控制計數(shù)器模塊產(chǎn)生的單脈沖使能信號,分時發(fā)起SPI寫操作和SPI讀操作,在SPI寫操作過程中,將9 bit并行配置數(shù)據(jù)轉(zhuǎn)換為SDI串行信號,在SPI讀操作過程中,將SDO串行信號轉(zhuǎn)換為8 bit采集結果。
在ModelSim環(huán)境下編寫測試用例,對設計的正確性進行驗證。圖3展示了控制器依據(jù)配置信息8’hAA,發(fā)起SPI寫操作,將HKA1223配置成BIT模式的過程;圖4展示了控制器發(fā)起SPI讀操作,將串行數(shù)據(jù)SDO轉(zhuǎn)為并行采集結果,并與配置信息8’hAA作異或運算,得到BIT結果,并將結果存儲在測試寄存器的過程。
圖3 將HKA1223配置成BIT模式
圖4 讀取HKA1223的BIT結果
編寫測試用例,模擬HKA1223,并將其輸入引腳設置為8’h55。圖5展示了控制器發(fā)起SPI寫操作,將HKA1223配置成正常采集模式的過程,其中將通道1,3,5,7配置為28 V/開模式,將通道2,4,6,8配置為地/開模式;圖6展示了控制器發(fā)起SPI讀操作,將串行數(shù)據(jù)SDO轉(zhuǎn)為并行結果,并存儲于結果寄存器的過程。
圖5 將HKA1223配置成正常采集模式
圖6 讀取HKA1223的正常采集結果
以上仿真結果表明HKA1223控制器發(fā)起SPI寫操作和SPI讀操作的時序完全符合HKA1223的時序要求,并證明了所述自主控制邏輯的正確性和CPU與HKA1223解耦控制方案的可行性。
本文基于HKA1223全國產(chǎn)化芯片設計了通用化離散量采集電路,采用了“CPU+FPGA+HKA1223”架構,解決了傳統(tǒng)控制方法CPU負載高、軟件移植性差的問題,實現(xiàn)了CPU與HKA1223的解耦控制,提高了離散量采集電路的任務可靠性。并基于FPGA設計了HKA1223控制器,通過設計配置寄存器,實現(xiàn)了離散量采集電路的多模態(tài)在線可配置,并分時完成了HKA1223的BIT和采集,顯著提高了離散量采集電路的通用化水平。該電路靈活性高,可擴展性強,可推廣應用于工業(yè)領域。