1 改裝系統(tǒng)簡介
飛機(jī)航空電子系統(tǒng)的改裝,就是把功能相對(duì)獨(dú)立的子系統(tǒng)逐步走向綜合,例如將雷達(dá)、慣導(dǎo)、GPS和機(jī)載計(jì)算機(jī)聯(lián)合,組成新型航空?qǐng)D導(dǎo)航系統(tǒng)。通俗點(diǎn)講,就是將那些“傻、大、粗、笨”的儀器儀表,集成為“少而精”的智能儀表,減輕飛行員的操作難度。
系列多機(jī)型改裝時(shí)的多功能顯示器,它將原來分散顯示的信息和數(shù)據(jù)集中在一臺(tái)多功能顯示器上。替換掉原來“老死不相往來”的各種導(dǎo)航儀表,不再需要領(lǐng)航員大量記憶枯燥的數(shù)據(jù),減少了儀表種類,節(jié)省了寶貴的空間,極大減輕了領(lǐng)航員工作強(qiáng)度。圖1中除了地圖視頻采用LVDS外,其它儀表通信都采用ARINC429總線。顯然,解決多通道的ARINC429通信成為本次改裝的瓶頸。
傳統(tǒng)的ARINC429通信設(shè)計(jì)中,大多采用HARRIS公司的HS3282或Device Engineering公司的DEI1016。但在此則極不經(jīng)濟(jì),完成多通道429通信,需要多個(gè)芯片和更多的布板空間,功耗也線性增加。
特別地,傳統(tǒng)的多通道的429需要更加多的CPU中斷請(qǐng)求線,需要外部復(fù)雜的邏輯設(shè)計(jì)。TS68C429A則是目前解決多通道429通信最為有效的途徑。和傳統(tǒng)的“兩收一發(fā)”的芯片相比較,它是“八收三發(fā)”,“一片頂四片”。
2 TS68C429A的主要特征
ATMEL公司的TS68C429A是高性能、多通道、低功耗的CMOS型429接口,亦能滿足類似的時(shí)分多路串行數(shù)據(jù)通信。
整個(gè)芯片只需單5V工作電源。它具有8路接收、3路發(fā)送。所有的接收通道和發(fā)送通道都是彼此互獨(dú)立,可同時(shí)并行工作。8個(gè)接收通道之間也是獨(dú)立的并行接收,可以直接連接到ARINC429總線,而不需電平轉(zhuǎn)換。數(shù)據(jù)字長是標(biāo)準(zhǔn)的32-bit,25-bit的并不支持。
主要特征有如下幾點(diǎn):
8個(gè)獨(dú)立的接收通道;3個(gè)獨(dú)立的發(fā)送通道;和所有的TS68K系列的微處理器接口兼容;16-bit數(shù)據(jù)總線;符合ARINC2429接口,歸零制編碼(Return Zero Code);支持所有的ARINC429數(shù)據(jù)傳輸率,最高可達(dá)2.5Mbit/s,傳統(tǒng)的ARINC429芯片的速率只有2種可選;多標(biāo)號(hào)能力,傳統(tǒng)的芯片要么不檢查標(biāo)號(hào),要么就接收一個(gè)指定的標(biāo)號(hào);校驗(yàn)控制(奇校驗(yàn)、偶校驗(yàn)、無校驗(yàn),中斷能力);RX、TX的數(shù)據(jù)率可獨(dú)立編程;每個(gè)發(fā)送通道有8個(gè)信息單元的FIFO;向量式中斷;可組成菊花鏈中斷;所有的寄存器都是可直接尋址的;具有自測試能力;工作頻率為20MHz;低功耗:400mW。
3 硬件設(shè)計(jì)
TS68C429A接收和發(fā)送通道都成倍增加,但畢竟不是通道的簡單疊加,不是傳統(tǒng)接口的線性擴(kuò)展,在相關(guān)器件選型和設(shè)計(jì)中需要仔細(xì)推敲。
3.1 基本硬件接口
基本硬件接口就是和嵌入式CPU的接口電路。根據(jù)ARINC429數(shù)據(jù)特點(diǎn),至少要選16-bk數(shù)據(jù)總線以上的CPU。TS68C429A和所有的TS68K系列的CPU接口兼容,像TS68000、TS68020都可以只需要增加非常簡單的接口邏輯。特別是TS68302完傘可以“無縫連接”。無縫連接就是兩個(gè)復(fù)雜芯片不需要“粘合邏輯”,對(duì)應(yīng)信號(hào)直接相連。
在設(shè)計(jì)基本電路時(shí)需要注意以下幾點(diǎn):
3.1.1 嵌入式CPU選型。
CPU的數(shù)據(jù)總線至少應(yīng)該是16bit的,否則在硬件上要增加字節(jié)轉(zhuǎn)發(fā)電路,設(shè)計(jì)復(fù)雜度上升。如果在中斷響應(yīng)時(shí)想迅速判斷中斷源,CPU存中斷響應(yīng)時(shí)應(yīng)該能夠發(fā)出中斷響應(yīng)(IACK)信號(hào),由TS68C429輸出中斷向量,由CPU回讀后硬件判斷,直接進(jìn)入對(duì)應(yīng)中斷服務(wù)例程,節(jié)省軟件響應(yīng)時(shí)間。除TS68K系列外,符合這個(gè)要求的還有最廣泛使用在PC機(jī)上的X86系列,如Inte180486等。顯然,TS68C429的中斷響應(yīng)機(jī)制,完全類似X86系列中的8259 中斷控制器時(shí)序,可以直接無縫連接。值得指出的是,X86系列的中斷請(qǐng)求是高有效,中斷請(qǐng)求信號(hào)需要反相。
3.1.2 時(shí)鐘
傳統(tǒng)的ARINC429芯片只有一個(gè)時(shí)鐘,人多數(shù)是1MHz,用以控制收發(fā)速率。速率有2種選擇,即速率是時(shí)鐘的十分之一或八十分之一,亦即100K或12.5K。在這里,TS68C429需要2種時(shí)鐘,系統(tǒng)時(shí)鐘和ARINC429收發(fā)時(shí)鐘。系統(tǒng)時(shí)鐘CLKSYS用來控制CPU接口時(shí)序,應(yīng)該和CPU時(shí)鐘相同,在這里直接使用TS68302的輸出時(shí)鐘CLK0。在使用其它型號(hào)的CPU時(shí),CLKSYS可以直接和CPU時(shí)鐘連接在一起。CLK429使用了定時(shí)器輸出TOUT1,用來決定429串行數(shù)據(jù)傳輸速率。存使用其它型號(hào)的CPU時(shí),也可以設(shè)計(jì)一個(gè)獨(dú)立的時(shí)鐘做CLK429。
3.1.3 高、低字節(jié)訪問
處理器對(duì)TS68C429每次訪問都應(yīng)該是16Bit的,除了這里和TS68302的無縫連接,還可以把高字節(jié)選通信號(hào)(/UDS)和低字節(jié)選通信號(hào)(/LDS)一起直接接地。CPU一般足字節(jié)編址的,所以應(yīng)該足A9…A1對(duì)應(yīng)TS68C429的A8…A0。
3.1.4 存儲(chǔ)器周期
無論是讀周期還是寫周期,TS68C429都要用/DTACK應(yīng)答CPU。TS68K系列中的/DTACK,即數(shù)據(jù)傳輸周期應(yīng)答(Data Transfer Acknowledge),本質(zhì)上就是許多CPU的READY信號(hào)。如果使用別的型號(hào)CPU,READY屬于高有效,需要對(duì)/DTACK進(jìn)行反相。
3.2 中斷菊花鏈電路
對(duì)于大多數(shù)應(yīng)用來講,一片TS68C429基本可以滿足多通道429通信要求。當(dāng)要求更多通道時(shí),TS68C429A可以采用菊花鏈的彤式設(shè)計(jì)。
菊花鏈(Daisy Chain)是一種阻塞式級(jí)聯(lián)結(jié)構(gòu),排在前面的優(yōu)先級(jí)高于其后的所有單元。在任一時(shí)刻,高優(yōu)先級(jí)若果發(fā)出中斷,就禁止了比它自身優(yōu)先級(jí)低的中斷。共有U1、U2…Un個(gè)單元,其中U1具有最高優(yōu)先級(jí),Un優(yōu)先級(jí)最低。當(dāng)某一單元需要發(fā)出中斷時(shí),首先要判斷前面是否有高優(yōu)先級(jí)的中斷,即判斷傳遞下來的中斷使能信號(hào)/IEIxx,當(dāng)其為低電平時(shí),可以發(fā)出,當(dāng)其為高電平時(shí)禁止發(fā)出。禁止中斷發(fā)出時(shí),要一直等待到前面中斷響應(yīng)完成后再發(fā)出。最極端的情況就是,某些低優(yōu)先級(jí)的中斷單元永遠(yuǎn)沒有機(jī)會(huì)發(fā)出中斷,設(shè)計(jì)菊花鏈電路時(shí),要綜合平衡各通道的數(shù)據(jù)流量。
4 軟件設(shè)計(jì)
上電復(fù)位后,軟件應(yīng)在正式工作前初始化TS68C429。傳統(tǒng)的芯片只需要要寫一次控制寄存器,但多通道的初始化要復(fù)雜一些。
4.1 寄存器映像
在傳統(tǒng)的ARINC429只有一個(gè)控制寄存器,由于通道少,每個(gè)通道分配專用的選通信號(hào),硬件簡單譯碼即可。在多通道的芯片中,不可能繼續(xù)采用這種辦法。整個(gè)芯片只有一個(gè)總的片選(/CS),然后由地址A8..A0來尋址片內(nèi)寄存器。系統(tǒng)的初始化,本質(zhì)就是正確配置這些寄存器。
8個(gè)接收通道,每個(gè)都有自己的4類專用寄存器區(qū)。
4.1.1 接收控制寄存器(receive control register)
這是一個(gè)可讀可寫的寄存器,它控制本通道的中斷優(yōu)先級(jí)、校驗(yàn)、標(biāo)號(hào)、測試模式以及通道使能等配置。如果有2個(gè)通道的中斷優(yōu)先級(jí)相同,就有一個(gè)永遠(yuǎn)發(fā)不出中斷。如果設(shè)置本通道處于測試模式,則第三發(fā)送通道的數(shù)據(jù)在內(nèi)部回環(huán)到本通道。這個(gè)特征是用來做通道自檢的。
4.1.2 間隙寄存器(gap register)
間隙寄存器是一個(gè)只寫寄存器。寫入值是以CLK429時(shí)鐘周期為單位的計(jì)數(shù)值,實(shí)際是定義了相鄰兩個(gè)429數(shù)據(jù)的最小間隙。在傳統(tǒng)的芯片中,最小間隙是固定的。在這里,必須顯式地設(shè)置這個(gè)寄存器,決不能隱含使用復(fù)位缺省值。
4.1.3 數(shù)據(jù)緩沖區(qū)(message buffer)
數(shù)據(jù)緩沖區(qū)是2個(gè)16bit的只讀寄存器,存放接收到的ARINCA29數(shù)據(jù)。采用中斷接收時(shí),主要就是讀這2個(gè)寄存器。高16bit(most significant word,MSW)存放在低地址,低16bit(least significant word,LSW)存放在高地址。讀數(shù)據(jù)時(shí)先讀MSW,再讀LSW。
4.1.4 標(biāo)號(hào)控制矩陣(label Control matrix)
這是一個(gè)256×1bit的存儲(chǔ)器區(qū)。許多人不理解這個(gè)區(qū)的含義,不會(huì)配置,以致系統(tǒng)不能正確運(yùn)行。眾所周知,ARINC429規(guī)范的低8bit屬于標(biāo)號(hào)區(qū)(label),標(biāo)號(hào)代表了數(shù)據(jù)類型,例如72H代表高度數(shù)據(jù),73H代表角速度等。這樣總計(jì)有256個(gè)標(biāo)號(hào)。標(biāo)號(hào)控制矩陣的某地址設(shè)置為“1”,就允許該通道接收對(duì)應(yīng)標(biāo)號(hào)的數(shù)據(jù),清除為“0”,就禁止該標(biāo)號(hào)的數(shù)據(jù)。硬件復(fù)位之后全部清“0”,也就是禁止接收一切數(shù)據(jù),這就是系統(tǒng)不運(yùn)行的原因。
3個(gè)發(fā)送通道,每個(gè)都有自己的3個(gè)專用寄存器。
4.1.5 頻率寄存器(Frequency Register)
這是一個(gè)只寫的寄存器,寫入值是發(fā)送速率的除數(shù)因子。
發(fā)送速率=CLK429/FR除數(shù)因子
根據(jù)這個(gè)公式,用戶可設(shè)定選擇的速率。傳統(tǒng)的ARINC429沒有這個(gè)功能,只有2種固定的速率。
4.1.6 發(fā)送控制寄存器(Transmitter Control Register)
和接收控制寄存器類似,這是一個(gè)可讀可寫的寄存器,它控制本通道的中斷優(yōu)先級(jí)、校驗(yàn)、是否作為測試模式的發(fā)送、以及通道使能等配置。其中的發(fā)送間隙是控制連續(xù)發(fā)送的兩個(gè)32bit的AKINC429信息之間最小間隙,防止接收方覆蓋溢出。
4.1.7 發(fā)送FIFO
FIFO,即“先進(jìn)先出”(First In First Out),基本元素可以認(rèn)為是2個(gè)16bit的寄存器。軟件必須先寫入MSW,再寫入LSW,這和接收通道順序是一致的。FIFO深度為8個(gè)ARINC429信息。存寫入之前,必須驗(yàn)證FIFO未滿,否則寫入數(shù)據(jù)被丟棄。在FIFO只要滿隊(duì)列的FIFO發(fā)送了一個(gè)元素,此時(shí)FIFO雖然未空,但也未滿,就可以寫入后一個(gè)數(shù)據(jù)。
除了接收通道和發(fā)送通道的專用寄存器,還有兒個(gè)通用的寄存器,如通道狀態(tài)寄存器、中斷屏蔽寄存器,中斷向量基址寄存器等,不再贅述。
4.2 復(fù)位初始化
上電復(fù)位之后,所有寄存器清“0”,各通道處于禁止?fàn)顟B(tài),需要軟件顯式初始化。下面給出接收通道和發(fā)送通道的初始化流程。
4.3 ARINC429數(shù)據(jù)的接收與發(fā)送
系統(tǒng)工作后,初始化的通道就可以接收發(fā)送了。一般的,因?yàn)椴豢深A(yù)測接收數(shù)據(jù)何時(shí)到達(dá),正式工作后接收采用中斷驅(qū)動(dòng),發(fā)送采用查詢,這樣既可以不丟失數(shù)據(jù),又可以掌控發(fā)送節(jié)奏。查詢接收的辦法,一股使崩在系統(tǒng)初期硬件調(diào)試階段。在上篇文章中,介紹了中斷采用環(huán)形接收隊(duì)列,這個(gè)方法非常有效。在此不再贅述環(huán)形隊(duì)列訪問算法。下而給出查詢/中斷收發(fā)流程。
TS68C429集成度高,是改裝原來分散的ARINC429設(shè)備的一種合理有效的選擇。我們已將上述設(shè)計(jì)應(yīng)用在多個(gè)不同種類的航空電子系統(tǒng)中,證明是十分有效的。隨著航空電子系統(tǒng)的更新?lián)Q代,TS68C429的應(yīng)用將更加廣泛。
責(zé)任編輯:gt
-
CMOS
+關(guān)注
關(guān)注
58文章
5721瀏覽量
235575 -
顯示器
+關(guān)注
關(guān)注
21文章
4980瀏覽量
140043 -
接口
+關(guān)注
關(guān)注
33文章
8611瀏覽量
151247
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論