基于Nios II的MIII總線轉(zhuǎn)換板設(shè)計
引言
機載數(shù)據(jù)總線在飛機上的地位非常重要。機載總線轉(zhuǎn)換板則是為計算機與機載設(shè)備之間的連接提供的硬件基礎(chǔ)。機載設(shè)備通過總線轉(zhuǎn)換板與計算機進行通信以收發(fā)數(shù)據(jù)。因此,用于測試系統(tǒng)的轉(zhuǎn)換板的研制與開發(fā)就成為航電發(fā)展的一個重要部分。本文介紹的MIII總線轉(zhuǎn)換板的主要功能是將機載火控設(shè)備的MIII總線數(shù)據(jù)轉(zhuǎn)換成串口數(shù)據(jù),以方便實現(xiàn)與PC機的通信,這樣,PC機就可讀取機載設(shè)備數(shù)據(jù)或發(fā)送指令以操作總線設(shè)備。
該轉(zhuǎn)換卡采用Top-Down自頂向下的設(shè)計方法,并綜合嵌入式可配置微處理器技術(shù),來對系統(tǒng)進行模塊化設(shè)計。頂層模塊則采用圖形設(shè)計方式,底層模塊由VerilogHDL語言描述,并利用Quartus lI完成仿真及綜合,然后在ALTERA公司的Cyclone II系列EP2C40芯片來實現(xiàn)。此設(shè)計提升了系統(tǒng)的處理速度和穩(wěn)定性。降低了系統(tǒng)的功耗和成本。
1 MIII總線介紹
MIII總線是某型飛機火控電子設(shè)備的專用數(shù)據(jù)通信總線,又稱第三級總線。MIII總線是單向地址、雙向數(shù)據(jù)、半雙工通信總線。
MIII總線的接口邏輯信號與電信號之間的邏輯關(guān)系是:邏輯“1”對應邏輯高電平;邏輯“0”對應邏輯高電平。
MIII總線接口信號線根據(jù)功能可分為三組,即數(shù)據(jù)通信總線、地址通信總線和信號控制總線。其中,數(shù)據(jù)通信總線包括0pKlK2~15pKlK-2;地址通信總線:0pAl~15pAl??偩€的“輸入”表示從MIII總線轉(zhuǎn)換板向某飛機火控設(shè)備輸出數(shù)碼標志,“輸出”則表示從某飛機火控設(shè)備向MIII總線轉(zhuǎn)換板輸入數(shù)碼標志。MIII的A1地址選通主要用于跟蹤地址數(shù)據(jù)與選擇設(shè)備,外部寫選通則用于在從MIII總線轉(zhuǎn)換板向某飛機火控設(shè)備傳輸數(shù)據(jù)和地址時的數(shù)碼跟蹤。外部接收選通則用于在從某飛機火控設(shè)備向MIII總線轉(zhuǎn)換板傳輸數(shù)據(jù)時的數(shù)碼跟蹤。
2 RS422通信協(xié)議
RS422通信協(xié)議標準的全稱為TIA/EIA-422-B串行通信標準。該標準的數(shù)據(jù)傳輸采用差分傳輸方式,也稱作平衡傳輸。由于RS-422標準的接收器采用高輸入阻抗和發(fā)送驅(qū)動器,故比RS232具備更強的驅(qū)動能力,并可支持點對多點的雙向通信。RS-422四線接口由于采用了單獨的發(fā)送和接收通道,因此不必控制數(shù)據(jù)方向,各裝置之間的任何必須的信號交換均可以按軟件(XON/XOFF握手)或硬件方式(一對單獨的雙絞線)來實現(xiàn)。
3 轉(zhuǎn)換板總體設(shè)計
MIII總線轉(zhuǎn)換板的總體結(jié)構(gòu)如圖l所示,由接口電平轉(zhuǎn)換電路、總線接口控制邏輯、雙口存儲器和RS422轉(zhuǎn)換模塊組成。其中總線接口控制單元主要用于地址和數(shù)據(jù)的收發(fā)和寄存,以及接口控制信號和驅(qū)動信號的產(chǎn)生等;雙口存儲器RAM用來存放數(shù)據(jù)和地址,包括MIII總線發(fā)送的數(shù)據(jù)以及PC機發(fā)送到MIII總線上的數(shù)據(jù)和地址;接口電平轉(zhuǎn)換電路由單雙向驅(qū)動電路芯片組成,該電路的作用是提供符合MIII總線要求的驅(qū)動電平信號。
3.1 總線轉(zhuǎn)換設(shè)計邏輯
在總線接口控制單元的設(shè)計開發(fā)中,在嚴格執(zhí)行國軍標對地面設(shè)備的研制規(guī)范等要求下,為了保證系統(tǒng)的可靠性,提高系統(tǒng)的可擴展性和性能,設(shè)計時應采用模塊化設(shè)計方法,并盡可能采用成熟的技術(shù)和器件。
基于上述設(shè)計原則,MIII總線接口板的硬件電路應采用FPGA器件來實現(xiàn)。而采用FPGA實現(xiàn)也具有設(shè)計周期短、成本低、運行速度快、電路性能可靠、擁有集成軟核、方便二次開發(fā)等優(yōu)點。
本接口板的設(shè)計采用自上而下(Top-Down)的設(shè)計技術(shù)路線。設(shè)計從系統(tǒng)的整體出發(fā),應用Ouartus II軟件,并采用結(jié)構(gòu)化描述方式來對設(shè)計對象的功能特性進行分析,然后自上而下逐步將問題細化,再根據(jù)分析的結(jié)果劃分功能模塊,并根據(jù)電路功能出發(fā)使用VerilogHDL語言對各模塊電路進行數(shù)據(jù)流描述,然后利用Quartus II軟件進行各模塊的功能仿真,在確認無誤之后,再連接各模塊進行邏輯綜合及優(yōu)化,最后下載到FPGA芯片。
3.2 RS422轉(zhuǎn)換模塊
此模塊采用SP3490芯片進行RS422通信協(xié)議轉(zhuǎn)換。SP3490芯片Sipex的+3.3V低功率全雙工收發(fā)轉(zhuǎn)換芯片,完全可以滿足各種規(guī)格的RS-485和RS-422串行通信協(xié)議。圖2所示為RS422轉(zhuǎn)換模塊的電路原理圖。
3.3 總線接口控制單元
總線接口控制單元的主要功能是MIII總線地址和數(shù)據(jù)的收發(fā)、轉(zhuǎn)換、寄存以及接口控制信號和驅(qū)動信號的產(chǎn)生等??偩€接口控制單元可以基于FPGA嵌入IP軟核的SOPC系統(tǒng)來實現(xiàn)。SOPC是一種特殊的嵌入式系統(tǒng),它是片上系統(tǒng)(SOC),即由單個芯片完成整個系統(tǒng)的主要邏輯功能,但它不是簡單的SOC,它也是可編程系統(tǒng),因而具有靈活的設(shè)計方式,并可在FPGA中植入軟核處理器。也可以根據(jù)設(shè)計要求,利用相應的EDA工具來對NIOS II及其外圍設(shè)備進行構(gòu)建,以使該嵌入式系統(tǒng)在硬件結(jié)構(gòu)、功能特點、資源占用等方面全面滿足系統(tǒng)的設(shè)計要求。此系統(tǒng)的開發(fā)工具采用Altera公司推出的Quartus II系列軟件。FPGA采用Altera公司生產(chǎn)的Cyclone II系列的EP2C40芯片,此芯片采用TSMC驗證的90nm低K介電質(zhì)工藝制造的成本優(yōu)化架構(gòu),并具有更多的特性和非常大的容量,以及很低的單位邏輯單元成本,故可滿足系統(tǒng)要求。
(1)Nios II處理器
Nios II處理器主要負責解析從RS422串口接收的控制命令,以控制總線轉(zhuǎn)換器,使其按照設(shè)定的工作模式運行;同時,該處理器還實時打包接收到的MIII總線數(shù)據(jù),并通過RS422串口上傳至PC機,實現(xiàn)PC對MIII總線信息的獲取。采用QuartusII軟件SOPC Builder生成的Nios II處理器單元如圖3所示。
具體工作時,當數(shù)據(jù)流向為RS422串口到MIII總線時,NIOSII處理器可將數(shù)據(jù)從RS422串口接收緩沖存儲器中讀出,并輸出至MIII總線發(fā)送緩沖單元中,同時還將數(shù)據(jù)發(fā)送到外部的SRAM中進行存儲;而當數(shù)據(jù)流向為MIII總線到RS422串口時,其方式其之類似,其不同點是由于MIII總線的傳輸速率遠大于串口的傳輸速率,因而要插入相應的等待和協(xié)調(diào)控制信號。
(2)MIII總線收發(fā)
MIII總線收發(fā)功能則獨立于Nios系統(tǒng)。它充分利用FPGA可靈活配置的特點,并用VerilogHDL語言實現(xiàn)MIII總線的實時性和可靠性要求較高的關(guān)鍵部分,然后模擬MIII總線的邏輯功能,最終實現(xiàn)MIII總線數(shù)據(jù)、地址的收發(fā)以及與Nios系統(tǒng)通過自定義的接口實現(xiàn)通訊。MIII總線的信號時序如圖4所示。
該轉(zhuǎn)換板的讀寫時序可用VerilogHDL語言描述,然后采用有限狀態(tài)機實現(xiàn)上述操作,并用Quartus II進行時序仿真,其仿真波形如圖5所示。本文采用的是用時鐘同步輸出信號的Moore型狀態(tài)機,該方式可有效消除狀態(tài)機輸出信號的毛刺。
3.4 接口電平轉(zhuǎn)換電路
由于FPGA可編程器件的輸入/輸出電平通常是3.3 V,而對接MIII總線設(shè)備是OC門輸入/輸出。OC門又稱集電極開路(漏極開路)電路,其內(nèi)部電壓為+5 V。所以,F(xiàn)PGA的輸入/輸出需要進行兩次電壓轉(zhuǎn)換。
其中,第一次電壓轉(zhuǎn)換是把FPGA輸入/輸出電平的3.3 V轉(zhuǎn)換為5 V電平。由于數(shù)據(jù)信號是讀寫雙向的,而地址和控制信號是單向的(由MIII總線發(fā)送到對接MIII總線設(shè)備),因此,其數(shù)據(jù)信號應當用74LS245芯片來進行轉(zhuǎn)換,而地址和控制線則應用74LS244芯片來轉(zhuǎn)換,其電路原理如圖6所示。
由于對接MIII總線設(shè)備內(nèi)部是OC門輸入/輸出,而且由于OC門電路的輸出管的集電極懸空,使用時需外接一個上拉電阻到電源。一般情況下,OC門會使用上拉電阻以輸出高電平,此外,為了加大輸出引腳的驅(qū)動能力,選擇上拉電阻阻值的原則是降低功耗及芯片的灌電流能力應當足夠大,從而確保足夠的驅(qū)動電流足夠小?;诖嗽瓌t,本設(shè)計選擇上拉電阻阻值為680Ω。其具體的電平轉(zhuǎn)換電路原理圖如圖7所示。
FPGA輸入/輸出的信號,經(jīng)過以上兩個步驟的電平轉(zhuǎn)換,就能符合MIII總線對接設(shè)備的輸入/輸出信號要求。至此,只需MIII總線轉(zhuǎn)換板輸入/輸出的地址、數(shù)據(jù)和控制信號按照MIII總線時序進行收發(fā),就可以實現(xiàn)MIII總線通信。
4 結(jié)束語
本文介紹了某型火控電子設(shè)備的專用數(shù)據(jù)通信總線(MIII總線)轉(zhuǎn)換板的設(shè)計方法,給出了MIII總線的總線通信功能。同時介紹了應用F-PGA實現(xiàn)MIII總線部分電路的實現(xiàn)方法。事實上,利用FPGA可簡化系統(tǒng)結(jié)構(gòu),縮短設(shè)計周期,提高系統(tǒng)的性能和可擴展性。目前,該轉(zhuǎn)換板經(jīng)過與某型火控電子設(shè)備聯(lián)調(diào)證明,其功能正常,工作穩(wěn)定,且已得到了用戶好評,收到了良好的社會和經(jīng)濟效益。
評論