Xilinx Vitis HLS教程1--Vitis HLS概述[03/12]

本文详细介绍了Vitis HLS的设计流程,包括创建项目、C/C++代码综合、优化、模拟等步骤。重点解析了Vivado IP流和Vitis内核流的差异,前者提供更大设计灵活性,后者更适用于Vitis统一软件平台。此外,还简单介绍了pandas库的使用。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

solution: 解决方案
synthesis: 综合
simulation: 模拟


3. Vitis HLS流程概述

Vitis HLS是基于项目的,可以包含多种称为"解决方案"的变体,以推动综合和模拟。每个解决方案都可以针对Vivado IP 流或Vitis内核流。基于目标流,每个解决方案将指定不同的约束和优化指令,如下文使能Vivado IP 流使能 Vitis 内核流中所述。请参阅下文Vivado/Vitis 流的默认设置,了解两个流之间的明确差异列表。

典型设计流中综合、分析、优化步骤如下:
1.创建一个新的Vitis HLS项目;
2. 用C模拟器验证源码;
3. 运行HLS生成RTL文件;
4. 分析结果,考虑的维度有:延迟、初始间隔、吞吐量、资源利用等;
5. 优化并重复上述步骤;
6. 用C/RTL协同模拟器验证结果。

Vitis HLS基于目标流、缺省工具配置、设计约束、优化pragma指示、用户自定义指令等实现解决方案。可以使用优化指令修改和控制内部逻辑和I/O端口的实现,override工具的缺省行为。

C/C++代码综合如下:

  • 顶层函数的参数综合成RTL I/O端口
    正如接口定义小节所述,HLS创建什么样的接口取决于目标流、数据类型、数据方向、接口模式、用户指定的INTERFACEpragma,已经用户自定义的其他指令。
  • 子函数综合成层次化RTL设计的block
    –最终的 RTL 设计包括与原始顶层 C 函数等级结构相对应的模块(module)或实体(entity)的层次化结构;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值