当我的设计中数据端口连接到常数零时,为什么我的双向引脚驱动为'1'而不是'Z'?

由于Quartus®II14.1及更早版本中的问题,如果您将双向引脚的数据端口连接到设计中的常数零,则可能会出现功能问题,因为可以切换双向缓冲器的OE和IN端口。

解决/修复方法

使用“keep”属性保留常量线,如下面的代码所示:

对于VHDL:

signal const_zero_sig:std_logic;

attribute keep:boolean;

开始

const_zero_sig <= \'0 \';

当ENABLE = \'1 \'时,TRI_PIN <= const_zero_sig \'Z'\ n;

对于Verilog:

wire const_zero_sig / * synthesis keep * /;

assign const_zero_sig = 1 \'b0;

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-08-04 18:49:02 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它