问题标签 [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 投票
1 回答
1429 浏览

tcl - TCL 批处理模式下的行为模拟

我有一个行为模拟,它在模拟后将所有需要的信息存储在 .txt 文件中。我需要使用不同的参数运行这个模拟大约 8000 次以上,这些参数是在 MATLAB 中生成的。我想运行具有不同参数的 TCL 脚本。到目前为止我所拥有的:

在 MATLAB 中,我使用以下参数以批处理模式调用 Vivado:

TCL 脚本如下所示:

但是,Vivado 似乎没有更改这些值。它始终运行 1000 ns 的仿真(默认设置)并使用默认设置在 .vhd 文件中的通用参数。我还尝试通过 GUI 设置通用参数,如下所示http://www.xilinx.com/support/answers/64118.html(这是我从中获得 TCL 命令的地方),但仿真参数没有改变。可能是什么原因?我的脚本和在批处理模式下进行模拟的方法是否正确?

0 投票
1 回答
2708 浏览

vhdl - 将数据存储到 zynq 设备上的 ram

我目前在将Zynq的 PS 部分生成的图像存储到板的 DDR3 中时遇到一些问题,然后将该图像读入板的 PL 侧,以便在那里创建的 VGA 驱动程序可以

PS 创建一个 640x480 的图像,理想情况下我想将其存储在 Dram 中。到目前为止,我一直使用 DMA 来回传输数据并以某种方式(不存储所有像素)将其存储到我系统的块 RAM 中。但这不是一个理想的解决方案,我也知道..

所以我的问题是如何访问我的 zynq 板的 DDR ram,我知道它位于 PS 端,但似乎找不到任何解释它应该如何接口的文档等等..

0 投票
1 回答
2789 浏览

verilog - 在 if else 条件下使用 Verilog 参数

考虑以下 Verilog 代码。

由于 C_SUB_WIDTH、C_SUB_HEIGHT 和 BIT_DEPTH 都是参数,这是否会使 single_block_width 也成为参数?

如果没有,那么我怎样才能使 single_block_width 成为参数并根据上述参数设置它的值?

我正在使用 Xilinx Vivado 来合成上述代码。(它必须能够合成)

谢谢你。

0 投票
0 回答
65 浏览

c - 访问寄存器

我正在使用软核 Cortex-M0、Keil uvision 5、vivado 14.4 我用我的 ARM 架构连接了一个加速器,

当我这样做时,在 Vivado 模拟器中一切正常

但是当我尝试这个时

模拟不起作用,无法访问寄存器:0x59000000

0 投票
1 回答
1157 浏览

verilog - 不同频率的 LED 计数器程序 (0 - 15)

我想在 Zybo 板上用 4 个 LED 制作一个计数器,从 0 到 15 计数。此外,我希望板上的 4 个按钮对应于 LED 变化的不同频率(0.5Hz、1Hz、2Hz、 4赫兹)。我已经实现了具有固定频率的简单计数器,但没有实现按钮频率变化的第二部分。

在块设计中,我有一个 Zynq 处理系统、一个读取按钮数据的 AXI GPIO 和一个用作 LED 驱动器、时钟分频器和频率转换器的自定义 IP。

自定义 IP

时钟分频器模块代码。

寄存器 constantNumber 取相应的值以改变时钟频率。

其余的自定义 IP 逻辑

按钮数据被发送到自定义 IP (slv_reg0) 的第一个寄存器,后者又将它们发送到 Clock_Divider 模块中的 reg0。

主 C 程序

我可以确认 AXI GPIO 正确读取了按钮数据,因为当按下它们时,终端中会打印正确的行。但是当我按下按钮时,频率并没有改变。此外,它以非常慢的频率运行,比默认的 1Hz 慢得多,即使按钮数据没有发送到自定义 IP。

问题必须存在于自定义 IP 中的 reg0 案例逻辑或将按钮数据从 cpu 发送到自定义 IP 的寄存器的某个地方。

0 投票
2 回答
2220 浏览

encryption - 如何使用 Vivado 为 Modelsim 加密文件

供应商正在使用将一些代码编译成原始 VHDL 的工具。他们不希望我看到原始代码,而是希望加密输出文件。目前,他们使用 Vivado 将其加密到 EDIF 网表中。

这在实现设计时很好;我把它当作一个黑匣子,使用 i/o 的包装器并写入比特流。他们确保我的黑匣子设计有效。我确实看到我的资源使用量达到了我的预期,但是我想模拟和验证他们的结果。

当试图用modelsim模拟它时,它当然不知道如何解密这些文件。如果将网表写入 VHDL,则会收到错误消息:

我要求他们在加密这些文件时包含 modelsim 的加密密钥,但他们不知道如何去做。

我了解他们使用 .tcl 的粗略工作流程是:

所以我的问题是,当他们使用 Vivado 生成 EDIF 文件时,他们如何包含 modelsim 加密密钥?

0 投票
2 回答
2520 浏览

vhdl - VHDL写入文件什么都不做

我写了一段 VHDL 代码的图像处理。为了测试,我用 Matlab 和一个相对简单的测试台创建了一个像素值文件(它只是将值从文件填充到输入)。我想将结果写入一个新文件,以便我可以处理它们并查看生成的图像。

代码编译并运行测试台,我看到我输入的所有报告以检查它是否在任何地方停止,但带有结果的文件仍然是空的。print 和 writeline 似乎都没有做任何事情。该文件存在并添加到 Vivado 中的项目中,因此我不必编写整个路径。模拟器输出中没有警告或错误。

我从这里这里获得了写入文件的代码,并将其扩展了一点,以便每个时钟写入文件并在顶部添加一个标题。

color_out(0) 是一段输出。color_out_v 输出有效。

有任何想法吗?我错过了什么?

0 投票
1 回答
766 浏览

verilog - 仿真结果与综合原理图不匹配

我有一个非常简单的电路来更新我的 IP 内核中的寄存器。

这里的目标是ruleCount在第一个周期start被断言时注册(其他一些转换也依赖于此)。所以,我注册startlastStart,等待条件,然后采取适当的行动。

我正在使用 Vivado 2015.4 和vSim XSim,以及 Kintex Ultrascale 060。经过精心/综合后,我得到以下电路原理图:

阐述示意图

合成后示意图 我的功能/RTL 模拟符合我的预期。但是,由于该设计在电路板上无法正常运行,我选择尝试综合后仿真,并得到以下结果: 综合后模拟 如图所示,start由我的测试台提出,并且 Vivado 插入的 IBUF 的输出产生相同的值. 但是,由于未知原因,lastStart无法在两个时钟沿中的任何一个start为高电平时捕获值(t=35ns,t=45ns)。此外,尽管start&&!lastStart很高,ruleCountReg但也不会更新。

为了比较,这里是功能 RTL 模拟: 功能 RTL 模拟 这是 Vivado 中的错误吗?Verilog 是微不足道的,它似乎正在为电路生成正确的原理图,但它会创建一个不正确的网表吗?综合不会产生任何与这些信号相关的警告。


编辑:似乎 xSim 在模拟的前 100ns 期间没有更新任何寄存器。

时序模拟(后合成器)

0 投票
3 回答
1107 浏览

vhdl - Vivado 不承认测试台文件的更改

我需要一些有关 Vivado 2015.4 的帮助。高密度脂蛋白

我在我的项目中添加了一个测试台文件,其中有一些错误。在我修改了这些错误之后,但是当我重新运行模拟时,由于之前存在相同的错误,它无法正常工作。

所以这些变化没有得到承认。由于某种原因,我失踪了。

我保存了文件,我还尝试通过在层次结构中向上移动来更改编译顺序,但没有更改。我在这里想念什么?那里一定有我没有设置的设置,因为即使重新启动 Vivado 也无济于事。

0 投票
0 回答
959 浏览

vhdl - 使用无符号的 VHDL 中的多个添加

我正在尝试编写一种奇怪的 VHDL 位,它接受 4 个值,并且根据一个输入的值,将使用几种不同的方法创建两个平均值,并输出该特定方法的 8 个最高有效位。

我正在使用 Xilinx Vivado 和 XSim。

在我使用整数的较早、不太复杂的修订版中,我的代码运行良好。但是,由于项目的要求,我被告知必须使用 std_logic_vectors 输出。

当我尝试在一次分配中进行多次添加时会出现我的问题,我不确定这是不可能的,或者我只是做错了。

这是我的代码:

我的测试台:

如果我使用 MODE =“00”,它试图将所有 4 个加在一起,模拟将停止,我得到的错误是

4 个 13 位数字的加法应该是 15 位,所以我不确定这里有什么问题。任何人都可以分享一些对此的见解吗?是否不能多次添加未签名的?如果您需要更多信息,请告诉我。

谢谢