问题标签 [vivado-hls]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
verilog - .vcd 和 .saif 文件
我正在使用 vivado 2017.1,我的目的是计算 FIR 滤波器的功耗。我在 xilinx ISE 中使用 verilog 进行编码,并在 vivado 中导入这些文件。我在测试台中使用这些命令生成了 .vcd 和 .saif 文件。
我的问题是,如何为此目的同时使用 .vcd 和 .saif 文件。我知道这两者之间的区别。我可以在电源报告的“切换”选项卡中上传 .saif 文件,但我找不到可以上传 .vcd 文件的任何其他地方。我看过很多教程,也阅读了 vivado 套装指南。难道我做错了什么?功率报告是否只需要 .saif 文件?一份文件说他们的 FIR 滤波器的动态功率为 0.727W,但对于相同的代码和相同的滤波器设计,我的动态功耗为 25.09W。请帮忙。
vhdl - 使用 AXI4 从设备进行 R&W
我是 VHDL 和 Vivado 的初学者,我需要在从机和主机之间建立通信;正是我需要阅读和写作。我的意思是,我的奴隶是一个内存,我的主人是一个 DDR 控制器。我使用向导创建了一个 IP,但我很迷茫......这是向导返回的内容:
我认为,最终我必须在这里输入与通信相关的代码。
c++ - C++ 模板中的自定义函数
如果我使用带有 int 模板参数的 C++ 类,例如:
然后我知道我可以从这种类型的某些宽度创建特定定义,例如:
但是,如果我想说定义一个常量并将其传入,我的选择是什么(除了定义)?说这样的话:
此外,是否可以在模板参数选择中定义一个函数或使用现有函数?像这样的东西:
如果可能的话,我可以自己编写函数。
c - 变更单分析设计文件使用 Vivado HLS 2019 归档我的项目
我正在使用 xlininx 的 vivado xls 创建一个顶级函数。在我的项目中有5个文件:
- P434.c
- 实用程序.c
- sidh.c
- fpx.c
- 密码.c
当我运行 C Synthesys 时,文件的分析按以下顺序开始:
1-util.c
2- sidh.c
3- P434.c
我希望分析文件设计的顺序是:
1-util.c
2- P434.c
3- sidh.c
我怎样才能做到这一点?
opencv - 访问多维 cv::Mat 数组的元素
我无法弄清楚如何正确访问 3D cv::Mat 数组的元素。以下代码在 Vivado HLS 中运行并失败并出现非描述性错误。这是 Vivado HLS 的问题,还是我没有正确读取值?
错误:
c++ - 将指针数组传递给 Vivado HLS (SDSoC 2018) 中的函数
我正在使用 SDSoC 2018.3 Vivado HLS 加速 C++ 函数。这个函数只需要一个指针数组(在 PS 中使用 sds_alloc 分配)。然后,它遍历这个数组,提取其中的每个元素(这是 DDR 内存的地址),并读取位于该地址中的数据。
这是一个演示该想法的简单函数:
问题是,如果我将指针数组作为顶级函数的参数传递,SDSoC 会引发错误。
在挖掘了 Vivado 的“ug902”手册后,我发现:
“Vivado HLS 支持指向综合指针的指针,但不支持在顶级接口上使用它们,即作为顶级函数的参数。如果在多个函数中使用指向指针的指针,Vivado HLS 会内联所有使用指向指针的函数。内联多个函数可以增加运行时间。”</p>
我不知道如何解决这个问题。
任何帮助表示赞赏。
vivado-hls - a.at(x,y) 在 Vivado SDSoC 中不起作用
我想从 Vivado SDSoC 中的 Mat 获取 2d 阵列,但我无法做到这一点,因为如 Xilinx(XAPP1167) 所述,
cv::Mat<>.at() 方法和 cvGet2D() 函数在可综合库中没有对应的等效函数
我很感激任何帮助。谢谢你。
该项目是关于人脸识别系统的。系统首先会进行 viola-jone 人脸检测,然后将输出提供给 CNN 分类。viola-jones 人脸检测的输出为 unsigned char*。我将其转换回 Mat 并获得 CNN 分类器输入的 2d 数组。
verilog - AXI-Stream 接口需要哪些信号?
对于 AXI 流接口,哪些都需要?
1.ID
2.VALID 3.KEEP 4.LAST 5.READY 6.DATA 7.STRB 8.USER 9.DEST
c++ - Zedboard zynq-7000 Opencl 浮点从类型“double *”到类型“double”的无效转换
我是 Xilinx 开发的新手,我正在用 zedboard 准备我的硕士学位。我正在尝试使用 Vivado HLS 在 Zedboard 上使用 Opencl 开发卷积加速器。
我创建了 OpenCL 块。
然后我在 Vivado 中使用它来创建架构: 图 1
将其导出到 Vivado SDK 并从此处使用和修改代码后。OpenCL 块没有正确执行,我不知道它的原因。
所以我的问题是为什么当我用 float 或 double 替换 int 类型时,它会给我一个错误。
旧代码:
我的代码:
它给了我这个错误:
从“double *”类型到“double”类型的无效转换
请帮帮我,我想将“a”数组的内容传输到 OpenCL 块的“a_addr”数组。