问题标签 [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.
xilinx - HLS 中的延迟和启动间隔
我在 SDAccel 中有一个设计,显示延迟为 33000 个周期,启动间隔为 8。这是什么意思?
这是否意味着在 33000 次循环后输出准备就绪?我检查了输出的实际时间(配置文件摘要报告),它显示为 319 毫秒。(时钟为 5ns)
c - 实现像openCV这样的对象检测
我正在尝试使用 C 中的 Haar 级联(如 openCV 的实现)来实现用于对象检测的 Viola-Jones 算法,以检测人脸。我以 Vivado HLS 兼容的方式编写 C 代码,因此我可以将实现移植到 FPGA。我的主要目标是尽可能多地学习,而不仅仅是让它发挥作用。对于改进我的问题,我也将不胜感激。
我基本上开始阅读 G. Bradski 的Learning openCV,看了一些在线教程并开始编写代码。果然它没有检测到人脸,我不知道为什么。在这一点上,我更关心的是理解我的错误,而不是能够检测到人脸。
我的实施步骤
我不确定多少细节是合适的,但为了简短起见:
- 将Haar 级联数据从haarcascade_frontalface_default.xml提取到 C 可读结构(巨大的数组)
- 编写一个函数来创建任何给定 24x24 大小的 8 位灰度图像的积分图像(与级联中列出的大小相同)
- 应用这篇精彩文章中的知识进行必要的计算
我的测试方案
- 使用与上述相同的 Haar 级联创建黄金数据的 openCV 库实现 python 脚本来检测人脸,从图像中切出检测到的人脸(确保 24x24 大小)并存储。
- 存储的图像被转换为一维 C 数组,包含逐行的像素值:
img = {row0col0, row0col1, row1col0, row1col1, ... }
- 计算积分图像并应用人脸检测
结果
- 面部仅通过 Haar 级联的 25 个阶段中的 6 个,因此我的实现没有检测到它们,我知道它们应该被检测到,因为带有 openCV 的 python 脚本和相同的 Haar 级联确实检测到了它们。
我的代码
c++ - 将注释传递给 BOOST_PP_STRINGIZE 宏
boost/mpl/list.hpp
有以下代码:
当我尝试使用 Vivado HLS C++ 编译器对其进行编译时,出现错误:
我得出的结论是预处理器将空注释附加/**/
到包含的文件名中。删除它(使用前一行的反斜杠\
)解决了这个问题,尽管还有许多其他这样的空注释会导致新的错误。
为什么AUX778076_LIST_HEADER
宏开头有这个空注释?期望BOOST_PP_STRINGIZE
删除它是否正确?
image-processing - AXIS:在 AXI 上发送图像 RGB 24bit
我正在我的大学做一个项目,我必须制作一些需要至少两帧视频的算法,但我不能使用任何相机 - 我只能将图像存储在某个地方。我想在 vivado HLS 中对一个 24 位像素(红色 8 位,绿色 8 位,蓝色 8 位)进行一些图像处理,我知道如何制作 24 位的输入流,但我不知道如何当 axi 支持 8,16 和 32 位时,我可以发送 24 位吗?1. 存储图像的最佳方式是什么?DMA?2. 如果我使用 DMA,我的输出是 32 位 - 我怎样才能获得 24 位,在我的模块上发送它?3. 输入 24 位是否是一个好的解决方案?我可以在该项目中看到https://www.xilinx.com/support/documentation/application_notes/xapp1167.pdf那个某人有输入流,这是一个完整的图像?后来只使用了一些 OpenCv 算法并得到了结果!没有HDMI可以吗?
我将不胜感激任何帮助。
image-processing - 将 JPEG 图像发送到 AXI4 流并读回?
我正在 Zedboard Zynq 评估板上使用构建在其上的 FPGA 进行图像处理项目。我已经使用 HLS 编写了图像处理块,并将输入和输出的 IP 创建为宽度为 8 的 AXI4 流。
如何在我的 PC 上读取 JPEG 图像并将其作为 AXI4 流发送到此 IP 块,然后将其输出回来以显示在我的 PC 屏幕上?
是否有任何现有的 IP 可以做到这一点?
PS FPGA 板通过 JTAG 电缆连接到我的 PC,以防万一。
vivado - Ubuntu 17.10 上的 Vivado HLS 2017.3 csim 错误
Vivado HLS 无法在 kubuntu 17.10 上编译 ac 测试台代码,相同的项目在 Windows 10 下完美编译。在 Kubuntu 和 Windows 上,解决方案综合,只有 sim 在 ubuntu 上失败。
从日志文件中,我认为 vivado 将其 gcc4.6.3 与系统 gcc 库混合在一起,有人可以帮我避免这种情况。
问候
c - VIVADO HLS:如何在任意精度类型中声明“变量的总宽度”?
我正在使用 XILINX VIVADO HLS,我需要在其中运行具有“任意精度类型”的 C/C++ 代码。所以,我已经浏览了 UG902 Xilinx 指南中的“任意精度类型”主题。但我不清楚这个主题。我不知道如何初始化“变量的总宽度”。谁能用例子解释我?
数字#W 指定被声明的变量的总宽度。假设我的数组大小是 102(一维数组)或 102x204(二维数组)。你将如何声明“变量的总宽度”。
xilinx-edk - XSDK 是否支持 Vivado HLS 任意精度类型?
我在 HLS IPcore 中设计了一个函数,它处理任意精度类型的数组。我将该内核连接到 MICROBLAZE 处理器并生成比特流。
我在 SDK 中编写了 C 代码来初始化硬件 IP 核并编译代码。在 TERA TERMINAl 中,任意精度变量似乎不起作用。那么,XSDK 中是否支持 VIVADO HLS 任意精度类型?
谢谢