modelsim仿真问题
2012-06-02
标签: modelsim

近段时间比较忙,尝试着将工作中碰到的问题记录下来,也许它在某一天它会变成一笔财富了?不管怎么说,尝试记录工作的点滴都是一个不错的点子,呵呵。夸奖一下我自己!

在用modelsim 6.0 se作仿真的时候碰到一个错误,在xilinx的数据库里面发现原因如下:

Problem Description:

Keywords: ModelSim, MXE, MTI, error, VSIM, 3601, iteration, limit, reached

Urgency: Standard

General Description:

When I run a simulation, the following error occurs:

"# ** Error: (vsim-3601) Iteration limit reached at time 0 ps."

Solution 1:

This error usually indicates that ModelSim is stuck in an infinite loop. In VHDL, this can happen when a signal is placed in the sensitivity list and this signal is changed in the process. The signal changes, triggering the process, which changes the signal, which again triggers the process and the cycle continues.

The following is a simple example of a process that causes an infinite loop:

PROCESS (count)

BEGIN

count <= not count;

END PROCESS;

用ISE工具COMPXLIB为ModelSim Se 生成后仿真库

编译仿真库到现在其实我也搞不太明白,主要是编译的方法太多,ISE与ModelSim的版本也多,各种版本之间的编译可以互相通过,也末必吧。

不过用ISE7.1i与ModelSim 6.0 SE版本编译是没有问题的,我是使用命令让其全部编译的。

命令是:compxlib -s mti_se -arch all -l all -dir C:\Modeltech_6.0\

然后把生成在compxlib 目录下的modelSim.ini文件中的

UNISIMS_VER = C:\Modeltech_6.0\unisims_ver

UNI9000_VER = C:\Modeltech_6.0\uni9000_ver

SIMPRIMS_VER = C:\Modeltech_6.0\simprims_ver

XILINXCORELIB_VER = C:\Modeltech_6.0\XilinxCoreLib_ver

AIM_VER = C:\Modeltech_6.0\abel_ver\aim_ver

CPLD_VER = C:\Modeltech_6.0\cpld_ver

UNISIM = C:\Modeltech_6.0\unisim

SIMPRIM = C:\Modeltech_6.0\simprim

XILINXCORELIB = C:\Modeltech_6.0\XilinxCoreLib

AIM = C:\Modeltech_6.0\abel\aim

PLS = C:\Modeltech_6.0\abel\pls

CPLD = C:\Modeltech_6.0\cpld

拷贝到Modeltech_6.0目录下的modelSim.ini文件中。

可能会用到的工具/仪表
本站简介 | 意见建议 | 免责声明 | 版权声明 | 联系我们
CopyRight@2024-2039 嵌入式资源网
蜀ICP备2021025729号