MIL-STD-1553B是一種時(shí)分制,命令/響應(yīng),,集中控制式多路傳輸?shù)陌腚p工串行數(shù)據(jù)總線,,其傳輸速度為1Mb/s,字長為20b,,數(shù)據(jù)有效長度為16b,,信息量最大的長度為32個字。其信息格式有總線控制器BC(Bus Controller)到遠(yuǎn)程終端RT(Remote Terminal),,RT到RC,,RT到RT,廣播式和系統(tǒng)控制式,。
MIL-STD-1553B總線協(xié)議已經(jīng)發(fā)展成為國際公認(rèn)的數(shù)據(jù)總線標(biāo)準(zhǔn),,廣泛地應(yīng)用于航空電子綜合系統(tǒng)中,,目前國內(nèi)外開發(fā)的各種1553B總線采集卡,大多采用的是美國DDC公司生產(chǎn)的BU-6150接口芯片,,但是該芯片價(jià)格比較昂貴,,開發(fā)成本較高,另許多商家望而興嘆,。本文介紹的基于DSP的1553B總線通訊模塊的設(shè)計(jì),,采用TI公司TMS320F206DSP芯片進(jìn)行數(shù)字信號處理,用FPGA進(jìn)行現(xiàn)場反復(fù)編程,,降低了設(shè)計(jì)成本,,滿足了1553B通訊模塊的開發(fā)需求。
1 TMS320F206的簡介
該1553B總線通訊模塊的DSP采用TI公司的TMS320F206,,用來實(shí)現(xiàn)1553B總線協(xié)議的主體部分,,實(shí)現(xiàn)字和消息的處理等功能,TMS320F206是TI公司近年來推出的一種性價(jià)比較高的定點(diǎn)DSP芯片,,采用靜態(tài)CMOS集成電路工藝制造而成,,DSP芯片先進(jìn)的哈佛結(jié)構(gòu)允許程序存儲器和數(shù)據(jù)存儲器獨(dú)立編址、獨(dú)立訪問,,兩條總線可允許數(shù)據(jù)與指令的讀取同時(shí)進(jìn)行,,從而使數(shù)據(jù)的吞吐率提高了一倍;專用的指令集提供了功能強(qiáng)大的信號處理操作,。TMS320F206主要特點(diǎn)如下:
(1)5V工作電壓,,20MHz主頻時(shí),指令周期50ns,;3個外部引腳中斷,;8級內(nèi)部硬件堆棧,存放調(diào)用/中斷返回地址,;硬件等待,;休眠的IDLE模式,低功耗,;標(biāo)準(zhǔn)的IEEE1149.1仿真口,。
(2)片內(nèi)64k程序空間,64k數(shù)據(jù)空間,,64kI/O空間,,32k全局存儲空間,片內(nèi)544×16b雙尋址RAM,,32k×16b用戶可編程FLASH,,作為程序空間,4k×16b單尋址RAM,,程序空間和數(shù)據(jù)空間之前可以進(jìn)行數(shù)據(jù)搬移,。
(3)片內(nèi)16b定時(shí)器,片上軟等待產(chǎn)生器,,可以分別為程序空間,,數(shù)據(jù)空間,I/O空間產(chǎn)生0-7個等待,,片上振蕩器和鎖相環(huán)有倍頻和分頻功能,,32b算術(shù)邏輯單元/累加器,16×16b乘法器,,全雙工異步串口UART,,增強(qiáng)的同步串口,帶4級FIFO,。
2 系統(tǒng)的組成框圖和工作原理
檢測儀采用單片機(jī)技術(shù),,可編程邏輯器件(FPGA)技術(shù),數(shù)字信號處理(DSP)技術(shù),,結(jié)合1553B總線收發(fā)技術(shù)研制而成,。既可以對單個航空電子設(shè)備進(jìn)行離線檢測,也可對飛機(jī)的整個總線的運(yùn)行和各個記載設(shè)備的數(shù)據(jù)傳輸進(jìn)行在線檢測,。檢測儀整體采用個人數(shù)字助理(PDA)技術(shù),,數(shù)據(jù)輸入、輸出,、處理,、控制、顯示等均集中在檢測儀,。
系統(tǒng)組成框圖如圖1所示,。
從數(shù)據(jù)信號流程方面:收數(shù)據(jù)時(shí),外部數(shù)據(jù)送到收發(fā)器進(jìn)行電壓轉(zhuǎn)換后,,成為一組20b的串行數(shù)據(jù),,經(jīng)過FPGA芯片EP20K200處理成16b并行數(shù)據(jù)經(jīng)擴(kuò)展口送到DSP處理,然后經(jīng)雙口RAM進(jìn)行數(shù)據(jù)緩存,,需要顯示數(shù)據(jù)時(shí),,單片機(jī)CPU對雙口RAM送來的16b并行數(shù)據(jù)進(jìn)行分析存儲,按要求轉(zhuǎn)換成十六進(jìn)制,,二進(jìn)制或者工程單位制送顯示器顯示,,發(fā)數(shù)據(jù)時(shí),CPU將鍵盤輸入的數(shù)據(jù)按照十六進(jìn)制,、二進(jìn)制或者工程單位制經(jīng)轉(zhuǎn)換后送雙口RAM緩存,,DSP從雙口RAM讀入數(shù)據(jù),預(yù)處理后送EP20K200,,EP20K200再進(jìn)行轉(zhuǎn)換處 理,,輸出一組20b的串行數(shù)據(jù)到收發(fā)器,,經(jīng)變壓耦合成符合1553B標(biāo)準(zhǔn)要求的串行數(shù)據(jù),再經(jīng)收發(fā)接口發(fā)送到數(shù)據(jù)總線上,。
3 硬件電路設(shè)計(jì)
3.1 接收器和發(fā)送器
1553B航空電子系統(tǒng)中,,各終端設(shè)備與總線之間采用的是耦合的方式,分為變壓器耦合和直接耦合,,采用的美國DDC公司的BU-63152芯片,,具有兩個完全獨(dú)立的雙余度端口,完全滿足1553B總線收,、發(fā)的要求,,接收器操作模式下,在引腳STROMB控制下,,數(shù)據(jù)被變成雙向的TTL電平,,從RX DATA OUT和其非腳輸出到下一級譯碼電路,發(fā)送器操作模式下,,在引腳INHIBIT控制下,,發(fā)送器部分從編碼電路接收數(shù)據(jù),發(fā)送到數(shù)據(jù)總線上,。
3.2 FPGA模塊
將FPGA技術(shù)與數(shù)字信號處理DSP技術(shù)相結(jié)合是現(xiàn)代電子設(shè)計(jì)中常用的方法,,該模塊中的FPGA芯片接口主要實(shí)現(xiàn)以下功能:
(1)將總線上的串行信息流轉(zhuǎn)換成處理機(jī)可以處理的并行信息或者與之相反;
(2)接收或發(fā)送信息時(shí),,能夠識別或生成標(biāo)準(zhǔn)的1553B信息字和消息,。
(3)完成與處理機(jī)之間的信息交換,包括1553B信息地址的分配,,命令字(或狀態(tài)字)的譯碼或返回狀態(tài)字,、發(fā)送數(shù)據(jù)字等。
用FPGA實(shí)現(xiàn)編解碼器,,其基本功能與前面提到的BU-61580芯片相似,,是該1553B總線檢測儀的關(guān)鍵技術(shù)。
3.3 DSP模塊
TMS320F206是TI公司近年推出的一款設(shè)計(jì)成本最低,,結(jié)構(gòu)功能復(fù)雜度也較低的定點(diǎn)DSP,,片內(nèi)32k FLASH,4.5k RAM可以滿足處理規(guī)模適中的任務(wù),,該檢測儀中DSP模塊的設(shè)計(jì)主要是對時(shí)鐘電路,,中斷以及數(shù)據(jù)和地址總線的接口技術(shù)的把握,其主要接口電路如圖2所示,。
由DSP接口電路圖可以看出,,DSP模塊為整個系統(tǒng)提供了時(shí)鐘電路,DSP芯片的中斷由EP20K200產(chǎn)生,一方面通知F206讀取數(shù)據(jù),,一方面通知DSP進(jìn)行錯誤處理,,由于DSP芯片的流水線操作方式,數(shù)字信號處理速度功能強(qiáng)大,,滿足了1553B協(xié)議傳輸速率大的特點(diǎn),。
3.4 雙口RAM和顯示模塊
由于在高速數(shù)據(jù)處理和采集系統(tǒng)中容易造成數(shù)據(jù)堵塞現(xiàn)象,高速數(shù)據(jù)接口的設(shè)計(jì)對整個系統(tǒng)數(shù)據(jù)傳輸?shù)臅惩ㄆ鹬匾淖饔?,該設(shè)計(jì)中采用的美國DDC公司的8k雙口靜態(tài)RAM IDT7025解決了數(shù)據(jù)堵塞的問題。
在該設(shè)計(jì)中顯示模塊采用了一種內(nèi)存接顯示模塊的硬件連接方式,。DSP將欲顯示的數(shù)據(jù)送入雙口RAM,,51單片機(jī)不斷掃描內(nèi)存,根據(jù)內(nèi)存中的數(shù)據(jù)做出相應(yīng)的處理,,不斷刷新顯示屏上的內(nèi)容,,雙口RAM的BUSY信號線為避免左右端口同時(shí)對同一存儲單元寫操作提供了硬件支持。設(shè)計(jì)中液晶顯示模塊采用16×16點(diǎn)陣的中文顯示模塊,。
4 系統(tǒng)軟件設(shè)計(jì)
該1553B航空電子總線檢測儀軟件設(shè)計(jì)主要包括3大部分,,用以驅(qū)動數(shù)據(jù)采集板卡,完成對各寄存器的配置,,實(shí)現(xiàn)數(shù)據(jù)的收發(fā)檢測,。
4.1 FPGA控制程序
該部分采用硬件描述語言VHDL進(jìn)行編程,用Synplify進(jìn)行綜合,,以及采用Max+Plus II進(jìn)行時(shí)序仿真,,在FPGA上實(shí)現(xiàn)的MIL-STD-1553B總線接口中的曼徹斯特碼編碼、解碼器,,該邏輯可由狀態(tài)機(jī)實(shí)現(xiàn),,可劃分為4個狀態(tài)進(jìn)行;第1個狀態(tài)行是空閑狀態(tài),,當(dāng)檢測到數(shù)據(jù)跳變沿時(shí),,進(jìn)入第2個狀態(tài);第2個狀態(tài)為有效同步字頭檢測狀態(tài),;當(dāng)檢測到有效同步字頭時(shí),,啟動第3個狀態(tài),用鎖相環(huán)分離時(shí)鐘,,進(jìn)行碼型轉(zhuǎn)換,;當(dāng)數(shù)據(jù)有效時(shí)進(jìn)入第4個狀態(tài),進(jìn)行并/串轉(zhuǎn)換及奇偶校驗(yàn),。FPGA接收數(shù)據(jù)流程如圖3所示,。
4.2 DSP模塊控制程序
DSP部分的軟件采用C語言和匯編語言混合編程,即具有C語言可移植性強(qiáng)的特點(diǎn),又具有匯編語言執(zhí)行速率快和直觀的特點(diǎn),,該設(shè)計(jì)中DSP軟件設(shè)計(jì)主要完成對FPGA和其內(nèi)部通訊寄存器初始化,;向FPGA發(fā)送數(shù)據(jù)時(shí)的控制命令操作,接受數(shù)據(jù)時(shí)命令字,,狀態(tài)字的處理,,以及通知FPGA接受數(shù)據(jù)等,是整個系統(tǒng)控制的核心部分,。圖4給出DSP軟件控制流程圖,。
5 結(jié)語
基于1553B總線的航空電子檢測儀主要用于部隊(duì)航空電子設(shè)備在線和離線檢測,同時(shí)滿足BC和RT的功能,,PDA的設(shè)計(jì)對檢測也提供了極大便利,,當(dāng)然由于設(shè)計(jì)處于樣機(jī)階段,還存在一些不完善的地方,,今后的改進(jìn)空間還比較大,。