使用IOBUF原语,Modelsim后仿出错

问题

使用IOBUF原语,用modelsim进行功能仿真时没有问题,后仿时出现错误,提示原语在测试文件中未定义

后仿出错

原因

IOBUF是xilinx库里面的东西,modelsim vsim时,没有指定用到的所有的库

解决办法

对比功能仿真时正确的vsim指令

功能仿真正确时的vsim指令

对两个vsim指令进行对比,得出IOBUF的功能是在预编译的 unisims_ver 库里面定义的。

方法1:将unisims_ver 库添加到modelsim后仿的vsim指令中

之前:vsim -L simprims_ver -L secureip -lib work -voptargs=\"+acc\" -t 1ps work.spi_interface_tb3 glbl

修改后:vsim -L simprims_ver -L unisims_ver -L secureip -lib work -voptargs=\"+acc\" -t 1ps work.spi_interface_tb3 glbl

结果:成功打开modelsim仿真界面,运行OK

方法2:测试文件中不使用IOBUF原语,直接写assign,也可以描述三态行为,并且不用调库

举例如下图所示:

三态门实现的两种方法

备注:测试文件中,最先使用的assign实现的三态门,后来好像有一些问题,才换成了原语

方法3:找出错误vsim指令是在哪个文件中出现的,一般是*.do或者*.dofile文件,在文件中对指令进行修改(该方法未实验)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值