问题标签 [vivado]

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.

0 投票
0 回答
955 浏览

xilinx - 综合返回错误:不可综合类型

我的顶级函数中有数据结构,我想通过在 FPGA 上运行它来加速它。

我有一个名为 Rectangle 的数据结构,它本身包含一个数据结构。

Point也是一个数据结构:

我的顶级函数将一个指向数据结构的指针作为参数Rectangle

这是我的首要功能:

问题是当我跑步时

有3个错误:

函数 'mise_a_jour_coef_tab' 的参数 'zone_occupe' 具有不可合成的类型(可能的原因:由于不支持的类型转换或内存复制操作,无法分解结构变量)。

参数 'zone_occupe' 具有不可综合的类型 '%struct.rectangle.1.6.8 = type { %struct.point.0.5.7*, i32, ...' (可能的原因:指向指针或全局指针的指针) .

可综合性检查失败。

有人可以帮我解决这个问题吗?
我们如何在 vivado HLS 的顶级函数中包含数据结构?

0 投票
2 回答
3646 浏览

fpga - 如何在 zynq 7020 上使用 C/C++ 实现 FPGA 协处理?

我正在学习vivadoHLS,教程u871已经介绍了如何使用HLS,并优化了我的C/C++代码。但我想知道如何将它们加载到我的板上 zynq 7020 中,让它在板上运行。

我要实现的是:主机(板载CPU)调用PL(FPGA)进行计算,并将参数发送给PL,然后PL将结果发送回CPU。

例如,C 中的一个函数:add(int* a, int* b),它将分别添加 a[i] 和 b[i] 并返回一个数组int* 结果。,通过HLS,我可以展开for循环,这样计算起来会更快。CPU将a和b的地址发送给PL,PL计算,并将结果地址发送回CPU。

在本教程中,它只介绍了如何使用 HLS,没有解释如何通信 PL 和 CPU,或者如何将它加载到板上以便它可以在板上运行。

请推荐一个教程或告诉我在哪里学习它,非常感谢!!

0 投票
1 回答
1302 浏览

sdk - Vivado 逻辑分析仪波形程序

我已经使用 Vivado Logic Analyzer 好几个月了。相信我花了很多时间才能正确查看波形上的调试信号。我通常在块设计上标记调试信号,然后合成并生成比特流。但有时我可以在调试“FCLK”或有时“ProcessingSystemFCLK,使用(合成设计上的Setup_debug)上看到我的时钟。有时我也可以在ILA上看到正确的波形转换,有时我只能看到一个直接值;不任何过渡。有时我会收到 LUTRAM 错误,有时会成功生成比特流。

如果有人能告诉我调试信号的正确顺序以及是首先使用 Vivado 还是使用 SDK 对设备进行编程,我们将不胜感激。也请澄清以上几点。

非常感谢

问候

0 投票
1 回答
3670 浏览

vhdl - FPGA:没有用户定义的时钟警告

我正在 Vivado 中使用 Artix 7 (xc7a15tftg256)。在此项目中显示一条警告消息。

[Power 33-232] 设计中未找到用户定义的时钟!

我正在使用 MRCC 引脚进行系统时钟输入。系统时钟使用情况是

请提供此问题的解决方案。提前致谢。

0 投票
2 回答
3102 浏览

vhdl - VHDL 中的动态数组大小

我想使用数组的动态范围,因此使用“N”将传入的矢量信号转换为整数。使用特定的传入端口“大小”会给我一个错误,而固定向量会产生完美的输出。

进行这种类型编码的唯一原因是向 FPGA 发送尽可能多的数据。因为我需要在 vivado 中通过 DMA 将数据从 DDR 发送到自定义 IP 可能超过 100 MB。如果我试图以上述错误的方式实施,请指导我。

0 投票
1 回答
395 浏览

vhdl - vhdl 中的有限状态机

对于一个项目,我正在制作一个 PWM 多路复用器,但我的 FSM 没有成功。当我收到 PWM_INT 中断时,如果达到最大值,计数器应该递增或变为 0。计数器取决于 FSM 的状态。

这是我的实现:

测试程序的测试台:

提前致谢!

0 投票
1 回答
811 浏览

testing - Vhdl 测试台未知语法错误

我正在尝试编写一个测试台,但 Vivado 告诉我在特定行上有一个语法错误。我无法意识到我做错了什么。任何人都可以帮忙。

这是我的 tb 代码:

这是我得到的错误:

[HDL 9-806] “std_logic_vector”附近的语法错误。["C:/ram/ram/ram.srcs/sim_1/new/mmu_tb.vhd":20]

感谢您的时间。

0 投票
1 回答
1534 浏览

vhdl - 我无法让 Xilinx uartlite IP 工作

我试图使用带有 AXI4-lite 接口的 Xilinx uartlite 2.0 IP 在没有 microblaze 处理器的情况下传输字节。不幸的是,在我设置数据和有效信号后,所有就绪信号都保持低电平,并且 tx 信号从不传输。

我已经包含了我的模拟结果。有任何想法吗?

Xilinx Uartlite 2.0 axi4-lite 时序仿真

0 投票
1 回答
776 浏览

vhdl - VHDL:组件中的内部信号未触发

我是 VHDL 的新手。我有这个实体(缩短):

如您所见,我想使用D_Flipflop类似 Toggle-Flipflop 的东西,所以我通过信号将输出重定向到输入not_qA(这可能吗?)。问题在于,从外部看,只有 的端口CLK作为foo输入可见,并且 - 至少在 Vivado 模拟器中 - 信号qA从未not_qA被评估过。

这是的架构D_Flipflop

我为此搜索了很多。没有机会。有什么解决办法吗?

0 投票
1 回答
211 浏览

vhdl - Vivados 'synth 8-1027' 错误的原因是什么?

我将 ISE 14.7 项目导入 Vivado 2015.1。它在 Xilinx ISE 中没有错误并且完美合成。

该错误是由我的 VHDL 库 L_DMATest 中的实体 DMATest 引发的。

架构线 134 抛出此错误:

错误:[Synth 8-1027] dmatest 不是实体 [D:/git/SATAController/vhdl/ExampleDesign/DMATest/DMATest_DMATest.vhdl:134]

我假设 Vivado 无法解析实体 DMATest,因此它不在已知实体列表中。

但是我怎样才能缩小这个错误呢?

该错误synth 8-1027在 Xilinx.com 上没有答案记录 (AR)。

编辑 1:
在 8-1027 错误之前有一个警告:

警告:[Synth 8-2600] 重新分析单元 dmatest,因为单元 dmatest 被覆盖或删除 [D:/git/SATAController/vhdl/ExampleDesign/DMATest/DMATest_DMATest.vhdl:61]

谷歌也不知道这个警告:)

我明确命名了我所有的 VHDL 库(PoC 除外)L_*以避免命名冲突。许多 VHDL 工具不支持命名为实体或包的库。