小马哥FPGA

  • 首页
  • 教程
  • 开源
  • 实物
  • 淘宝店铺
  • 联系
  1. 首页
  2. 教程
  3. 征服者zynq7020开发板
  4. 正文

征服者zynq7020裸机开发教程1--USB Device接口测试(zynq模拟U盘)

544点热度 0人点赞 0条评论

简介

    本教程采用官方的usbps库sdk案例,实现zynq模拟U盘,U盘的存储空间由DDR3提供,因此该模拟U盘是掉电数据丢失的。

软件版本

    Vivado2020.2+Vitis2020.2。

Vivado工程创建

1.双击打开Vivado软件,点击“Create Project”--点击“Next”;

2.设置工程名和路径

a.在“Project name:”栏填入自定义的Vivado工程名称,注意不能含非英文字符;

b.在“Project location:”栏填入(或浏览到)工程想要存放的路径,同样的路径不能含非英文字符;

c.取消勾选"Create project subdirectory",否则软件会在路径下自动多生成一个同名文件夹;

d.点击“Next”;

3.点击“Next”;

4.点击“Next”;

5.点击“Next”;

6.选择zynq器件型号,在搜索栏搜索:“xc7z020”--选择“xc7z020clg400-1”;

7.点击“Finish”;

8.新建BD文件,点击“Creat Block Design”;

9."Design name"栏填入自定义的BD文件名,这里直接用默认名称,点击“OK”;

10.点击“+”添加zynq处理器系统的IP,搜索栏搜索“process”--双击“ZYNQ7 Processing System”;

11.此时BD文件中就添加好了zynq处理器系统的IP,接下来还需要对该IP进行设置;

12.双击zynq处理器IP模块,进入设置界面;

13.本设计只使用纯PS侧,因此取消勾选PS侧和PL侧之间的相关接口,使系统更简洁;

 

14.添加USB0外设;

15.添加UART0外设,征服者zynq7020开发板硬件上UART0接的是MIO14和MIO15,所以这里选择MIO14和MIO15;

16..添加GPIO MIO外设,此处注意将BANK 1的电压标准改为LVCMOS 2.5V,原因是PS侧的以太网接口(在BANK 1)必须用2.5V或1.8V标准才能达到千兆网速,征服者zynq7020开发板硬件上使用的是2.5V标准,此处必须修改否则后面下载程序会报错;

17.我们再额外勾选下SD0,不勾选SD0也是可以用JTAG下载程序调试的,但是就没办法SD卡方式启动;

18.接下来设置下USB PHY芯片的复位管脚,在原理图中找到USB2232这颗PHY芯片,可以发现该芯片的复位管脚连接在zynq的MIO46管脚上,因此此处选择MIO46作为USB Reset;

19.配置时钟,这里用不到PL侧,所以取消勾选"FCLK_CLK0";

20.配置DDR3控制器参数,修改DDR型号和位宽16bits,修改完成后点击”OK“;

21.此时zynq处理器的IP配置就完成了,右键zynq处理器--点击"Make External"自动生成对外管脚连接信号;

22.删除用不到的USBIND_0的管脚,得到最终如下图所示的模块;

23.右键空白处--点击"Validate Design";

24.在source界面中右键BD文件--点击"Generate Output Products";

25.点击"Generate";

26.点击"OK";

27.再次右键BD文件--点击"Create HDL Wraper...";

28.点击"OK";

29.至此,Vivado工程的建立就完成了,接下来进行Vitis SDK代码设计。

Vitis SDK程序设计

1.在Vivado工程中点击"File"--"Export"--"Export Hardware";

2.点击"Next";

3.选择"Presynthesis"--点击"Next",因为是纯PS程序开发,不需要用到FPGA的bit文件;

4.使用默认名称即可,点击"Next";

5.点击"Finish";

6.此时在Vivado的工程一级目录下新生成了一个后缀.xsa的文件,这个文件是Vitis需要用到的硬件描述文件,类似于老的Vivado版本的.hdf文件;

7.在Vivado的工程一级目录新建一个文件夹,命名为:zfz7020_ps.vitis,作为后续Vitis的workspace空间;

8.双击打开Vitis2020.2,点击"Browse.."--浏览到zfz7020_ps.vitis文件夹--点击"Launch";

9.点击"Create Platform Project";

10.填入自定义的名称--点击"Next";

11.点击"Browse"浏览到步骤6中生成的.xsa文件;

12.点击"Finish";

13.在Vitis界面中一次点击下图标注位置,导入官方usbps例程;

14.勾选上面这个--点击"Finish";

15."Ctrl+B"编译工程;

16.用两根Type-C线分别连接征服者zynq开发板的jtag和usb-device接口到电脑上;

17.右键下图所示位置,将程序debug到开发板中;

18.程序下载完毕,电脑上会自动弹出下图提示,检测到新的U盘,询问是否格式化,点击"格式化磁盘";

19.按照下图配置,将U盘格式化为FAT32格式;

20.接着在"我的电脑"中就可以查看到U盘,打开U盘并随便新建一个文件验证一下(注意zynq模拟的U盘是掉电易失的,不用存放任何有价值的文件);

21.至此zynq模拟U盘的Vitis软件设计和实验就完成了,当然我们还可以在如下位置找到SD卡启动文件,Vitis默认的配置会自动产生SD卡启动的BOOT.bin,和老版本的SDK相比简化了生成SD启动文件的步骤;

22.将SD卡格式化为FAT32格式,并将BOOT.bin文件拷贝到SD卡中(需要用到读卡器),然后将SD卡插入到开发板的卡槽中重新给板子上电,就可以实验从SD卡启动zynq模拟U盘的功能了;

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

您需要 登录 之后才可以评论
分类
最新 热点 随机
最新 热点 随机
基于FPGA的简易红外热成像采集和处理系统 基于FPGA的智能温度检测系统 【开源】基于FPGA的帧差法单运动目标检测Verilog代码 FPGA串口传图、图像自动白平衡算法、亮度/色度/饱和度调节算法 基于ZYNQ7020帧差法多运动目标检测(HDMI接口输出) 基于DE2-115开发板的温度采集和显示(ds18b20+lcd1602)
【开源】基于FPGA的帧差法单运动目标检测Verilog代码 基于FPGA的智能温度检测系统 小马哥FPGA实物成品 FPGA图像双边滤波和高斯滤波(实物、源码、仿真、matlab算法、方案框图、原理图) FPGA伪彩色处理算法(实物、原理图、源码、仿真) 基于FPGA的推箱子游戏
联系我们

QQ : 3305241370

微信:ikkkkg

COPYRIGHT © 2022 小马哥FPGA. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

苏ICP备18068628号-1