新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 1553B總線遠(yuǎn)程端點(diǎn)數(shù)據(jù)鏈路層協(xié)議的FPGA實(shí)現(xiàn)

1553B總線遠(yuǎn)程端點(diǎn)數(shù)據(jù)鏈路層協(xié)議的FPGA實(shí)現(xiàn)

作者: 時(shí)間:2009-05-07 來源:網(wǎng)絡(luò) 收藏

0 引 言
用于車輛、艦船、飛機(jī)等機(jī)動(dòng)平臺(tái)上的電子設(shè)備越來越多,并且越來越復(fù)雜。將電子設(shè)備加以有效的綜合,使之達(dá)到資源和功能共享已成為必然趨勢(shì)。電子綜合的支撐技術(shù)是聯(lián)網(wǎng)技術(shù),而機(jī)動(dòng)平臺(tái)上的聯(lián)網(wǎng)技術(shù)不同于一般的局域網(wǎng)技術(shù),它特別強(qiáng)調(diào)網(wǎng)絡(luò)的可靠性和實(shí)時(shí)性。是在20世紀(jì)70年代末為適應(yīng)飛機(jī)的發(fā)展,由美國(guó)提出的飛機(jī)內(nèi)部的電子系統(tǒng)聯(lián)網(wǎng)標(biāo)準(zhǔn);其后由于它的高可靠性和靈活性而在其他機(jī)動(dòng)平臺(tái)上得到了廣泛應(yīng)用。國(guó)內(nèi)上世紀(jì)80年代中期已開始接觸這類技術(shù),目前它的研究與應(yīng)用范圍正在迅速擴(kuò)大。
標(biāo)準(zhǔn)由美國(guó)軍方制定。支持該標(biāo)準(zhǔn)的協(xié)議芯片有DDC公司的BU一6517X,BU一615XX系列;HOLT公司的HI一61XX系列;UTMC公司的BCRTM等。這些芯片都集成了BC,RT,BM的功能,但是這些芯片都由美國(guó)公司生產(chǎn),價(jià)格非常昂貴。為了能低成本地使用這種可靠性非常好的數(shù)據(jù),采用設(shè)計(jì)并實(shí)現(xiàn)端點(diǎn)的數(shù)據(jù)鏈路層協(xié)議,通過外接一個(gè)總線收發(fā)器完成端點(diǎn)協(xié)議芯片功能。
在電子設(shè)計(jì)領(lǐng)域,可編程邏輯器件的廣泛應(yīng)用為數(shù)字系統(tǒng)的設(shè)計(jì)帶來極大的靈活性,1片芯片可代替上百個(gè)IC電路。Altera公司開發(fā)的Cyclone系列芯片價(jià)格便宜,功能強(qiáng)大,而且配套的開發(fā)軟件QuartusⅡ更是集成了時(shí)序仿真、編譯、綜合、優(yōu)化等功能,這為實(shí)現(xiàn)1553B總線節(jié)點(diǎn)通信協(xié)議提供了有利條件。文中所實(shí)現(xiàn)的1553B總線遠(yuǎn)程端點(diǎn)數(shù)據(jù)鏈路層協(xié)議采用VerilogHDL語言編寫;采用ModelSim仿真;采用QuartusⅡ編譯、綜合、優(yōu)化,并在A1tera的EPlC6系列FPGA上實(shí)現(xiàn)。

本文引用地址:http://2s4d.com/article/192062.htm


1 1553B總線及其接口功能
1553B的全稱是:飛機(jī)內(nèi)部時(shí)分制指令/響應(yīng)式多路傳輸數(shù)據(jù)總線。它對(duì)物理層,如:傳輸介質(zhì)、屏蔽條件、耦合方式、阻抗匹配以及輸入輸入兼容性等都做了嚴(yán)格規(guī)范。1553B總線是以串行數(shù)據(jù)脈沖的形式進(jìn)行傳輸?shù)?,其?shù)據(jù)用雙相曼徹斯特碼的形式來表示,其傳輸速率為1 Mb/s。1553B數(shù)據(jù)總線上連接有3種類型的節(jié)點(diǎn):
(1)總線控制器(BC):控制總線上的數(shù)據(jù)傳輸;
(2)遠(yuǎn)程終端(RT):響應(yīng)BC命令,執(zhí)行相關(guān)操作;
(3)總線監(jiān)視器(BM):有選擇地接收數(shù)據(jù)總線上的信息并保存。
飛機(jī)上的每個(gè)子系統(tǒng)可以通過1553B總線連接到任何一個(gè)系統(tǒng)中并與其通信。
在總線上傳輸字有3種類型:命令字、狀態(tài)字和數(shù)據(jù)字。每種字的字長(zhǎng)為20位,有效信息位為16位,每個(gè)字的前三位為同步字頭,最后一位為奇偶校驗(yàn)位。有效信息(16位)及奇偶校驗(yàn)位在總線上以曼徹斯特碼的形式進(jìn)行編碼,每位占的時(shí)間為1μs。同步字頭占3位,或先正后負(fù)(命令字、狀態(tài)字)或先負(fù)后正(數(shù)據(jù)字),正、負(fù)電平各占1.5μs,即占同步頭位場(chǎng)的50%。
由于系統(tǒng)類型的不同,可辨別出命令字和狀態(tài)字,命令字由總線控制器發(fā)出,而狀態(tài)字由遠(yuǎn)程終端RT發(fā)出。
作為1553B總線的遠(yuǎn)程端點(diǎn),應(yīng)完成以下功能:
(1)將總線上的串行信息流轉(zhuǎn)換成微控制器可以處理的并行信息或者與之相反;
(2)接收或者發(fā)送信息時(shí),能夠識(shí)別或生成標(biāo)準(zhǔn)的1553B信息字;
(3)完成與微控制器之間的信息交換,包括1553B信息地址的分配、命令字的譯碼或返回狀態(tài)字、發(fā)送數(shù)據(jù)字等。
1553B遠(yuǎn)程端點(diǎn)數(shù)據(jù)鏈路層協(xié)議需要完成上述的1553B遠(yuǎn)程端點(diǎn)的大部分功能,包括同步頭添加與檢測(cè),曼徹斯特碼編解碼,命令字譯碼與接收數(shù)據(jù)字,狀態(tài)字反饋與收發(fā)數(shù)據(jù)字,數(shù)據(jù)緩沖以及與微控制器之間的接口等。整個(gè)數(shù)據(jù)鏈路層協(xié)議內(nèi)部采用寄存器控制的方式進(jìn)行操作,上層微控制器通過讀寫實(shí)現(xiàn)程序的寄存器,以完成對(duì)協(xié)議的控制,而內(nèi)部操作也是根據(jù)相關(guān)寄存器的狀態(tài)來進(jìn)行的,因此設(shè)計(jì)時(shí),首先定義相關(guān)寄存器,根據(jù)數(shù)據(jù)線的寬度,所有寄存器都定義為16位。
(1)控制寄存器:它完成內(nèi)部時(shí)鐘、總線端口選擇、節(jié)點(diǎn)狀態(tài)設(shè)定、狀態(tài)字保留位、節(jié)點(diǎn)ID以及全局復(fù)位等狀態(tài)的設(shè)置和操作。
(2)錯(cuò)誤寄存器(ER):當(dāng)通信協(xié)議中出現(xiàn)了奇偶校驗(yàn)錯(cuò)誤,數(shù)據(jù)不連續(xù)錯(cuò)誤,接收數(shù)據(jù)個(gè)數(shù)錯(cuò)誤,接收FIFO錯(cuò)誤,發(fā)送FIFO錯(cuò)誤時(shí)就會(huì)置位其相關(guān)位,上層微控制器通過讀取ER就知道錯(cuò)誤的類型。
(3)狀態(tài)寄存器(SR):SR中反映了當(dāng)前數(shù)據(jù)鏈路層協(xié)議的狀態(tài),包括接收數(shù)據(jù)狀態(tài)、接收FIFO長(zhǎng)度、發(fā)送FIFO長(zhǎng)度、接收錯(cuò)誤狀態(tài)、中斷信號(hào)狀態(tài)nINT和nINTD。
(4)接收命令字寄存器(RCR):RCR用于保存當(dāng)前接收到的命令字。
(5)發(fā)送矢量字寄存器(SVWR):該寄存器用于存放總線控制器要求的矢量字,這個(gè)矢量字由微控制器寫入。
(6)接收同步字寄存器(SYNDR):用于存放接收到的帶數(shù)據(jù)字同步命令中的數(shù)據(jù)字。


上一頁 1 2 3 4 下一頁

關(guān)鍵詞: 1553B FPGA 總線 遠(yuǎn)程

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉