这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » ZYNQ7000板子上,PL端逻辑烧写到FLASH里面。怎么办?

共14条 1/2 1 2 跳转至

ZYNQ7000板子上,PL端逻辑烧写到FLASH里面。怎么办?

菜鸟
2023-02-13 21:21:33     打赏

前言

操作如何固化ZYNQ PL端程序到FLASH分享---基于广州星嵌电子科技有限公司设计研发的Zynq7015平台。

 

FLASH型号

板载QSPI FLASH一颗,具体型号为:MT25QL256ABA1EW9-0SIT


增加Block Design设计文件

首先,打开已经完成的Vivado设计例程,点击Project Manager下面的IP Integrator -> Create Block Design,创建Block Design设计文件


 mark_图片1.png

 

在弹出的对话框中,点击OK


mark_图片2.png 

 

Diagram窗口,点击中间加号按钮,添加IP


mark_图片3.png 

 

在弹出的IP添加窗口的搜索栏中,输入zynq字样,然后双击选中ZYNQ7 Processing System


mark_图片4.png 

 

添加好ZYNQ7 Processing System IP核后,双击该IP核,对此IP核进行配置:

mark_图片5.png 

 

设置ZYNQ7 Processing System IP核的外设IO

mark_图片6.png 

设置ZYNQ7 Processing System IP核的DDR内存,然后点击OK,完成IP核配置:

mark_图片7.png 

 

点击Run Block Automation,运行模块自动化,并在弹出的对话框中直接点击OK

mark_图片8.png 

mark_图片9.png 

 

使用鼠标左键,单击FCLK_CLK0,并拖动鼠标至M_AXI_GP0_ACLK,将这两个管脚短接起来:

mark_图片10.png 

 

Sources窗口,右键点击design_1.bd文件,在弹出的菜单中,选择Generate Output Products,并在随后弹出的对话框中点击Generate

mark_图片11.png 

mark_图片12.png 

输出文件生成完毕后,点击OK

mark_图片13.png 

 

Sources窗口,右键点击design_1.bd文件,在弹出的菜单中,选择Create HDL Wrapper,并在随后弹出的对话框中点击Generate

mark_图片14.png 

 

在弹出的对话框中直接点击OK

mark_图片15.png 


修改顶层文件

Sources窗口,双击打开刚刚生成的design_1_wrapper.v文件:

mark_图片16.png 

 

Vivado之前的工程顶层模块例化到design_1_wrapper.v设计文件中:

mark_图片17.png 

 

整理design_1_wrapper.v模块的输入、输出管脚,并将Vivado例程顶层模块的管脚添加进来:

mark_图片18.png 

 

生成下载bit流文件

点击Generate Bitsteam,生成bit流文件,在弹出的对话框中选择Yes

mark_图片19.png 

mark_图片20.png 

 

如果在生成bit流文件过程中,产生了如下错误,则按照错误提示,添加时钟约束,如下示例红框中所示,将红框里面的内容复制到约束文件中:

mark_图片21.png 

双击Constraints -> constrs_1下面的xdc约束文件,xdc约束文件打开后,将错误提示内容复制到xdc约束文件中,然后点击保存:

mark_图片22.png 

 

然后,再次点击Generate Bitsteam,生成bit流文件,在弹出的对话框中选择Yes

bit流文件生成完成后,在弹出的窗口中点击Cancel

mark_图片23.png 

导出硬件设计文件

点击File -> Export -> Export Hardware

mark_图片24.png 

在弹出的对话框中,选中Include bitstream,然后点击OK

mark_图片25.png 

打开Xilinx SDK软件界面

点击File -> Launch SDK,并在弹出的对话框中点击OK

mark_图片26.png 

mark_图片27.png 

随后,SDK软件被打开:

mark_图片28.png 

生成FSBL文件

Xilinx SDK软件界面,点击File -> New -> Application Project

mark_图片29.png 

 

用户自定义fsbl工程名,如下示例fsbl,然后点击Next

mark_图片30.png 

 

选择Zynq FSBL模板,并点击Finish

mark_图片31.png 

 

等待Build进度条完成:

mark_图片32.png 

 

fsbl工程Build进度条完成后,在fsbl -> Binaries目录下面会生成一个fsbl.elf文件:

mark_图片33.png 

 

生成下载镜像文件BOOT.bin

点击Xilinx Tools -> Create Zynq Boot Image

mark_图片34.png 

指定bif文件存放路径,用户自定义位置:

mark_图片35.png 

 

添加FSBL文件,将刚刚生成的fsbl.elf文件添加到Boot image partitions中:

mark_图片36.png 

mark_图片37.png 

 

添加bit流文件,将bit流文件添加到Boot image partitions中:

mark_图片38.png 

mark_图片39.png 

 

最后,点击Create Image,生成镜像文件BOOT.bin

mark_图片40.png 

烧写FLASH

烧写FLASH前,需确保下载模式配置为JTAG模式,即开发板SW2拨码开关的2位拨码均需要拨到ON的位置,如下图红框所示:

mark_图片41.png 

 

开发板上电,然后点击Xilinx Tools -> Program Flash

mark_图片42.png 

 

点击Browse,选择刚刚生成的镜像文件BOOT.bin,然后点击Program

mark_图片43.png 

 

等待烧写完成:

mark_图片44.png 

 

FLASH烧写完成后,在控制台输出Flash Operation Successful信息:

mark_图片45.png 

 

程序固化检验

烧写完FLASH后,给开发板断电,并将SW2拨码开关设置为QSPI FLASH启动模式,即1号拨码位拨到ON位置,2号拨码位拨到ON的对立面,如下图红色箭头所示:

mark_图片46.png 

 

开发板上电,查看实验程序是否运行起来。

 

 

 


 

 

 

 

 

 

 

 






关键词: FLASH     ZYNQ7000     PL逻辑估计     zyn    

高工
2023-02-13 21:37:44     打赏
2楼

谢谢分享


专家
2023-02-13 22:20:27     打赏
3楼

谢谢分享


高工
2023-02-13 22:21:03     打赏
4楼

谢谢分享


高工
2023-02-13 22:24:15     打赏
5楼

谢谢分享


高工
2023-02-13 22:25:57     打赏
6楼

谢谢分享


专家
2023-02-14 01:33:22     打赏
7楼

感谢楼主的分享,很实用了。


高工
2023-02-14 04:11:55     打赏
8楼

感谢楼主的分享,很实用了。


专家
2023-02-14 07:24:43     打赏
9楼

谢谢分享


专家
2023-02-14 08:23:54     打赏
10楼

谢谢分享


共14条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]