女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

淺談ZYNQ的三種啟動(dòng)方式-JTAG、SD card、Flash

454398 ? 來(lái)源:CSDN 博主 ? 作者:ChuanjieZhu ? 2020-12-26 10:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言:

前面我們都是使用JTAG方式下載比特流文件,然后下載elf文件,最后點(diǎn)擊Run as或者Debug as來(lái)運(yùn)行程序。JTAG方式是通過(guò)tcl腳本來(lái)初始化PS,然后用JTAG收發(fā)信息,優(yōu)點(diǎn)是可以在線(xiàn)調(diào)試,缺點(diǎn)是斷電后程序就丟失了。為了解決程序丟失的問(wèn)題,可以制作鏡像文件燒寫(xiě)到sd卡或者flash中,上電即可加載程序。

ZYNQ有兩大類(lèi)啟動(dòng)模式:從BootROM主動(dòng)啟動(dòng),從JTAG被動(dòng)啟動(dòng)。

在沒(méi)有外部JTAG的情況下,處理系統(tǒng)(PS)與可編程邏輯(PL)都必須依靠PS來(lái)完成芯片的初始化配置。即借助CPU來(lái)完成配置,這也是ZYNQ系列的不同之處。

板子依然使用的是zc702.

啟動(dòng)模式設(shè)置:

zynq 具有多種啟動(dòng)方式: NOR, NAND, Quad-SPI, SD Card以及 JTAG 。 zynq 如何判斷從哪里啟動(dòng)呢? 上電后, zynq 會(huì)根據(jù)模式管腳的設(shè)定選用 boot 的方式。 而這個(gè)管腳的設(shè)定是通過(guò)核心板上的撥碼開(kāi)關(guān)實(shí)現(xiàn)的。zc702的撥碼開(kāi)關(guān)是sw16。

The ZC702 board supports these configurationoptions:
? PS Configuration: Quad SPI flash memory
? PS Configuration: Processor System Boot from SD Card (J64)
? PL Configuration: USB JTAG configuration port (Digilent module)
? PL Configuration: Platform cable header J2 and flying lead header J58 JTAG configurationports

pIYBAF9uIJKAMUHiAACB-5EaHqQ956.png

JTAG啟動(dòng):

配置界面如下:

pIYBAF9uIJmAcBQBAAddXDZKP4w848.png

o4YBAF9uIJ-ADM5TAAWYK6q4K50941.png

o4YBAF9uIKSASccTAAVhnXCjb7o327.png

設(shè)置完之后點(diǎn)擊Apply-->Debug即可開(kāi)始調(diào)試,Run as類(lèi)似。

通過(guò)制作鏡像文件在外設(shè)控制器中啟動(dòng),也稱(chēng)之為固化。固化需要三個(gè)文件:FSBL.elf、該工程的bit文件、該工程的elf文件,由此三個(gè)文件制作一個(gè)BOOT.bin文件。

那么通過(guò)外設(shè)啟動(dòng)的過(guò)程是怎樣的呢?

分為三個(gè)階段,大多數(shù)的ARM都是這個(gè)啟動(dòng)過(guò)程。

階段0:即傳統(tǒng)的 BootROM 過(guò)程, zynq 芯片里有個(gè) rom 里面固化了一段不可修改的程序, 只有 zynq 一上電, 這段程序就會(huì)執(zhí)行, 它將初始化CPU和 NAND、 NOR、 SD卡等基本外設(shè)。初始化好,BootROM讀取存儲(chǔ)器中的程序代碼,并將FSBL拷貝到OCM(On-chip memory)里 , 這個(gè)被拷貝到片上 RAM 執(zhí)行的程序就來(lái)自于我們要制作的文件——BOOT.bin。
階段1:第一階段引導(dǎo)程序(First Stage Boot Loader,F(xiàn)SBL)啟動(dòng),BOOT.bin開(kāi)始執(zhí)行:首先繼續(xù)配置PS,PS初始化好后,再配置PL,最后還可以加載階段2的代碼。

階段2:開(kāi)始執(zhí)行PS端代碼,也可以是第二階段引導(dǎo)程序(Second Stage Boot Loader,SSBL)。完全在用戶(hù)的控制之下,是可選的。

啰嗦第二遍:

BootROM負(fù)責(zé):

1.上電復(fù)位以后,PS端即開(kāi)始進(jìn)行配置。在不使用JTAG的情況下,ARM將在片上的BootROM中開(kāi)始執(zhí)行代碼。BootROM中的代碼對(duì)NAND、NOR、Quad-SPI、SD與PCAP的基本外設(shè)控制器進(jìn)行初始化,使得ARM核可以訪(fǎng)問(wèn)、使用這些外設(shè)。(而DDR等其他外設(shè)將在階段1或者之后進(jìn)行初始化。)

2.BootROM讀取MIO[2..8]的引腳設(shè)置來(lái)確定啟動(dòng)設(shè)備,將選定設(shè)備的頭192Kbyte內(nèi)容,也就是FSBL,復(fù)制到OCM中,并將控制權(quán)交給FSBL。

FSBL啟動(dòng)時(shí)可以使用整塊256Kb的OCM,當(dāng)FSBL開(kāi)始運(yùn)行后,器件就正式由由用戶(hù)控制了。

FSBL負(fù)責(zé):
1.根據(jù)Vivado中的配置,完成PS端的初始化。
2.使用比特流文件對(duì)PL進(jìn)行配置
3.加載第二階段引導(dǎo)程序(SSBL)或者裸跑程序(直接在ARM上運(yùn)行無(wú)操作系統(tǒng)程序)到內(nèi)存空間。
4.跳轉(zhuǎn)執(zhí)行SSBL或者裸跑程序。

關(guān)于PS配置:

Ps7_init.c和ps7_init.h,用于初始化CLK,DDR和MIO。Ps7_init.tcl完成的初始化和ps7_init.c代碼完成的初始化是相同的。

由于不是通過(guò)JTAG運(yùn)行,所以沒(méi)有運(yùn)行p7_init.tcl,直接在裸機(jī)程序開(kāi)始處調(diào)用ps7_init()。

Xilinx為我們寫(xiě)好了一個(gè)FSBL程序,沒(méi)有特殊要求可以直接使用。

制作BOOT.bin文件:

1.Vivado那邊完成之后,打開(kāi)sdk,新建應(yīng)用工程

pIYBAF9uIKaAdx1wAADGozyY4Qs211.png

工程名設(shè)為FSBL

o4YBAF9uIKiADENnAADMsFPgnt8903.png

點(diǎn)擊next選擇自帶的FSBL程序,右邊是FSBL功能介紹

o4YBAF9uIKmAe8ySAADZu2iCmgE127.png

點(diǎn)擊Finish會(huì)自動(dòng)編譯,在Debug目錄下可以找到FSBL.elf文件

pIYBAF9uIKyADZ1hAAE2SYyjFIw788.png

2.點(diǎn)擊Xilinx Tools ->Create zynq Boot Image

o4YBAF9uIK2AB7jAAAD929w1Vh8238.png

一般 該添加的文件它都會(huì)幫你添加好。

需要添加的文件如下:

pIYBAF9uIK-ALq2VAAE498FnVHE962.png

在FSBL文件夾下新建一個(gè)bootImage文件,點(diǎn)擊Browse,將輸出指向這里

o4YBAF9uILGAIqkdAACkrNxbqxI526.png

點(diǎn)擊add,先添加FSBL.elf文件,作為bootloader

pIYBAF9uILOAUOPYAAE2SYyjFIw383.png

再添加hw_platform下的.bit文件,這是PL部分的

pIYBAF9uILWAVEYHAADiWN5Gin0371.png

最后添加裸機(jī)程序.elf文件

o4YBAF9uILaAIcW8AAC-_6gMLDg413.png

都添加完如下圖:

pIYBAF9uILmANneYAAFQv_mGmUg870.png

以上三個(gè)文件的添加順序不可變,點(diǎn)擊Create Image,就可以生成BOOT.bin文件了,默認(rèn)的輸出路徑在bootImage下。

o4YBAF9uILqAd32IAABt6Pu_IKo047.png

SD卡啟動(dòng)

1.將生成的BOOT.bin文件拷貝到SD卡中,2.啟動(dòng)模式設(shè)置為SD卡啟動(dòng),上電,程序就可以運(yùn)行了。

我這里的現(xiàn)象led閃爍,斷電再上電,程序依然在,從SD卡加載的。

Flash啟動(dòng)

1.啟動(dòng)模式設(shè)置為QSPI啟動(dòng),

2.開(kāi)發(fā)板上電,

3.點(diǎn)擊Xilinx tool-->Program Flash

pIYBAF9uILyABdnEAACaT7xwpkA434.png

4.點(diǎn)擊Program

下載好后程序就固化了,斷電后重啟,程序從QSPI Flash加載。

如果你使用已經(jīng)存在的bsp文件時(shí)出現(xiàn)這種情況:

o4YBAF9uIL2AD6WGAAD8g5ANhoQ884.png

右鍵那個(gè)bsp工程,點(diǎn)擊Board Support Pacage Setting,勾選這兩個(gè)庫(kù)

pIYBAF9uIMCALPHPAAFdJ9zPHH0108.png

總結(jié):

主流的下載方式就這三種,基本可以滿(mǎn)足你的一切需要了。

編輯:hfy

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

    關(guān)注

    10

    文章

    1678

    瀏覽量

    151786
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11077

    瀏覽量

    217029
  • JTAG
    +關(guān)注

    關(guān)注

    6

    文章

    404

    瀏覽量

    73314
  • Zynq
    +關(guān)注

    關(guān)注

    10

    文章

    615

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    MEMS中的三種測(cè)溫方式

    在集成MEMS芯片的環(huán)境溫度測(cè)量領(lǐng)域,熱阻、熱電堆和PN結(jié)原理是三種主流技術(shù)。熱阻是利用熱敏電阻,如金屬鉑或注入硅的溫度電阻系數(shù)恒定,即電阻隨溫度線(xiàn)性變化的特性測(cè)溫,電阻變化直接對(duì)應(yīng)絕對(duì)溫度,需恒流源供電。
    的頭像 發(fā)表于 07-16 13:58 ?163次閱讀
    MEMS中的<b class='flag-5'>三種</b>測(cè)溫<b class='flag-5'>方式</b>

    信號(hào)隔離器三種供電方式的區(qū)別

    信號(hào)隔離器是一重要的信號(hào)隔離裝置,其供電方式主要有獨(dú)立供電、回路供電和輸出回路供電三種。以下是這三種供電方式的詳細(xì)區(qū)別: 一、獨(dú)立供電 1
    的頭像 發(fā)表于 04-17 16:23 ?401次閱讀
    信號(hào)隔離器<b class='flag-5'>三種</b>供電<b class='flag-5'>方式</b>的區(qū)別

    從零開(kāi)始馴服Linux(一):ZYNQ-Linux啟動(dòng)文件構(gòu)建全解析

    啟動(dòng)卡,SD啟動(dòng)卡的制作方法,可以參考《領(lǐng)航者ZYNQ之嵌入式Linux開(kāi)發(fā)指南》第六章Petalinux設(shè)計(jì)流程實(shí)戰(zhàn)中的制作SD
    發(fā)表于 03-20 16:48

    三種太赫茲波的產(chǎn)生方式

    本文簡(jiǎn)單介紹了三種太赫茲波的產(chǎn)生方式。 太赫茲波(THz)是一電磁波,在電磁波譜上位于紅外與微波之間。太赫茲光子能量在1-10 meV范圍之間,在光譜分析、醫(yī)療成像、移動(dòng)通信方面都有非常廣闊
    的頭像 發(fā)表于 02-17 09:09 ?1808次閱讀
    <b class='flag-5'>三種</b>太赫茲波的產(chǎn)生<b class='flag-5'>方式</b>

    示波器的三種觸發(fā)模式

    示波器的觸發(fā)方式不僅影響波形捕捉的時(shí)機(jī),還決定了顯示的波形是否穩(wěn)定。 常見(jiàn)的觸發(fā)模式有三種: 單次觸發(fā) (Single)、 正常觸發(fā) (Normal)和 自動(dòng)觸發(fā) (Auto)。下面將對(duì)這三種觸發(fā)
    的頭像 發(fā)表于 01-07 11:04 ?7588次閱讀
    示波器的<b class='flag-5'>三種</b>觸發(fā)模式

    飛凌嵌入式-ELFBOARD-硬件知識(shí)分享ELF 2啟動(dòng)方式

    1.4.1 復(fù)位及其他按鍵 RESET_L為核心板復(fù)位信號(hào)輸入,為方便調(diào)試,連接到按鍵上。 圖1.7 復(fù)位按鍵原理圖 1.4.2 Boot配置 RK3588支持多種啟動(dòng)引導(dǎo)方式,在芯片復(fù)位結(jié)束后
    發(fā)表于 12-30 15:54

    systemd journal收集日志的三種方式

    隨著 systemd 成了主流的 init 系統(tǒng),systemd 的功能也在不斷的增加,比如對(duì)系統(tǒng)日志的管理。Systemd 設(shè)計(jì)的日志系統(tǒng)好處多多,這里筆者就不再贅述了,本文筆者主要介紹 systemd journal 收集日志的三種方式
    的頭像 發(fā)表于 10-23 11:50 ?818次閱讀
    systemd journal收集日志的<b class='flag-5'>三種</b><b class='flag-5'>方式</b>

    單相電機(jī)的啟動(dòng)方式是什么?如何啟動(dòng)

    單相電機(jī)是一常見(jiàn)的電機(jī)類(lèi)型,廣泛應(yīng)用于家用電器、工業(yè)設(shè)備和各種小型機(jī)械中。由于其結(jié)構(gòu)簡(jiǎn)單、成本低廉、維護(hù)方便等特點(diǎn),單相電機(jī)在許多領(lǐng)域得到了廣泛應(yīng)用。然而,單相電機(jī)的啟動(dòng)方式相電
    的頭像 發(fā)表于 10-23 09:15 ?1997次閱讀

    I2S有左對(duì)齊,右對(duì)齊跟標(biāo)準(zhǔn)的I2S三種格式,那么這三種格式各有什么優(yōu)點(diǎn)呢?

    大家好,關(guān)于I2S格式,有兩個(gè)疑問(wèn)請(qǐng)教一下 我們知道I2S有左對(duì)齊,右對(duì)齊跟標(biāo)準(zhǔn)的I2S三種格式,那么這三種格式各有什么優(yōu)點(diǎn)呢? 而且對(duì)于標(biāo)準(zhǔn)的I2S格式,32FS傳輸16bit的數(shù)據(jù),48fs傳輸24bit的數(shù)據(jù),最低位會(huì)移動(dòng)到右聲道,是否意味著該數(shù)據(jù)被丟棄了?還是有
    發(fā)表于 10-21 08:23

    Windows管理內(nèi)存的三種主要方式

    Windows操作系統(tǒng)提供了多種方式來(lái)管理內(nèi)存,以確保系統(tǒng)資源的有效利用和性能的優(yōu)化。以下是關(guān)于Windows管理內(nèi)存的三種主要方式的詳細(xì)闡述,包括堆內(nèi)存管理、虛擬內(nèi)存管理以及共享內(nèi)存管理,每種
    的頭像 發(fā)表于 10-12 17:09 ?2382次閱讀

    shell腳本執(zhí)行的三種方式及區(qū)別

    在Linux系統(tǒng)中,Shell腳本是一非常實(shí)用的工具,用于自動(dòng)化執(zhí)行一系列命令。Shell腳本可以大大提高工作效率,簡(jiǎn)化復(fù)雜的任務(wù)。在這篇文章中,我們將介紹Shell腳本執(zhí)行的三種方式及其區(qū)別
    的頭像 發(fā)表于 08-30 15:24 ?2211次閱讀

    簡(jiǎn)述三種esp32的開(kāi)發(fā)方式是什么

    ESP32是一款由樂(lè)鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍(lán)牙雙模無(wú)線(xiàn)通信芯片,廣泛應(yīng)用于物聯(lián)網(wǎng)、智能家居、智能硬件等領(lǐng)域。本文將詳細(xì)介紹三種ESP32的開(kāi)發(fā)方式:Arduino
    的頭像 發(fā)表于 08-20 09:11 ?8028次閱讀

    常用的pwm跟蹤控制方式是哪三種

    PWM(脈寬調(diào)制)跟蹤控制是一廣泛應(yīng)用于電機(jī)控制、電源管理、通信等領(lǐng)域的技術(shù)。它通過(guò)調(diào)整脈沖的寬度來(lái)控制輸出信號(hào)的占空比,從而實(shí)現(xiàn)對(duì)系統(tǒng)的精確控制。常用的PWM跟蹤控制方式主要有三種:增量式PWM
    的頭像 發(fā)表于 08-14 10:34 ?2588次閱讀

    計(jì)算機(jī)網(wǎng)絡(luò)中的三種通信方式

    計(jì)算機(jī)網(wǎng)絡(luò)中的三種通信方式,即單工通信、半雙工通信和全雙工通信,是理解和設(shè)計(jì)高效網(wǎng)絡(luò)架構(gòu)的基礎(chǔ)。每種通信方式都有其獨(dú)特的特性、應(yīng)用場(chǎng)景及優(yōu)缺點(diǎn)。以下是對(duì)這三種通信
    的頭像 發(fā)表于 08-07 15:00 ?5130次閱讀

    逆變電路的三種調(diào)壓方式

    路的三種調(diào)壓方式:脈寬調(diào)制(PWM)調(diào)壓、相位控制調(diào)壓和頻率調(diào)制調(diào)壓。 1. 脈寬調(diào)制(PWM)調(diào)壓 脈寬調(diào)制是一通過(guò)改變脈沖寬度來(lái)調(diào)整輸出電壓的調(diào)壓方式。在PWM調(diào)壓中,逆變電路的
    的頭像 發(fā)表于 08-02 16:59 ?4370次閱讀