999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA和HI6110的多通道1553B MT設計及實現

2016-09-09 02:51:15唐建鄧涵
電子設計工程 2016年16期
關鍵詞:信號

唐建,鄧涵

(1.中國兵器工業第58研究所 四川 綿陽621000;2.西南科技大學 四川 綿陽621000)

計算機技術與應用

基于FPGA和HI6110的多通道1553B MT設計及實現

唐建1,鄧涵2

(1.中國兵器工業第58研究所 四川 綿陽621000;2.西南科技大學 四川 綿陽621000)

針對傳統MIL-STD-1553B總線體積大、成本高的缺點,提出了一種基于FPGA和HI6110的多通道1553B MT設計方案。該方案將數據打包緩存在SDRAM中,外部設備通過PCI總線讀取SDRAM中的總線監視數據,并通過PCI接口對模塊進行配置,實現監視的啟動、停止、RT地址設置等。文中首先介紹了HI6110芯片功能特點,然后詳細描述了總線譯碼與轉換、HI6110接口邏輯與訪問仲裁、HI6110狀態監控與總線切換、信息幀獲取與緩存、內部功能寄存器等FPGA內部功能模塊及實現方法。應用結果表明:該方案具有低成本、集成高、方便擴展等優點。

1553B;HI6110;FPGA;總線監控器

MIL-STD-1553B總線已廣泛應用于航空航天等領域中,實現火力控制、雷達、導航等設備之間高可靠的互聯通信[1]。1553B總線有BC、RT、MT 3種功能節點。MT(Monitor Terminal,總線監控節點)可以對總線上所有的通訊行為及數據進行監視,可有效地獲得總線的工作狀態,以保證總線可靠運行,是總線搭建中必不可少的功能節點。在通常的設計方案中,MT節點一般都是由BU-61580模塊實現[2-3],無論是DDC還是國產兼容產品(XX-61580),該類模塊體積大、成本較高的缺點。

圖1 3通道1553B總線MT模塊

1 總線MT模塊介紹

MT模塊將消息幀加上時間戳、總線通道標識等數據打包緩存在SDRAM中。外部設備通過PCI總線讀取SDRAM中的總線監視數據,并通過PCI接口實現監視的啟動、停止、RT地址設置等模塊配置。MT模塊功能框圖如圖1所示。

HI6110完成1553B總線信號的解碼、協議解析,將正確的消息幀緩存在芯片內部,并通知FPGA。FPGA根據HI6110發送的信號,進行BUS A/B切換、幀緩沖讀取等操作,將消息幀、當前HI6110芯片的寄存器狀態信息、時間戳等存儲在內部RAM緩沖隊列中,并通知處理器PPC405EP。PPC405EP讀取RAM中的數據包隊列,并解析數據包中的寄存器值,對消息幀進行分類、標記、錯誤指示等處理,最后將消息幀存儲到容量更大的SDRAM中,等待PCI總線上的Master設備讀取。

2 HI6110芯片特點

HI6110芯片是HOLT公司生產的一款MIL-STD-1553B協議芯片芯片。采用CMOS工藝,單3.3 V供電,典型功耗僅為1 W[4]。其基本功能為:

1)可配置為BC/RT/MT模式。

2)芯片內部集成消息緩沖器(32字);

3)雙通道差分收發器,具備曼徹斯特編解碼及變壓器驅動功能;

4)兼容MIL-STD-1553B Notice 2和MIL-STD-1760標準。

5)有軍檔產品,工作溫度為-55~+125℃。

與BU-61580模塊相比,該芯片具有體積小、功耗低、價格便宜等的優點。但芯片唯一不足是芯片內部僅有1個消息幀緩沖器[5]。為保證信息處理的及時性,需要在HI6110外接一顆專用的處理器對芯片輸出的信號及時響應,當芯片配置為MT模式且總線活動頻繁時,芯片內部的消息緩沖如果不能及時處理,就會造成監控信息的丟失。本方案使用FPGA代替專用處理器,及時讀取消息幀并緩存在FPGA內部RAM中,有效地避免了HI6110幀緩沖的溢出。

3 FPGA功能設計

FPGA采用 Xilinx公司的 Spartan3芯片 XC3S400-5FT256I[6],采用3.3 V和1.8 V電源供電,BGA256封裝,外形尺寸為17×17 mm。

為了保證每片HI6110能被及時響應,將每一片HI6110 與FPGA單獨連接,這樣還可以減少總線復用邏輯,也能保證內部功能邏輯的相對獨立性。FPGA內部邏輯按照模塊化設計,采用VHDL/Verilog描述語言,整個設計采用自頂而下的設計方法,使用ISE+ModelSim軟件進行設計與仿真[7-10]。其邏輯功能框圖如圖2所示。

圖2 FPGA邏輯功能框圖

3.1總線譯碼與轉換

PPC405處理器帶有并行局部總線LocalBus,該部分邏輯對LocalBus總線的地址進行譯碼分配,為每個通道分配一定的尋址空間,并且又把每個通道訪問空間分為3個區域,對應著內部的3條總線,分別是對內部雙口RAM緩存的訪問總線HDM,對內部功能寄存器的訪問總線HFM,以及對HI6110寄存器的訪問總線HB。

另外,為了便于FPGA內部控制及訪問仲裁,將處理器的LocalBus總線[11]進行了轉換,將讀寫數據分離,并將總線實現為請求/應答模式。內部總線僅有 ADDR,RDATA,WDATA,BUSREQ,ACK,RW信號。

3.2HI6110接口邏輯與訪問仲裁

HI6110芯片的主機接口為16位并行總線接口,使用CSn, RnW,STRn,RA[2:0]和D[15:0]信號來實現外部對HI6110功能寄存器的訪問。與內部總RnW,STRn,RA[2:0]和D[15:0]信號來實現外部對HI6110功能寄存器的訪問。與內部總線信號并不完全一致,而且總線讀寫訪問的時序也有較大差異,需要進行接口訪問邏輯的轉換。

圖3 總線譯碼轉換時序圖

圖4 HI6110接口邏輯及仲裁訪問時序圖

另外,當HI6110監視到有效的消息幀時,FPGA邏輯中的幀獲取與緩存模塊需要占用HI6110的總線接口,對寄存器進行訪問。因此需要將PPC處理器的訪問與幀獲取模塊的訪問進行仲裁。仲裁原則為:當訪問BUSREQ同時發起時,PPC處理器訪問具有優先僅,此時幀獲取模塊的總線請求會被掛起,直到PPC處理器的訪問完成后才能被處理響應。

3.3HI6110狀態監控與總線切換

依照HI6110芯片的工作特點,當1553B總線上出現了有效的幀信號時,芯片會通過有效信號RCVA/B或RCVCMDA/B來表示是AB通道中哪個通道中有信息幀,并指出該幀信號為數據幀還是命令幀。此時,主機應根據RCV 和RCVCMD信號的狀態,對HI6110的控制寄存器操作,寫入正確的控制字,配置好工作通道,才能保證總線上的信號被正確的獲取并解碼。本設計中,主機的角色由FPGA來充當,內部采用狀態機來實現。其工作狀態圖如圖5所示。

圖5 總線監視與A/B冗余切換邏輯狀態圖

當FPGA監控到RCV或者RCVCMD信號發生了變化,狀態機由IDLE狀態遷移到RCV后再轉變為READ狀態,發起對HI6110的讀操作,將控制寄存器值讀出,若當前收到的是命令幀,那么還需要遷移到WAIT_RCV狀態中等待控制器發出有效的RCV信號,然后將讀回的控制寄存器值的總線選擇位置為正確的值,發起對HI6110控制寄存器的寫操作,從而完成AB總線的切換工作。接下來,狀態機判斷FFEMPTY信號,該信號表示HI6110內部的幀緩存是否有數據。若不為空,則進入RFIFO狀態將緩存中的數據一一讀出,直到緩存被讀空 (FFEMPTY=1)為止,然后狀態機轉變為REGCAP狀態,等待done=1并回到IDLE狀態,done信號為1表示當前總線活動中所有HI6110寄存器的值已經全部被讀取并保存完畢。

3.4信息幀獲取與緩存

在FPGA內部使用BRAM塊實現了一個512x16bit的雙口RAM[12],用于完成信息幀的緩存以及PPC主機與內部幀獲取模塊之間的數據交換。為了防止雙口RAM數據訪問的沖突,避免數據出錯,將整個RAM分為8個數據塊,形成一個環形的緩沖區,循環寫入。每個塊共64字,其數據格式定義如表1所示:

幀獲取模塊在監測到總線上的每一次總線活動后,將當前時間、當前HI6110寄存器的值以及數據FIFO中的數據按上述格式寫入到數據塊中,然后將FLAG標識置為0x55AA,表示一個信息已準備好,PPC處理器通過HDM總線把數據塊讀取后,將FLAG標識置為0x0000,表示該數據塊可被再次寫入。內部邏輯仍采用有限狀態機來實現,狀態圖如圖如示。

表1 環形緩存存儲塊數據定義與分配

圖6 幀獲取模塊功能狀態圖

如圖6所示,rcvint信號是工作在MT模式的HI6110芯片監測到總線上有幀時產生的,同時該信號還將內部的計數器值記錄下來做為時間戳。內部邏輯在 rcvint=1后進入CHK_FLG狀態,檢查雙口RAM中是否有可用的空閑數據塊。若有的話首先將時間戳寫入,然后是寫入控制字CW,接下來是讀取HI6110的數據FIFO,當FIFO中有數據時就讀出并寫入RAM中,直到當valmess=1或者error=1時,才表示總線上信息幀已完成。接下來是讀取其它寄存器,包括狀態寄存器、錯誤寄存器、信息幀寄存器、子地址寄存器等。最后是寫入HI6110控制器的FIFO中數據個數,然后將FLAG置為有效。這樣就完成了一個信息的處理。在對HI6110進行寄存器的讀取時,有一點需要注意,讀取的地址順序最好是按照0x00,0x01,0x02,0x06進行,模擬主機軟件的處理流程進行,否則可能會造成讀取的寄存器不正確。

3.5內部功能寄存器

該功能模塊實現了幾個功能寄存器,主要用于完成時間戳的初始化,讀取中斷狀態、復位HI6110以及對HI6110輸出的信號如RCV、VALMESS、ERROR等信號變化進行統計計數,配合PPC405上的軟件完成雙口RAM中數據的讀取,并進行一定的比對和檢查。

3.6中斷產生及數據傳輸

FPGA邏輯產生了2類中斷,第1種是RCV中斷,也即是當1553B總線上一旦有了數據幀時就產生中斷。第2種是VALMESS或ERROR中斷,這種中斷是在1553B總線上一幀數據傳送完畢后才產生。

圖7 VALMESS及ERROR信號產生示意圖

從圖7可以清楚的了解到這2種中斷的差異[3]。在實際應用中,響應RCV中斷來操作雙口RAM,以保證有空余的緩沖塊供內部幀獲取邏輯使用。而使用VALMESS中斷來讀取最新的幀數據。

3.7資源占用

使用Xilinx 9.1進行綜合、布局布線,各項設置為默認值default。3通道實現占用資源如表2所示。

表2 FPGA資源占用情況

4 軟件工作流程

PPC405EP處理器運行vxWorks 5.5多任務實時操作系統[13-15]。上電進入操作系統后,首先進行初始化工作,完成如下工作:

1)初始化HI6110,使其工作在MT模式下。

2)對FPGA初始化,對內部雙口RAM進行初始化;

3)根據系統時間,設置時間戳;

4)初始化處理器中斷控制器,掛接中斷服務函數;

5)初始化PCI接口,完成PCI空間內存映射等工作;

6)創建并啟動上位機命令處理任務;主要實現對上位機命令的解析,完成對總線監控的啟動、停止、狀態報告、時間同步等功能;

7)創建數據幀處理任務;主要實現對從雙口RAM讀取數據幀,對數據幀進行處理,打包,傳輸等功能。

初始化工作完成后,上位機會通過PCI總線與PPC405處理器交換信息,完成內部計時器的初始化,然后啟動總線監控。當所監控的總線有總線活動時,FPGA會自動完成信息幀的讀取并緩存在內部雙口RAM中,然后向PPC處理器發起中斷。中斷服務程序響應中斷,讀取雙口RAM中的數據,經過數據幀處理任務的再次處理,將數據包存放在處理器的SDRAM中,然后再通知上位機,利用PCI總線的高速性能將多個通道的1553B監控數據傳輸到上位機中。

5 結 論

文中實現了一個CPCI 3U的板卡,PPC405EP處理器運行頻率為300 MHz,內存容量128 MB,對3路1553B總線同時進行了長時間的監控,未出現掉幀,錯幀的現象。實踐證明,使用FPGA和HI6110芯片組建的1553B總線MT模塊,具有成本較低,體積小的特點。另外,利用FPGA內部邏輯自動完成總線切換、數據緩存等功能,還極大地降低了對處理器性能的要求。

[1]MIL-STD-1553 Designer's Guide.sixth edition[DB/OL]. ILC Data Device Corporation(DDC).1998.http://www.ddcweb.com.

[2]鄧林,戎蒙恬.基于BU-61580的MIL-STD-1553B總線設計[J].信息技術,2014(2):194-197.

[3]周遠林,吳忠,丑武勝.基于BU-61580的1553B總線接口設計[J].計算機工程與應用,2010,46(35):65-68.

[4]HI6110 MIL-STD-1553/MIL-STD-1760 BC/RT/MT Message Processor.Rev.S[DB/OL].HOLT Integrated Circuits Inc.2013. 09.http://www.holtic.com.

[5]陳偉,嚴發寶,張京,等.一種基于HI6110的1553B BM板卡設計方法[J].兵工自動化,2011,30(9):81-82.

[6]Spartan-3 FPGA Family Data Sheet.Xilinx[DB/OL].2013.7. http://www.xilinx.com.

[7]王誠,薛小剛,鐘信潮.FPGA/CPLD設計工具—Xilinx ISE 5.x使用詳解[M].北京:人民郵電出版社,2003.

[8]邊計年,薛寵熙.用VHDL設計電子線路[M].北京:清華大學出版社,2001.

[9]MiChael D.Ciletti,等.Verilog VHDL高級數字設計[M].張雅綺,李鏘等,譯.北京:電子工業出版社,2005.

[10]ModelSim SE User's Manual,v10.2[DB/OL].Mentor Graphics Corporation.2013.2.http://www.mentor.com.

[11]PPC405EP PowerPC 405EP Embedded Processor Data Sheet [DB/OL].AMCC.2007.9.http://www.apm.com.

[12]LogiCORE FIFO Generator v3.2 User Guide[DB/OL].Xilinx. 2006.9.http://www.xilinx.com.

[13]朱江,王耀南,許海霞.PPC405EP在電力監測系統中的應用[J].電子設計工程,2007(10):29-33.

[14]師于杰.基于vxWorks實時系統的CompactPCI平臺高可用系統研究[D].西安電子科技大學,2006.

[15]武華,劉軍偉.基于VxWorks的多任務程序設計[J].計算機技術與發展,2011,21(9):88-91.

Design and implementation of multi-channel 1553B MT based on FPGA and HI6110

TANG Jian1,DENG Han2
(1.No.58 Research Institute of China Ordnance Industries,Mianyang 621000,China;2.Southwest University of Science and Technology,Mianyang 621000,China)

According to the traditional MIL-STD-1553B with large volume,high cost of shortcomings,a multi-channel 1553B MT based on FPGA and HI6110 is proposed.The data is cached in SDRAM;external devices read the data in SDRAM,and configuration the module through PCI BUS,which realize monitoring start,stop,RT ID Settings,etc.This paper first introduces the HI6110 chip function characteristics,and then describes in detail BUS decoding and transformation,HI6110 interface logic and access to the arbitration,HI6110 condition monitoring and bus switching,information acquisition and caching,internal function registers such as the FPGA function module and realization method.The application shows that the design has the advantages of low cost,high integration and easy to extend,etc.

1553B;HI6110;FPGA;Monitor Terminal(MT)

TN02

A

1674-6236(2016)16-0001-04

2016-05-08稿件編號:201605065

國家自然科學基金項目(61133016)

唐 建(1978—),男,四川射洪人,碩士,高級工程師。研究方向:嵌入式計算機應用。

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 欧美成人综合视频| 亚洲精品在线91| 国产在线观看91精品亚瑟| 9丨情侣偷在线精品国产| 精品国产免费观看一区| 亚洲人成成无码网WWW| 国产尹人香蕉综合在线电影| 国产在线小视频| 久久久成年黄色视频| 欧美69视频在线| 国产精品吹潮在线观看中文| 日韩小视频在线观看| 99福利视频导航| 国产网友愉拍精品视频| 刘亦菲一区二区在线观看| 婷婷成人综合| 欧美天天干| 中字无码精油按摩中出视频| 日韩欧美中文在线| 69av免费视频| 亚洲精品国产乱码不卡| WWW丫丫国产成人精品| 青草视频久久| 91丝袜美腿高跟国产极品老师| 亚洲国产精品一区二区第一页免 | 婷婷亚洲最大| 亚洲日本在线免费观看| 91成人免费观看在线观看| 精品无码国产自产野外拍在线| 欧美国产综合色视频| 欧美精品H在线播放| 九九热精品免费视频| 亚洲美女AV免费一区| 国产网站在线看| 国产毛片高清一级国语| 欧美一级黄色影院| 亚洲大学生视频在线播放| 亚洲AV成人一区国产精品| 日韩大片免费观看视频播放| 成人在线亚洲| 国产福利一区二区在线观看| 久久久久久尹人网香蕉 | 成人在线不卡视频| 综合社区亚洲熟妇p| 欧美福利在线播放| 97色伦色在线综合视频| 亚洲日韩国产精品综合在线观看| 日本不卡在线视频| 黄片在线永久| 亚洲最黄视频| 国产麻豆91网在线看| 国产91在线免费视频| 精品伊人久久大香线蕉网站| 欧美亚洲国产一区| 久久国产精品电影| 免费a级毛片18以上观看精品| 亚洲va精品中文字幕| 少妇精品在线| 日本一本在线视频| 亚洲伊人天堂| 国产真实乱人视频| 日韩二区三区| 中文精品久久久久国产网址| 巨熟乳波霸若妻中文观看免费 | 国产性爱网站| 日韩国产亚洲一区二区在线观看| 国产麻豆aⅴ精品无码| 亚洲午夜国产精品无卡| 国产91九色在线播放| 亚洲午夜国产精品无卡| 久久一级电影| 欧洲极品无码一区二区三区| 亚洲成人免费在线| 91麻豆国产在线| 亚洲精品中文字幕午夜| 亚洲国语自产一区第二页| 亚洲三级视频在线观看| 久草视频精品| 国内精品一区二区在线观看| 最新精品久久精品| 欧美a在线视频| 国产chinese男男gay视频网|