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

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

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

3天內不再提示

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

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2022-02-08 11:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:watchman,文章來源:ZYNQ微信公眾號

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來表示:

1. Stage 0:BootROM 階段

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

3. 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手中。

pIYBAGAJ-CSALXl1AACcMejzs1I317.png

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

Zynq啟動階段1——FSBL

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

1. 完成 PS 的初始化

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

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

4. 跳轉執行 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 的三階段啟動模式有一個具體的認識,希望大家多多交流。

審核編輯:何安

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

    關注

    10

    文章

    615

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何配置模式的 BT 芯片?

    我需要以雙模式設置 CYBW20721B2 藍牙模塊。 我們現在使用的藍牙芯片配置為僅作為外圍設備工作。 并且我想將其配置為雙模式(BT 需要同時作為中央和外圍設備工作的應用程序)。
    發表于 06-27 08:10

    UIAbility組件啟動模式:實例啟動時的不同呈現狀態

    ()和onWindowStageCreate()生命周期回調。 如果需要使用singleton啟動模式module.json5配置文件中的launchType字段
    發表于 05-16 06:10

    為什么S32G中使用32個GPIO進行啟動配置

    我很好奇為什么 S32G 中使用 32 個 GPIO 進行啟動配置。 是否必須使用所有 32 個 GPIO 進行引導模式配置? 要使用分配
    發表于 04-10 06:48

    Zynq7000處理器的配置詳解

    添加好ZYNQ7 Processing System IP核后,需要對其進行配置,雙擊彈出如下窗口。綠色部分表示ZYNQ PS部分中可配置的項目,可以雙擊轉向相應的設置界面,也可以直接
    的頭像 發表于 03-27 09:37 ?1273次閱讀
    <b class='flag-5'>Zynq</b>7000處理器的<b class='flag-5'>配置</b>詳解

    從零開始馴服Linux(一):ZYNQ-Linux啟動文件構建全解析

    定位問題并優化代碼。本教程我們就一起來看一,如何基于正點原子提供的出廠相關源代碼,制作ZYNQ開發板的啟動文件,并成功運行Linux系統。 1.1制作前準備工作1)、一款ZYNQ
    發表于 03-20 16:48

    優化模式啟動低消耗的充電器ic U6018

    可能會對電路中的其他組件造成損害,而過小的啟動電流則可能導致電路無法正常啟動。來看看這顆優化模式低消耗的充電器icU6018!集成電路開
    的頭像 發表于 03-13 16:15 ?359次閱讀
    優化<b class='flag-5'>模式</b><b class='flag-5'>下</b>低<b class='flag-5'>啟動</b>低消耗的充電器ic U6018

    GS2971A8位模式,芯片數據輸出是什么接口協議的,BT.1120還是BT.656或者是其他?

    模式,1080P50視頻采集是完全正常的,為了拓展資源,現在想在10位實現視頻采集,可是10位模式,無法輸出圖像。圖像輸出如下:
    發表于 03-03 08:13

    ADS1232SPI模式,應該怎么配置引腳?

    根據ADS1232 的數據手冊,里面的波形圖只與SCLKDRDY/DOUT 兩個引腳,SPI模式,應該怎么配置這些引腳?DRDY/DOUT-------MISO,SCLK----
    發表于 02-07 07:40

    試用報告1--關于PG2L100H開發板啟動選項配置的問題

    ),兩分資料中有明顯的差異。但實際調試過程中卻發現,需要把啟動選項配置為0001(如圖3所示)才能進入JTAG調試模式,或者JTAG燒錄
    發表于 12-29 21:13

    易靈思FPGA PS配置模式--v7

    文件。注意修改Bitstream生成模式時,不需要進行工程的全編譯,只需運行最后一步數據流生成即可。 PS配置啟動過程 這里以X1模式為例,PS的
    的頭像 發表于 12-24 14:37 ?1577次閱讀
    易靈思FPGA PS<b class='flag-5'>配置</b><b class='flag-5'>模式</b>--v7

    調試Xilinx Zynq + ADS58C48,ADC使用的是LVDS模式,ADC不能正常工作怎么解決?

    我正在調試Xilinx Zynq + ADS58C48,ADC使用的是LVDS模式,ADC不能正常工作。有以下幾點問題: 1)通過Xilinx FPGA差分原語輸給ADC一個10MHz的差分時
    發表于 12-10 07:34

    嵌入式系統的啟動流程

    嵌入式系統的啟動流程是一個復雜但有序的過程,它涉及從系統上電到操作系統內核及應用程序啟動的多個階段。
    的頭像 發表于 10-05 17:44 ?996次閱讀

    解決睡眠模式進入系統速度命令模式的問題

    電子發燒友網站提供《解決睡眠模式進入系統速度命令模式的問題.pdf》資料免費下載
    發表于 09-24 10:34 ?0次下載
    解決睡眠<b class='flag-5'>模式</b>進入系統<b class='flag-5'>在</b>速度命令<b class='flag-5'>模式</b><b class='flag-5'>下</b>的問題

    Samtec小課堂 | 兩分鐘了解JTAG連接器

    摘要/前言 回答 “什么是JTAG 連接器?”這個問題之前,讓我先向大家簡要介紹一 JTAG。 什么是JTAG? 聯合測試工作組(Joi
    發表于 08-28 13:59 ?1005次閱讀
    Samtec小課堂 | 兩分鐘了解<b class='flag-5'>JTAG</b>連接器

    INA237使用TRIG模式時,配置完相應的模式寄存器后,如何啟動TRIG轉換?

    INA237使用TRIG模式時,配置完相應的模式寄存器后,如何啟動TRIG轉換?換句話說,配置
    發表于 08-05 06:52
    主站蜘蛛池模板: 琪琪午夜福利免费院 | 福利社影院 | 99国内精精品久久久久久婷婷 | 国产传媒18精品免费1区 | 嘟嘟嘟WWW免费高清在线中文 | 国产成人精品系列在线观看 | 大学生第一次破苞疼哭了 | 日本精品无码久久久久APP | 手机毛片在线观看 | 久久国产精品麻豆AV影视 | 最近中文字幕在线中文视频 | 九九免费高清在线观看视频 | 久久国产高清字幕中文 | 巨爆乳中文字幕爆乳区 | 99久久精品国产一区二区三区 | 久久91精品国产91久 | 亚洲视频 在线观看 | 亚洲精品视频免费在线观看 | 丰满少妇69激情啪啪无码 | 99视频精品免视3 | 日本久久久久久久做爰片日本 | 久久久免费热线精品频 | 久久精品视频在线直播6 | 99久久国产露脸精品国产吴梦梦 | 99精品在线看| 国产精品久久久久秋霞影视 | 久久视频精品3线视频在线观看 | 天美麻豆成人AV精品 | 大屁股国产白浆一二区 | caoporn超碰视频| 国产色婷婷亚洲99精品 | 2020国产成人精品视频人 | 果冻传媒剧情在线观看 | 野花日本免费完整版高清版动漫 | 精品国产精品人妻久久无码五月天 | 国产在线观看成人免费视频 | 2012中文字幕在线动漫电影 | 成年美女黄网站色app | 国产午夜精品久久理论片小说 | 九九色精品国偷自产视频 | 嫩草国产精品99国产精品 |

    電子發燒友

    中國電子工程師最喜歡的網站

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