OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3442|回复: 4

[XILINX] vivado不能仿真,出现错误

[复制链接]

4

主题

7

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2022-9-18
在线时间
6 小时
发表于 2022-12-18 14:28:33 | 显示全部楼层 |阅读模式
仿真出现错误,这是什么问题,我两台电脑都是按照视频教程安装的vivado,都是这个错误
QQ图片20221218142659.png
QQ图片20221218142657.png
QQ图片20221218142654.png
QQ图片20221218142648.png
回复

使用道具 举报

4

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
6233
金钱
6233
注册时间
2018-10-21
在线时间
1840 小时
发表于 2022-12-20 10:46:11 | 显示全部楼层
错误提示的.log文件,可以根据提示的路径,打开这个文件,看看具体错误类型
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2024-5-5
在线时间
2 小时
发表于 2024-5-27 12:03:17 | 显示全部楼层
我也碰到同样的问题,无法解决,我把LOG 文件上传,看看有谁能帮吗解决

#-----------------------------------------------------------
# Vivado v2019.2 (64-bit)
# SW Build 2708876 on Wed Nov  6 21:40:23 MST 2019
# IP Build 2700528 on Thu Nov  7 00:09:20 MST 2019
# Start of session at: Mon May 27 11:01:43 2024
# Process ID: 18044
# Current directory: C:/Users/P5080/Desktop/tst/vivado_test/project_2
# Command line: vivado.exe -gui_launcher_event rodinguilauncherevent15456 C:\Users\P5080\Desktop\tst\vivado_test\project_2\project_2.xpr
# Log file: C:/Users/P5080/Desktop/tst/vivado_test/project_2/vivado.log
# Journal file: C:/Users/P5080/Desktop/tst/vivado_test/project_2\vivado.jou
#-----------------------------------------------------------
start_gui
open_project C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.xpr
CRITICAL WARNING: [Project 1-19] Could not find the file 'E:/fpga实例源码/1_Verilog/1_Verilog/1_Verilog/1_led/prj/tb_led_behav.wcfg'.
Scanning sources...
Finished scanning sources
INFO: [IP_Flow 19-234] Refreshing IP repositories
INFO: [IP_Flow 19-1704] No user IP repositories specified
INFO: [IP_Flow 19-2313] Loaded Vivado IP repository 'D:/Xilinx/Vivado/2019.2/data/ip'.
update_compile_order -fileset sources_1
reset_run impl_1
launch_runs impl_1 -jobs 8
[Mon May 27 11:02:33 2024] Launched impl_1...
Run output will be captured here: C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.runs/impl_1/runme.log
launch_simulation
Command: launch_simulation
INFO: [Vivado 12-5682] Launching behavioral simulation in 'C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.sim/sim_1/behav/xsim'
INFO: [SIM-utils-51] Simulation object is 'sim_1'
INFO: [SIM-utils-54] Inspecting design source files for 'tb_led' in fileset 'sim_1'...
INFO: [USF-XSim-97] Finding global include files...
INFO: [USF-XSim-98] Fetching design files from 'sim_1'...
INFO: [USF-XSim-2] XSim::Compile design
INFO: [USF-XSim-61] Executing 'COMPILE and ANALYZE' step in 'C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.sim/sim_1/behav/xsim'
"xvlog --incr --relax -prj tb_led_vlog.prj"
INFO: [VRFC 10-2263] Analyzing Verilog file "E:/fpga实例源码/1_Verilog/1_Verilog/1_Verilog/1_led/rtl/led.v" into library xil_defaultlib
INFO: [VRFC 10-311] analyzing module led
INFO: [VRFC 10-2263] Analyzing Verilog file "E:/fpga实例源码/1_Verilog/1_Verilog/1_Verilog/1_led/sim/tb/tb_led.v" into library xil_defaultlib
INFO: [VRFC 10-311] analyzing module tb_led
INFO: [USF-XSim-69] 'compile' step finished in '1' seconds
INFO: [USF-XSim-3] XSim::Elaborate design
INFO: [USF-XSim-61] Executing 'ELABORATE' step in 'C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.sim/sim_1/behav/xsim'
"xelab -wto 0eb3b2d2b8f6413d8863613655db2da1 --incr --debug typical --relax --mt 2 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip --snapshot tb_led_behav xil_defaultlib.tb_led xil_defaultlib.glbl -log elaborate.log"
Vivado Simulator 2019.2
Copyright 1986-1999, 2001-2019 Xilinx, Inc. All Rights Reserved.
Running: D:/Xilinx/Vivado/2019.2/bin/unwrapped/win64.o/xelab.exe -wto 0eb3b2d2b8f6413d8863613655db2da1 --incr --debug typical --relax --mt 2 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip --snapshot tb_led_behav xil_defaultlib.tb_led xil_defaultlib.glbl -log elaborate.log
Using 2 slave threads.
Starting static elaboration
Pass Through NonSizing Optimizer
Completed static elaboration
Starting simulation data flow analysis
WARNING: [XSIM 43-4099] "E:/fpga实例源码/1_Verilog/1_Verilog/1_Verilog/1_led/rtl/led.v" Line 19. Module led doesn't have a timescale but at least one module in design has a timescale.
Completed simulation data flow analysis
Time Resolution for simulation is 1ps
Compiling module xil_defaultlib.led
Compiling module xil_defaultlib.tb_led
Compiling module xil_defaultlib.glbl
ERROR: [XSIM 43-3409] Failed to compile generated C file xsim.dir/tb_led_behav/obj/xsim_1.c.
ERROR: [XSIM 43-3915] Encountered a fatal error. Cannot continue. Exiting...
INFO: [USF-XSim-69] 'elaborate' step finished in '1' seconds
INFO: [USF-XSim-99] Step results log file:'C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.sim/sim_1/behav/xsim/elaborate.log'
ERROR: [USF-XSim-62] 'elaborate' step failed with error(s). Please check the Tcl console output or 'C:/Users/P5080/Desktop/tst/vivado_test/project_2/project_2.sim/sim_1/behav/xsim/elaborate.log' file for more information.
ERROR: [Vivado 12-4473] Detected error while running simulation. Please correct the issue and retry this operation.
ERROR: [Common 17-39] 'launch_simulation' failed due to earlier errors.
回复 支持 反对

使用道具 举报

4

主题

7

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2022-9-18
在线时间
6 小时
 楼主| 发表于 2026-2-25 15:55:13 | 显示全部楼层
Vivado Simulator 2019.2
Copyright 1986-1999, 2001-2019 Xilinx, Inc. All Rights Reserved.
Running: F:/Xilinx/Vivado/2019.2/bin/unwrapped/win64.o/xelab.exe -wto 027c2e2b3e2a4fe09b700c76c62735fe --incr --debug typical --relax --mt 2 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot testbench_behav xil_defaultlib.testbench xil_defaultlib.glbl -log elaborate.log
Using 2 slave threads.
WARNING: [XSIM 43-3431] One or more environment variables have been detected which affect the operation of the C compiler. These are typically not set in standard installations and are not tested by Xilinx, however they may be appropriate for your system, so the flow will attempt to continue.  If errors occur, try running xelab with the "-mt off -v 1" switches to see more information from the C compiler. The following environment variables have been detected:
Starting static elaboration
Pass Through NonSizing Optimizer
Completed static elaboration
Starting simulation data flow analysis
Completed simulation data flow analysis
Time Resolution for simulation is 1ps
Compiling module unisims_ver.IBUFDS
Compiling module unisims_ver.BUFG
Compiling module unisims_ver.MMCME2_ADV(CLKFBOUT_MULT_F=10.0,...
Compiling module xil_defaultlib.clk_wiz_0_clk_wiz
Compiling module xil_defaultlib.clk_wiz_0
Compiling module xil_defaultlib.ip_clk_wiz
Compiling module xil_defaultlib.testbench
Compiling module xil_defaultlib.glbl
ERROR: [XSIM 43-3409] Failed to compile generated C file xsim.dir/testbench_behav/obj/xsim_1.c.
ERROR: [XSIM 43-3915] Encountered a fatal error. Cannot continue. Exiting...
还是看不太懂,网上搜出来说缺库
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2025-12-23
在线时间
7 小时
发表于 2026-3-12 15:11:19 | 显示全部楼层
xiyongzhen 发表于 2026-2-25 15:55
Vivado Simulator 2019.2
Copyright 1986-1999, 2001-2019 Xilinx, Inc. All Rights Reserved.
Running:  ...

这个错误 `ERROR: [XSIM 43-3409] Failed to compile generated C file xsim.dir/testbench_behav/obj/xsim_1.c` 是 Vivado 仿真器(XSIM)在** elaboration(细化)**阶段,调用后台 C 编译器编译生成的仿真代码时失败了。

根据错误日志和你的环境(Vivado 2019.2, Windows),这通常是由于**环境变量冲突**或**系统库缺失**导致的。

以下是针对你情况的具体分析和解决方案:

### 1. 核心原因分析

Vivado 自带了一个 C 编译器(基于 Clang)来将你的硬件描述语言(Verilog/VHDL)编译成可执行的仿真文件。当你的 Windows 系统中安装了其他开发环境(如 **MinGW、Cygwin、Matlab 的编译器、甚至是某些版本的 Python**)时,它们的环境变量(如 `C_INCLUDE_PATH`, `LIBRARY_PATH`, `MW_MINGW64_LOC` 等)可能会被 Vivado 的编译器误读,导致编译过程混乱,从而无法生成 `xsim_1.c` 的目标文件 。

### 2. 解决方案

#### 方案一:检查并清理冲突的环境变量

从你的日志中可以看到警告:`One or more environment variables have been detected which affect the operation of the C compiler.` 这说明你的系统里存在干扰变量。

1.  **检查冲突变量**:
    在 Vivado 的 **Tcl Console** 中,输入以下命令并回车:
    ```tcl
    exec xelab -mt off -v 1 -debug typical work.testbench
    ```
    *请注意:如果你的顶层模块不叫 `testbench`,请将其替换为你的仿真顶层名称。*

2.  **定位具体变量**:
    运行上述命令后,Tcl 控制台会输出具体的错误信息,通常会明确指出是哪些环境变量导致了冲突。根据社区的经验,常见的罪魁祸首包括 :
    *   `MW_MINGW64_LOC` (通常由 Matlab 或 MinGW 设置)
    *   `C_INCLUDE_PATH` (通常由 C/C++ 开发环境设置)
    *   `LIBRARY_path`

3.  **清除变量**:
    *   **临时清除(推荐测试用)**:在 Vivado 的 Tcl Console 中直接使用 `set` 命令临时取消这些变量(注意:这仅在当前会话有效,不会影响系统):
        ```tcl
        set env(C_INCLUDE_PATH) ""
        set env(LIBRARY_path) ""
        set env(MW_MINGW64_LOC) ""
        ```
        然后重新运行仿真。

    *   **永久修复**:
        *   右键点击“此电脑” -> “属性” -> “高级系统设置” -> “环境变量”。
        *   在“系统变量”和“用户变量”中,找到上述变量,**选中后删除**(或者先备份,确认问题解决后再删除)。
        *   **特别注意**:如果你使用 Matlab,Matlab 每次启动时会自动设置 `MW_MINGW64_LOC`。为了避免每次使用 Vivado 前都手动删除,你可以在 Matlab 的启动文件 `startup.m` 中管理这些变量,或者在使用 Vivado 前重启电脑且**不启动 Matlab** 和其他开发软件 。

#### 方案二:排查系统库缺失

如果你使用的是精简版的 Windows,或者系统环境比较特殊,可能会缺少 Vivado 编译器依赖的运行时库。

1.  **增加编译详细度**:
    在 Vivado 的 **Settings** -> **Tool Settings** -> **Simulation** -> **xelab** 中,在 `xelab.more_options` 里添加 `-v 2` 。
    或者直接在 Tcl Console 中针对当前仿真集运行:
    ```tcl
    set_property -name {xsim.elaborate.xelab.more_options} -value {-v 2} -objects [get_filesets sim_1]
    ```

2.  **分析真实错误**:
    重新启动仿真。此时控制台会输出大量信息。重点关注类似 `error while loading shared libraries` 或者无法找到 `libncurses`、`libtinfo` 等关键词 。

    *   **如果是 Linux(WSL)环境**:可能需要安装 32 位库或特定版本的 ncurses。例如:`sudo apt-get install libncurses5` 。
    *   **如果是 Windows 环境**:这种情况较少见,但可以尝试安装 **Visual C++ Redistributable** 或者检查是否有杀毒软件拦截了 Vivado 临时目录下的文件生成。

### 3. 总结建议

1.  **先试方案一**:你遇到的警告已经明确指向环境变量问题。按照方案一在 Tcl 中输入命令,找出具体的变量名并清理,这是最快解决你问题的方法。
2.  **重启软件**:修改完环境变量后,建议**彻底关闭 Vivado 并重新打开**,确保新的环境变量设置生效。
3.  **如果还不行**:按照方案二开启详细日志,查看具体的编译失败原因,然后补充缺失的系统组件。

希望这些步骤能帮助你顺利解决仿真编译的问题。如果还有具体的错误提示,欢迎继续交流。


问ai问题和解决方案都出来了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /1 下一条

正点原子公众号

如发现本坛存在违规或侵权内容, 请点击这里发送邮件举报 (或致电020-38271790)。请提供侵权说明和联系方式。我们将及时审核依法处理,感谢配合。

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2026-4-2 12:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表