石梅林
摘 要:IP核是具有特定功能的可移植的電子單元,根據(jù)產(chǎn)品交付方式可分為軟核、硬核和固核。IP軟核是用硬件描述語(yǔ)言描述的功能塊,與工藝無(wú)關(guān),可靈活應(yīng)用于電子系統(tǒng)設(shè)計(jì)中。本文開(kāi)發(fā)具有自主知識(shí)產(chǎn)權(quán)的ARINC429總線(xiàn)IP核,可用于429總線(xiàn)通信應(yīng)用場(chǎng)合。本文首先介紹了ARINC429總線(xiàn)及其應(yīng)用,接下來(lái)就主要針對(duì)ARINC429總線(xiàn)IP核設(shè)計(jì)進(jìn)行了介紹,以期可以更好地了解ARINC429總線(xiàn)IP核。
關(guān)鍵詞:IP核 總線(xiàn) 應(yīng)用 設(shè)計(jì)
中圖分類(lèi)號(hào):TP311.52 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2018)09(a)-0007-02
1 ARINC429總線(xiàn)及其應(yīng)用
ARINC429總線(xiàn)是一種廣泛用于航空領(lǐng)域的數(shù)據(jù)傳輸協(xié)議,是一種發(fā)送和接收通道相互獨(dú)立的單工傳輸?shù)淖酝綌?shù)據(jù)總線(xiàn)協(xié)議,采用點(diǎn)對(duì)點(diǎn)通信方式[1]。ARINC429總線(xiàn)由2根帶有差分信號(hào)的雙絞線(xiàn)實(shí)現(xiàn)物理連接,數(shù)據(jù)傳輸速率有低速和高速兩種,低速通信位速率通常使用12.5kb/s,高速通信最常用的速率為100kb/s。429總線(xiàn)編碼方式采用雙極型歸零碼,如圖1所示。
目前國(guó)內(nèi)電子設(shè)計(jì)領(lǐng)域?qū)崿F(xiàn)429通信的常用形式有以下幾種。
(1)處理器+協(xié)議芯片。
(2)處理器+FPGA。
(3)IP核。
其中,通過(guò)IP核的實(shí)現(xiàn)方式基于自帶處理器核的可編程的FPGA,可根據(jù)系統(tǒng)應(yīng)用需求靈活定制相關(guān)功能,可裁剪,可升級(jí)。本文進(jìn)行具有自主知識(shí)產(chǎn)權(quán)的429總線(xiàn)IP核設(shè)計(jì),可有效節(jié)省成本,提高設(shè)計(jì)靈活性
本文采用100kb/s的高速通信設(shè)計(jì),碼元周期為10μs。本文的設(shè)計(jì)中,在FPGA芯片IO口產(chǎn)生TTL電平信號(hào),通過(guò)與429總線(xiàn)驅(qū)動(dòng)器配合使用產(chǎn)生符合429編碼格式的信號(hào)。數(shù)據(jù)字格式如表1所示。
2 ARINC429總線(xiàn)IP核設(shè)計(jì)
本文設(shè)計(jì)了一個(gè)基于FPGA的ARINC429總線(xiàn)IP核,以MicroBlaze軟核處理器為中心,實(shí)現(xiàn)符合429總線(xiàn)協(xié)議的通信功能。
系統(tǒng)功能結(jié)構(gòu)中接收通道和發(fā)送通道分別設(shè)計(jì)為獨(dú)立的IP核,系統(tǒng)中所用通道數(shù)可根據(jù)應(yīng)用需求定制。
2.1 接收模塊設(shè)計(jì)
該IP核的接收模塊主要功能是通過(guò)FPGA端口接收外部的串行數(shù)據(jù),進(jìn)行串并轉(zhuǎn)換供處理器讀取。接收模塊各個(gè)通道相互獨(dú)立。
該模塊工作過(guò)程為:ARINC429數(shù)據(jù)經(jīng)過(guò)轉(zhuǎn)換變?yōu)橐唤MTTL電平的串行數(shù)據(jù)Ain、Bin,數(shù)據(jù)線(xiàn)初始為低電平,數(shù)據(jù)起始檢測(cè)模塊以20倍數(shù)據(jù)傳輸速率對(duì)數(shù)據(jù)進(jìn)行采集,當(dāng)出現(xiàn)連續(xù)5個(gè)Ain高電平或Bin高電平時(shí),產(chǎn)生數(shù)據(jù)起始信號(hào)start,開(kāi)始采集數(shù)據(jù)并將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù),完成32位數(shù)據(jù)采集與轉(zhuǎn)換后進(jìn)行奇偶校驗(yàn),若數(shù)據(jù)正確則存入寄存器中供CPU讀取,否則返回錯(cuò)誤狀態(tài)。本文采用一個(gè)16×32位的FIFO進(jìn)行數(shù)據(jù)緩存,超過(guò)16個(gè)數(shù)據(jù)則溢出,丟棄舊數(shù)據(jù)。
2.2 發(fā)送模塊設(shè)計(jì)
該IP核的發(fā)送模塊主要功能是將需要發(fā)送的32位并行429總線(xiàn)數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的串行格式并進(jìn)行輸出。發(fā)送模塊各個(gè)通道相互獨(dú)立,某一通道的結(jié)構(gòu)框圖如圖2所示。
該模塊的工作過(guò)程為:在數(shù)據(jù)加載信號(hào)load的作用下,將需要發(fā)送的數(shù)據(jù)產(chǎn)生奇偶校驗(yàn)位后存入一個(gè)16×32位的數(shù)據(jù)緩存模塊中,同時(shí)用狀態(tài)信號(hào)empty_s表示數(shù)據(jù)緩存模塊的狀態(tài);當(dāng)數(shù)據(jù)發(fā)送使能信號(hào)en為低電平時(shí),將數(shù)據(jù)依次進(jìn)行并串轉(zhuǎn)換,然后轉(zhuǎn)換為符合相關(guān)標(biāo)準(zhǔn)的串行數(shù)據(jù)TXA、TXB,進(jìn)行數(shù)據(jù)發(fā)送。
2.3 IP核封裝及寄存器設(shè)置
完成IP核的用戶(hù)邏輯設(shè)計(jì)并驗(yàn)證之后,通過(guò)EDK的IPIF把它包裝成一個(gè)具有通用接口、符合總線(xiàn)規(guī)范并能在系統(tǒng)中集成的IP核。IPIF(IP Interface)是EDK為定制IP核推出的IP接口,可生成符合標(biāo)準(zhǔn)的IP接口,用戶(hù)可根據(jù)自己的需要選擇系統(tǒng)總線(xiàn)連接方式和交互的總線(xiàn)信號(hào),EDK工具會(huì)根據(jù)用戶(hù)選擇的系統(tǒng)總線(xiàn)方式實(shí)現(xiàn)相應(yīng)的總線(xiàn)接口邏輯,合成完整的IP核模塊。
3 IP核功能驗(yàn)證
將前文所開(kāi)發(fā)的429總線(xiàn)IP核添加到FPGA的硬件編程文件中,并燒寫(xiě)到FPGA芯片中。然后在SDK開(kāi)發(fā)平臺(tái)中編寫(xiě)功能測(cè)試軟件,分別測(cè)試其接收與發(fā)送功能,其中接收功能測(cè)試時(shí),外接429數(shù)據(jù),在軟件內(nèi)讀取接收數(shù)據(jù)寄存器以驗(yàn)證接收功能。測(cè)試發(fā)送功能時(shí),外接發(fā)送驅(qū)動(dòng)器,并在程序內(nèi)定義發(fā)送數(shù)據(jù),用示波器分別抓取FPGA芯片數(shù)據(jù)輸出管腳和驅(qū)動(dòng)器數(shù)據(jù)輸出管腳的數(shù)據(jù)波形,與發(fā)送數(shù)據(jù)對(duì)比以驗(yàn)證發(fā)送功能。
試驗(yàn)結(jié)果表明,本文所開(kāi)發(fā)的429總線(xiàn)IP核可按照規(guī)定的波特率和數(shù)據(jù)格式進(jìn)行正確的數(shù)據(jù)收發(fā),并進(jìn)行奇偶校驗(yàn)。
參考文獻(xiàn)
[1] 周前柏,馬偉勃.ARINC429通信方式的研究與實(shí)現(xiàn)[J].航空計(jì)算技術(shù),2010(7):121-124.
[2] 付軍立.ARINC429總線(xiàn)接收器極限參數(shù)測(cè)試方法[J].測(cè)試技術(shù)學(xué)報(bào),2017,31(6):519-523.
[3] 索曉杰,王建生,李明,等.ARINC429總線(xiàn)發(fā)送端軟硬件隔離控制技術(shù)研究[J].航空計(jì)算技術(shù),2017,47(5):97-100.
[4] 潘亮,司斌,張從霞,等.基于FPGA的1553B總線(xiàn)曼徹斯特編解碼器設(shè)計(jì)與實(shí)現(xiàn)[J].航空兵器,2018(2):83-88.