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

基于網(wǎng)絡控制的FPGA動態(tài)多重配置的設計與實現(xiàn)

2023-11-22 13:41:37安健何敏朱丹
現(xiàn)代信息科技 2023年19期

安健 何敏 朱丹

摘? 要:隨著FPGA在雷達、通信領域等信號處理的廣泛應用,F(xiàn)PGA資源成為限制信號處理算法工程應用的瓶頸。如何實現(xiàn)FPGA資源利用的最大化,成為工程上急需解決的問題。文章采用一種網(wǎng)絡控制命令觸發(fā)FPGA完成多重配置的方法,實現(xiàn)不同功能程序的切換。通過在信號處理板上的工程驗證,該方法具有可操作性、靈活有效,解決了實現(xiàn)不同程序需要重復燒寫程序的煩瑣步驟,節(jié)省了人力物力。同時可用較少的邏輯資源完成需要更多邏輯資源才能實現(xiàn)的算法功能,提高了FPGA的資源利用率,降低了硬件設計的復雜性,在工程應用上具有很大的參考意義。

關鍵詞:WIZ811MJ;多重配置;現(xiàn)場可編程門陣列;內(nèi)部配置訪問端口

中圖分類號:TP301;TN791? 文獻標識碼:A? 文章編號:2096-4706(2023)19-0059-05

Design and Implementation of FPGA Dynamic Reconfiguration and Multiboot

Based on Network Control

AN Jian, HE Min, ZHU Dan

(Sichuan Jiuzhou Electric Group Co., Ltd., Mianyang? 621000, China)

Abstract: Nowadays FPGA is used widely in signal processing of radar and communication domain, but FPGA resource has become the bottleneck in engineering application of signal processing algorithm. How to maximize the use of FPGA resource has become a problem which is needed to be resolved urgently. A method is applied to trigger FPGA to reconfigure and multiboot, and to switch different functional program in the paper. Through the engineering verification on the signal processing board, the method is easy to operate, flexible and effective. It solves the tedious steps of burning programs repeatedly to implement different programs, and reduces manpower and material resource. At the same time, the algorithm which needs more resource can be implemented to use less resource by this method. The method can improve availability of FPGA resource and reduce complexity of hardware design, and it also has great reference significance in engineering application.

Keywords: WIZ812MJ; reconfiguration and multiboot; FPGA; ICAP

0? 引? 言

在雷達、通信領域,信號處理技術日新月異,各種信號處理算法在FPGA中工程實現(xiàn),對FPGA中的邏輯資源需求提出了更高的要求[1]。當集成不同的軟件功能時,將會面臨邏輯設計復雜和邏輯資源不足的問題。如果把幾個不同軟件功能程序集成到同一FPGA上,隨著FPGA邏輯設計規(guī)模的增加,程序的復雜性有所增加,同時無法保證幾個軟件功能程序的數(shù)據(jù)通路及所使用的邏輯資源不會產(chǎn)生沖突。如果能,將會額外增加復雜的控制邏輯,影響整個程序的運行效率,同時增加了程序開發(fā)難度和工作量。而信號處理設備經(jīng)設計定型完成,具有固定的硬件架構、固定數(shù)量的FPGA資源,無法新增硬件來實現(xiàn)新增的軟件功能。應用軟件無線電的思想,針對信號處理新增的功能,要做到軟件可重構,實現(xiàn)不同功能程序軟件的切換[2]。通過FPGA動態(tài)多重配置,根據(jù)任務需求,分時將不同軟件功能的程序加載到FPGA,完成各自的任務。這個設計方式帶來了靈活的系統(tǒng)控制,同時也精簡了邏輯電路設計。同時還帶來了另一好處,可以使邏輯資源不夠的FPGA去實現(xiàn)需要更多資源才能實現(xiàn)的功能,提高了FPGA的資源利用率,實實在在降低了設計成本[3]。本文從基于網(wǎng)絡實現(xiàn)FPGA動態(tài)多重配置展開工程上的探索,將從網(wǎng)絡電路設計及實現(xiàn)、FPGA多重配置設計及實現(xiàn)、如何通過網(wǎng)絡觸發(fā)FPGA動態(tài)多重配置展開論述,對實現(xiàn)復雜電路設計具有一定參考意義。

1? 基于WIZ811MJ的網(wǎng)絡設計及實現(xiàn)

1.1? WIZ811MJ概述

WIZ811MJ為直插式網(wǎng)絡集成芯片,內(nèi)部集成了含TCP/IP芯片和PHY的W5100,帶變壓器RJ45的其他膠合邏輯MAG-JACK。WIZ811MJ可以作為一個獨立的集成芯片使用,不需要考慮W5100、變壓器、RJ45等電路與接口設計[4]。在需要快速開發(fā)網(wǎng)絡應用的場合,WIZ811MJ芯片可以充當性價比高的選擇方案。WIZ811MJ主要技術特點總結(jié)如下:

1)支持10/100 BASE TX、支持半/全雙工、支持自動協(xié)商和自動交叉檢測。

2)工作電壓為3.3 V,可以承受5 V I/O信號。

3)支持網(wǎng)絡狀態(tài)指示器LED-全雙工,TX,RX,連接等。

4)支持的內(nèi)置硬件互聯(lián)網(wǎng)絡協(xié)議包含TCP、IP Ver.4、UDP,ICMP、ARP,PPPoE,IGMP等。

5)同時支持4個獨立連接。

6)支持8位數(shù)據(jù)總線和SPI接口,支持直接/間接模式總線訪問、支持接口API供應用程序開發(fā)。

WIZ811MJ外形圖如圖1所示。

1.2? WIZ811MJ電路設計

WIZ811MJ共有40個引腳,包含兩列2.54 mm間距2×10排針接口,如圖1中的J1和J2所示。WIZ811MJ原理圖設計如圖2所示,除去電源和地等其他控制信號都與FPGA管腳連接。可以通過FPGA配置WIZ811MJ,實現(xiàn)網(wǎng)絡協(xié)議的實現(xiàn)。

1.3? WIZ811MJ網(wǎng)絡設計及實現(xiàn)

WIZ811MJ內(nèi)含W5100芯片,利用FPGA程序通過SPI接口配置W5100芯片通信套接字的模式寄存器,可以實現(xiàn)TCP、UDP、IP-RAW和MAC-RAW等網(wǎng)絡協(xié)議的數(shù)據(jù)通信[5]。本論文通過SPI接口,按圖3編寫FPGA狀態(tài)機程序控制W5100、實現(xiàn)UDP網(wǎng)絡協(xié)議[6]。實現(xiàn)UDP網(wǎng)絡協(xié)議的狀態(tài)機程序處理流程如圖3所示。

2? FPGA多重配置設計及實現(xiàn)

2.1? FPGA多重配置硬件設計

多重配置的硬件主要包括FPGA芯片和貯存配置文件的FLASH芯片。其中,F(xiàn)PGA選用Xilinx公司的XC5VSX50T-1ff665。Flash芯片選用XIlinx公司的BPIX16 Flash XCF128X,該芯片貯存空間為128 MB,數(shù)據(jù)位寬16 bit。實現(xiàn)多重配置需要將FPGA和外部配置儲存器連接為從BPI FLASH加載配置文件的模式。配置電路硬件原理圖如圖4所示。在FPGA配置模式中,M2,M1,M0為0,1,0[7]。

2.2? FPGA多重配置實現(xiàn)

FPGA在不掉電重啟的情況下,根據(jù)外部觸發(fā),具有多重配置的能力。FPGA可以根據(jù)不同時刻的任務需求,從FLASH中貯存的多版本功能程序中選擇加載對應版本的程序,實現(xiàn)系統(tǒng)功能的切換。FPGA實現(xiàn)多重配置是利用ICAP(Internal Configuration Access Port)端口配置一序列IPROG(Internal Program)命令來實現(xiàn)的。在Xilinx系列的FPGA中,ICAP是指內(nèi)部配置訪問端口,為Xilinx內(nèi)部原語。IPROG命令配置后的效果是拉低FPGA的INIT_B和DONE信號,觸發(fā)FPGA開啟初始化流程,如同在FPGA硬件引腳PROGRAM_B產(chǎn)生一個復位脈沖。完成復位操作后,加載貯存在熱啟地址寄存器(Warm Boot Start Address, WB-STAR)中的程序[8,9]。

目前為止,ICAP共有三個版本,UltraScale系列器件ICAP版本為ICAPE3原語,7序列FPGA ICAP版本為ICAPE2,7系列FPGA之前的對應的版本為ICAP。

本文采用Xilinx V5芯片,ICAP在程序中的例化如下[10]:

ICAP_VIRTEX5 #(

.ICAP_WIDTH("X32"

) ICAP_VIRTEX5_inst (

.BUSY(BUSY),

.O(O),

.CE(CE),

.CLK(CLK),

.I(I),

.WRITE(WRITE)

);

端口功能描述如表1所示。

本文采用FPGA程序狀態(tài)機控制ICAP原語的方式,按照一定順序的IPROG命令連續(xù)對ICAP原語進行配置,完成FPGA程序多重配置的實現(xiàn)。

IPROG序列命令具體的配置數(shù)據(jù)及含義如表2所示。

ICAP狀態(tài)機流程如圖5所示,以及Send IPROG具體步驟如圖6所示。

3? ?基于網(wǎng)絡的FPGA多重配置實現(xiàn)

3.1? ?網(wǎng)絡控制命令設計

考慮設計的信號處理板具有網(wǎng)絡功能以及板載FPGA具有多重配置功能,通過網(wǎng)絡控制命令,有機地結(jié)合二者的功能。通過上位機下發(fā)網(wǎng)絡控制命令,解析事先設計好的控制命令,觸發(fā)FPGA程序中的狀態(tài)機,動態(tài)使能FPGA多重配置功能,完成不同功能版本程序的切換。

在工程項目中事先設計好的控制命令,按16進制表示,如表3所示。

通過解析表3報文中類別號的值為2F以及版本號字段,觸發(fā)FPGA狀態(tài)機完成相應程序多重配置。

通過往上位機周期上報設計好的版本號自檢信息驗證功能版本程序是否正確切換,周期上報命令如表4所示。

通過查看版本號的值是否和設計一致,驗證程序多重配置的正確性。

3.2? 板級驗證

本文設計兩個功能程序,鑒于FLASH型號為BPI X16,地址空間為0x00000000~0x007FFFFF,其一功能程序為默認啟動程序,首地址固定為0x00000000,版本號記為01;其二功能程序首地址設計為0x00400000,版本號為02。整個動態(tài)多重配置功能是FPGA上電默認自動從外部BPI FLASH加載版本號為01的默認功能程序;當任務切換時,通過上位機下發(fā)一條表X網(wǎng)絡控制命令觸發(fā)FPGA開始重新配置,切換為版本號為02的功能程序。再次下發(fā)程序版本號01的切換命令,程序切換成功后,加載版本號為01的默認功能程序。

按照上述步驟,得到的結(jié)果圖如圖7所示。從圖7中周期上報的程序版本號可知,處理板上電時,啟動的是版本號為01的默認程序。通過表3的控制指令,F(xiàn)PGA啟動版本號02的功能程序,再通過表3的控制指令,F(xiàn)PGA重新回退到默認啟動程序。其中,信號處理板中的IP地址為10.1.1.104,端口號為5000,上位機的IP地址為10.1.1.100,端口號為5004。板級驗證的結(jié)果符合預期結(jié)果,程序跳轉(zhuǎn)功能正常,F(xiàn)PGA動態(tài)多重配置正確。

4? 結(jié)? 論

本文提出了一種基于WIZ811MJ的FPGA動態(tài)多重配置的設計及實現(xiàn)方法,選擇了一款可以簡單和快速設計網(wǎng)絡功能的芯片WIZ811MJ,配合FPGA的驅(qū)動程序,方便快捷的實現(xiàn)網(wǎng)絡功能。通過上位機發(fā)送網(wǎng)絡控制命令,觸發(fā)FPGA狀態(tài)機控制ICAP讀寫,動態(tài)地實現(xiàn)FPGA程序的多重加載。該方案省去了PHY芯片、網(wǎng)絡變壓器,RJ45,W5100等硬件設計,大大縮短了項目開發(fā)周期,降低了難度。通過網(wǎng)絡控制FPGA程序多重加載,具有很強的操作性和靈活性,避免了重復燒寫程序的尷尬處境,具有很高的工程應用價值,對實現(xiàn)復雜電路設計具有參考意義。

參考文獻:

[1] 何賓,張艷輝.Xilinx FPGA 數(shù)字信號處理系統(tǒng)設計指南:從HDL、Simulink和HLS的實現(xiàn) [M].北京:電子工業(yè)出版社,2019.

[2] 孟憲元.FPGA現(xiàn)代數(shù)字系統(tǒng)設計教程:基于Xilinx可編程邏輯器件與Vivado平臺 [M].北京:清華大學出版社,2019.

[3] 白云鵬,陳應兵,李凱,等.FPGA動態(tài)配置技術在復雜電磁環(huán)境模擬系統(tǒng)中的應用 [J].電子質(zhì)量,2021(4):108-111.

[4] WIZnet Inc.WIZ811MJ Datasheet Ver.1.1 [EB/OL].[2023-01-08].http://docs.wiznet.io/Product/ioModule/wiz811mj#datasheet.

[5] WIZnet Inc.W5100 DataSheet Version 1.2.8 [EB/OL].[2023-01-23].http://docs.wiznet.io/img/products/w5100/W5100_DS_V128E.pdf.

[6] 武振寧,吳凡.基于W5100的嵌入式網(wǎng)絡通信系統(tǒng) [J].電子元器件應用,2012,14(8):34-35+65.

[7] Xilinx Inc.7 Series FPGAs Configuration User Guide V1.16 UG470 [EB/OL].[2023-01-01].https://docs.xilinx.com/r/en-US/ug470_7Series_Config.

[8] 曹慧,程宏斌,汪洋,等.FPGA多重配置在LED顯示控制系統(tǒng)中的應用 [J].液晶與顯示,2020,35(5):456-463.

[9] Xilinx Inc.MultiBoot with 7 Series FPGAs and SPI V1.1 XAPP1247 [EB/OL].[2023-02-04].https://docs.xilinx.com/v/u/en-US/xapp1247-multiboot-spi.

[10] Xilinx Inc.Virtex-5 Libraries Guide for HDL Designs V 14.5 UG621 [EB/OL].[2023-01-20].https://www.amd.com/zh-cn/search/site-search.html#q=ug621.

作者簡介:安健(1987—),男,漢族,四川德陽人,工程師,碩士研究生,研究方向:雷達信號與信息處理。

收稿日期:2023-02-14

主站蜘蛛池模板: 新SSS无码手机在线观看| 91久久偷偷做嫩草影院精品| 黄色网页在线观看| av午夜福利一片免费看| 丰满少妇αⅴ无码区| 亚洲AV无码乱码在线观看代蜜桃| 成人免费黄色小视频| 97在线观看视频免费| 美女免费黄网站| 久久这里只精品国产99热8| 亚洲精品日产精品乱码不卡| 国产情精品嫩草影院88av| 成人永久免费A∨一级在线播放| 日本高清免费不卡视频| 一级毛片免费的| 亚洲天堂精品视频| 无码粉嫩虎白一线天在线观看| 久久无码av三级| 欧美中文字幕无线码视频| 国产特级毛片| 午夜福利亚洲精品| 成人噜噜噜视频在线观看| 亚洲成A人V欧美综合天堂| 美女一区二区在线观看| 男女性午夜福利网站| 亚洲妓女综合网995久久| 日本成人在线不卡视频| 超碰免费91| 久久国产精品影院| 国产香蕉在线| 亚洲综合第一区| 国产理论精品| 欧美另类视频一区二区三区| 99视频精品在线观看| 日本AⅤ精品一区二区三区日| 国产欧美日韩va另类在线播放 | 中文字幕伦视频| 免费国产一级 片内射老| 亚洲首页国产精品丝袜| 亚洲免费福利视频| 8090成人午夜精品| 欧美在线视频不卡| 欧美综合中文字幕久久| 亚洲最黄视频| 亚洲精品色AV无码看| 欧美三级不卡在线观看视频| 亚洲Aⅴ无码专区在线观看q| 91年精品国产福利线观看久久 | 色综合久久综合网| 日本91视频| 亚洲爱婷婷色69堂| 成人字幕网视频在线观看| 亚洲免费毛片| 欧美色图久久| 中文精品久久久久国产网址| 亚洲欧美国产高清va在线播放| 亚洲一区二区无码视频| 亚洲国产日韩视频观看| 亚洲一区二区在线无码| 亚洲无线国产观看| 四虎成人免费毛片| 国产在线精品99一区不卡| 又大又硬又爽免费视频| 精品自窥自偷在线看| 国产在线观看精品| 中文字幕欧美成人免费| 国产手机在线小视频免费观看| 国产女人18毛片水真多1| 538国产视频| 萌白酱国产一区二区| 成人在线第一页| 2018日日摸夜夜添狠狠躁| 久久综合成人| 亚洲一区二区三区香蕉| 亚洲成人一区在线| 午夜福利无码一区二区| 中文字幕亚洲综久久2021| 国产在线自乱拍播放| 色悠久久综合| 中文字幕永久在线看| 色天堂无毒不卡| 日韩高清在线观看不卡一区二区|