ZYNQ啟動流程——ZYNQ學習筆記11

????????ZYNQ SoC 的啟動由片上的 BootROM 開始。片上 BootROM 是 ZYNQ 芯片上的一塊非易失性存儲器,它包含了 ZYNQ 所支持的配置器件的驅動, 而且里面的代碼是不可修改的。 BootROM 中的代碼首先會在片外的非易失性存儲器中尋找一個頭文件, 頭文件里定義了一些啟動信息, 用于配置 BootROM 的運行。 這些啟動信息包括是程序是否就地執行( excute in place) , FSBL 的偏移地址以及是否為安全模式等。頭文件的存在確保 BootROM 能夠按照配置器件被格式化后的方式操作。

????????BootROM 執行之后,下一個配置階段被稱為 First-Stage Boot Loader ( FSBL), 它是由設計者所創建的。FSBL 可以配置 DDR 存儲器和硬件設計過程中所定義的一些外設。這些器件需要在加載軟件應用及配置 PL之前就初始化完畢。
總結一下 FSBL 的工作內容:
1、 初始化 PS;
2、 如果提供了 BIT 文件,則配置 PL;
3、 加載裸機應用程序到 DDR 中,或者加載 Second-Stage Boot Loader( SSBL);
4、 開始執行裸機應用程序,或者 SSBL。
????????PL 的配置是通過處理器配置訪問接口( Processor Configuration Access Port, PCAP) 進行的,它允許對PL 進行部分配置或者完全配置。有關 PL 的部分配置我們會在其他章節予以介紹。 一旦 PS 啟動運行之后,PL 可以在任意時刻被配置, FSBL 和應用程序可以清除、 配置以及使能 PL。

????????要重建一個 ZYNQ 的啟動鏡像我們需要執行以下文件:
1、 Boot ROM 頭文件:控制 Boot ROM 設置,比如就地執行、 加密、 FSBL 偏移量、鏡像文件大小等;
2、 First-Stage Boot Loader;
3、 PL 配置文件, 即 BIT 文件;
4、 運行在 PS 上的軟件應用程序。
????????ZYNQ SoC 使用多個模式引腳來決定配置器件的類型, 軟件的存儲位置以及其他的系統設置, 這些引腳共享 PS 端的 MIO 引腳。 總共有 7 個模式引腳, 分別為 MIO[8:2]。其中,前四個引腳定義啟動模式,第五個引腳定義是否使用 PLL, 第六個和第七個引腳定義上電過程中 MIO bank0 和bank1 的 bank 電壓,如下圖所示:

整個系統的啟動過程如下圖所示:

????????在上電復位( Power On Reset, POR) 之后,硬件會采集模式引腳的狀態, 禁用器件內部的模塊,并根據模式引腳的設置選擇是否使能 PS 的時鐘鎖相環。而在其他的復位條件下, 比如軟復位, 硬件不會執行上述的動作。 需要注意的是, PS 的復位按鍵,屬于上電復位( POR),如果按下 PS 的復位按鍵,硬件會重新采集模式引腳的狀態。

ZYNQ 啟動分析_pl power status off-CSDN博客

ZYNQ程序固化——ZYNQ學習筆記7_zynq sd卡啟動-CSDN博客

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/94213.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/94213.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/94213.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++利用CerateProcess創建WPF進程并通過命名管道通訊

引言原因是我需要在C程序中調用另外一個WPF窗體打開或則關閉,進程之前通過通訊協議進行交互。由于使用不同語言開發,兩者都比較復雜不方便重寫,最方便的方法就是使用進程間通信,WPF窗體應用程序根據消息進行Show/Hide/Exit操作。函…

Seaborn數據可視化實戰

1. Seaborn基礎與實踐:數據可視化的藝術 2. Seaborn入門:環境搭建與基礎操作 3. Seaborn基礎圖表繪制入門 4. Seaborn數據可視化基礎:從內置數據集到外部數據集的應用 5. Seaborn顏色與樣式定制教程 6. Seaborn數據可視化入門:繪制…

BIM+寫實數字孿生落地實戰指南

🌟 正文 在智慧城市與工業4.0的浪潮中,BIM與數字孿生的深度碰撞正在重塑建筑的生命周期。基于Revit(RVT)模型構建的超寫實數字孿生體,不僅實現物理空間的毫米級鏡像,更通過實時數據驅動,賦予建…

[Git] 如何拉取 GitHub 倉庫的特定子目錄

作為開發者,我們經常遇到只需要克隆大型倉庫中某個子目錄的場景。 Git 本身并不支持直接克隆子目錄,但通過一些技巧可以實現類似效果。本文將介紹幾種實用的方法,幫助獲取目標代碼。 為什么需要局部拉取? 節省時間和帶寬&#xff…

修復Simulink到UE5丟包時被控船體的殘影問題

提問 simulink 有一個和UE5協同的模塊,叫做Simulation 3D Scence Configuration,還有一個發送來自simulink到UE5數據的模塊叫做Simulation 3D Message。 現在遇到的問題是,這兩個模塊的優先級設置是正確的,且sample time都設置為0…

嵌入式第三十五課!!Linux下的網絡編程

一、目的網絡編程的目的實際上也是進程通信的一種方式,不過它可以在不同的主機上進行通信;二、需要解決的問題1. 主機與主機之間物理層面必須互聯互通。指的是參與通信的計算機(主機)需要通過物理設備建立連接(光纖、網…

遙感機器學習入門實戰教程|Sklearn案例⑦:特征選擇與重要性分析

很多同學問:波段/特征一多就“維度災難”,訓練慢、過擬合,且很難解釋“哪些特征最關鍵”。本篇用 sklearn 給出一套能跑、可視化、可比較的最小工作流,并配上方法論速記,幫助你在高光譜/多特征任務里做出穩健篩選。 &a…

地理數據制備:蔚藍地圖空氣質量數據的獲取、清洗與坐標匹配指南

【📊】手把手攻略:如何從“蔚藍地圖”挖寶——獲取濟南市可用空氣質量數據全記錄 一份不需要寫代碼也能搞定環境數據獲取的實用指南 ? 引言:為什么選擇蔚藍地圖? 作為一名環境數據愛好者,我經常需要獲取準確、可靠、…

Unreal Engine USceneComponent

Unreal🏛 Unreal Engine - USceneComponent📚 定義🏷 類繼承? 關鍵特性?? 常見配置🛠? 使用方法🔗 創建與掛載🔄 獲取與修改 Transform🧩 附加/分離組件🏊 典型應用場景&#x1…

2025年9月5090工作站、

在深度學習與大模型訓練領域,算力是決定研發效率與模型性能的核心要素,而顯卡作為算力輸出的核心硬件,其性能參數直接影響著訓練任務的速度、穩定性與成本控制。對于企業與科研機構而言,選擇一套適配自身需求且性價比優異的顯卡及…

亞矩陣云手機:亞馬遜第三方店鋪多賬號安全合規運營的核心技術支撐

亞矩陣云手機在亞馬遜第三方店鋪多賬號安全合規運營的技術支持,通過硬件級虛擬化、AI 行為建模、動態資源調度三大核心技術模塊,構建了覆蓋設備、網絡、行為、數據的四維防御體系,確保賬號在亞馬遜平臺規則下的長期穩定運行。以下從技術架構、…

使用C++11改進工廠方法模式:支持運行時配置的增強實現

在軟件開發中,工廠方法模式是一種常用的設計模式,用于創建對象。通過使用C11的新特性,我們可以進一步改進工廠方法模式,使其更加靈活和高效。本文將詳細介紹如何使用C11的std::function、lambda表達式和智能指針來實現一個支持運行…

小程序插件使用

插件介紹 插件是對一組 js 接口、自定義組件 或頁面的封裝,用于嵌入到小程序中使用。插件不能獨立運行,必須嵌入在其他小程序中才能被用戶使用;而第三方小程序在使用插件時,也無法看到插件的代碼。因此,插件適合用來封…

要區分一張圖片中的網狀圖(如網格結構或規則紋理)和噪點(隨機分布的干擾像素),比如電路的方法 計算機視覺

要區分一張圖片中的網狀圖(如網格結構或規則紋理)和噪點(隨機分布的干擾像素),需結合圖像預處理、特征提取和分割算法。以下是系統化的解決方案,分階段說明關鍵技術和算法選擇: 🔍 一…

06_并發編程高級特性

第6課:并發編程高級特性 課程目標 掌握context包的使用 理解sync包中的同步原語 學會處理并發安全問題 掌握性能優化技巧 1. Context包 1.1 Context基礎 import ("context""fmt""time" )// 基本Context使用 func basicContext()

X00238-非GNSS無人機RGB圖像衛星圖像視覺定位python

獲取方式見文末,可開發票隨著無人機在工業和科研領域應用的加速發展,在非城市環境中使用無gnss、基于視覺的方法進行無人機定位的需求日益增長。本文提出了一種基于視覺的定位算法,利用深度特征計算無人機在野外飛行的地理坐標。該方法基于匹…

Eino 開源框架全景解析 - 以“大模型應用的搭積木指南”方式理解

Eino 開源框架全景解析 - 大模型應用的搭積木指南 🎯 什么是 Eino?一句話概括 Eino 是字節跳動開源的大語言模型應用開發框架,就像是一個專門為 AI 應用設計的"搭積木工具箱",讓開發者能夠像搭樂高一樣輕松構建復雜的 A…

嵌入式開發中,usb通信中輸出端點和輸入端點

一. 簡介本文簡單學習一下,嵌入式開發中,usb的輸出端點和輸入端點。在嵌入式開發的 USB 通信場景中,輸出端點(OUT Endpoint) 和 輸入端點(IN Endpoint) 是 USB 設備與主機(如電腦、嵌…

【自用】Maven常用依賴

【自用】Maven常用依賴 工具類 Guava Guava(Google Guava)是由Google團隊開發的一套Java開源工具庫,旨在簡化和增強Java開發者的日常工作。它提供了許多實用的工具和基礎設施,覆蓋了集合、并發、字符串處理、I/O、數學運算等多個…

Java 18 新特性及具體應用

目錄 1. UTF-8 默認編碼 (JEP 400) 2. 簡單 Web 服務器 (JEP 408) 3. Javadoc 代碼片段 (JEP 413) 4. switch 模式匹配 (JEP 420, 第二次預覽) 5. 向量 API (JEP 417, 第三次孵化) 總結 Java 18 于 2022 年 3 月發布,引入了多項新特性,旨在提升開發…