www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]本設(shè)計采用了ALTERA公司的FPGA芯片EP2C5Q208和CYPRESS公司的USB協(xié)議處理芯片CY7C68013以及外圍的調(diào)制解調(diào)電路,實現(xiàn)了4路收發(fā)的429總線數(shù)據(jù)傳輸接口,并完成了與上位計算機的通信。該系統(tǒng)大部分功能都是在同一FPGA芯片內(nèi)部實現(xiàn)的,發(fā)揮了FPGA的優(yōu)勢,提高了系統(tǒng)的穩(wěn)定性、集成度,并增強了抗干擾能力。利用FPGA的可重配置性,可以實現(xiàn)更多路ARINC429信號的接收與發(fā)送,可以大大降低重量、體積及成本,這在機載航空總線數(shù)據(jù)處理中具有較大的實用價值。

引言

ARINC429總線廣泛應(yīng)用于商務(wù)運輸航空領(lǐng)域,如空中客車A310/A320、A330/A340飛機,波音公司727、737、747、757和767飛機,麥道公司MD-11飛機等。它采用異步雙極性歸零碼進行數(shù)據(jù)的編碼,并通過雙絞線傳輸,具有很強的抗干擾性能。目前市場上的ARINC429總線接口設(shè)計一般都采用專用接口芯片,如Device Engineering公司的DEI-1016,INTERSIL公司的HS-3282等,這些專用芯片價格昂貴,且路數(shù)有限,使用非常不靈活。本設(shè)計將ALTERA公司的FPGA芯片應(yīng)用于ARINC429標準數(shù)據(jù)傳輸,并完成了與計算機USB接口的通信,有效縮小了系統(tǒng)體積并降低了成本,同時也增加了系統(tǒng)配置的靈活度。

ARINC429總線數(shù)據(jù)

ARINC429數(shù)據(jù)總線協(xié)議規(guī)定一個數(shù)據(jù)字由32位組成,以脈沖形式發(fā)送,采用雙極性歸零碼,碼速率為12.5kb/s或100kb/s。電氣特性為:高電平(+10V)為邏輯1;低電平(-10V)為邏輯0;0電平(0V)發(fā)送自身時鐘脈沖,字與字之間以一定間隔(不少于4位)分開,以此間隔作為字同步。一個32位的數(shù)據(jù)字由五部分組成:標志位(LABEL),用于標識傳輸數(shù)據(jù)的信息類型;源/目的標識碼(S/D),用于判斷在一個多系統(tǒng)中的源系統(tǒng);數(shù)據(jù)區(qū)(DATA);符號/狀態(tài)位(SSM),用于標識數(shù)據(jù)字的特征或數(shù)據(jù)發(fā)生器的狀態(tài);奇偶校驗位(PARITY),ARINC429數(shù)字信息傳輸使用奇校驗。

FPGA內(nèi)部邏輯設(shè)計

根據(jù)ARINC429總線協(xié)議,要完成數(shù)據(jù)的收發(fā)以及對USB總線接口的邏輯控制, FPGA 芯片應(yīng)完成的邏輯功能框圖如圖1所示,其中虛線框中是FPGA實現(xiàn)的部分。

發(fā)送器

發(fā)送器結(jié)構(gòu)如圖2所示,由緩沖存儲器、信號發(fā)生器和發(fā)送控制邏輯三部分構(gòu)成,用于將來自總線接口通信模塊的32位429格式數(shù)據(jù)轉(zhuǎn)換成調(diào)制前的兩路串行數(shù)據(jù),即圖2中TTL0和TTL1。其中使用緩存是為了提高數(shù)據(jù)傳輸速度,用戶向緩存寫進想要發(fā)送的多個32位數(shù)據(jù)字后,就可以通過entx信號控制數(shù)據(jù)從緩存連續(xù)不斷地讀出,并經(jīng)過信號發(fā)生器轉(zhuǎn)換成串行數(shù)據(jù)后送給總線驅(qū)動電路。在這里,緩存是直接調(diào)用ALTERA提供的LPM_FIFO+宏功能模塊來實現(xiàn)的。

信號發(fā)生器由位計數(shù)器、字間隔計數(shù)器、碼元調(diào)制、移位寄存器以及相應(yīng)的控制邏輯組成,結(jié)構(gòu)如圖3所示。其中,位數(shù)計數(shù)器用來控制429數(shù)字字的位數(shù),字間隔計數(shù)器用于產(chǎn)生字間隔。在本設(shè)計中,采用狀態(tài)機來實現(xiàn)信號發(fā)生器的功能,共分3個狀態(tài):

a)IDLE:初始狀態(tài),當復(fù)位或是發(fā)送完一個32位數(shù)后進入該狀態(tài),在該狀態(tài)完成字間隔的產(chǎn)生,并用移位寄存器的load信號來鎖存待轉(zhuǎn)換數(shù)據(jù),并在至少四位字間隔后進入TRANS狀態(tài),否則等到直到有新數(shù)據(jù)載入。

b)TRANS:進行數(shù)據(jù)的并串轉(zhuǎn)換,同時進行奇偶校驗,即每產(chǎn)生一位串行數(shù)據(jù)就進行一次異或運算,并由位數(shù)計數(shù)器控制計到31時就進入PARITY狀態(tài)。

c)PARITY:輸出奇偶校驗位并回到IDLE狀態(tài)。

碼元調(diào)制是在信號busy的有效區(qū)間內(nèi),將串行輸出數(shù)據(jù)serial_data與時鐘做邏輯運算得到的TTL0和TTL1(如圖4)送至外部調(diào)制電路,并轉(zhuǎn)換為429總線規(guī)范要求的雙極性歸零信號。其verilog語言描述如下:

always @(busy,clk_tx,serial_data)

begin

if (busy)

begin

TTL1<=serial_data&clk_tx;

TTL0<=~serial_data&clk_tx;

end

else begin

TTL1<=0;

TTL0<=0;

end

end

endmodule

發(fā)送控制邏輯用于協(xié)調(diào)緩存和信號發(fā)生器之間的數(shù)據(jù)傳遞。在緩存非空、busy無效(信號發(fā)生器狀態(tài)機處于TRANS狀態(tài)下busy有效)的條件下,一旦允許轉(zhuǎn)換信號entx有效,便開啟緩存的讀使能rden,并產(chǎn)生轉(zhuǎn)換數(shù)據(jù)的裝載信號load,以完成緩存數(shù)據(jù)的自動轉(zhuǎn)換和發(fā)送。

接收器

雙極性的ARINC429 信號通過解調(diào)電路轉(zhuǎn)換為兩路TTL 信號,TTL1和TTL0。后經(jīng)接收器轉(zhuǎn)換成32位并行數(shù)據(jù)供主機讀取。接收器結(jié)構(gòu)如圖5所示。為使數(shù)據(jù)接收具有一定的抗干擾能力,本設(shè)計采用一個16倍于碼速率的高速時鐘對數(shù)據(jù)進行檢測。同步字頭檢測模塊對高速時鐘進行計數(shù),當計數(shù)值計滿64(對應(yīng)4位字間隔),即產(chǎn)生一個位接收允許信號rec_en,該信號啟動位檢測模塊。位檢測模塊對TTL0和TTL1信號進行監(jiān)控,一旦兩路串行數(shù)據(jù)中任一路為高,則標志有效數(shù)據(jù)開始發(fā)送。位檢測模塊對每一位數(shù)據(jù)進行三次檢測,在碼元的前半周期檢測兩次,后半周期檢測一次,只有這三次檢測都符合429信號標準才能被視為有效數(shù)據(jù),否則報錯并自動丟棄。字檢測模塊將正確檢出的位轉(zhuǎn)換為并行數(shù)據(jù)并做奇偶校驗和SDI校驗,校驗正確后數(shù)據(jù)被鎖存,并產(chǎn)生接收完成信號rec_done向主機發(fā)出中斷請求。

時鐘發(fā)生器

時鐘發(fā)生器對外部晶振(本設(shè)計采用的是12.8MHz的時鐘頻率)分頻產(chǎn)生100kHz和12.5kHz高低速率兩個發(fā)送時鐘,以及16倍于發(fā)送時鐘頻率的接收時鐘,高低速率可通過控制寄存器中相應(yīng)位來選擇。在本設(shè)計中遵循同步設(shè)計原則,不是將分頻時鐘直接當時鐘用,而是采用了時鐘使能的方法,將分頻時鐘作為觸發(fā)器的使能控制。本設(shè)計的關(guān)鍵部分都采用了狀態(tài)機的方式,將分頻時鐘用做狀態(tài)機狀態(tài)間相互轉(zhuǎn)換的先決條件,從而實現(xiàn)了在整個設(shè)計中只有一個全局時鐘,避免了時鐘“滿天飛”的問題。

USB總線接口通信模塊

USB接口控制邏輯完成以下任務(wù):通過對USB協(xié)議處理芯片本地端的地址譯碼完成429總線接口的各種操作,如配置控制寄存器、寫數(shù)據(jù)發(fā)送緩存以及讀接收數(shù)據(jù)等。當主機要發(fā)送數(shù)據(jù)時,接口通信模塊將收到的8位數(shù)據(jù)按照429數(shù)字字的編碼格式組裝成32位數(shù)據(jù),并產(chǎn)生控制信號。將組裝好的32位數(shù)據(jù)寫入發(fā)送器的緩存中,之后根據(jù)總線譯碼,產(chǎn)生自動發(fā)送控制信號,通知發(fā)送器進行自動轉(zhuǎn)換和發(fā)送。同樣地,當接收完一個32位數(shù)據(jù)時,將這個32位數(shù)拆分成4個8位寄存器供主機讀取,它們中的一個對應(yīng)標志位(LABEL),另外有兩個對應(yīng)數(shù)據(jù)區(qū)(DATA),最后一個包含了數(shù)據(jù)字中剩余部分的信息。

仿真與驗證

本設(shè)計采用ModelSim SE 6.1b,對經(jīng)過quartus6.0綜合布局布線后的設(shè)計進行時序仿真驗證。圖6和圖7分別為發(fā)送模塊和接收模塊在ModelSim中的時序仿真圖。

圖6中data為要發(fā)送的并行32位ARINC429數(shù)據(jù)0x5a5a5a5a,mclk為全局時鐘信號,clk_tx和clk_tx_en分別是發(fā)送時鐘(占空比為50%)和同頻的發(fā)送時鐘使能信號,aout、bout即上文中發(fā)送器的輸出TTL1、TTL0,busy表示正在進行轉(zhuǎn)換。圖7中mclk為全局時鐘信號,ckl_rx_en是接收時鐘使能信號,_429ain、_429bin為接收器的輸入TTL1、TTL0,dout為收到的ARINC429數(shù)據(jù)0x75555555,以并行32位數(shù)據(jù)格式存入寄存器中,rec_done為接收完一個429數(shù)據(jù)發(fā)出的中斷信號。由時序仿真結(jié)果可以看出,F(xiàn)PGA可以正確實現(xiàn)ARINC429數(shù)據(jù)的發(fā)送和接收。

在后期板級調(diào)試中,將自制板卡與現(xiàn)在市場上出售的429總線接口卡進行對接通信的方法來驗證,證明了本設(shè)計的FPGA協(xié)議處理和驅(qū)動電路工作無誤,可以正確進行429數(shù)據(jù)的收發(fā),完成429總線的數(shù)據(jù)通訊。

結(jié)束語

本設(shè)計采用了ALTERA公司的FPGA芯片EP2C5Q208和CYPRESS公司的USB協(xié)議處理芯片CY7C68013以及外圍的調(diào)制解調(diào)電路,實現(xiàn)了4路收發(fā)的429總線數(shù)據(jù)傳輸接口,并完成了與上位計算機的通信。該系統(tǒng)大部分功能都是在同一FPGA芯片內(nèi)部實現(xiàn)的,發(fā)揮了FPGA的優(yōu)勢,提高了系統(tǒng)的穩(wěn)定性、集成度,并增強了抗干擾能力。利用FPGA的可重配置性,可以實現(xiàn)更多路ARINC429信號的接收與發(fā)送,可以大大降低重量、體積及成本,這在機載航空總線數(shù)據(jù)處理中具有較大的實用價值。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

最近為什么越來越多的研究開始利用FPGA作為CNN加速器?FPGA與CNN的相遇究竟能帶來什么神奇效果呢?原來,F(xiàn)PGA擁有大量的可編程邏輯資源,相對于GPU,它的可重構(gòu)性以及高功耗能效比的優(yōu)點,是GPU無法比擬的;同時...

關(guān)鍵字: FPGA 可編程邏輯資源 GPU

FPGA的應(yīng)用領(lǐng)域包羅萬象,我們今天來看看在音樂科技領(lǐng)域及醫(yī)療照護的智能巧思。

關(guān)鍵字: FPGA 科技領(lǐng)域 智能

強大的產(chǎn)品可降低信號噪音并提高分辨率與動態(tài)

關(guān)鍵字: Spectrum儀器 數(shù)字化儀 FPGA

最近某項目采用以太網(wǎng)通信,實踐起來有些奇怪,好像設(shè)計成只能應(yīng)答某類計算機的ICMP(ping)命令, 某類計算機指的是Windows特定系統(tǒng),其他系統(tǒng)發(fā)送ping都不能正確識別。

關(guān)鍵字: 嵌入式Linux FPGA 協(xié)議

近兩年,國外廠商的FPGA芯片價格飆升,由于價格,貨期,出口管制等多方面因素的影響,很多公司都在尋找FPGA國產(chǎn)化替代方案。我工作中正在使用的幾款芯片也面臨停產(chǎn)的風(fēng)險,用一片少一片,了解到國產(chǎn)FPGA發(fā)展的也不錯,完全自...

關(guān)鍵字: FPGA 芯片 EDA

本篇是FPGA之旅設(shè)計的第十二例,在前面的例程中,完成了DS18B20溫度傳感器數(shù)據(jù)的采集,并且將采集到的數(shù)據(jù)顯示在數(shù)碼管上。由于本例將對溫濕度傳感器DHT11進行采集,而且兩者的數(shù)據(jù)采集過程類似,所以可以參考一下前面的...

關(guān)鍵字: FPGA DS18B20溫度傳感器

這是FPGA之旅設(shè)計的第十三例啦,本例是一個綜合性的例程,基于OLED屏幕顯示,和DHT11溫濕度采集,將DHT11采集到的溫濕度顯示到OLED屏幕上。

關(guān)鍵字: FPGA OLED屏幕

第八例啦,本例將介紹如何通過FPGA采集DS18B20傳感器的溫度值。

關(guān)鍵字: FPGA DS18B20傳感器

這是FPGA之旅設(shè)計的第九例啦?。?!本例將介紹如何使用FPGA驅(qū)動OLED屏幕,并在接下來的幾例中,配合其它模塊,進行一些有趣的綜合實驗。由于使用的OLED屏是IIC接口的,對IIC接口不是很清楚的,可以參考第五例的設(shè)計...

關(guān)鍵字: FPGA OLED屏幕

這是FPGA之旅設(shè)計的第十例啦,在上一例中,已經(jīng)成功驅(qū)動了OLED屏幕,本例將結(jié)合上一例,以及第四例多bytes串口通信做一個有趣的例程。

關(guān)鍵字: FPGA OLED屏 串口

智能硬件

22003 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉