本文首发于hifpga.com
用过modelsim, CVS等仿真工具,头一回用xilinx自带的仿真工具,莫名其妙发现下面这条语句居然会出现蓝色Z态。
assign gt_all_reset_done = gt0_txfsmresetdone_r2 & gt1_txfsmresetdone_r2 & gt0_rxresetdone_r3 & gt1_rxresetdone_r3;
这种情况一般是没有赋初值,但是我这句里面右边的四个信号都是有值的,所以这里就让我比较意外了。

同样的代码在 modelsim中是正常的

后面发现XLINX生成的代码中output端口是这样的,是带有wire关键字的,而我的不带,

于是我的也改成带WIRE的试试,居然就正常了,

看来往后写代码还是规矩点。至于仿真能用modelsim的不用XSIM,能用VCS的不用modelsim
作者在使用Xilinx自带的仿真工具时遇到信号出现蓝色Z态的问题,在Modelsim中则正常。通过修改代码中output端口为带有WIRE关键字的方式解决了问题,提示在Xilinx仿真中注意代码规范。
1198

被折叠的 条评论
为什么被折叠?



