文件名称:
Zynq-7000&ZynqMP;启动配置和启动文件.pdf
开发工具:
文件大小: 1mb
下载次数: 0
上传时间: 2019-07-16
详细说明:Zynq-7000&ZynqMP;启动配置和启动文件,讲述了Zynq-7000&ZynqMP;的一些基本配置和简单应用方法。保留
SD
0
保留
PLL模式
使用PII
0
旁路PLL
MIO第0组电压
2.5V/3.3V
MIO第1组电压
2.5V/3.3V
L 8V
1.2.2 Zynq UltraScale+ MPSoC
启动模式如表1.2所示。
表1.2 Boot modes
MIO
Non Secure Signed Mode
Description
M
Location Secure
3:0]
PS JTAG 0000
JTAG
Yes
No
Slave Dedicated PS interface
oSPI24
000l
MIO[12: 0]Ye
Master 24-bit addressing
S
ts single and dual
parallel configuratio
Stack and dual stack is not
supp
QSP132
0010|MIO「1201
Y
Y
Yes Master 32-bit addressing.
Supports singlc and dual
parallel configurations
Stack and dual stack is not
SDO
0011MIO25:13]|Ycs
Ycs
Ycs Master SD 2.0
NAND
0100MO25:09]Yes
Yes
Yes Master Requires 8-bit data bus
SDI
0101|MO51:38」Yo
Y
Ycs Master SD 2.0.
eMMC180110MO[2:13
Yes
Y
Y
Master eMMC verison 4.5 at 1.8V
USB O
0111Mo[52:63]Yes
Y
Y
Slave USB 2.0 only
Mode
MIO
Non
Secure SignedMode
Description
Mode
Pins
Location Secure
3:0]
PITAG O
1000MIL29:26」
Yes
Slave PS JTAGi connection O
option
PJTAG 1 MIO[15:12]Yes
No Slave Ps JTAG connection I
option
SDl-LS 1110 MIO[51: 391|Ye
Yes Master SD 3.0 with a required SD
3.0 compliant voltage level
shifte
1. Quad-SPI (24/32)
不同的启动模式限制了不同的启动人小,具体如表1.3所示,QSPI单个Fash器件的
启动模式支持x1,x2和x4,双 flash器件的启动模式支持x8模式。
表1.3 Boot Image大小限制
Boot mode
Search Offset Limit
QSPI: 24-bit singlc
16 MB
QSPI: 24-bit dual parallel
32 MB
QSPI: 32 bit
256MB
QSPI: 32-bit dual parallel
512MB
NAND
128MB
SD/eMMC
8. 192 files
1 file
QSPI Command Codes如表14所示。
表14QsP| Command codes
Quad-SPI Data Interface Read Mode Command Code
24-bit single
Normal read
0x03
24-bit dual
Output fast read 0x3B
24-bit quad
Output fast read Ox6B
32-bit boot
Normal rcad
OxI3
32-bit dual
Output fast read 0x3C
32-bit quad
Output fast read 0x6C
1 NAND
NAND启动模式仅仅支持8位方式,支持 multi-boot方式。
2. SDO/SD1
启动方式支持FAI16/32文件系统,支持 multi-boot方式, multi-boot方式最大的文件个
数为8192,支持的SD版木为2.0,3.3V和4bit的IO接口,文件名字支持 boot bin,
boot0001bin和boot002bin到boot8190bin
3. SD1-LS:
SD1LS模式和SDO/SD1一样,只是SD版本为30
4 eMMC18:
eMMC18模式和sDo/SD一样,除了O接口是1.8V电平和8bit数据位。
5. USB0
USB controller0支持 USB boot,并且 USB Host协议为DFU。 USB Host的FSBL文件
下载到OCM,其他所有压缩bot件下载到DDR,因此 USB boot文件取决于OCM和DDR
的大小。 USB boot不支持 multi-boot、 image fallback和XIP。
6.具体引脚
表12只给出了MIO是那些引脚,并没有标注具体引脚和外设IO的对应关系,具体的
文档详见巛ug1085zynq- ultrascale+ Technical reference manua》的第28章,第79-787页
的表格,里面列举了所有外设的1O到MIO上的映射,包含BOOT外设
3 BOOTbin文件的生成
bOOT bin为Zynq-70008 Zynq Ultra Scalet MPSoC的启动文件,里面包含FSBL,PMU,
PL.bit,ATF,R5,elf, u-boot elf文件,其中每个文件都是需要单独生成的。ViⅤado工程可
以是任意一个,如只有GPIO的工程,有了 vivado工程之后,编译生成bit文件,如果导出
bit文件, Launch sdK,后面的FSBL,PMU,R5.elf都是通过SDK( Windows环境)生成
的。当然ATF和 u-boot.elf是 Linux环境下的SDK生成的,可以直接采用官方的。
1.31生成FSBL文件( bootloader)
在对应的ⅵ vado工程,使用SDK生成。
L.打开对应的SDK工程,只需要包含 xxx hw platform即可。
2.在SDK主菜单下,选择File→New→ Application project
3.弹出“ New project”对话框,参数没置如表1.5所示。
表1.5 FSBL A53工程的设置
Wizard screen
System Properties
Setting or Command
Project Name
fsb a53
Use Default Location Select this option
oS Platform
Standalone
Hardware platform
xXx hw platform 0
Application project
Processor
psu cortexa53 0
Lans
Compiler
64-bit
Hypervisor Guest
No
Board Support Package Select Create New and provide the name of a53_bsp
Click Next
Templates
Available Templates Zynq MP FSBL
4.选择 nq MP FbL模板,如图1.1所示。
sox New Project
Create one of the available templates to generate a fully-functioning
Available Templates:
Empty Application
First Stage Bootloader (FSBL) for Zyng
Hello world
Ultrascale+ MPSoC. The FSBL
IwIP Echo serve
configures the FPGA with HW bit
stream (if it exists) and loads the
Peripheral Tests
Operating System (OS) Image or
Zyng mp dram tests
Standalone(SA] Image or 2nd Stage
Zynq MP FSBL
Boot Loader image from the
non-volatile memory(NAND/SD/QSPI
to RAM (DDR)and takes A53/R5 out of
reset. It supports multiple partitions
and each partition can be a code
≤Back
Next>
Finish
Cancel
图1.1FSBL模板选择
5.完成,编译即可,fbla53> debug> fsb a53ef为所需要的文件。
如果需要在启动阶段,打印FSBL相关信息、,可以设置 FSBL DEBUG INFO使能,步
骤如下,软件界面如图1.2所示:
1.打开 Project Explorer,右键点击 fsb a53应用。
2.点击CC++ Build settings
3.选择 Settings- Tool Settings→ Symbols。
4.点击Add
5.输入 ESBL DEBUG INFO。
6. Clean程,自动重新编译即可
Properties for fsb a53
Builders
C/C++Buiid
Configuration: Debug Active]
Manage Confiqurations
Logging
8 Tool Settings B Devices /Build Steps Build Artifact B) Binary Parsers O Error.'
Tool Chain Editor
Y 8 ARM A53 gcc assembler Defined symbols(-D
C/C++General
ARMA53 64
oject References
y③ARMA53 gcc compiler
ystem hdf
② Warnings
Enter value
③ Debugging
画
Profil
Defined symbols (-D
FSBL DEBUG INFO
②
v Inferred Options
②
Software platfo
a Processo
Y ARM A53 gcc linker
Cancel
C General
③ Libraries
Undefined symbols(U)昏业
a Linker Script
C Inferred Options
② Software Platform
23 ARM A53 Print Size
图1.2 FSBL DEBUG INFO使能
.32生成R5ef
在对应的 vivado工程,使用SDK生成
L.打开对应的SDK工程,只需要包含 xxx hw platfor即可。
2.在SDK上菜单下,选择Filc→Ncw→ Application Projcct
3.弹出“ New Project”对话框,参数设置如表1.5所示。
4.选择 Empty application模板,或根据需要进行选择。
5.完成
6.添加对应的应用文件,编译即可,r5xxx> debug>r5xx.l为所需要的文件。
表1.6r5×xX工程的设置
I Wizard Screen System Properties
Setting or Command
Project nam
Usc Default Location Sclcct this option
OS Platform
Standalone
Application Project Hardware Platform
Yxx hw_ platform 0
Processor
psu cortex 0
nguag
Board Support Package Select Create New and provide the name of r5_xxx_ bsp
Click Next
Templates
Available templates
Empty Application
1.33生成PMU文件
在对应的 vivado工稈,使用SDK生成。
1.打开对应的SDK工程,只需要包含 xxx hw platform即可。
2.在SDK主菜单下,选择fle→New→ Application Project
3.弹出“ New Project”对话框,参数没置如表1.5所小
4.选择 ZynqMP PMU Firmware模板。
5.完成,编译即可, pmu fw> debug> pmu fw.elf为所需要的文件。
表1.7 FSBL A53工程的设置
Wizard Screen System Properties
Setting or Command
Project Name
Use Default Location Select this option
OS Platform
Standalone
Application Project Ilardware Platform
xxx hw_ platform 0
Processor
psu pmu o
Board Support Package Select Create New and provide the name of pmu fw_ bsp
Click Next
Templates
Available Templates ZynqMP PMU Firmware
134生成ATF文件
ATF文件的生成需要去 Xilinx的 github网站下载源码编译,也可以直接使用bl31.elf文
件,如需自己编译,下载的网址为 github. com/Xilinx/am- trusted- firmware,下载文件为
armn{ rusted- firmware- xilinx-v2018.1argz,将压缩文件解压,进入ATF目录,输入卜面的命
令进行编译即可,在. build/zynqmp/release/bl31目录下有bl31elf文件。
S tar-xzf arm-trusted-firmware-xilinx-v2018. 1. tar. gz
S cd arm-trusted-firmware-xilinx-v20181
S source/opt/Xilinx/SDK/2018. 1/settings64sh
S make CROSS COMPILE-aarch64-linux-gnu- PLAT-zynqmp REST TO BL31-1
135u-boot文件生成
u-boot文件为 linux的启动文件, uboot文件可以用裸机应用程序文件取代,也就是A53
裸机应用程序文件,生成方式和r5一样,也就不再说明了。
关于u-boot的生成,需要去ⅹinx的 github网站下载源码编译,也可以直接使用官方
提供的ubot文件,如需自己编详,下载的~址为 github. com/ Xilinx/u- boot-xInx,根据需求
下载对应的文件,也可以根据需求在官方源码基础上进行更改。
由丁目前 Linux4.14采用 FIT Image(参考第2章)技术,因此需要修改u-bo0的内容,
打开 /include/configs/xilinx zynqmp. h
vim include/configs/xilinx zynqmp h
对下面内容进行修改
sdboot=mmc dev ssdbootdev & mmcinfo & run uenvboot run sdroot Ssdbootdev; V
load mmc Ssdbootdev: Sparti Sfdt addr system dtb &&"
"load mmc Ssdbootdcv: Spartid Skcrncl addr Image &&"
booti skernel addr-Sfdt addr\0"
修改之后的内容:
sdboot=mmc dev ssdbootdev & mmcinfo & run uenvboot l run sdrootSsdbootdev; "I
"load mmc Ssdbootdev: Spartid 10000000 imagc ub &&i
" boot10000000O0"
将源码解压,然后进入u-bot源码目录,输入下面命令进行编译(保证Liux安装好
dc工具apt- get install device-tree-compile]),编译完成之后在其根目录卜有u-boo.elr(u-boo
和u-boot.bin文件。
1.zynq-7000
Vivado-sdk2017.1以前
S source /opt/Xilinx/SDK/2017.1/settings64 sh
S make CROSS COMPILE-arIm-xilinx-linux-gnueabi- zyng zed config
S make CROSS COMPILE-arm-xilinx-linux-gnueabi
Vivado-sdk 2018.1
S source /opt/Xilinx/SDK/2018. 1/ settings64 sh
S make Cross COMPILE=arm-linux-gnueabihf- zynq zed config
S make CRoss COMPILE=arm-linux-gnueabihf-
2. ZyngMP
S source /opt/Xilinx/SDK/2018. 1/settings64sh
S make CROSS COMPILE-aarch64-linux-gnu-xilinx zynqmp zou 102 revl 0 config
S make cross COMPle f=aarch64-linux-gnu
3. Xilinx U-boot配置项
表18 linx u-boot配置项
平台
配置项
Zynq UltraScale+ MPSoC ZCU106 xilinx zynqmp zcu106 revA config
Zynq UltraScale+ MPSoC ZCU104 xilinx zynqmp zcu104-revA_ config
7ynq UltraScalet MPSo( 7CU102 xilinx_rynqmp _ zcu102_revl_0_config
Zynq zc702
zynq zc702 config
Zyng zc706
zynq zc706 config
Zynq zed board
zynq zed config
7ynq microZedBoard
zynq microzed confi
Zyng picozcdBoard
zynq picozed config
Microblaze
microblaze generic config
1.36plbt文件
pl.bit文件即为FPGA下载文件,也就是器件的PL部分需要的文件,在 vlado工稈点
击生成 bitstream即可,导出到SDK,可以在SDK工程的 Hardware platfor文件夹下找到
需要的bit文件。
8
137生成 BOoT. bin文件
在对应的 vlado工程,使用SDK生成
6.打开对应的SDK工程,在SDK主菜单下,选择 Xilinx tool→ Create Boot Image
7.弹出“ Create boot image”对话框,参数设置如图1,3所示。
图中选择 Import form existing bif file,如果如果是个新工程,则需要选择 Create new blF
filc,创建一次之后就会保存,下载更改在原基础上进行,更快生成。
Creates Lyng M Boot Image in bir format from gven isBl clf and partition files ir sPecified output fo de
rchitecture:Zynq MP M
Create new BI file impart fron existing bIl fle
Impert BIF fic path: E:\ Embedded Deign. "Ltoriallep- _spis timer intrl_gpio tirer. sdk-iourtputbf
Uutput Blr fi e path: E\Embedced Design Tutorial\ep gp o timer intr ep gpio tiTe rtr. sdk'icutput bif
JD「dsts
Drowse.
utp』! format tIN
Output path
BrowsE.
Btut reye uar uLitiS
Encrypted ALt
mu)FAFmherdded Design Tutorial en gnio tiner intnep spin timer intr.sc pmu fu\pmu fu elt
Dcsign_ Tutoriolcp gpic_imar intricp gpio timer intr, sdk\cp gpio timor rtr wrapper hw platform o\cp gpio tmor irtr wrapper bit
E\Embedded Design Tutorial\ep gpic imar inr'ep gpio timer intr. sdk, tl31 elf
ed Design_ lutonialep gpic_imer intriep gpio timer intr. sdk tmr_ psed r) Lebugltmr- psled 5 cif
m
bedded Design Tutorial\ep gpic imat
Down
Preview BIF ChangesCra
caneel
图13 Create Boot Image
pmu fw. elf添加时需要将 Partition type选择为pmu,如图14所示
sod Edit Parition
Edit the boot image partition
Edit the boot image partition
File path: EAEmbedded _Design_._gpio_tmer intrlep_gpio timer_intr. sdk\pmufwDebug\pmu fw.elf
action type
pmu(loaded by boo
Encryptor
Checksum
rionE
Imer
Reserve
Startup
Exception Level ELD
图14pmu_fwe添加
9
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.