趙永紅
【摘要】 通過本課題的研究和通用 ARINC429 總線數(shù)據(jù)解析的研究,實現(xiàn)了對多種外場可更換單元的 ARINC429 總線接口測試以及相應的 ARINC429通訊板卡數(shù)據(jù)的解析解決方案的實驗。
【關鍵詞】 ARINC總線 通訊板卡 數(shù)據(jù)解析一、ARINC429通訊板卡實驗
本文的實驗基于CPCI 總線的ARINC429通訊板卡。通過CPCI 總線ARINC429標準類型通訊板卡制作具備8路發(fā)送和8路接收通道的集多功能于一身的通訊板卡。
由4組工業(yè)級ARINC429專用芯片和FPGA功能實現(xiàn)8路接收通道,8路發(fā)送通道,每組芯片可獨立編程,根據(jù)自己需要選擇合適的波特率(100Kbps,50Kbps,48Kbps,12.5Kbps),和數(shù)據(jù)格式(32BIT 或25BIT)。每路發(fā)送通道具有獨立的(1K-1)×32BIT的FIFO,每路接收通道具有(1M-1)×32BIT大小的FIFO,以緩解主機在發(fā)送和接收時的負擔,避免主機由于速度的不匹配來不及響應而造成的丟失數(shù)據(jù)現(xiàn)象。每個接收通道還可以單獨編程設定觸發(fā)深度,當接收FIFO中的數(shù)據(jù)量到達設定的觸發(fā)深度后產(chǎn)生中斷信號,或置觸發(fā)狀態(tài)。
1.1板卡復位
通過命令端口CMD(0x50)寫入0x81,命令寄存器CMDSTR(0x50)中RST置為‘1,板卡進行復位操作;然后通過命令端口CMD(0x50)寫入0x80,命令寄存器CMDSTR(0x50)中RST置為‘0;板卡退出復位狀態(tài),復位完成。
1.2板卡型號和序列號識別
讀取BAR0的SN寄存器(0x38),識別出板卡序列號;
讀取BAR2的CARD_TYPE寄存器(0xD0),識別出板卡型號,以便進行相應的初始化操作。
1.3配置板卡各通道通訊模式
配置第0路發(fā)送和第0、1路接收通道工作模式:
a)向命令端口(0x50)中寫入0x8D,使CMDSTR中CFGDRDY0置位為‘1,使能配置第0路發(fā)送和第0、1路接收通道;
b)向CFGD0(0x64)中寫入配置字0;
c)向命令端口(0x50)寫入0x84,使CMDSTR中CFGDCW0=‘0,使該部分通道配置命令有效,然后寫入0x85,將CFGDCW0置位,完成第0路發(fā)送和第0、1路接收通道;
d)向命令端口(0x50)寫入0x8C,使CMDSTR中CFGDRDY0置位為‘0。
配置第2路發(fā)送和第2、3路接收通道工作模式
a)向命令端口(0x50)中寫入0x8F,使CMDSTR中CFGDRDY1置位為‘1,使能配置第2路發(fā)送和第2、3路接收通道;b)向CFGD1(0x66)中寫入配置字1;c)向命令端口(0x50)寫入0x86,使CMDSTR中CFGDCW1=‘0,使該部分通道配置命令有效,然后寫入0x87,將CFGDCW1置位,完成第2路發(fā)送和第2、3路接收通道;d)向命令端口(0x50)寫入0x8E,使CMDSTR中CFGDRDY1置位為‘0。
配置第4路發(fā)送和第4、5路接收通道工作模式
a)向命令端口(0x50)中寫入0x91,使CMDSTR中CFGDRDY2置位為‘1,使能配置第4路發(fā)送和第4、5路接收通道;
b)向CFGD2(0x68)中寫入配置字2;
c)向命令端口(0x50)寫入0x88,使CMDSTR中CFGDCW2=‘0,使該部分通道配置命令有效,然后寫入0x89,將CFGDCW2置位,完成第4路發(fā)送和第4、5路接收通道;
d)向命令端口(0x50)寫入0x90,使CMDSTR中CFGDRDY2置位為‘0。
配置第6路通道和第6、7路接收通道工作模式
a)向命令端口(0x50)中寫入0x93,使CMDSTR中CFGDRDY3置位為‘1,使能配置第6路發(fā)送和第6、7路接收通道;
b)向CFGD3(0x6A)中寫入配置字3;
c)向命令端口(0x50)寫入0x8A,使CMDSTR中CFGDCW3=‘0,使該部分通道配置命令有效,然后寫入0x8B,將CFGDCW3置位,完成第6路發(fā)送和第6、7路接收通道;
d)向命令端口(0x50)寫入0x92,使CMDSTR中CFGDRDY3置位為‘0。
配置第1、3、5、7路發(fā)送通道工作模式向Send_Mode(0x70)中寫入第1、3、5、7路發(fā)送通道的配置。
6、所有通道工作模式配置完成。
二、結論
本文主要介紹了ARINC429總線信號的解析方法,包括ARINC429數(shù)據(jù)解析模塊、測試任務運行監(jiān)視/管理模塊、ARINC429 接口測試模塊、并通過ARINC429通訊板卡實驗進行了仿真,得到了對ARINC429總線解析的解決方案。