cao死我好湿好紧好爽动态视屏|精选久久久久久久久久|中文无码精品一区二区三区四季|AAA国语精品刺激对白视频|

當(dāng)前位置:首頁 > 軟件開放 > 正文內(nèi)容

flash添加代碼(flash添加代碼跳轉(zhuǎn))

軟件開放8個月前 (05-22)436

本文主要包含MultiBoot的功能簡介、流程介紹和工程實現(xiàn)幾個部分的講解。

我們先從它的功能介紹講起來; MultiBoot功能是大部分Xilinx FPGA可以實現(xiàn)的固有特性;其主要優(yōu)點如下所示:

1、我們可以把多個bitstream存儲在配置Flash中,通過MultiBoot功能來實現(xiàn)多個bitstream之間的動態(tài)切換,從而達到使用FPGA來實現(xiàn)多種任務(wù);

2、在一個工程里面實現(xiàn)多個功能模塊,而每個功能模塊不需要同時運行的情況,可以通過MultiBoot功能使用相對小規(guī)模的FPGA來實現(xiàn)其功能,從而提高性價比;

3、MultiBoot和Fallback可以支持實現(xiàn)FPGA遠程在線升級,當(dāng)升級bit有錯誤可以觸發(fā)Fallback來返回到Golden Image去正常運行。

Golden Image里面正常會包含F(xiàn)PGA實現(xiàn)的基本功能,例如外設(shè)配置和初始化、遠程升級等等客戶需要的基本功能;如果Golden Image損壞的情況下,F(xiàn)PGA是無法工作的,需要返回工廠重新手動燒寫bit文件到Flash中。

Golden Image設(shè)計要求主要包含下面幾點:

1、IPROG(Internal program) command在Golden Image里面可以通過設(shè)置bitstream setting里面的next configuration address (BITSTREAM.CONFIG.NEXT_CONFIG_ADDR),或者在HDL代碼使用ICAPE3原語來設(shè)定加載地址值;通過設(shè)置BITSTREAM.CONFIG.NEXT_CONFIG_REBOOTDISABLE來把

IPROG command關(guān)掉,在這種情況下上電后會直接去加載Golden Image;

2、跳轉(zhuǎn)地址寄存器WBSTAR(warm boot start address)可以在bitstream或者ICAP里面來設(shè)定;

3、MultiBoot Image必須存儲在WBSTAR設(shè)置的Flash地址位置;

4、Watchdog timer包含configuration monitor和user logic monitor兩種模式;在配置模式下面,Timer times out情況下,配置電路會去加載fallback bitstream。Watchdog Timer可以在bitstream options里面使能。

Golden Image是從Flash中的0地址開始存儲;其幀頭會包括WBSTAR(next_config_addr)寄存器里面指定的upper address space等信息。FPGA器件上電后會從0地址開始加載Golden Image后,會根據(jù)里面的設(shè)定來決定加載Golden Image還是直接跳轉(zhuǎn)到MultiBoot Image存儲地址去執(zhí)行MultiBoot Image;當(dāng)MultiBoot Image加載時候遇到錯誤,F(xiàn)allback電路會觸發(fā)去重新從0地址去加載Golden Image。其流程如圖所示:

展開全文

MultiBootImage是從設(shè)定好的upper address space去加載運行;如果加載出現(xiàn)問題,F(xiàn)allback電路會去加載Golden Image。我們可以在Golden Image里面去修復(fù)Multiboot Image里面的錯誤等等問題。所以說MultiBoot Image里面運行的就是我們要實現(xiàn)的具體業(yè)務(wù)功能,可以是多個Multiboot Image。

Golden Image設(shè)計要求主要包含下面幾點:

1、WBSTAR里面的值要指向MultiBoot存儲位置;

2、Watchdog Timer功能要bitstream options里面使能;

3、代碼里面可以通過IPROG命令去運行ICAPE3來跳轉(zhuǎn)想要運行其他的MultiBoot Image。

MultiBoot加載流程如圖所示:

在配置過程中遇到IDCODE error、CRC error、Watchdog timer timeout error、BPI address wraparound error情況會觸發(fā)fallback。Fallback功能可以通過使能bitstream.config.configfallback enable里面的ConfigFallback選項來實現(xiàn)。當(dāng)fallback運行時,Watchdog Timer\IPROG是disable的;另外當(dāng)fallback重新配置FPGA出錯情況下,配置電路會停止工作同時會把INIT_B\Done保持為低電平。

MultiBoot功能可以通過設(shè)置下面bitstream里面的參數(shù)來實現(xiàn)。這些參數(shù)可以通過Tcl console或者寫入到XDC文件里面來實現(xiàn)其功能。

在前面介紹其功能作用和含義等等后,下面我們開始工程實現(xiàn)。

本人使用Vivado版本為2020.2;硬件基于米聯(lián)客設(shè)計的KU040板卡。先建立Golden Image的工程,里面包括HDL文件和XDC約束。

Golden Image的工程里面代碼主要是把led1燈點亮。XDC里面包括IO約束信息等等,其中0x040000是Multiboot Image存放Flash里面的物理地址。

Multiboot Image led2的工程里面代碼主要是把led1燈點亮。XDC里面包括IO約束和配置約束信息等等,可以看到是和Golden Image工程里面約束是有差異的。

在工程建立完成后開始合并bit文件并燒入到板卡里面:

1、使用下面tcl去把兩個bit文件合為一個mcs文件;

2、通過Hardware Manager去燒入到板卡的Flash中;

3、燒寫完成后選擇Boot from Configuration Memory Devive去加載FPGA。

flash添加代碼(flash添加代碼跳轉(zhuǎn))

4、在FPGA加載后可以看到板卡上面LED2燈點亮。

5、在Hardware Device Properties的BOOT_STATUS里面可以看到INTERNAL_PROG使能;由于加載沒有錯誤,目前運行的是Multiboot程序。CONFIG_SATUS里面可以看到DON_PIN拉高。

下面我們嘗試把 multiboot image里面的IDCODE修改掉,人為的造成錯誤來驗證板卡是否會跳轉(zhuǎn)到Golden Image去執(zhí)行。

1、使用UltraEdit把ku_multiboot_spix4.mcs打開后,搜索到Update.bit里面的KU040的IDCODE3822093,并把它修改為0;重新生成ku_multiboot_spix4 _id.mcs文件燒入到FPGA.

2、按照前面流程合成bit文件后燒入到Flash中并上電;

3、在FPGA加載后可以看到板卡上面LED1燈點亮;證明Fallback功能生效,當(dāng)Multiboot Image損壞后可以安全加載Golden Image。

4、 在Hardware Device Properties的BOOT_STATUS里面可以看到INTERNAL_PROG使能,ID_ERROR拉高;這時候Multiboot Image加載遇到ID錯誤,F(xiàn)PGA返回到Golden Image去運行。

我們可以再嘗試把 multibootimage其他部分破壞掉導(dǎo)致CRC出錯來驗證功能。

1、 使用UltraEdit把ku_multiboot_spix4.mcs打開后,在Update.bit里面做如下修改來驗證CRC錯誤情況。

2、 燒入到板卡上電后;由于multiboot image里面有CRC錯誤,所以板卡還是返回到Golden Image去運行。

除了前面我們在bitstream里面去實現(xiàn)Multiboot功能,我們還可以在代碼里面嵌入IPROG的命令來實現(xiàn)Image的跳轉(zhuǎn)功能。

代碼里面使用IPROG功能的流程如下圖所示:

我們可以在點亮LED2的那個工程來做相關(guān)修改:

1、 我們在點LED2燈的MultiBoot Image LED2工程里面加入ICAPE3代碼;

2、 根據(jù)前面命令流程圖在代碼里面實現(xiàn)其功能;其中Warm Boot Start Address要跟bit文件在Flash里面位置對應(yīng)起來,不然跳轉(zhuǎn)后會找不到對應(yīng)的image導(dǎo)致失敗。

3、 建立點亮MultiBoot Image LED3工程來配合前面IPROG命令功能;這樣可以通過MultiBoot Image LED2 工程里面的IPROG命令在FPGA不斷電的情況下實時把切換MultiBoot Image LED3到工程來點亮LED3。

4、 使用下面tcl去把兩個bit文件合為一個mcs文件;

5、 燒寫完成后選擇Boot from Configuration Memory Devive去加載FPGA,然后通過外置按鍵來執(zhí)行MultiBoot Image LED2 工程里面的IPROG命令去實現(xiàn)跳轉(zhuǎn)。

前面篇章對Xilinx的Multiboot進行簡介和工程實現(xiàn);主要參考文章有 UG574\UG974\XAPP1257等等。

如果您有此類問題需要討論或者需要實際工程驗證,請聯(lián)系我們:

simonyang@comtech.com.cn

charlesxu@comtech.com.cn

關(guān)注我們

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。

本文鏈接:http://www.smallwaterjetsystem.com/post/115798.html

“flash添加代碼(flash添加代碼跳轉(zhuǎn))” 的相關(guān)文章

夸克瀏覽器怎么看百度網(wǎng)盤倍速(怎么用夸克瀏覽器看百度網(wǎng)盤)

夸克瀏覽器怎么看百度網(wǎng)盤倍速(怎么用夸克瀏覽器看百度網(wǎng)盤)

今天給各位分享夸克瀏覽器怎么看百度網(wǎng)盤倍速的知識,其中也會對怎么用夸克瀏覽器看百度網(wǎng)盤進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、夸克用倍速看,視頻卡頓 2、夸克瀏覽器流暢播怎么用 3、百度網(wǎng)盤沒有vip怎么倍速 4、百度網(wǎng)盤里的視頻如何倍速...

大咖玩手游平臺下載(大咖玩應(yīng)用)

大咖玩手游平臺下載(大咖玩應(yīng)用)

今天給各位分享大咖玩手游平臺下載的知識,其中也會對大咖玩應(yīng)用進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、大型手機游戲下載平臺 2、破解版游戲盒子是什么? 3、手游接單平臺哪個好?靠譜么? 大型手機游戲下載平臺 可以去風(fēng)林手游下載看看福利手游AP...

安全教育平臺登錄入口登錄(安全教育平臺登錄入口登錄注冊)

安全教育平臺登錄入口登錄(安全教育平臺登錄入口登錄注冊)

今天給各位分享安全教育平臺登錄入口登錄的知識,其中也會對安全教育平臺登錄入口登錄注冊進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、安全教育平臺登錄賬號官網(wǎng)入口 2、2022年安全教育平臺登錄入口官網(wǎng) 3、安全教育平臺登錄入口:https://www...

茫洋數(shù)字藏品官網(wǎng)(茫洋數(shù)字藏品官網(wǎng)招聘)

茫洋數(shù)字藏品官網(wǎng)(茫洋數(shù)字藏品官網(wǎng)招聘)

本篇文章給大家談?wù)劽Q髷?shù)字藏品官網(wǎng),以及茫洋數(shù)字藏品官網(wǎng)招聘對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、ztag數(shù)字藏品官網(wǎng)怎么提現(xiàn) 2、目前最火的數(shù)字藏品平臺 3、沃野數(shù)字藏品官網(wǎng)怎么注銷 4、ztag數(shù)字藏品官網(wǎng)在哪看盲盒 5、比較靠譜的數(shù)字藏品平...

裝修拆除怎么接活(家裝拆除接活)

裝修拆除怎么接活(家裝拆除接活)

今天給各位分享裝修拆除怎么接活的知識,其中也會對家裝拆除接活進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、我是個裝修工怎么找活 2、裝修工在哪個平臺上可以接活? 3、來看看你身邊的裝修工人都是怎么找活的? 4、拆除工接活可以去什么網(wǎng)站? 我是...

正常心電圖和異常心電圖怎么看(正常心電圖和異常心電圖怎么看出來)

正常心電圖和異常心電圖怎么看(正常心電圖和異常心電圖怎么看出來)

今天給各位分享正常心電圖和異常心電圖怎么看的知識,其中也會對正常心電圖和異常心電圖怎么看出來進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、正常心電圖 2、如何看心電圖 3、心電圖怎么看 4、心電圖怎么看? 5、心電圖怎么看圖解上的數(shù)字正常值...