vivado HLS 入门

mac2026-04-17  0

vivado HLS 入门

简介1st-8th vivado HLS基本概念1 Xilinx FPGA架构2 HLS工作机制3 HLS设计流程4 Demo5 任意精度的数据类型6 数据类型的转换7 复合数据类型8 基本运算

简介

资料来源于Xilinx官方视频课,由Lauren Gao讲解,共25讲,相比于看user guide,我认为该系列视频更适合入门,内容广泛且实用,很多示例更能帮助理解,本篇主要记录我认为有价值或容易遗忘疏忽的知识点。 视频连接:http://www.eetrend.com/topics/2018-03/100077696.html

1st-8th vivado HLS基本概念

1 Xilinx FPGA架构

我认为 需要有高效的算法测试激励和RTL测试激励同时保证算法的正确性和满足时许与资源约束,猜想他想引出HLS testbench的概念。

2 HLS工作机制

硬件/时钟分配->控制逻辑提取->逻辑映射,这些步骤会由HLS自动完成,开发者要做的是参考生成的summary和利用directive命令进行优化。

3 HLS设计流程

4 Demo

1、一般HLS生成的RTL层级会与C code保持一致,当子函数很简单时会被展开,通过关闭INLINE Directive来关闭内联; 2、动态内存分配和系统层面的某些操作不可被综合; 3、不通Solution的效果可通过Compare Report对比查看; 4、Testbench仿真通过设置返回0,否则返回1;

5 任意精度的数据类型

RTL的bit操作非常灵活高效,因此有必要引入任意精度类型 配置vs支持任意精度类型,这样可以在其他C IDE中专注于算法设计和验证

6 数据类型的转换

7 复合数据类型

结构体struct与枚举enumerated byte pad: field _level 元素位宽扩展为8bit的整数倍 struct_level 结构体总位宽扩展为8bit的整数倍

8 基本运算

定点数数据位宽的处理,要保证大数据不溢出,小数据不损失 涉及常数的处理 复数的处理 添加complex头文件 不支持递归

最新回复(0)