FPGA的ARINC429總線接口卡設(shè)計(jì)
發(fā)布時(shí)間:2008/8/8 0:00:00 訪問次數(shù):466
arinc429總線廣泛應(yīng)用于商務(wù)運(yùn)輸航空領(lǐng)域,如空中客車a310/a320、a330/a340飛機(jī),波音公司727、737、747、757和767飛機(jī),麥道公司md-11飛機(jī)等。它采用異步雙極性歸零碼進(jìn)行數(shù)據(jù)的編碼,并通過雙絞線傳輸,具有很強(qiáng)的抗干擾性能。目前市場上的arinc429總線接口設(shè)計(jì)一般都采用專用接口芯片,如device engineering公司的dei-1016,intersil公司的hs-3282等,這些專用芯片價(jià)格昂貴,且路數(shù)有限,使用非常不靈活。本設(shè)計(jì)將altera公司的fpga芯片應(yīng)用于arinc429標(biāo)準(zhǔn)數(shù)據(jù)傳輸,并完成了與計(jì)算機(jī)usb接口的通信,有效縮小了系統(tǒng)體積并降低了成本,同時(shí)也增加了系統(tǒng)配置的靈活度。
arinc429總線數(shù)據(jù)
arinc429數(shù)據(jù)總線協(xié)議規(guī)定一個(gè)數(shù)據(jù)字由32位組成,以脈沖形式發(fā)送,采用雙極性歸零碼,碼速率為12.5kb/s或100kb/s。電氣特性為:高電平(+10v)為邏輯1;低電平(-10v)為邏輯0;0電平(0v)發(fā)送自身時(shí)鐘脈沖,字與字之間以一定間隔(不少于4位)分開,以此間隔作為字同步。一個(gè)32位的數(shù)據(jù)字由五部分組成:標(biāo)志位(label),用于標(biāo)識(shí)傳輸數(shù)據(jù)的信息類型;源/目的標(biāo)識(shí)碼(s/d),用于判斷在一個(gè)多系統(tǒng)中的源系統(tǒng);數(shù)據(jù)區(qū)(data);符號(hào)/狀態(tài)位(ssm),用于標(biāo)識(shí)數(shù)據(jù)字的特征或數(shù)據(jù)發(fā)生器的狀態(tài);奇偶校驗(yàn)位(parity),arinc429數(shù)字信息傳輸使用奇校驗(yàn)。
fpga內(nèi)部邏輯設(shè)計(jì)
根據(jù)arinc429總線協(xié)議,要完成數(shù)據(jù)的收發(fā)以及對usb總線接口的邏輯控制, fpga 芯片應(yīng)完成的邏輯功能框圖如圖1所示,其中虛線框中是fpga實(shí)現(xiàn)的部分。
發(fā)送器
發(fā)送器結(jié)構(gòu)如圖2所示,由緩沖存儲(chǔ)器、信號(hào)發(fā)生器和發(fā)送控制邏輯三部分構(gòu)成,用于將來自總線接口通信模塊的32位429格式數(shù)據(jù)轉(zhuǎn)換成調(diào)制前的兩路串行數(shù)據(jù),即圖2中ttl0和ttl1。其中使用緩存是為了提高數(shù)據(jù)傳輸速度,用戶向緩存寫進(jìn)想要發(fā)送的多個(gè)32位數(shù)據(jù)字后,就可以通過entx信號(hào)控制數(shù)據(jù)從緩存連續(xù)不斷地讀出,并經(jīng)過信號(hào)發(fā)生器轉(zhuǎn)換成串行數(shù)據(jù)后送給總線驅(qū)動(dòng)電路。在這里,緩存是直接調(diào)用altera提供的lpm_fifo+宏功能模塊來實(shí)現(xiàn)的。
信號(hào)發(fā)生器由位計(jì)數(shù)器、字間隔計(jì)數(shù)器、碼元調(diào)制、移位寄存器以及相應(yīng)的控制邏輯組成,結(jié)構(gòu)如圖3所示。其中,位數(shù)計(jì)數(shù)器用來控制429數(shù)字字的位數(shù),字間隔計(jì)數(shù)器用于產(chǎn)生字間隔。在本設(shè)計(jì)中,采用狀態(tài)機(jī)來實(shí)現(xiàn)信號(hào)發(fā)生器的功能,共分3個(gè)狀態(tài):
a)idle:初始狀態(tài),當(dāng)復(fù)位或是發(fā)送完一個(gè)32位數(shù)后進(jìn)入該狀態(tài),在該狀態(tài)完成字間隔的產(chǎn)生,并用移位寄存器的load信號(hào)來鎖存待轉(zhuǎn)換數(shù)據(jù),并在至少四位字間隔后進(jìn)入trans狀態(tài),否則等到直到有新數(shù)據(jù)載入。
b)trans:進(jìn)行數(shù)據(jù)的并串轉(zhuǎn)換,同時(shí)進(jìn)行奇偶校驗(yàn),即每產(chǎn)生一位串行數(shù)據(jù)就進(jìn)行一次異或運(yùn)算,并由位數(shù)計(jì)數(shù)器控制計(jì)到31時(shí)就進(jìn)入parity狀態(tài)。
c)parity:輸出奇偶校驗(yàn)位并回到idle狀態(tài)。
碼元調(diào)制是在信號(hào)busy的有效區(qū)間內(nèi),將串行輸出數(shù)據(jù)serial_data與時(shí)鐘做邏輯運(yùn)算得到的ttl0和ttl1(如圖4)送至外部調(diào)制電路,并轉(zhuǎn)換為429總線規(guī)范要求的雙極性歸零信號(hào)。其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)緩存和信號(hào)發(fā)生器之間的數(shù)據(jù)傳遞。在緩存非空、busy無效(信號(hào)發(fā)生器狀態(tài)機(jī)處于trans狀態(tài)下busy有效)的條件下,一旦允許轉(zhuǎn)換信號(hào)entx有效,便開啟緩存的讀使能rden,并產(chǎn)生轉(zhuǎn)換數(shù)據(jù)的裝載信號(hào)load,以完成緩存數(shù)據(jù)的自動(dòng)轉(zhuǎn)換和發(fā)送。
接收器
雙極性的arinc429 信號(hào)通過解調(diào)電路轉(zhuǎn)換為兩路ttl 信號(hào),ttl1和ttl0。后經(jīng)接收器轉(zhuǎn)換成32位并行數(shù)據(jù)供主機(jī)讀取。接收器結(jié)構(gòu)如圖5所示。為使數(shù)據(jù)接收具有一定的抗干擾能力,本設(shè)計(jì)采用一個(gè)16倍于碼速率的高速時(shí)鐘對數(shù)據(jù)進(jìn)行檢測。同步字頭檢測模塊對高速時(shí)鐘進(jìn)行計(jì)數(shù),當(dāng)計(jì)數(shù)值計(jì)滿64
arinc429總線廣泛應(yīng)用于商務(wù)運(yùn)輸航空領(lǐng)域,如空中客車a310/a320、a330/a340飛機(jī),波音公司727、737、747、757和767飛機(jī),麥道公司md-11飛機(jī)等。它采用異步雙極性歸零碼進(jìn)行數(shù)據(jù)的編碼,并通過雙絞線傳輸,具有很強(qiáng)的抗干擾性能。目前市場上的arinc429總線接口設(shè)計(jì)一般都采用專用接口芯片,如device engineering公司的dei-1016,intersil公司的hs-3282等,這些專用芯片價(jià)格昂貴,且路數(shù)有限,使用非常不靈活。本設(shè)計(jì)將altera公司的fpga芯片應(yīng)用于arinc429標(biāo)準(zhǔn)數(shù)據(jù)傳輸,并完成了與計(jì)算機(jī)usb接口的通信,有效縮小了系統(tǒng)體積并降低了成本,同時(shí)也增加了系統(tǒng)配置的靈活度。
arinc429總線數(shù)據(jù)
arinc429數(shù)據(jù)總線協(xié)議規(guī)定一個(gè)數(shù)據(jù)字由32位組成,以脈沖形式發(fā)送,采用雙極性歸零碼,碼速率為12.5kb/s或100kb/s。電氣特性為:高電平(+10v)為邏輯1;低電平(-10v)為邏輯0;0電平(0v)發(fā)送自身時(shí)鐘脈沖,字與字之間以一定間隔(不少于4位)分開,以此間隔作為字同步。一個(gè)32位的數(shù)據(jù)字由五部分組成:標(biāo)志位(label),用于標(biāo)識(shí)傳輸數(shù)據(jù)的信息類型;源/目的標(biāo)識(shí)碼(s/d),用于判斷在一個(gè)多系統(tǒng)中的源系統(tǒng);數(shù)據(jù)區(qū)(data);符號(hào)/狀態(tài)位(ssm),用于標(biāo)識(shí)數(shù)據(jù)字的特征或數(shù)據(jù)發(fā)生器的狀態(tài);奇偶校驗(yàn)位(parity),arinc429數(shù)字信息傳輸使用奇校驗(yàn)。
fpga內(nèi)部邏輯設(shè)計(jì)
根據(jù)arinc429總線協(xié)議,要完成數(shù)據(jù)的收發(fā)以及對usb總線接口的邏輯控制, fpga 芯片應(yīng)完成的邏輯功能框圖如圖1所示,其中虛線框中是fpga實(shí)現(xiàn)的部分。
發(fā)送器
發(fā)送器結(jié)構(gòu)如圖2所示,由緩沖存儲(chǔ)器、信號(hào)發(fā)生器和發(fā)送控制邏輯三部分構(gòu)成,用于將來自總線接口通信模塊的32位429格式數(shù)據(jù)轉(zhuǎn)換成調(diào)制前的兩路串行數(shù)據(jù),即圖2中ttl0和ttl1。其中使用緩存是為了提高數(shù)據(jù)傳輸速度,用戶向緩存寫進(jìn)想要發(fā)送的多個(gè)32位數(shù)據(jù)字后,就可以通過entx信號(hào)控制數(shù)據(jù)從緩存連續(xù)不斷地讀出,并經(jīng)過信號(hào)發(fā)生器轉(zhuǎn)換成串行數(shù)據(jù)后送給總線驅(qū)動(dòng)電路。在這里,緩存是直接調(diào)用altera提供的lpm_fifo+宏功能模塊來實(shí)現(xiàn)的。
信號(hào)發(fā)生器由位計(jì)數(shù)器、字間隔計(jì)數(shù)器、碼元調(diào)制、移位寄存器以及相應(yīng)的控制邏輯組成,結(jié)構(gòu)如圖3所示。其中,位數(shù)計(jì)數(shù)器用來控制429數(shù)字字的位數(shù),字間隔計(jì)數(shù)器用于產(chǎn)生字間隔。在本設(shè)計(jì)中,采用狀態(tài)機(jī)來實(shí)現(xiàn)信號(hào)發(fā)生器的功能,共分3個(gè)狀態(tài):
a)idle:初始狀態(tài),當(dāng)復(fù)位或是發(fā)送完一個(gè)32位數(shù)后進(jìn)入該狀態(tài),在該狀態(tài)完成字間隔的產(chǎn)生,并用移位寄存器的load信號(hào)來鎖存待轉(zhuǎn)換數(shù)據(jù),并在至少四位字間隔后進(jìn)入trans狀態(tài),否則等到直到有新數(shù)據(jù)載入。
b)trans:進(jìn)行數(shù)據(jù)的并串轉(zhuǎn)換,同時(shí)進(jìn)行奇偶校驗(yàn),即每產(chǎn)生一位串行數(shù)據(jù)就進(jìn)行一次異或運(yùn)算,并由位數(shù)計(jì)數(shù)器控制計(jì)到31時(shí)就進(jìn)入parity狀態(tài)。
c)parity:輸出奇偶校驗(yàn)位并回到idle狀態(tài)。
碼元調(diào)制是在信號(hào)busy的有效區(qū)間內(nèi),將串行輸出數(shù)據(jù)serial_data與時(shí)鐘做邏輯運(yùn)算得到的ttl0和ttl1(如圖4)送至外部調(diào)制電路,并轉(zhuǎn)換為429總線規(guī)范要求的雙極性歸零信號(hào)。其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)緩存和信號(hào)發(fā)生器之間的數(shù)據(jù)傳遞。在緩存非空、busy無效(信號(hào)發(fā)生器狀態(tài)機(jī)處于trans狀態(tài)下busy有效)的條件下,一旦允許轉(zhuǎn)換信號(hào)entx有效,便開啟緩存的讀使能rden,并產(chǎn)生轉(zhuǎn)換數(shù)據(jù)的裝載信號(hào)load,以完成緩存數(shù)據(jù)的自動(dòng)轉(zhuǎn)換和發(fā)送。
接收器
雙極性的arinc429 信號(hào)通過解調(diào)電路轉(zhuǎn)換為兩路ttl 信號(hào),ttl1和ttl0。后經(jīng)接收器轉(zhuǎn)換成32位并行數(shù)據(jù)供主機(jī)讀取。接收器結(jié)構(gòu)如圖5所示。為使數(shù)據(jù)接收具有一定的抗干擾能力,本設(shè)計(jì)采用一個(gè)16倍于碼速率的高速時(shí)鐘對數(shù)據(jù)進(jìn)行檢測。同步字頭檢測模塊對高速時(shí)鐘進(jìn)行計(jì)數(shù),當(dāng)計(jì)數(shù)值計(jì)滿64
熱門點(diǎn)擊
- 典型ASIC設(shè)計(jì)主要流程
- LDRA工具套件支持最新發(fā)布的MISRA C
- Altera提升Arria GX系列收發(fā)器速
- Agilent推出GENESYS EDA軟件
- FPGA設(shè)計(jì)層次分析
- 在選用FPGA進(jìn)行設(shè)計(jì)時(shí)如何降低功耗
- 微捷碼發(fā)布新一代布局規(guī)劃自動(dòng)綜合產(chǎn)品——Hy
- Synopsys推出IC COMPILER布
- PLC可編程序控制器基礎(chǔ)知識(shí)
- 時(shí)序邏輯等效性檢查方法使設(shè)計(jì)風(fēng)險(xiǎn)降至最低
推薦技術(shù)資料
- 聲道前級設(shè)計(jì)特點(diǎn)
- 與通常的Hi-Fi前級不同,EP9307-CRZ這臺(tái)分... [詳細(xì)]
- MOSFET 電感單片降壓開關(guān)模式變換器優(yōu)勢
- SiC MOSFET 和 IG
- 新型 電隔離無芯線性霍爾效應(yīng)電
- 業(yè)界超小絕對位置編碼器技術(shù)參數(shù)設(shè)計(jì)
- 高帶寬、更高分辨率磁角度傳感技術(shù)應(yīng)用探究
- MagAlpha 角度位置傳感
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究