把两个人放在一起vhdl

时间:2013-06-25 12:44:04

标签: input vhdl output bidirectional

我想通过FPGA驱动双向逻辑信号。 PGD​​_ICD< - > PGD​​_TARGET 对于已经认可Microchip ICD3的人,您知道PGD线是双向的。 我读过我们不能做那样的事但你有什么想法吗? 非常感谢

1 个答案:

答案 0 :(得分:1)

在不知道总线协议的情况下将双向总线通过FPGA是行不通的。

虽然FPGA I / O引脚支持三态逻辑信号(浮动输出状态),但您需要知道何时将值驱动到输出,何时使输出处于三态(高阻抗或“Z”)。

一旦你有一个信号(例如out_enable),当你想要驱动一个值时为'1',当输出应该是浮动时为'0',你可以使用一个三态缓冲区来驱动输出:

out_pin <= out_signal when(out_enable='1') else 'Z';