没有合适的资源?快使用搜索试试~ 我知道了~
fpga+vivado hls+常见命令使用优化
需积分: 5 0 下载量 55 浏览量
2023-12-01
15:29:03
上传
评论
收藏 16.12MB PDF 举报
温馨提示
试读
599页
此编程指南旨在为您提供真实世界的设计技巧以及硬件设计详细信息, 帮助您最大限度发挥 AMD Vitis HLS 工具的作用。本指南提供了有关各种编程技巧的详细信息, 您应运用这些技巧来编写 C/C++ 代码并通过高层次综合将其综合为RTL 代码, 此外它还提供了最佳实践检查表, 您应遵循该检查表来创建使用 AXI4 接口的 IP。最后, 它还详述了各种最优化技巧, 供您用于提升代码性能、改善生成的硬件设计的适用性和功能性。
资源推荐
资源详情
资源评论
Vis 高层次综合用户指南
UG1399 (v2023.1) 2023 年 7 月 17 日
本文档为英语文档的翻译版本,若译文与英语原文存在歧义、差异、不一致或冲突,概以英语文档为准。译文可
能并未反映最新英语版本的内容,故仅供参考,请参阅最新版本的英语文档获取最新信息。
AMD ⾃适应计算⽮志不渝地为员⼯、客户与合作伙伴打造有归属感的包
容性环境。为此,我们正从产品和相关宣传资料中删除⾮包容性语⾔。我
们已发起内部倡议,以删除任何排斥性语⾔或者可能固化历史偏⻅的语
⾔,包括我们的软件和 IP 中嵌⼊的术语。虽然在此期间,您仍可能在我
们的旧产品中发现⾮包容性语⾔,但请确信,我们正致⼒于践⾏⾰新使命
以期与不断演变的⾏业标准保持⼀致。如需了解更多信息,请参阅此链
接。
目录
第一部分:简介........................................................................................................................................................10
按设计进程浏览内容......................................................................................................................................................10
Vitis HLS 支持的操作系统............................................................................................................................................. 10
高层次综合的优势......................................................................................................................................................... 11
Vivado HLS 简介........................................................................................................................................................... 13
设计代码重构...........................................................................................................................................................15
全新 Vitis Unified IDE 简介.......................................................................................................................................... 18
教程与示例.....................................................................................................................................................................18
第二部分:HLS 编程指南..................................................................................................................................20
第 1 章:设计原则............................................................................................................................................21
FPGA 编程三大范例................................................................................................................................................ 22
组合三种范例...........................................................................................................................................................26
结论 - 性能良方....................................................................................................................................................... 28
第 2 章:HLS 抽象并行编程模型...........................................................................................................30
控制驱动的任务和数据驱动的任务......................................................................................................................... 31
数据驱动的任务级并行度........................................................................................................................................32
控制驱动的任务级并行............................................................................................................................................35
混用数据驱动的模型与控制驱动的模型..................................................................................................................42
汇总......................................................................................................................................................................... 44
第 3 章:循环入门............................................................................................................................................46
循环流水打拍...........................................................................................................................................................46
展开循环.................................................................................................................................................................. 55
合并循环.................................................................................................................................................................. 56
处理嵌套循环...........................................................................................................................................................57
处理变量循环边界................................................................................................................................................... 60
第 4 章:阵列入门............................................................................................................................................62
将软件阵列映射到硬件存储器................................................................................................................................ 62
阵列访问和性能.......................................................................................................................................................63
接口上的阵列...........................................................................................................................................................67
阵列初始化和复位................................................................................................................................................... 70
实现 ROM................................................................................................................................................................71
阵列的 C 语言仿真...................................................................................................................................................72
UG1399 (v2023.1) 2023
年 7 月 17 日
Vitis HLS 用户指南 2
Send Feedback
第 5 章:函数入门............................................................................................................................................74
函数内联.................................................................................................................................................................. 74
函数流水打拍...........................................................................................................................................................75
函数例化.................................................................................................................................................................. 75
第 6 章:数据类型............................................................................................................................................77
标准类型.................................................................................................................................................................. 78
复合数据类型...........................................................................................................................................................81
任意精度 (AP) 数据类型..........................................................................................................................................95
全局变量................................................................................................................................................................100
指针....................................................................................................................................................................... 101
矢量数据类型.........................................................................................................................................................110
位宽传输................................................................................................................................................................111
第 7 章:不受支持的 C/C++ 构造........................................................................................................113
系统调用................................................................................................................................................................113
动态存储器使用.....................................................................................................................................................114
指针限制................................................................................................................................................................115
递归函数................................................................................................................................................................115
未定义的行为.........................................................................................................................................................116
虚拟函数和指针.....................................................................................................................................................116
第 8 章:HLS 设计接口.............................................................................................................................. 117
定义接口................................................................................................................................................................117
Vitis HLS 存储器布局模型.....................................................................................................................................165
HLS 设计的执行模式............................................................................................................................................. 175
控制初始化与复位行为..........................................................................................................................................183
第 9 章:利用 M_AXI 接口进行设计的最佳实践.......................................................................186
第 10 章:最优化技巧与故障排除提示............................................................................................188
认识高层次综合的调度与绑定.............................................................................................................................. 189
最优化逻辑............................................................................................................................................................ 195
AXI 系统性能最优化..............................................................................................................................................197
管理面积资源和硬件资源......................................................................................................................................223
展开 C++ 类中的循环............................................................................................................................................ 226
控制驱动的任务级并行度的限制...........................................................................................................................226
利用静态变量进行流水打拍的局限性................................................................................................................... 231
第三部分:使用 Vitis HLS.............................................................................................................................. 232
第 11 章:启动 Vitis HLS.......................................................................................................................... 233
设置环境................................................................................................................................................................234
Vitis HLS IDE 概述................................................................................................................................................ 234
UG1399 (v2023.1) 2023
年 7 月 17 日
Vitis HLS 用户指南 3
Send Feedback
第 12 章:创建新的 Vitis HLS 工程................................................................................................... 239
Vitis HLS 流程概述................................................................................................................................................246
处理源文件............................................................................................................................................................ 248
设置配置选项.........................................................................................................................................................265
指定时钟频率.........................................................................................................................................................268
使用 Flow Navigator............................................................................................................................................ 269
第 13 章:使用 C 语言仿真验证代码................................................................................................ 271
撰写测试激励文件................................................................................................................................................. 274
使用调试视图布局................................................................................................................................................. 280
C 语言仿真输出..................................................................................................................................................... 281
综合前控制流程.....................................................................................................................................................281
第 14 章:代码综合.......................................................................................................................................284
综合汇总................................................................................................................................................................ 286
C 语言综合的输出................................................................................................................................................. 291
改善综合运行时间和容量......................................................................................................................................292
第 15 章:分析综合的结果...................................................................................................................... 293
调度查看器............................................................................................................................................................ 293
Function Call Graph 查看器................................................................................................................................ 296
数据流查看器.........................................................................................................................................................298
第 16 章:最优化 HLS 工程.....................................................................................................................301
创建额外解决方案................................................................................................................................................. 301
添加编译指示和指令............................................................................................................................................. 303
第 17 章:Vitis HLS 中的 C/RTL 协同仿真................................................................................... 308
C/RTL 协同仿真输出............................................................................................................................................. 310
自动验证 RTL.........................................................................................................................................................311
分析 RTL 仿真........................................................................................................................................................314
协同仿真死锁查看器............................................................................................................................................. 316
时间线轨迹查看器................................................................................................................................................. 317
调试 C/RTL 协同仿真............................................................................................................................................ 319
第 18 章:导出 RTL 设计...........................................................................................................................322
运行实现................................................................................................................................................................ 324
实现报告................................................................................................................................................................ 326
RTL 导出的输出.....................................................................................................................................................328
工程存档................................................................................................................................................................ 329
第 19 章:从命令行运行 Vitis HLS.....................................................................................................330
第四部分:Vitis HLS 命令参考资料.........................................................................................................332
UG1399 (v2023.1) 2023
年 7 月 17 日
Vitis HLS 用户指南 4
Send Feedback
第 20 章:vitis_hls 命令............................................................................................................................ 333
hls_init.tcl..............................................................................................................................................................333
第 21 章:工程命令.......................................................................................................................................335
add_files................................................................................................................................................................335
cat_ini....................................................................................................................................................................336
close_project........................................................................................................................................................ 337
close_solution...................................................................................................................................................... 338
cosim_design....................................................................................................................................................... 338
cosim_stall............................................................................................................................................................340
create_clock..........................................................................................................................................................340
csim_design..........................................................................................................................................................341
csynth_design...................................................................................................................................................... 342
delete_project...................................................................................................................................................... 343
delete_solution.................................................................................................................................................... 343
enable_beta_device.............................................................................................................................................344
export_design...................................................................................................................................................... 344
get_clock_period..................................................................................................................................................346
get_clock_uncertainty......................................................................................................................................... 346
get_files.................................................................................................................................................................347
get_part................................................................................................................................................................ 347
get_project........................................................................................................................................................... 348
get_solution......................................................................................................................................................... 348
get_top..................................................................................................................................................................349
help....................................................................................................................................................................... 349
list_part................................................................................................................................................................. 350
open_project........................................................................................................................................................ 351
open_solution...................................................................................................................................................... 352
open_tcl_project.................................................................................................................................................. 353
set_clock_uncertainty..........................................................................................................................................353
set_part.................................................................................................................................................................354
set_top.................................................................................................................................................................. 355
write_ini................................................................................................................................................................ 355
第 22 章:配置命令.......................................................................................................................................357
config_array_partition.........................................................................................................................................357
config_compile.....................................................................................................................................................358
config_cosim........................................................................................................................................................ 359
config_csim.......................................................................................................................................................... 361
config_dataflow................................................................................................................................................... 361
config_debug....................................................................................................................................................... 363
config_export.......................................................................................................................................................363
config_interface...................................................................................................................................................365
config_op..............................................................................................................................................................368
config_rtl...............................................................................................................................................................370
UG1399 (v2023.1) 2023
年 7 月 17 日
Vitis HLS 用户指南 5
Send Feedback
剩余598页未读,继续阅读
资源评论
红楼愚梦
- 粉丝: 22
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功