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

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

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

3天內不再提示

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

ZYNQ ? 來源:ZYNQ ? 作者:ZYNQ ? 2022-10-19 09:11 ? 次閱讀

Zynq的JTAG配置過程

初學 Zynq 的時候,我相信大家應該和我一樣,都是按照慣例打開 Vivado 軟件,然后實現 Zynq 可編程邏輯硬件部分PL的設置后,把硬件部署導出,再打開 SDK 進行 ARM 核的軟件部分 PS 編程設計,最后再將硬件比特流文件(.bit)和軟件的可執行鏈接文件(.elf)下載到 Zynq 開發板中,這樣就可以對自己的軟硬件設計進行調試和驗證。這種設計方式可以用下面的圖很好的描述:

如上圖所示,這其實是剛接觸 Zynq 軟硬件設計時需要了解的最基本開發流程,也是PL和PS設計結合的完美體現。但是,上述開發的過程都有一個基本的前提,就是 Zynq 開發板是通過 JTAG 直接與電腦相連,然后實現程序的下載。從另一個角度來說,PL和PS的配置都可以認為是電腦主機通過 JTAG 完成的。但是,在實際中,Zynq 開發板不可能實時與電腦連接,當 JTAG 不起作用時,Zynq 芯片是怎樣實現對自己的配置?這也是本文將要和大家共同討論的問題。

Zynq的啟動流程

在無 JTAG 的模式下,Zynq 是通過片上CPU完成對芯片的配置,也就是PS和PL的配置是通過 PS 處理器 ARM 核來實現的。需要注意的是,與傳統的 Xilinx 7 系列 FPGA 芯片不同,Zynq 是不支持從 PL 端進行直接啟動配置的,一定要通過 PS 部分來完成。

Zynq 的具體啟動配置是分級進行的,一共可以分為3個階段,可以用0~2來表示:

Stage 0:BootROM 階段

Stage 1:FSBL (First Stage Boot loader)階段

Stage 2:SSBL (Second Stage Boot loader)階段

熟悉 ARM 開發的小伙伴應該對上面的啟動過程感到很熟悉,但又有陌生的地方。不用急,下面對這三個階段進行詳細的分析。

Zynq啟動階段0——BootROM

階段0,又稱為 BootROM 階段。ROM 相信大家都知道,Read-Only Memory,只讀存儲器的意思;而 Boot 是引導的含義,所以 BootROM 從字面的意思來看,就是只能去讀取的引導存儲器。實際上,BootROM 的作用和它的字面意思完全一樣,就是指 ARM 核在上電之后,需要第一時間去讀取 BootROM 中固化的程序,完成對芯片的最初始化的配置。因為是只讀的,所以根據 ROM 的性質,BootROM 中的程序是無法修改的。有的朋友會問BootROM 這一部分代碼主要完成了對 Zynq 的哪些配置?

在具體說明 BootROM 進行哪些配置之前,先要描述一下關于 Zynq 的啟動引腳配置。Zynq 擁有5個可以進行配置的 MIO 引腳,是 MIO[6:2],在硬件形式上就表現為5個跳線帽,可以分別接 GND 或 3V3 的高電平。它們的作用如下:

MIO[2] :選擇 JTAG 模式

MIO[5:3] :選擇啟動方式,包括 SD 卡,QSPI Flash 等

MIO[6] :PLL 使能控制

通過不同的引腳作用說明可以發現,當 JTAG 不起作用是,就需要通過改變 MIO[5:3] 的連接來實現從 SD 卡等不同的存儲介質啟動。

而 BootROM 最重要的作用就是通過讀取 MIO[6:2] 的引腳配置情況,決定從何種介質中加載階段1需要使用的啟動鏡像。當然在加載之前,BootROM 會先完成對 SD 卡,NAND,NOR,QSPI Flash 等的初始化,從而使得ARM 核能夠成功訪問并使用這些外設。BootROM 在完成以上任務的同時,也會對安全模式等運行模式進行配置,這部分博主暫時不太了解,所以不做過多敘述。

BootROM 在從外部存儲設備讀取了啟動鏡像后,通常會把它進行加載到 OCM 中。OCM,On Chip Memory,是Zynq 中 ARM 內核的片上存儲器,也叫片上內存。自此之后,BootROM 階段的啟動任務就算是圓滿結束了,接下來 BootROM 階段就把控制權轉移到了階段1手中。

注:BootROM 階段不對 PL 進行配置

Zynq啟動階段1——FSBL

FSBL,(First Stage Boot Loader),就是 BootROM 加載到 OCM 中的啟動鏡像。FSBL 完成的任務是 Zynq 啟動過程中的關鍵一環,可以分為以下4項:

完成 PS 的初始化

加載 PL 的bit流文件,完成 PL 配置

加載 SSBL 引導程序或是ARM的裸跑程序到 DDR

跳轉執行 SSBL 或裸跑程序

FSBL 的任務如上所示,整個思路還是非常清晰的。第1步就是對 PS 端初始化,包括 DDR,MIO 等。第2步就是PL的配置,也就是傳統的 FPGA 下載 bit 流的過程,但要注意的是,在 Zynq 的非 JTAG 模式下,PL 是無法直接自行配置的。第3步是加載 SSBL 或裸跑程序到 DDR 內存中,其中 SSBL,Second Stage Boot Loader,是在 Zynq 需要運行操作系統時才進行加載。而像我們入門學習時做的點亮 LED 燈實驗,就只是屬于裸跑程序。最后第4步,ARM 會跳轉到 DDR 中執行所加載的程序。所以 FSBL 階段的運行思路是很好理解的。

Zynq啟動階段2——SSBL

SSBL 在 Zynq 的啟動過程中是可選的一個階段,就像所提到的點亮 LED 實驗,包括一些其他的比較小型的程序,如果不需要用到操作系統的話,那么 Zynq 的啟動流程到 FSBL 階段就足夠了。因此,SSBL 是面向于需要運行操作系統的應用場合。相信熟悉操作系統啟動知識的朋友到這里應該很清楚了,SSBL 就是操作系統在啟動過程中的引導程序 boot loader。對于 Linux 而言,Zynq 的 SSBL 階段和 u-boot 的作用是相同的。具體來說,SSBL 的作用就是將 Zynq 所需要的操作系統加載到 DDR 內存之中。

到此,Zynq 的啟動與配置就算完成了。Zynq 啟動過程其實與傳統的 ARM 開發過程類似,區別就在于它是PS + PL 的架構,所以在啟動過程中,額外需要加載二進制 bit 流文件。Xilinx 將 Zynq 的啟動劃分為3個階段,從結構上看也是科學合理的。

總結

本文主要與大家分享了 Zynq 在非 JTAG 模式下的啟動配置流程,旨在讓大家對 Zynq 的三階段啟動模式有一個具體的認識,希望大家多多交流。

審核編輯:彭靜
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • JTAG
    +關注

    關注

    6

    文章

    399

    瀏覽量

    71673
  • 存儲設備
    +關注

    關注

    0

    文章

    164

    瀏覽量

    18586
  • Zynq
    +關注

    關注

    10

    文章

    609

    瀏覽量

    47175

原文標題:zynq配置成jtag模式,啟動與配置過程詳解

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

收藏 人收藏

    評論

    相關推薦

    淺談ZYNQ的三種啟動方式-JTAG、SD card、Flash

    是可以在線調試,缺點是斷電后程序就丟失了。為了解決程序丟失的問題,可以制作鏡像文件燒寫到sd卡或者flash中,上電即可加載程序。 ZYNQ有兩大類啟動模式:從BootROM主動啟動
    的頭像 發表于 12-26 10:08 ?9061次閱讀
    淺談<b class='flag-5'>ZYNQ</b>的三種<b class='flag-5'>啟動</b>方式-<b class='flag-5'>JTAG</b>、SD card、Flash

    詳解Zynq的兩種啟動模式

    Zynq-7000AP SOC器件有效利用了片上CPU來幫忙配置沒有外部JTAG的情況,處理系統(PS)與可編程邏輯(PL)都必須依靠
    發表于 08-02 09:33 ?1493次閱讀
    詳解<b class='flag-5'>Zynq</b>的兩種<b class='flag-5'>啟動</b><b class='flag-5'>模式</b>

    通過JTAG啟動Linux的方法和腳本

    AMD SoC 器件(AMD Zynq 7000 SoC,AMD Zynq UltraScale+ MPSoC,AMD Versal Adaptive SoC),常見的啟動方式是
    的頭像 發表于 12-22 10:27 ?1496次閱讀
    通過<b class='flag-5'>JTAG</b><b class='flag-5'>啟動</b>Linux的方法和腳本

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

    具體流程吧1.器件上電運行后,處理器自動開始Stage-0 Boot,也就是執行片內BootROM中的代碼2.BootROM會初始化CPU和一些外設,以便讀取下一個啟動階段所需的程
    發表于 07-22 20:42

    JTAG如何允許我在任何啟動模式編程QSPI?

    任何人都可以幫助解決基于zynq的設備上的問題編程QSPI閃存問題。我們使用xc7z020 zynq設計了一塊電路板。我的第一塊板具有JTAG模式
    發表于 06-09 10:20

    ZynqJTAG模式啟動配置流程

      本文主要與大家分享了 Zynq JTAG 模式
    發表于 01-08 16:33

    ZynqJTAG模式啟動配置流程

    本文主要與大家分享了ZynqJTAG模式啟動
    發表于 03-17 07:36

    詳細解讀Zynq的三種啟動方式(JTAG,SD,QSPI)

    本文介紹zynq上三種方式啟動文件的生成和注意事項,包括只用片上RAM(OCM)和使用DDR3兩種情況。 JTAG方式 JTAG方式是調試中最常用的方式,
    發表于 11-10 14:49 ?1.4w次閱讀
    詳細解讀<b class='flag-5'>Zynq</b>的三種<b class='flag-5'>啟動</b>方式(<b class='flag-5'>JTAG</b>,SD,QSPI)

    ZYNQ 7系列FSBL的啟動過程與配置方法

    ZYNQ 7系列所有可編程器件均可以安全模式通過靜態存儲器配置或者
    發表于 11-17 10:25 ?2.5w次閱讀
    <b class='flag-5'>ZYNQ</b> 7系列FSBL的<b class='flag-5'>啟動</b>過程與<b class='flag-5'>配置</b>方法

    ZYNQ啟動原理和配置

    ps的控制,可以實現安全或安全的配置所有ps和pl。通過zynq提供的JTAG接口,用戶可
    的頭像 發表于 05-15 11:41 ?7750次閱讀
    <b class='flag-5'>ZYNQ</b>的<b class='flag-5'>啟動</b>原理和<b class='flag-5'>配置</b>

    FPGA JTAG配置模式詳細說明

    賽靈思公司的FPGA芯片具有IEEE 1149.1/1532協議所規定的JTAG接口,只要FPGA上電,不論模式選擇管腳M[1:0] 的電平,都可用采用該配置模式
    發表于 12-31 17:30 ?13次下載
    FPGA <b class='flag-5'>JTAG</b>的<b class='flag-5'>配置</b><b class='flag-5'>模式</b>詳細說明

    Zynq JTAG 模式啟動配置流程

    初學 Zynq 的時候,都是按照慣例打開 Vivado 軟件,然后實現 Zynq 可編程邏輯硬件部分PL的設置后,把硬件部署導出,再打開 SDK 進行 ARM 核的軟件部分 PS 編程設計,最后再將
    的頭像 發表于 02-08 11:48 ?1358次閱讀
    <b class='flag-5'>Zynq</b> <b class='flag-5'>在</b><b class='flag-5'>非</b> <b class='flag-5'>JTAG</b> <b class='flag-5'>模式</b><b class='flag-5'>下</b>的<b class='flag-5'>啟動</b><b class='flag-5'>配置</b><b class='flag-5'>流程</b>

    ZYNQ啟動流程

    ZYNQ7000 SOC 芯片可以從 FLASH 啟動,也可以從 SD 卡里啟動, 本節介紹程序 FLASH 啟動的方法。Zynq7000
    的頭像 發表于 05-07 09:41 ?6495次閱讀

    ZYNQ啟動流程介紹

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

    使用JTAG仿真器查看ZYNQ當前啟動模式

    本文介紹使用Xilinx?SDK軟件查看當前Zynq?SoC啟動模式的步驟
    的頭像 發表于 07-07 14:15 ?1918次閱讀
    使用<b class='flag-5'>JTAG</b>仿真器查看<b class='flag-5'>ZYNQ</b>當前<b class='flag-5'>啟動</b><b class='flag-5'>模式</b>
    主站蜘蛛池模板: 青青草伊人| 一攻多受h嗯啊巨肉bl巨污| 久爱在线中文在观看| 成人国产在线看不卡| 伊人久久影视| 亚洲乱码高清午夜理论电影| 妻中蜜在线播放| 久久内在线视频精品mp4| 国产精品久久久久久无码专区| 《乳色吐息》无删减版在线观看 | 二色AV天堂在线| 99久久国产视频| 亚洲视频在线免费看| 亚洲成色WWW久久网站夜月| 日本二区三区欧美亚洲国| 免费 高清 中文在线观看| 果冻传媒在线观看完整版免费| 国产黄a三级三级三级| 厨房玩朋友娇妻中文字幕| 把手戳进美女尿口里动态图| asian极品呦女xx农村| JAVAPARSER丰满白老师| 999www成人免费视频| 99精品视频在线免费观看 | chinese黑人第一次| 99精品视频在线观看免费播放| 99久久久精品免费观看国产| 51精品国产AV无码久久久| 中文字幕亚洲综合小综合在线| 夜夜骑夜夜欢| 中文字幕99香蕉在线| 99久久就热视频精品草| 2021久久99国产熟女人妻| qvod 艺术片| 国产成人a视频在线观看| 国产精品永久AV无码视频| 久久a在线视频观看| 男人被绑着强行摸j| 爽爽窝窝午夜精品一区二区| 亚洲国产韩国欧美在线不卡| 中国老太60old mantv|