摘 要:在介紹ARINC 429數字信息傳輸規范的基礎上,分別以8031、80C196及DSP(TMS320F206)為核心設計了三種實現ARINC 429通訊的方案,同時對三種系統的特點及適用的通信速率范圍做了詳細說明。
關鍵詞: ARINC429規范 通訊 單片機 數字信號處理器(DSP) 通訊速率
在現代軍、民用飛機上,系統間需要傳輸大量信息。隨著數字技術的發展和微型電子計算機的出現,越來越多的航空電子設備已采用了數字化技術。從而使數字傳輸成為信息傳輸的主要途徑,它既克服了模擬傳輸帶來的成本高、傳輸線多、可靠性差等缺點,又減輕了飛機和設備的重量,提高了信息傳輸的精度。
為了使航空電子設備的技術指標、電器性能、外形和插接件的規范統一,由美國各航空電子設備制造商、定期航班航空公司、飛機制造商以及其它一些國家的航空公司聯合成立了一個航空無線電公司,簡稱ARINC。由這個公司制定的一系列統一的工業標準和規范,稱ARINC 規范。
ARINC 429數字信息傳輸規范(DITS)33為在航空電子設備之間傳輸數字信息制定了航空運輸工業標準。目前,大多數飛機上數字信息的傳輸采用了此標準(本文以下簡稱ARINC 429)。本文在介紹ARINC 429規范的基礎上,討論其硬件電路的實現方法。
1 ARINC 429數字信息傳輸規范簡介
1.1 數據傳輸及雙極歸零碼
ARINC 429數據傳輸是以電脈沖形式發送的,一個電脈沖就是1位。1個數字字(有32位)被分為5段,即:標志段,第1~8位;源目的地識別碼,第9~10位;數據區,第11~28位;符號狀態碼,第29~31位;奇偶校驗位,第32位。一個數字字傳輸1個參數,如速度、溫度等。兩個數字字之間有4位間隔,這個間隔也作為字同步用,跟在這一間隔后面發送的第1位,就表示另一個新的數字字的開始。每個數字字的32位數據是以雙極歸零碼的形式發送出去的,如圖1所示。所謂雙極歸零調制就是指發送出去的脈沖串有三個電平,即高電平,邏輯1(+10V);中電平(0V);低電平,邏輯0(-10V);中電平為發送自身時鐘脈沖。
一般ARINC 429的發送速度有兩種:一種為高速:100kb/s;一種為低速:12~14.5kb/s。通常高速用于軍用飛機上,低速用于民用飛機上。
1.2 接收
接收器輸入端接收到發送來的信息中,將標志碼譯出,以為信號選擇合適的移位寄存器。接收器的輸入端同時監視著第32位奇偶校驗位,以證實傳輸的有效性。一般一傳輸線上連接的接收器不多于20臺。
2 HS-3282—CMOS ARINC總線接口芯片簡介
HS-3282芯片是HARRIS公司為實現ARINC 429通訊而專門開發的一種接口集成芯片,與HS3281(總線驅動器)集成芯片配合使用。該集成芯片可同眾多的微型電子計算機接口,接口簡單、控制靈活、可靠性好,克服了以往用分離元件實現ARINC 429信息傳輸帶來的電路復雜、性能較差等缺點。
HS-3282芯片包含二個獨立的ARINC 429接收器和一個發送器。自身提供的信息傳輸速率為100kb/s或12.5kb/s;如外接時鐘電路,則信息的傳輸速率在0~100kb/s間可調;字長為32或25位;可按時鐘頻率自動產生字間隔;工作電壓為5V。
HS-3282發送器主要由一個先入先出寄存器(以下簡稱FIFO)和定時器組成,其中FIFO用于存儲要傳輸的ARINC 429數字信息,一次只能存8個數字字;定時器用于保證ARINC 429傳輸的速度及每個數字字間以4位時鐘間隔分開。其發送過程為:FIFO首先將其接收到的8個待發送數字字按先進先出的原則,通過并-串轉換后,在時鐘脈沖的作用下,通過移位寄存器發送出去,再由HS-3182總線驅動,實現雙極歸零調制;此8個字間的4位間隔由HS-3282芯片自動產生。當8個字發送完后,FIFO會自動產生一個存儲器空的信號,此時外部命令應控制HS-3282停止發送數據,繼續接收待發送的下8個字,將其讀入到FIFO中,重復上述過程。接收ARINC 429 信息的過程則同上述相反,接收器將接收到的串碼轉換成并碼,放到寄存器中,但不同的是接收器每接收到一個數字字(而不是8個)后,發出一個“收到”信號,等待外部命令對此數據的讀取。
HS-3282集成芯片的管腳如圖2所示。
3 利用HS-3282實現ARINC 429通訊的方案
由圖2可見,其同各種CPU芯片的接口是很方便的。但由于HS-3282的數據總線為16位(B0~B15),且其FIFO在發送完8個數字字后,外部CPU要重新往FIFO寄存器中寫入8個數據,如CPU寫8個32位數據的時間多于4位間隙的話,則不能嚴格保證所有的信息字的間隔,從而使通訊質量下降。為此,對于不同要求的通訊速率而言,應選取不同的CPU芯片組成系統,以滿足ARINC 429 標準。下面以常用的三種CPU芯片為例,介紹其同HS-3282組成ARINC 429 信息發送系統時,各自的特點,以供參考。
3.1 用8031單片機實現ARINC 429數據傳輸
8031系列單片機因其結構簡單,使用方便,價格低廉而受到廣大工程技術人員的青睞。它也是目前最常用的一種CPU芯片,用其開發小型產品具有周期短,造價低,通用性強等優點。但由于該芯片為8位數據總線結構,在同HS-3282(16位數據總線)組成系統時,需要用兩片數據鎖存器將16位數據鎖定后,寫入HS-3282的FIFO寄存器中,其原理如圖3。
因此當HS-3282的FIFO發送完8個數字字后,8031CPU至少要執行以下指令8次:
MOV DTPR, #D373L ;373L地址
MOA A, #DATA1L ;32位數據中低16位數據的低8位 MOV @DPTR, A ;數據鎖存
MOV DTPR, #D373H ;373H地址
MOA A, #DATAH ;32位數據中低16位數據的高8位
MOV @DPTR, A ;數據鎖存
CLR P1.0 ;此脈沖命令HS3282(PL1)
SETB P1.0 ;將低16位數據讀入
MOV DTPR, #D373L;
MOA A, #DATA2L ;32位數據中高16位數據的低8位MOV @DPTR, A;
MOV DTPR, #D373H;
MOA A, #DATA2H ;32位數據中高16位數據的高8位
MOV @DPTR, A;
CLR P1.0
SETB P1.0 ;此脈沖命令HS3282將高16位數據讀入
以上語句為往HS3282中寫入一個數字字,如寫8個數字字則需重復執行8次。以12M的工作晶振為例,執行上述語句大約需要80μs時間。為了滿足ARINC 429數字字間為4位時鐘間隔的要求,則該系統能夠實現的ARINC 429通訊的速率小于:1000/[(80×8)/4]<6.4kb/s。顯然,要實現較高速率的ARINC 429通訊,該系統不適合。
3.2 用80C196單片機實現ARINC 429數據傳輸
同8031相比,80C196單片機自身具有A/D、D/A及高速輸入/輸出口,同時,其地址及數據總線可動態的設置為8位或16位。因此,該芯片同HS-3282構成系統時,數據總線連接簡單,如圖4所示。從而減少了CPU寫入FIFO的指令數。具體80C196執行寫入HS-3282一個數字字(32位)的指令為:
ST DATA1L ,[D373]; 將32位數據中的低16位鎖住
ST CTINL ,[C373]; 此脈沖命令HS3282
ST CTINL ,[C373]; 將低16位數據讀入
ST DATA1H ,[D373]; 將32位數據中的高16位鎖住
ST CTINL ,[C373]; 此脈沖命令HS3282
ST CTINL ,[C373]; 將高16位數據讀入
同樣以12MHz的工作晶振為例,執行上述語句大約需要15μs時間。則該系統能夠實現的ARINC 429通訊的速率:1000/[(15×8)/4]<34kb/s。如提高80C196的晶振頻率(最高達20MHz),則可以進一步提高通訊速率。
3.3 用數字信號處理機器TMS320F206實現ARINC 429數據傳輸
同上述兩種單片機相比,TMS320F206采用了先進的改進型哈佛結構,流水線技術,指令執行速度快,1個機器周期僅為50ns。同時TMS320F206的數據、地址總線(均為16位)分開,片內帶有32K字的閃速存儲器和544個字的RAM。構成最小系統時非常簡單,不需EPROM、RAM、地址數據鎖存器。用其構成ARINC 429數據傳輸系統時的指令同80C196類似,但由于每條指令的執行時間很短,至少為80C196的二十分之一,故可使速度提高20多倍。從而可滿足高速ARINC 429數據傳輸的要求。
由于接收數據是單個進行的,故在滿足發送速率要求的前提下,接收速度不存在問題,這里不做過多介紹。
總之,隨著數字技術和微電子技術的發展及應用,愈來愈多的應用系統和設備將以各種微型計算機為核心,結合各種集成接口芯片實現不同的功能。如何在滿足系統功能要求的前提下,提高系統的性能價格比便成為每個工程技術人員設計系統的關鍵。從本文的三種不同設計方案中可以看到,在不同的功能要求條件下,系統核心器件的選擇存在著差別。
參考文獻
1 ARINC 規范手冊
2 HARRIS HS3282 COMS ARINC BUS Interface Circuit (芯片使用手冊)
3 孫涵芳主編.Intel16位單片機.北京:北京航空航天大學出版社,1998;3
4 張芳蘭等編.TMS 320C2XX 用戶指南.北京:電子工業出版社,1999.6