Zybo领导演示

该项目不再受支持。请参阅支持的内容Zybo资源中心

概述

本指南将通过将自定义IP导入Vivado并在Xilinx SDK中导入自定义IP。

在本教程的最后,你会有:

  • 导入并实现自定义DigiLEDs IP块到设计中。
  • 在Xilinx Vivado SDK(软件开发工具包)中创建的。c项目与Zybo接口。

先决条件

技能

  • 熟悉Vivado
  • 块设计经验

硬件

  • Digilent Zybo董事会
  • 微USB电缆
    • 用于UART通信和JTAG编程
  • 可编程RGB LED(WS2812,Neopixels)
    • 数据输入信号线连接泽博的JB1

软件

  • Xilinx Vivado 2015.3或2015.4附带SDK包。
    • 遵循此Wiki指南(安装Vivado)有关如何安装和激活Vivado

董事会的支持文件

  • zybo支持文件

项目文件


介绍

在本教程中,我们将在基本系统设计中添加我们自己的自定义IP块以与某种可编程RGB LED一起使用。


一般的设计流程

即Vivado

  • 打开Vivado
  • 创建一个新的区块设计
  • 添加Zynq核心IP并将其自动化
  • 将DigiLeds自定义IP添加到项目的IP存储库
  • 将DigiLEDs IP添加到设计中并进行配置。
  • 验证和保存区块设计
  • 创建HDL系统包装器
  • 运行设计综合和实现
  • 生成一些文件
  • 导出硬件设计包括生成的位流文件到SDK工具
  • 发射SDK

现在硬件设计被导出到SDK工具。Vivado到SDK的切换是通过Vivado内部完成的。我们将使用SDK创建一个Software应用程序,通过从Vivado导入硬件设计信息,该应用程序将使用定制的板接口数据和FPGA硬件配置。

2SDK

  • 创建新的应用项目并选择空应用模板
  • 进口Main.c.
  • FPGA程序

教程

1.创建项目

当您第一次运行Vivado时,这将是主启动窗口,您可以在这里创建一个新项目或打开一个最近的项目。

1.1)点击创建新项目.选择项目名称和位置,以便有没有空格.这是用于项目名称,文件名和位置路径的重要命名约定。
下划线可以很好地代替空格。

对于Vivado项目拥有专用文件夹,这是一种很好的做法,最好是尽可能小的路径长度。示例:c:/ vivado_projects。

命名项目并选择项目位置并单击下一个

1.2)选择项目类型为RTL项目.不选中“不指定源”框并单击下一个

1.3)我们不会在这里导入或创建任何文件,所以单击下一个直到零件选择屏幕。

1.4)如果你已经完成了董事会支持文件维基指南, 选择董事会
Zybo应显示在选择列表中。选择正确的板名称中的不匹配会导致错误。选择Zybo并点击下一个

1.5)显示新项目设计源和目标设备的概要。点击完成


2.创建新的区块设计

这是主项目窗口,您可以在其中创建基于IP的块设计或添加基于RTL的设计源。左侧的Flow Navigator面板在如何创建硬件设计,执行模拟,运行综合和实现并生成一部位文件时提供多个选项。您还可以使用硬件管理器将电路板直接从Vivado与生成的位文件编程。

对于我们的设计,我们将使用IP Integrator创建新的块设计。

2.1)在左侧,您应该看到流量导航器。选择创建块设计IP集成商。给你的设计一个名字(不要有任何空白),然后点击好吧



您已经创建了一个新的模块设计。


3.添加我们的自定义IP回购

3.1)查找并点击“项目设置”项目经理在Vivado左侧。

3.2)在项目设置中,单击左侧的“IP”。然后单击“存储库管理库”选项卡,然后单击+按钮(下面突出显示)。

3.3)导航到您的项目文件夹并选择“DigiLED-master”文件夹中。

3.4)验证新的repo是否在列表中,然后单击“确定”以退出项目设置。

4.添加我们的自定义IP

4.1)点击 “添加IP”按钮。在搜索框中键入“Digiled”,然后双击“DigiLED_v1.0”.这将使我们的自定义IP添加到块设计。

4.2)点击 “添加IP”再次按钮。此时间在搜索框中键入“zynq”并双击Zynq7处理系统



这将为我们的块设计添加Zynq处理器。

4.3)点击“运行块自动化”并点击好吧自动配置Zynq核心。

4.4)单击“运行连接自动化运行并点击好吧将DIGILED连接到ZYNQ核心。


5.配置IP

5.1)找到DigiLED_0块,并双击该块以自定义它。

5.2)选择HSV子弹并改变led数量字段到你的RGB上的led数量领导strip,然后单击OK。


6.添加LED信号引脚

6.1)右击你的块设计和点击“创建端口”

将端口命名为“led_pin”,并将其设置为输出.单击OK。

6.3)用你的光标连接DigiLED_0块上的“led_pin”到“led_out”(看起来像一支铅笔)。

在你的方块设计的左边,选择来源选项卡,然后在窗口中单击右键。选择添加来源…一扇窗就会打开。选择添加或创建约束并点击下一个



创建一个新文件,确保这个名字有没空间了,然后点击完成
在source窗口中,打开constraints文件夹找到新的.xdc文件。打开它。

6.6)复制下面的行,并将其粘贴在PINS.xdc中。这是连接到连接器JB1的引脚。
set_property -dict {package_pin t20 iostandard lvcmos33} [get_ports {led_pin}];


6.7)保存PINS.xdc并关闭它。

6.8)右键单击system.bd并点击创建高密度脂蛋白包装…


7.生成一些文件

7.1)在上方工具栏中,单击产生的比特流.如果你还没有保存你的设计,你会得到一个提示来保存块设计。

7.2)生成比特流后,将在屏幕上弹出消息提示。您不必为此演示打开实现的设计。只需单击“取消”。

8.导出硬件设计到SDK

8.1)在窗口的左上角,从工具栏点击文件并选择出口的硬件

这将为软件开发工具- Vivado SDK导出带有系统包装的硬件设计。

检查框中是否包含生成的比特流


9.推出SDK.

9.1)去文件并选择发射SDK并单击OK。将启动Vivado设计项目位置本地创建的SDK文件。从Vivado到SDK的切换已经完成。


10.内部SDK为Vivado

将打开一个新的SDK窗口。HW设计规范和包含的IP块显示在system.hdf文件。SDK工具是独立于Vivado的,也就是说,从这一点上,你可以在导出的HW设计上用C/ c++创建你的SW项目。如果需要,还可以直接从Vivado Project主目录中创建的SDK文件夹中启动SDK。

现在,如果您需要返回Vivado并更改HW设计,那么建议关闭SDK窗口并在Vivado中进行所需的HW设计编辑。在此之后,您必须遵循创建新的HDL包装器、保存设计和位文件生成的顺序。然后必须将这个新的位文件和系统包装器导出到SDK。

由于我们目前没有任何HW设计编辑,我们将继续创建一个软件应用程序。

10.2)在主SDK窗口的左上角,你会发现Project Explorer面板。注意,在名称下有一个主项目文件夹system_wrapper_hw_platform_0

系统是在Vivado中创建的块设计的名称。该硬件平台具有所有已添加的HW设计定义,IP接口,外部输出信号信息和本地存储器地址信息。

说如果此时,您已经关闭了SDK,为您现有的硬件设计进行了编辑,并将设计导出到SDK然后在启动SDK工具后,您会发现一个新的硬件平台调用:system_wrapper_hw_platform_1除了老的HW设计,即。system_wrapper_hw_platform_0


11.在SDK中创建新的应用程序项目

11.1)去文件在主工具栏中选择新申请项目.将弹出一个新的项目窗口。
为您的SDK项目提供一个没有空的空格,例如“DigiLeds”的名称。确保这一点目标硬件是正确的硬件设计。在我们的情况下,它将是“system_wrapper_hw_platform_0”。点击下一步”。

11.2)选择空应用程序在下面可用模板在左侧面板上,单击“完成”。

11.3)完成上一步后,您将看到两个新文件夹Project Explorer面板。
**DigiLEDs**包含所有二进制文件,.C和.H(头文件)**DigiLEDs_bsp**是板支持文件夹

DigiLEDs是我们的主要工作源文件夹。这里还包含一个重要的文件,即“lscript.ld”。这是一个Xilinx自动生成的链接器脚本文件。


12.添加主源文件

12.1)导航到“main.c”文件。
12.2)单击并将此Main.c文件拖动到DigiLEDs / src文件夹中的Xilinx SDK。选择将这些源文件复制到项目中,然后单击OK。

13.用位文件编程FPGA

13.1)确认Zybo已打开,并使用提供的micro USB数据线连接到主机PC。

在快速选择工具栏中,你会发现一个带有红色箭头和三个绿色方框的符号。

单击此符号以打开“程序FPGA”窗口。

确保硬件平台是选为system_wrapper_hw_platform_0

在软件配置框中要在块中初始化的ELF文件内存列,行选项必须读取bootloop..如果不是,单击该行并选择bootloop.

现在点击程序。


14.编写Zynq处理器程序

在FPGA用位文件成功编程后,从Project Explorer面板上,右键单击“DigiLEDs”项目文件夹。去“运行”并选择“启动硬件(系统调试器)”



然后,您的Zybo将启动DigiLeds演示。按按钮0将循环通过RGB上的三个模式领导地带。