一種基于A(yíng)RM的航空總線(xiàn)通訊卡設計與實(shí)現
摘要:介紹了一種基于ARM微處理器的ARINC429航空總線(xiàn)通訊卡的設計方法,以實(shí)現兩發(fā)四收的信息控制。該設計以L(fǎng)PC3250作為嵌入式微處理器,采用DEI106/BD429芯片組構建ARINC429總線(xiàn)通訊系統,為航空電子系統提供了高效可靠的通信平臺。
本文引用地址:http://dyxdggzs.com/article/246279.htmARINC429總線(xiàn)廣泛用于航空電子系統內各設備間大量數據信息的傳輸。傳統的ARINC429通訊卡依賴(lài)通信平臺處理機來(lái)完成控制與處理工作,增加了平臺處理機的負擔,降低了數據傳輸速率,系統可靠性及效率不高。為了解決這一工程難題,本文做了深入研究,結合現有研究成果,致力于設計一種新的通訊卡,提高通信板卡智能化水平,減輕系統通訊負擔,降低協(xié)議通信的控制難度,為航空電子系統構筑一個(gè)可靠高效的ARINC429總線(xiàn)通信平臺。
1 ARINC429通訊卡設計
通訊卡主要完成以下任務(wù):完成兩路ARINC429接收數據的串并轉換;實(shí)現兩路ARINC429發(fā)送數據的并串轉換;支持中斷方式、查詢(xún)方式接收和發(fā)送數據。
根據通訊卡所要完成的功能設計系統整體結構如圖1所示。

目前常用的ARINC429收發(fā)器主要有DEI1016/BD429和HS3282/3182兩種芯片組,本次設計采用DEI1016/BD429構建ARINC429總線(xiàn)通訊系統。DEI1016是美國DDC公司生產(chǎn)的ARINC429總線(xiàn)接口芯片,提供有標準航空串行數據和16bit寬數據總線(xiàn)接口。
DEI1016在發(fā)送時(shí)按協(xié)議完成發(fā)送數據的并-串轉換并發(fā)送;接收時(shí)完成電平轉換并按協(xié)議完成接收數據的串-并轉換;在初始化時(shí)進(jìn)行數據格式、波特率、奇偶校驗等設置。一塊DEI1016芯片可實(shí)現一路ARINC429數據發(fā)送及兩路ARINC429數據接收功能。
1.1 DEI1016的數據發(fā)送與接收
DEI1016的發(fā)送器電路包括一個(gè)發(fā)送緩存器和一個(gè)控制邏輯。發(fā)送緩存器是一個(gè)8*32 bit的FIFO,數據的載入由LD1和LD2兩個(gè)信號控制。LD1有效時(shí)載入第一個(gè)16位,LD2有效時(shí)載入第二個(gè)16位,而且在每個(gè)數據字載入過(guò)程中LD1必須在LD2之前到來(lái)。另外,數據載入時(shí)發(fā)送器是處于禁止狀態(tài)的。而控制邏輯則允許ARM微處理器給發(fā)送器寫(xiě)數據塊,并通過(guò)ARM微處理器使能發(fā)送器,即置ENTX信號有效來(lái)使該數據塊自動(dòng)發(fā)送出去。數據在TTL電平格式下,經(jīng)過(guò)BD429電平轉換然后發(fā)送出去。值得注意的是每8個(gè)數據字間的發(fā)送并不是連續的,而是具有由DEI1016自動(dòng)產(chǎn)生的4個(gè)字時(shí)鐘間隔時(shí)間。
ARINC429信號的接收通過(guò)接收字間隔時(shí)序電路采樣產(chǎn)生一個(gè)數據字。接收采樣頻率是正常數據速率的10倍,以保證不會(huì )出現含混的數據字。采樣得到的數據被存進(jìn)一個(gè)32位的移位寄存器中,并由控制寄存器內容決定是否接收該字。數據字長(cháng)度由控制寄存器的“WLSEL”確定。保持寄存器中的數據以2個(gè)16位字的形式放在數據總線(xiàn)上。數據應及時(shí)讀出,以避免新的數據將原來(lái)的數據覆蓋。讀取數據時(shí),先將接收選擇線(xiàn)SEL拉低,且使能OE讀出低字,再將SEL拉高并使能OE時(shí)讀取高字。
1.2 DEI1016/BD429外圍電路設計
BD429芯片為ARINC429的發(fā)送驅動(dòng)器,與DEI1016配套使用。發(fā)送驅動(dòng)器的作用是將ARINC429協(xié)議芯片送出的TTL邏輯電平轉換為符合ARINC429協(xié)議信號電平要求的信號進(jìn)行發(fā)送。設計應用電路如圖2所示。

該應用電路中的兩個(gè)68 pF的電容很重要,會(huì )影響到ARINC429信號上升和下降的斜率,容值過(guò)大會(huì )使斜率變小,反之容值過(guò)小會(huì )使斜率變大。
在設計中采用DEI1016輸出的429信號作為其輸入信號,輸出數據速率通DEI1016確定,而不采用SYNC、CLOCK和DATA信號相與的方法調整,因此直接把SYNC和CLOCK信號拉高。1MCK由16M晶振經(jīng)CPLD分頻給出,在CPLD邏輯中分頻系數可調,因而數據速率在12.5~100k之間可調。SEL信號直接連至微處理器的最低地址位A0,由地址的變化控制數據讀取時(shí)的高低16位選擇。MR信號控制由阻容復位電路實(shí)現。其余發(fā)送與接收控制信號如OE、LD等均與CPLD相連,由CPLD譯碼控制。
2 DEI1016/BD429與CPLD的接口設計
2.1 DEI1016/BD429與CPLD的接口電路設計
為了靈活實(shí)現ARINC429數據的發(fā)送與接收,采用一片CPLD芯片進(jìn)行控制。在CPLD邏輯中應實(shí)現地址譯碼和時(shí)鐘分頻功能,完成對某路發(fā)送或接收及ARINC429協(xié)議時(shí)鐘的設定;通過(guò)設置ARINC429協(xié)議控制字進(jìn)行自檢;對中斷屏蔽或使能等。CPLD器件采用ALTERA公司的EPM3064A實(shí)現,該芯片具有3.3VI/O特性,可容忍5V,適合應用于5V、3.3V多電壓應用的場(chǎng)合。由于LPC3250為3.3 V I/O特性,而所選用的ARINC 429接口芯片DEI1016為單一5 V供電,所以需要對微處理器與ARINC429數據和地址總線(xiàn)進(jìn)行電壓轉換。這里選用四片SN74LVC4245DBL驅動(dòng)器來(lái)實(shí)現16 bit數據總線(xiàn)和地址總線(xiàn)的電壓轉換。由于地址總線(xiàn)是單向的,即只能由處理器到ARINC429接口芯片,故負責地址總線(xiàn)電壓轉換的兩片SN74LVC4245-DBL芯片DIR引腳可以接死;而負責雙向數據總線(xiàn)電壓轉換的兩片SN74LVC4245-DBL芯片DIR腳則需要通過(guò)CPLD進(jìn)行邏輯控制。
2.2 DEI1016/BD429與CPLD的接口邏輯設計
ARINC429通訊卡片選由LPC3250的CS1和地址BA11~BA4共同控制,即當CS1有效且BA(11 to 4)=“00000000”時(shí)選通,全譯碼,地址空間為E100 0000-E100000F
1)數據發(fā)送邏輯設計
DEI1016是16位數據線(xiàn),所以32位數據字必須分成兩個(gè)16位寫(xiě)入,而控制字只需一次寫(xiě)入即可。以下VHDL代碼實(shí)現了對429數據發(fā)送的控制:
LD_1(0)<=‘0’WHEN WR=‘0’AND A=X“4”ELSE‘1’;--第1片429發(fā)送低字
LD_1(1)<=‘0’WHEN WR=‘0’AND A=X“5”ELSE‘1’;--第1片429發(fā)送高字
LDCW_1<=‘0’WHEN WR=‘0’AND A=X“6”ELSE‘1’;--裝載控制字
數字通信相關(guān)文章:數字通信原理
通信相關(guān)文章:通信原理
晶振相關(guān)文章:晶振原理
評論