RTL中的高阻抗

时间:2017-07-12 13:29:40

标签: synthesis digital-logic

“else”行中代码的用途是什么:

if RdEnabB = '1' then
  DoutB <= regfile(to_integer(unsigned(RdAddrB)));
else
  DoutB <= (others => 'Z');
end if;

在这篇文章的接受答案中:
https://electronics.stackexchange.com/questions/100620/vhdl-how-to-double-read-a-register-bank/100756#100756

问题:
 1.为什么DoutX值在未读取时会被驱动为高阻抗?  2.这是否对合成有影响?
 3.这仅用于模拟目的吗?

1 个答案:

答案 0 :(得分:2)

  1. 我们只能猜出原因。省电可能是其中一种可能性。
  2. 是。如果该技术支持高阻抗,则可以合理地合成电路。
  3. 否。答案2说明原因。