首页 > 代码库 > verilog 双向IO实现

verilog 双向IO实现

网上搜索了一番,示例挺多,但发现都写的是 input in; output out;

然后  assign io= (oe)?out:1‘bz;
就有点想不明白了,当IO方向为输出时,应该输出out的值,那么针对这个IO模块,out应该是input才对。

而in应该是ouput的。

尝试写了段代码

module iopin(    iopin,    in_data,    out_data,    oe);inout iopin;output in_data;input out_data;input oe;assign in_data =http://www.mamicode.com/ iopin;assign iopin = (oe)?out_data:1bz;endmodule

编译后 RTL viewer显示如下,符合预期要求,有空再继续研究。

verilog 双向IO实现