0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在 Vivado中完成平台准备工作——创建硬件设计

454398 来源:Xilinx赛灵思官微 作者:Xilinx赛灵思官微 2020-09-26 11:29 次阅读

本文系《创建 Vitis™ 加速平台的简单指南》的第1部分。(您可通过下列链接查看其它各部分:第 2 部分:在 PetaLinux 中为加速平台创建软件工程;第 3 部分:在 Vitis 中封装加速平台 ;第 4 部分:在 Vitis 中测试定制加速平台)。

在本文中,我们将讲解如何在 Vivado® Design Suite 中完成平台准备工作,以便将其用作为 Vitis 中的加速平台。

您既可以采用已确认的成熟设计作为平台,这样只需稍作增强便可灵活运用于加速软件功能,或者也可以采用仅含加速所需拓扑结构的简单基础平台。重点在于,此平台并没有必要采用一次性设计,而应采用可有机变化的设计,这样即可随您的设计需求而变。

引言

加速软件组件就意味着将其从 CPU 卸载至可编程逻辑中的加速 IP。Vitis 工具将负责处理在加速 IP 与 CPU 之间添加数据移动程序的操作。

但它确实需要用户提供输入信息。它需要了解从 SoC 和加速 IP 连接到哪个接口。它还需要了解有哪些时钟/复位可供使用。

并且由于我们在 CPU 与加速 IP 之间发送数据块,因此需要中断信号。基本上就这些…… 好吧,其实还要向 Vitis 工具提供一些其它信息,这个我们稍后再聊。

先继续往下看。启动 Vivado 并创建工程。我使用的是 ZCU104 评估板。但以下步骤对于所有 Zynq® UltraScale™ 开发板都是通用的,无论是开发板还是定制板都一样。

创建硬件设计

创建块设计 (BD)。此处名称与用于命名平台的名称相同。

从 IP 目录添加 Zynq UltraScale 处理器子系统 IP 块。如果使用的是开发板,那么应启用“块自动化设置 (Block Automation)”功能。

我把默认接口更改为仅包含 LPD:

在我们的简单平台中,可以只创建 2 个时钟。这些时钟将在 Vitis 中使用。

我们可从 IP 目录添加 Clocking Wizard:

默认情况下,复位处于高电平有效状态,而复位源(位于 Zynq UltraScale 器件上)则处于低电平有效状态。因此,在进行时钟设置配置时需牢记此信息。

我添加了 3 个输出时钟:100Mhz、150Mhz 和 300Mhz:

并将复位极性设置为低电平有效(Active Low):

针对每个时钟都需要提供同步复位。我们有 3 个时钟,因此需要从 IP 目录添加 3 个 Processor System Reset IP 核:

下一步,需要添加中断信号。这里我们从 IP 目录添加 AXI Interrupt Controller。用户可以使用 IP integrator 中的“运行自动连接(Run Connection Automation)”功能来处理 AXI 连接。

使用 100Mhz 时钟

在 AXI Interrupt Controller 中,将“中断输出连接(Interrupt Output Connection)”设置为“单连接 (Single)”,并将其连接到 Zynq UltraScale IP 上的 pl_ps_irq:

对于基本硬件平台,这样设置就可以了。

现在,我们只需设置元数据,以便通过 Platform (PFM) 属性将硬件信息告知 Vitis 即可。

添加 PFM 属性

PFM 属性是将元数据传递给 Vitis 所必需的。

Vitis 会提取这些数据以判定哪些接口、时钟和中断信号可用于在现有平台中添加加速部分。

平台名称

首先,对平台命名:

完成命名后,您将看到一个新的“平台 (Platform)”选项卡。其中将显示整个设计中的所有时钟、接口和中断信号。 我们需要筛选可用于 Vitis 的资源。

启用时钟

右键单击时钟,然后单击“启用 (Enable)”:

针对 clk_out3 重复此操作。

时钟属性

选中“选项 (Options)”选项卡:

注:时钟 ID 必须以 0 开头并递增,因此,请更改此处设置。我们还必须指定默认值。

此处默认值即 Vitis 中使用的默认时钟:

设置 clk_out3 的索引

启用接口

可采用块设计中可用的任意接口,例如,Zynq UltraScale 器件上的接口或 AXI Interconnect 上的接口。

在此例中,我只添加 Zynq UltraScale 器件上的接口。

启用中断

工程属性

Vitis IDE 是支持众多不同流程(例如,数据中心、加速或嵌入式流程等)的统一工具。我们需要将此用途传递给 Vitis 工具。

如果要创建嵌入式设计,就需要指定该用途。在此示例中,我们将把 Vitis 用于加速。此用途必须明确指定,因为 Vitis 需要告知下游工具如何处理该平台。

此处可看到下列属性:

创建 XSA

完成以下任务以创建 XSA

• 生成块设计
• 创建 HDL 封装
• 生成比特流
• 依次单击“File -> Export -> Export Hardware”
o 依次单击“Expandable -> Pre Synthesis”,然后选中“Bitstream”

用户可在此处输入详细信息:

至此大功告成。

如需了解后续步骤,请参阅本系列博客的第 2 部分:在 PetaLinux 中为加速平台创建软件工程

文章转载自:Xilinx赛灵思官微
编辑:hfy


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Xilinx
    +关注

    关注

    70

    文章

    2119

    浏览量

    119359
  • 开发板
    +关注

    关注

    25

    文章

    4416

    浏览量

    93905
  • Vivado
    +关注

    关注

    18

    文章

    789

    浏览量

    65091
收藏 人收藏

    评论

    相关推荐

    SPC58的HSM开发用什么环境还有什么需要的准备工作

    SPC58的HSM开发用什么环境还有什么需要的准备工作
    发表于 03-19 06:34

    【ALINX 技术分享】AMD Versal AI Edge 自适应计算加速平台准备工作(1)

    AMD Versal AI Edge 自适应计算加速平台准备工作,包含软件环境、硬件环境。
    的头像 发表于 03-07 15:49 293次阅读
    【ALINX 技术分享】AMD Versal AI Edge 自适应计算加速<b class='flag-5'>平台</b>之<b class='flag-5'>准备工作</b>(1)

    smt加工前的准备工作有哪些?

    一站式PCBA智造厂家今天为大家讲讲smt加工前的准备工作有哪些?SMT贴片加工制程前有哪些准备工作。在工业制造领域,SMT贴片加工是一项非常常见的技术。这种工艺可以提高电路板制造的效率,并保证电路
    的头像 发表于 01-26 09:18 228次阅读

    划片机新手教程:从准备工作到注意事项全解析!

    随着科技的飞速发展,划片机已成为半导体行业不可或缺的一部分。对于新手来说,如何正确操作划片机显得尤为重要。以下是新手操作划片机的步骤和建议。一、准备工作在开始操作划片机之前,首先需要准备好以下
    的头像 发表于 11-20 17:24 549次阅读
    划片机新手教程:从<b class='flag-5'>准备工作</b>到注意事项全解析!

    Python中使用selenium的准备工作

    它来做基于web浏览器的UI自动化测试,也可以用它来做一些固定的页面操作,减少我们重复的手动操作。 准备工作 在使用selenium库时先使用pip命令下载 pip install selenium
    的头像 发表于 11-15 11:12 190次阅读
    Python中使用selenium的<b class='flag-5'>准备工作</b>

    怎样做好电动机起动前的准备工作

    为了防止电动机起动时发生故障,在起动前应缴好以下准备工作
    的头像 发表于 11-08 10:34 370次阅读

    盐雾试验箱试验前需做哪些准备工作

    。盐雾试验箱在进行测试前需要做哪些准备工作呢?一、试验前必须仔细的清洗被测试样品,尽可能地清除那些可能会影响试验结果的杂质(灰尘、油污或其它杂质)。所用的清洗方法应取决于
    的头像 发表于 11-07 09:51 230次阅读
    盐雾试验箱试验前需做哪些<b class='flag-5'>准备工作</b>

    SRRC/FCC/CE无线电认证测试 STM32WB技术准备工作

    电子发烧友网站提供《SRRC/FCC/CE无线电认证测试 STM32WB技术准备工作.pdf》资料免费下载
    发表于 09-19 16:45 0次下载
    SRRC/FCC/CE无线电认证测试 STM32WB技术<b class='flag-5'>准备工作</b>

    vivado创建工程流程

    vivado的工程创建流程对于大部分初学者而言比较复杂,下面将通过这篇博客来讲解详细的vivado工程创建流程。帮助自己进行学习回顾,同时希望可以对有需要的初学者产生帮助。
    的头像 发表于 07-12 09:26 1308次阅读
    <b class='flag-5'>vivado</b><b class='flag-5'>创建</b>工程流程

    何在Vivado中添加时序约束呢?

    今天介绍一下,如何在Vivado中添加时序约束,Vivado添加约束的方法有3种:xdc文件、时序约束向导(Constraints Wizard)、时序约束编辑器(Edit Timing Constraints )
    的头像 发表于 06-26 15:21 2170次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>Vivado</b>中添加时序约束呢?

    液晶拼接屏安装前的准备工作有哪些

    液晶拼接屏大家应该都不陌生,现在的商城、展厅、会议室经常会用到这种大屏,不仅随意拼接而且显示效果出色,深受广大用户喜爱。那么,你知道液晶拼接屏安装前的准备工作有哪些吗?接下来就让景信科技小编来为你解答。
    的头像 发表于 05-25 09:38 320次阅读
    液晶拼接屏安装前的<b class='flag-5'>准备工作</b>有哪些

    液晶拼接屏安装前的准备工作有哪些

    液晶拼接屏大家应该都不陌生,现在的商城、展厅、会议室经常会用到这种大屏,不仅随意拼接而且显示效果出色,深受广大用户喜爱。那么,你知道液晶拼接屏安装前的准备工作有哪些吗?接下来就让景信科技小编来为你解答。
    的头像 发表于 05-24 15:55 281次阅读

    10分钟轻松实现三菱FX3UPLC连接阿里云平台

    电脑的准备工作3 2.5 MQTT服务器准备工作4 三. 阿里云IoT平台配置步骤5 3.1 创建产品5 3.2 添加设备6 3.3 配置阿里云IoT
    的头像 发表于 05-18 15:35 472次阅读
    10分钟轻松实现三菱FX3UPLC连接阿里云<b class='flag-5'>平台</b>

    简述SMT贴片加工制造务必做好的一些产前准备工作

    SMT贴片加工从试样到量产阶段都需要我们做好充分的产前准备工作,确保所有物料能够顺利上线,避免各种停线找料事故的发生
    发表于 05-18 09:52 574次阅读

    何在Vivado硬件管理器内读取各项监控值?

    Vivado 内,以 Versal 器件为目标创建一个示例,此示例将以 VCK190 开发板为目标创建工程。 创建块设计,并将 CIPS IP 添加到画布上,然后双击此 CIPS
    的头像 发表于 05-17 09:17 2279次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>Vivado</b><b class='flag-5'>硬件</b>管理器内读取各项监控值?