色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

ZYNQ的啟動流程

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2022-05-07 09:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近由于項目需要,要將bit文件固化到zedboard的flash中,使程序上電自啟,斷電不丟失。

我們知道,一般板級調(diào)試的時候都是直接下載bit流到FPGA就行,固化到Flash的話,也是先生成.mcs文件,然后下載到Flash即可。

但是在經(jīng)過反復(fù)嘗試之后,發(fā)現(xiàn)對zynq系列好像行不通。

why?這得從zynq的啟動流程說起。

一、ZYNQ的啟動流程

ZYNQ7000 SOC 芯片可以從 FLASH 啟動,也可以從 SD 卡里啟動, 本節(jié)介紹程序 FLASH 啟動的方法。Zynq7000 SOC 芯片上電后,最先運(yùn)行的是ARM端系統(tǒng)(PS)。然后再通過ARM系統(tǒng)軟件部分加載FPGA的比特流文件.bit至FPGA(PL),配置FPGA PL端的邏輯功能。ZYNQ 系統(tǒng)的啟勱流程如下:

ZYNQ啟動分為兩個階段

  • 第一階段是 BOOT ROM(ZYNQ廠家固化代碼)

  • 第二階段是 FSBL (First Stage Bootloader)SDK工具來制作。

經(jīng)過以上兩個階段,PL端配置程序及應(yīng)用程序才開始運(yùn)行。

1.1 第一階段 (BOOT ROM)

  • 上電后,Zynq7000 SOC 會首先執(zhí)行片內(nèi) Boot ROM 代碼,Boot ROM 代碼讀取 Boot mode 寄存器來判斷是哪一種啟動方式(SD card/QSPI Flash/JTAG)。

  • 確定好哪種啟勱方式后,Boot ROM 從相應(yīng)的啟動設(shè)備(SD Card/QSPI Flash)加載 First Stage Bootloader (FSBL) 到On Chip Memory(OCM) RAM,并且將執(zhí)行權(quán)交付給 FSBL。

1.2 第二階段 FSBL (First Stage Bootloader)

使用SDK 工具一步步生成 FSBL 代碼和可執(zhí)行文件,結(jié)合代碼可知 FSBL 主要做了如下工作:

  • 初始化 CPU,初始化串口;

  • Processor System (PS) 一些控制器的初始化,如 MIO, PLL, CLK and DDR;

  • 禁止 L1 Data Cache;

  • 注冊 ARM 中斷向量;

  • 通過 Boot mode 寄存器,判斷是哪種啟動方式。

1.2.1 QSPI Flash 啟動方式:

  • 初始化 QSPI Flash 控刢器;

  • 從 Flash 拷貝 system.bit 到 FPGA (如果 Flash 中存有 system.bit);

  • 從 QSPI Flash 拷貝應(yīng)用程序的代碼到DDR3;

  • 調(diào)轉(zhuǎn)到應(yīng)用程序執(zhí)行;

1.2.2 SD Card 啟動方式:

  1. 初始化 SD 控刢器;

  2. 從 SD Card 拷貝 system.bit 到 FPGA (如果 BOOT.BIN 中存有 system.bit);

  3. 從 SD card 拷貝應(yīng)用程序的代碼到 DDR3;

  4. 跳轉(zhuǎn)到應(yīng)用程序執(zhí)行;

1.2.3 JTAG 啟動方式,直接退出。

因此,對于Zynq系列的FPGA芯片來說,固化到Flash中的bit文件需要一個引導(dǎo)程序(也就是FSBL),才能被用來配置PL。實際上,F(xiàn)SBL會作為BootLoader和bit文件一起合成一個.bin或者.mcs文件,然后下載到Flash中,過程如下:

dfbfc284-cd9e-11ec-bce3-dac502259ad0.png

二、生成BOOT.bin或者BOOT.mcs

2.1 VIVADO操作

你應(yīng)該已經(jīng)有了一個完整的工程,接下來你需要添加并配置PS端,生成新的bit文件:

(1)建立一個新的塊設(shè)計(Create Block Design)

dfdaea82-cd9e-11ec-bce3-dac502259ad0.png

(2)添加ZYNQ7 Processing System

dff03734-cd9e-11ec-bce3-dac502259ad0.png

(3)雙擊所添加的zynq7,配置peripheral I/O,我們只保留Quad SPI Flash

e00a8058-cd9e-11ec-bce3-dac502259ad0.jpg

(4)在 Diagram 界面里點擊"Run Block Automation"完成對 ZYNQ7 Processing System IP核的配置,生成外部 ZYNQ 系統(tǒng)的外部鏈接 IO 管腳。

e024a776-cd9e-11ec-bce3-dac502259ad0.png

(5)在 Source 窗口中選中 design_1.bd,右鍵并先后選擇Generate Output Projects 和 Create HDL Wrapper 選項,生成頂層文件design_1_wrapper。

(6)在頂層文件中例化我們原來的工程;(特別注意:要將原來工程的外部引腳也例化為現(xiàn)在頂層工程的I/O,并配置好約束)。

(7)重新生成bit流。

(8)Export to Hardware(包含bitstram 文件),Launch SDK,暫時告別VIVADO,進(jìn)入SDK進(jìn)行操作。

2.1 SDK操作

(1)進(jìn)入SDK 開發(fā)環(huán)境后,點擊菜單 File -> New -> Application Project。

e05da774-cd9e-11ec-bce3-dac502259ad0.png

(2)點擊next,選擇Zynq FSBL

e071cbdc-cd9e-11ec-bce3-dac502259ad0.png

(3)接下去我們要把 FSBL 可執(zhí)行文件,F(xiàn)PGA PL的bit比特流文件和PS應(yīng)用程序結(jié)合成一個 Bin 文件或Mcs文件。

選擇菜單 Xilinx Tools->Create Boot Image:

e0874b74-cd9e-11ec-bce3-dac502259ad0.png

選擇output.bif的存放地址,選擇生成bin文件還是mcs文件,然后依次添加zynq_fsbl.elf(BootLoader)、bit文件、應(yīng)用程序elf文件(這個如果沒有可以省略),最終生成用于固化的bin或者mcs文件。

e09af78c-cd9e-11ec-bce3-dac502259ad0.jpg

(4)將生成的bin或者mcs文件下載到Flash(經(jīng)過驗證,這兩種類型的文件都可以

開發(fā)板上電,選擇菜單 Xilinx Tools->Program Flash:

e0ce526c-cd9e-11ec-bce3-dac502259ad0.png

加載文件:

e0e2f0d2-cd9e-11ec-bce3-dac502259ad0.png

(5)點擊Program,出現(xiàn)如下信息,則成功。然后斷電,切換板子的啟動方式,然后重新上電就會發(fā)現(xiàn)板子自動配置完成的燈亮了,搞定!

e0f66fd6-cd9e-11ec-bce3-dac502259ad0.png

注意:若出現(xiàn)以下信息,排除掉Jtag線纜的問題之后,可能的原因是之前同時連接過多個開發(fā)板,導(dǎo)致識別出來的芯片型號有不止一個,然后它就檢測到JTAG斷開(我就是這個問題)。

e10a64b4-cd9e-11ec-bce3-dac502259ad0.png

解決方法很簡單:關(guān)掉SDK,重新打開,重新Program Flash即可。

審核編輯 :李倩


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

    關(guān)注

    1646

    文章

    22059

    瀏覽量

    619117
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5437

    瀏覽量

    124701

原文標(biāo)題:二、生成BOOT.bin或者BOOT.mcs

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    詳解Zynq的兩種啟動模式

    Zynq-7000AP SOC器件有效利用了片上CPU來幫忙配置,在沒有外部JTAG的情況下,處理系統(tǒng)(PS)與可編程邏輯(PL)都必須依靠PS來完成芯片的初始化配置。 ZYNQ的兩種啟動模式:從BootROM主動
    發(fā)表于 08-02 09:33 ?2019次閱讀
    詳解<b class='flag-5'>Zynq</b>的兩種<b class='flag-5'>啟動</b>模式

    【Z-turn Board試用體驗】+板上資源Zynq7000啟動流程的學(xué)習(xí)

    做一遍也不害怕!Zynq7000,是一個可擴(kuò)展處理平臺,簡單說就是有個FPGA做外設(shè)的A9雙核處理器。所以,它的啟動流程自然也和FPGA完全不同,而與傳統(tǒng)的ARM處理器類似。Zynq7
    發(fā)表于 05-27 20:50

    【Z-turn Board試用體驗】+Zynq7000啟動流程介紹

    Zynq-7000 Extensible Processing Platform,是一個可擴(kuò)展處理平臺,簡單說就是有個FPGA做外設(shè)的A9雙核處理器。所以,它的啟動流程自然也和FPGA完全不同,而與
    發(fā)表于 07-22 20:42

    Zynq在非JTAG模式下的啟動配置流程

    是怎樣實現(xiàn)對自己的配置?  這也是本文將要和大家共同討論的問題?! ?b class='flag-5'>Zynq的啟動流程  在無 JTAG 的模式下,Zynq 是通過片上CPU完成對芯片的配置,也就是PS和PL的配置是
    發(fā)表于 01-08 16:33

    ZYNQ芯片開發(fā)流程的簡介

    PS和PL互聯(lián)技術(shù)ZYNQ芯片開發(fā)流程的簡介
    發(fā)表于 01-26 07:12

    Zynq在非JTAG模式下的啟動配置流程

    本文主要與大家分享了Zynq在非JTAG模式下的啟動配置流程,旨在讓大家對Zynq的三階段啟動模式有一個具體的認(rèn)識,希望大家多多交流。
    發(fā)表于 03-17 07:36

    ZYNQ嵌入式系統(tǒng)的開發(fā)流程

    部分的始發(fā)點。通過本次實驗我們將了解 ZYNQ 嵌入式系統(tǒng)的開發(fā)流程,熟悉 ZYNQ 嵌入式最小系統(tǒng)的搭建。本章包括以下幾個部分:1.1 簡介1.2 實驗任務(wù)1.3 硬件設(shè)計1.4 軟件...
    發(fā)表于 10-27 07:50

    ZYNQ學(xué)習(xí) —— 啟動流程分析及各環(huán)節(jié)文件生成流程(ZedBo

    網(wǎng)絡(luò)資料收集,關(guān)于啟動流程的一些注意點,關(guān)于開發(fā)板ZYNQ系列的包括MIZ702
    發(fā)表于 05-11 17:30 ?3次下載

    啟動流程分析及各環(huán)節(jié)文件生成流程(ZedBoard為例)

    1. ZYNQ啟動流程 Zynq7000就如同他的名字一樣,Zynq-7000 Extensible Processing Platfor
    發(fā)表于 02-09 09:52 ?1511次閱讀

    詳解zynq啟動步驟

    本文主要介紹zynq啟動過程,主要包括BootROM和FSBL等的執(zhí)行過程。
    發(fā)表于 10-27 10:47 ?7879次閱讀
    詳解<b class='flag-5'>zynq</b>的<b class='flag-5'>啟動</b>步驟

    ZYNQ開發(fā)雙核運(yùn)行原理及過程

    ZYNQ是一個可擴(kuò)展平臺,就是有FPGA作為外設(shè)的A9雙核處理器,它的啟動流程與FPGA完全不同,而與傳統(tǒng)的ARM處理器類似,ZYNQ啟動
    的頭像 發(fā)表于 12-05 10:48 ?6323次閱讀

    ZYNQ啟動流程介紹

    普通的 FPGA 一般是可以從 flash 啟動,或者被動加載,但是ZYNQ不行,ZYNQ必須PS端參與
    的頭像 發(fā)表于 07-22 10:10 ?8924次閱讀

    ZYNQ7020的PS端的基本開發(fā)流程

    這篇文章記錄ZYNQ7020的PS端的基本開發(fā)流程,關(guān)于PL端的開發(fā)流程,參考之前文章,這里放個超鏈接。
    的頭像 發(fā)表于 07-24 18:12 ?1.1w次閱讀

    Zynq在非JTAG模式下的啟動配置流程

    在無 JTAG 的模式下,Zynq 是通過片上CPU完成對芯片的配置,也就是PS和PL的配置是通過 PS 處理器 ARM 核來實現(xiàn)的。需要注意的是,與傳統(tǒng)的 Xilinx 7 系列 FPGA 芯片不同,Zynq 是不支持從 PL 端進(jìn)行直接
    的頭像 發(fā)表于 10-19 09:11 ?1684次閱讀

    Zynq-7000 SoC的安全啟動應(yīng)用說明

    電子發(fā)燒友網(wǎng)站提供《Zynq-7000 SoC的安全啟動應(yīng)用說明.pdf》資料免費(fèi)下載
    發(fā)表于 09-13 11:46 ?1次下載
    <b class='flag-5'>Zynq</b>-7000 SoC的安全<b class='flag-5'>啟動</b>應(yīng)用說明
    主站蜘蛛池模板: 视频一区国产在线二区 | 久久re这里视频精品8 | 精品久久久亚洲精品中文字幕 | 日本一区二区三区在线观看网站 | 午夜精品久久久久久久99蜜桃 | 免费看国产曰批40分钟 | 亚洲国产AV精品一区二区蜜芽 | 青草国产在线视频免费 | 亚洲乱码高清午夜理论电影 | 亚洲免费网站观看视频 | 亚洲精品国产高清不卡在线 | a一级毛片视频免费看 | 韩国甜性涩爱 | 国产精品v片在线观看不卡 国产精品v欧美精品v日韩 | 92国产精品午夜免费福利视频 | 最近中文字幕在线中文高清版 | 神马电影院午夜神福利在线观看 | 精品99久久久久成人网站 | 国产色精品久久人妻无码看片 | 日韩人妻无码精品久久中文字幕 | 无码内射成人免费喷射 | 伊人久久艹 | 亚洲色图p | 福利一区国产 | 菠萝菠萝蜜视频在线看1 | chinesedaddy80老年人 | 国产人在线成免费视频 | 亚洲精品国产品国语在线试看 | 熟女人妻-蜜臀AV-首页 | 舔1V1高H糙汉| 亚洲免费福利在线视频 | 久久99热只有频精品 | 另类重口bdsm日本tv | 91av欧美 | 女性酥酥影院 | 亚洲高清在线天堂精品 | 精品国产国产精2020久久日 | 国产精品观看视频免费完整版 | 吃胸亲吻吃奶摸下面免费视频 | 亚洲成人免费看 | 国产亚洲制服免视频 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品