首页 > 试题广场 >

芯片接口的三态数据总线实现时如何处理

[单选题]
芯片接口的三态数据总线实现时如何处理
  • 在芯片顶层把三态数据总线转为单向的两组总线
  • 在芯片各功能子模块内把三态数据总线转为单向的两组总线
  • 在芯片内部总线使用的地方把三态数据总线转为单向的两组总线
  • 不需要转换
三态信号禁止在除顶层外的其他子层次定义双向端口。
发表于 2020-08-17 15:18:28 回复(0)
在FPGA中用的双向口一般都是用三态门来作为输入和输出的,这样优点是只要一个接口就可以输入输出比较节约逻辑资源,但缺点是三态门的处理没有常规两个I/O的方便
发表于 2019-09-09 09:59:23 回复(0)
FPGA中设定一个信号为三态门,在Verilog中,就是设定该信号的类型为inout。通常用在总线接口中,因为在一个总线上同时只能有一个设备端口作输出,这时其他端口必须在高阻态,同时可以输入这个输出端口的数据。所以,设备端口要挂在一个总线上,必须通过三态缓冲器。
NOTE:fpga代码设计中,记得有一条“原则”,对于三态口,尽量在顶层模块使用三态,不要在内部子模块使用三态,不然会带来一系列问题。因此最好在芯片顶层就把三态数据总线分成两根,内部就不再使用三态门了。
————————————————
版权声明:本文为CSDN博主「mu_guang_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/mu_guang_/article/details/103774627
发表于 2023-07-06 19:33:43 回复(0)

FPGA中设定一个信号为三态门,在Verilog中,就是设定该信号的类型为inout。通常用在总线接口中,因为在一个总线上同时只能有一个设备端口作输出,这时其他端口必须在高阻态,同时可以输入这个输出端口的数据。所以,设备端口要挂在一个总线上,必须通过三态缓冲器。
NOTE:fpga代码设计中,记得有一条“原则”,对于三态口,尽量在顶层模块使用三态,不要在内部子模块使用三态,不然会带来一系列问题。因此最好在芯片顶层就把三态数据总线分成两根,内部就不再使用三态门了。

发表于 2023-07-29 11:02:22 回复(0)
写一个实际的对于inout类型端口的处理,欢迎大家指正
inout    gpio;
bufifi(gpio,w_gpio_dout,w_gpio_dout_en);
assign w_gpio_din= gpio;
发表于 2023-05-07 21:54:32 回复(0)
我理解是 和内部结构有关 只有IOB有真正的三态端口
发表于 2022-02-21 17:00:43 回复(0)