一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

AMD Artix 7 FPGA OTA在線升級的實現(xiàn)

OpenFPGA ? 來源:博客園-付漢杰 hankf ? 2023-05-17 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:付漢杰 hankf@amd.com

文章來源:博客園

測試環(huán)境

參考文檔

xtp226-ac701-multiboot-c-2015-1.pdf

ug470_7Series_Config.pdf

xapp1247-multiboot-spi.pdf

ug952-ac701-a7-eval-bd.pdf

ug1579-microblaze-embedded-design.pdf

Vitis Embedded Software Debugging Guide (UG1515)

測試單板

ac701

測試工具

Vivado 2022.2

Vitis 2022.2

Mutliboot

UG470 Reconfiguration and MultiBoot Overview

UG470中的介紹如下

The 7 series FPGAs MultiBoot and fallback features support updating systems in the field.
Bitstream images can be upgraded dynamically in the field. The FPGA MultiBoot feature enables
switching between images on the fly. When an error is detected during the MultiBoot configuration
process, the FPGA can trigger a fallback feature that ensures a known good design can be loaded
into the device.

AMD FPGA支持的MultiBoot特性,可以使FPGA先嘗試啟動最新的配置(bit)文件,后續(xù)稱為Update Bit。如果最新的配置文件出錯,再回退到安全的出廠版本的配置(bit)文件,后續(xù)稱為Golden Bit。

MultiBoot特性有兩種方式使能。第一種方式是在配置(bit)文件里嵌入IPROG命令,觸發(fā)MultiBoot特性。第二種方式是通過AXI HWICAP寫入IPROG命令,觸發(fā)MultiBoot特性。

配置(bit)文件嵌入IPROG命令

建議閱讀XAPP1247 的 “Table 1: MultiBoot Bitstream Properties”。

MultiBoot Bitstream Properties

在工程的約束文件中,加入下列設置,會自動在配置(bit)文件中插入IPROG命令。

set_property BITSTREAM.CONFIG.CONFIGFALLBACK Enable [current_design] 
set_property BITSTREAM.CONFIG.NEXT_CONFIG_ADDR 0x600000 [current_design] 
set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]

上述約束的NEXT_CONFIG_ADDR,根據(jù)實際的Flash分配情況設置。

對于AC701單板,也建議添加下列約束。

set_property BITSTREAM.CONFIG.CONFIGRATE 50  [current_design] 
set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4  [current_design] 
set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN div-1  [current_design] 
set_property BITSTREAM.CONFIG.SPI_FALL_EDGE YES  [current_design] 

set_property CONFIG_MODE SPIx4  [current_design] 
set_property CONFIG_VOLTAGE 3.3 [current_design] 
set_property CFGBVS VCCO [current_design] 

通過AXI HWICAP寫入IPROG命令

AMD提供IP,支持通過AXI總線,訪問ICAPE。

xtp226 也提供了硬件、軟件設計,它支持通過AXI HWICAP寫入IPROG命令,觸發(fā)FPGA重新加載。

golden_iprog_spi中的golden.c, 通過讀取AXI GPIO 0的狀態(tài),決定FPGA重新加載時使用的bit文件。AXI GPIO 0對應到AC701上的SW2。AXI GPIO 0的bit-0,也就是SW2的靠角落(DS23、SW4)的開關1在1的狀態(tài)(靠液晶屏、7A200T芯片側),則加載0x400000的bit文件。AXI GPIO 0的bit-0為0, bit-3為1(SW2的開關4)在1的狀態(tài),則加載0x800000的bit文件。

    status = GpioInputExample(XPAR_AXI_GPIO_0_DEVICE_ID, &DataRead);     
    if (status == 0) {
        xil_printf("GpioInput Read data:0x%X
", DataRead);
if ( (DataRead & 0x00000001) == 0x00000001 )
{
fpga_iprog(0x00400000); // IPROG to GOOD BITSTREAM ,must match address in .prm
}
if ( (DataRead & 0x00000008) == 0x00000008 )
{
fpga_iprog(0x00800000); // IPROG to cause configuration error
}
    }
    else {
        print("GpioInput FAILED.
");
    }

對比

第一種方式,通過配置(bit)文件嵌入IPROG命令,實現(xiàn)最簡單,占用資源也最少。但是只能支持一個Update Bit文件。

第二種方式,通過AXI HWICAP寫入IPROG命令,在下發(fā)IPROG命令前,可以任意指定Flash地址,非常靈活。但是需要嵌入MicroBlaze和AXI HWICAP,需要占用部分FPGA資源,也需要一點軟件開發(fā)。

Artix FPGA OTA 在線升級的流程

首先分配Flash的存儲空間。Flash里 0x0 地址存放Golden Bit;Flash里 0x400000 地址存放 Update Bit;其中0x400000需要根據(jù)壓縮后的bit文件大小修改。

因為生成Golden Bit時,使用了屬性“BITSTREAM.CONFIG.NEXT_CONFIG_ADDR”, Golden Bit啟動后會自動加載Update Bit。

因為生成Golden/Update Bit時,使用了屬性“BITSTREAM.CONFIG.CONFIGFALLBACK”, 任何Bit失敗后,都會自動加載Golden Bit。

Golden bit和 Update bit內(nèi)部都集成MicroBlaze、hwicap和Quad SPI Controller,都有在線升級bit的能力。


a. MicroBlaze通過Ethernet、PCIe、UART等,從外部獲得新的Update Bit。
b. MicroBlaze將新的Update Bit寫入Quad SPI的0x400000并校驗
c. MicroBlaze寫IProg命令到HWICAP,重啟動FPGA
d. FPGA使用新的Update Bit配置,之后Update Bit開始工作。

如果后來芯片斷電之后再上電,Update Bit能直接加載Update Bit。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1645

    文章

    22036

    瀏覽量

    618079
  • amd
    amd
    +關注

    關注

    25

    文章

    5585

    瀏覽量

    136307
  • OTA
    OTA
    +關注

    關注

    7

    文章

    611

    瀏覽量

    36549
  • bit
    bit
    +關注

    關注

    0

    文章

    48

    瀏覽量

    32442
  • Vivado
    +關注

    關注

    19

    文章

    834

    瀏覽量

    68712

原文標題:【干貨分享】AMD Artix 7 FPGA OTA 在線升級的實現(xiàn)

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Artix-7 50T FPGA試用體驗】xilxin Artix-7 系列FPGA相關特性

    性能的情況下,開發(fā)人員必須能夠擴展使用模式,以實現(xiàn)更高的處理帶寬、更高的可移植性以及更廣的應用范圍,同時使功耗這一關鍵資源保持最低。賽靈思 Artix?-7 系列 FPGA 重新定義了
    發(fā)表于 11-01 15:52

    STM32 OTA升級如何實現(xiàn)

    上次談到OTA,有小伙伴私信我表示對升級的原理感興趣?;叵氘敵跞肼毧吹組CU在線升級的代碼流程時,同樣感到很神奇,畢竟學生時代我們在MCU上開發(fā)基本不需要
    發(fā)表于 11-10 07:30

    什么是在線OTA升級

    什么是在線OTA升級- OTA是Over-the-Air的簡寫,空中下載技術的意思。- OTA在線
    發(fā)表于 12-22 07:44

    請問如何實現(xiàn)ESP32固件的OTA在線升級更新?

    什么是OTA?ESP32的OTA升級有哪幾種方式?如何實現(xiàn)ESP32固件的OTA在線
    發(fā)表于 01-14 06:05

    分享一項可在線OTA升級的嵌入式系統(tǒng)設計

    什么。小結OTA升級并不是什么很難理解的技術,簡單任務是一項軟件或系統(tǒng)采用無線升級的技術即可,類似于我們很多智能手機應用均可通過無線網(wǎng)絡實現(xiàn)在線升級
    發(fā)表于 03-21 14:00

    Xilinx Artix-7系列FPGA教程資料及設計實例_Artix 7開發(fā)板電路圖和例程

    低成本 FPGA實現(xiàn)最佳性能/功耗組合、AMS 集成、以及收發(fā)器線速。此系列為各類成本功耗敏感型應用提供最大價值,包括軟件定義無線電、機器視覺照相以及低端無線回傳。本專題匯集Artix-7
    發(fā)表于 08-04 09:23
    Xilinx <b class='flag-5'>Artix-7</b>系列<b class='flag-5'>FPGA</b>教程資料及設計實例_<b class='flag-5'>Artix</b> <b class='flag-5'>7</b>開發(fā)板電路圖和例程

    Artix-7 DSP性能演示

    Xilin新推出小型產(chǎn)品的Artix-7 FPGA,我們將向大家講解:Artix-7 DSP性能演示。
    的頭像 發(fā)表于 06-05 07:46 ?4713次閱讀

    Artix-7 功耗優(yōu)勢演示

    Xilinx推出新品小型產(chǎn)品的Artix-7 FPGA,我們將為大家講述:Artix-7 功耗優(yōu)勢演示。
    的頭像 發(fā)表于 06-04 13:47 ?4874次閱讀

    如何使用Artix-7 FPGA減少功耗

    在本視頻中,您將了解Artix-7 FPGA的整體系統(tǒng)功耗和成本。 我們將快速回顧一下Artix-7 FPGA架構,邏輯架構,第四代DSP48E1片,6.6 Gbps GTP收發(fā)器,
    的頭像 發(fā)表于 11-21 06:10 ?4106次閱讀

    digilent Nexys 4:Artix-7 FPGA訓練板介紹

    搭載Xilinx?最新Artix?-7 FPGA芯片的Nexys 4 Artix-7 FPGA訓練板是一個完整的,即用的數(shù)字電路開發(fā)平臺。相
    的頭像 發(fā)表于 11-14 16:33 ?9018次閱讀
    digilent Nexys 4:<b class='flag-5'>Artix-7</b> <b class='flag-5'>FPGA</b>訓練板介紹

    Artix-7 FPGA數(shù)據(jù)表下載

    Artix-7 FPGA數(shù)據(jù)表下載
    發(fā)表于 05-21 14:34 ?11次下載

    在線升級 | 物聯(lián)網(wǎng)中的OTA升級原理

    從最新的固件方式來看,可以分成以下幾類 0 1 OTA升級 1.1? 概念 OTA:Over-the-Air Technology,即空中下載技術。 OTA
    的頭像 發(fā)表于 02-03 02:40 ?1704次閱讀

    Artix 7 FPGA上使用Vivado的組合邏輯與順序邏輯

    電子發(fā)燒友網(wǎng)站提供《在Artix 7 FPGA上使用Vivado的組合邏輯與順序邏輯.zip》資料免費下載
    發(fā)表于 06-15 09:14 ?0次下載
    在<b class='flag-5'>Artix</b> <b class='flag-5'>7</b> <b class='flag-5'>FPGA</b>上使用Vivado的組合邏輯與順序邏輯

    在線升級 | 物聯(lián)網(wǎng)中的OTA升級原理

    從最新的固件方式來看,可以分成以下幾類01OTA升級1.1概念OTA:Over-the-AirTechnology,即空中下載技術。OTA升級
    的頭像 發(fā)表于 02-02 09:59 ?1889次閱讀
    <b class='flag-5'>在線</b><b class='flag-5'>升級</b> | 物聯(lián)網(wǎng)中的<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>原理

    AT32 MCU如何使用OTA通過USART實現(xiàn)對固件的在線升級更新

    AT32 MCU如何使用OTA通過USART實現(xiàn)對固件的在線升級更新
    的頭像 發(fā)表于 10-26 17:09 ?3328次閱讀
    AT32 MCU如何使用<b class='flag-5'>OTA</b>通過USART<b class='flag-5'>實現(xiàn)</b>對固件的<b class='flag-5'>在線</b><b class='flag-5'>升級</b>更新