问题标签 [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.
verilog - 在 vivado 中合成分层名称时出错
使用 Vivado 2015.1,我尝试使用分层名称来访问我设计的顶级模块上的对象。模拟运行良好,但我收到以下综合错误:
[Synth 8-660] unable to resolve 'top' ["child.sv":3]
有任何想法吗?
port - NEXYS 4:信号在端口实例化中跨线消失
我正在尝试制作一个能够以 (1/10) 秒精度从 0:00.0 计数到 9:99.9 的秒表。
我的秒表通过为每个数字提供自己的二进制计数器(由 Vivado 的 IP 目录提供)来工作,该计数器在时钟和启用信号上工作。当一个特定的数字重置为零(例如从 9 转换为 0)时,它会向下一个数字发送一个脉冲,告诉它加一。
我给每个数字一个自己的模块,并通过顶部模块将端口相互连接。
问题是十进制点数完美,但后面的数字保持为零。在模拟设计后,我发现第一个数字发送的信号没有被下一个数字接收。
我检查了我的模块实例化语法和端口连接,没有看到错误。我什至将第一个数字的输出脉冲映射到一些 LED 上,它们亮得非常好。所以我假设错误出现在第二个数字的接收端。但是,我不确定为什么会这样。
数字 1 模块:
数字 2 模块:
顶级模块:
整个代码大约 400 行,所以我只放了感兴趣的部分,但如果需要,我可以放整个代码。
我使用的是 Vivado 2014.1,FPGA 板是 NEXYS 4。
vhdl - 实例上没有端口“a”
所以我在 xilinx 网站上的学生实验室工作。我一直在尝试在线查看许多不同的示例,但似乎找不到一个来帮助解决我的问题。尝试合成我的代码时出现以下错误。我主要尝试切换到不同的字母和大小写。甚至实验室 pdf 中的示例代码在声明组件时也存在语法错误。任何帮助都会非常感谢。
下面是我遇到的错误列表。
[Synth 8-485] 实例上没有端口 'a' ["C:/Nexys 4 >Projects/lab1_3_1/lab1_3_1.srcs/sources_1/new/mux_2bit_2_to_1.vhd":67]
[Synth 8-485] 实例上没有端口 'a' ["C:/Nexys 4 >Projects/lab1_3_1/lab1_3_1.srcs/sources_1/new/mux_2bit_2_to_1.vhd":67]
[Synth 8-485] 实例上没有端口 'b' ["C:/Nexys 4 >Projects/lab1_3_1/lab1_3_1.srcs/sources_1/new/mux_2bit_2_to_1.vhd":67]
[Synth 8-485] 实例上没有端口 'b' ["C:/Nexys 4 >Projects/lab1_3_1/lab1_3_1.srcs/sources_1/new/mux_2bit_2_to_1.vhd":67]
[Synth 8-485] 实例上没有端口 'b' ["C:/Nexys 4 >Projects/lab1_3_1/lab1_3_1.srcs/sources_1/new/mux_2bit_2_to_1.vhd":60]
下面是我的代码:
c - 我可以使用 gcc 编译器编译我在 Vivado HLS 中编写的 C 代码吗?
我正在为使用 Vivado HLS 2015.1 的人开发基于 C 的设计。
此设计使用“ap_cint.h”中包含的任意精度数据类型。
我想知道是否可以通过包含相关头文件在标准 gcc 编译器中编译此代码?
也有人可以向我指出相关文档的方向吗?任何帮助或建议将不胜感激。
vhdl - 在 VHDL 中重用旧组件
我是 VHDL 新手,并且遵循 xilinx 提供的实验室,但我在某些方面迷失了方向。在其中一个实验室中,我制作了一个 2 位宽的 2to1 多路复用器。在我目前的实验室中,我应该使用两个旧的多路复用器来构建一个 3to1 多路复用器。它根本没有解释如何做到这一点,所以我正在暗中尝试这个。我收到以下错误代码。
[HDL 9-806] “结束”附近的语法错误。[“C:/Nexys 4 >Projects/lab1_5_dataflow/lab1_5_dataflow.srcs/sources_1/new/mux_2bit_3_to_1_dat>aflow.vhd”:48]
[HDL 9-806] “;”附近的语法错误。[“C:/Nexys 4 >Projects/lab1_5_dataflow/lab1_5_dataflow.srcs/sources_1/new/mux_2bit_3_to_1_dat>aflow.vhd”:52]
[HDL 9-806] “=>”附近的语法错误。[“C:/Nexys 4 >Projects/lab1_5_dataflow/lab1_5_dataflow.srcs/sources_1/new/mux_2bit_3_to_1_dat>aflow.vhd”:55]
[HDL 9-806] “;”附近的语法错误。[“C:/Nexys 4 >Projects/lab1_5_dataflow/lab1_5_dataflow.srcs/sources_1/new/mux_2bit_3_to_1_dat>aflow.vhd”:59]
[HDL 9-806] “=>”附近的语法错误。[“C:/Nexys 4 >Projects/lab1_5_dataflow/lab1_5_dataflow.srcs/sources_1/new/mux_2bit_3_to_1_dat>aflow.vhd”:62]
这是我的主要源文件的代码。
这是我添加到项目中的 2 对 1 多路复用器的源文件。
vhdl - 在 Questasim 中模拟 .xci 文件
我在 Linux 上,我正在使用questasim 2012.2b
. 我用VHDL写了以下内容:
每次我尝试用 questasim 模拟上述内容时,它都会在编译时抛出一个错误:
它指的是上面失败的代码。
在翻找时,我确实找到了一个名为 : 的文件dsp_c.vhd
,它看起来像是该.xci
文件的模拟包装器。
然后我尝试找到该库,我找到了一个文件夹xbip_dsp48_macro_v3_0
,里面有两个文件:xbip_dsp48_macro_v3_0.vhd
xbip_dsp48_macro_v3_0_vh_rfs.vhd
所以我也将那些包含在项目中,它给了我错误:
xbip_dsp48_macro_v3_0.vhd(46)): in protected region
知道可能出了什么问题或我可能需要包括什么吗?我的questasim可能太旧了吗?
更多信息
尝试通过 tcl 以这种方式获取编译文件:
生成所有 IP 及其相应编译块的文件夹。现在我虽然最初可以添加到.dep:
我在运行 make project 时得到了这个:
所以我尝试包括库:
说它受到保护:
更多更多信息
我让 vivado 生成位于文件夹 dsp_c 中的库:
我的 tcl 脚本如下所示:
结果
修改为:
然后跑了...
vhdl - vivado 上的模拟错误:检测到致命的运行时错误。模拟无法继续
当我尝试运行模拟时出现以下错误vivado
:
检测到致命的运行时错误。模拟无法继续。
关于错误类型的任何想法?在我的测试台下面:
当我尝试运行模拟时出现错误
verilog - Vivado 2014.1:无法为定制 FPGA 上的 SPI 闪存启动 .mcs 文件
我在 Vivado 中为 3 位乘法器编写了一个程序。我试图将该程序存储在设备的 SPI 闪存中。生成 .mcs 文件、选择配置内存、上传 .mcs 文件、上传比特流文件等的整个过程似乎工作正常(我没有错误)。但是当我尝试启动设备时,我得到...
错误:[Labtools 27-2254] 从配置内存设备引导失败。
我听说 Vivado 2014.1 存在问题,并且有一个特定的解决方法,但即使这样也没有用。
http://www.xilinx.com/support/answers/61067.html
或解决方法的指南。
http://forums.xilinx.com/t5/7-Series-FPGAs/Using-AR61067-for-SPIx4-Configuration/mp/570312#M8339
所以我想知道我是否缺少某些东西,例如编写代码的方法 - 或者使用 TCL 命令创建 .mcs 文件的重要信息?
程序版本:Vivado 2014.1
设备:定制FPGA
verilog - 连接的向量在合成中被截断
在尝试为线性函数移位寄存器连接 32 位浮点向量时,在行为仿真中一切顺利。但是,在综合后,“random_float”网络已被截断为 31 位。似乎“标志”被忽略了。有任何想法吗?
PS我只包含了我认为是相关代码的内容。
verilog - 错误“不允许对非注册结果进行程序分配”
我收到错误
[Synth 8-2576] 不允许对非寄存器结果进行程序分配 ["lpm_mult.v":29]
我究竟做错了什么?