inout端口,到底如何使用呢?
本帖最后由 wangjun403 于 2013-11-27 17:32 编辑假设我有这样的一个module
module test
(
... ,
data
);
inout data ;
endmodule
在本模块中怎么使用这个inout端口?
网上都是这样说的
inout data_inout;
input data_in;
reg data_reg; //data_inout的映象寄存器
reg link_enable;
assign data_inout=link_enable?data_reg:1’bz; //link_enable控制三态门
但如果这样的话,会多出一个input data_in端口,这是接受不了的
谁可以给个具体点的例子
另外,如果一个模块有两个inout端口(愿意就是让这两个inout端口直接互联)
module test
(
... ,
data1,
data2,
);
inout data1 ;
inout data2 ;
endmodule
这又该怎么办呢 嗯,期待高手的解答 没看明白撸主的问题。。。
input data_in; 用在哪了? 同没看懂LZ的问题- - 本帖最后由 zxq6 于 2013-11-27 21:37 编辑
module multiCap2(
a;
);
inout a;
wirea;
reg a1;
reg b;
reg c;//input
assign a=(b==0)?a1:1‘bz;//output
c=a;
endmodule
示例中的b,通常使用的是总线的读写信号,因此不会出现输入输出冲突。
对于后面的那两个io连接,设计有问题,通常不会采取这种设计方式。 请看这里:http://www.diandesign.com/thread-1649-1-1.html 01.inout data_inout;
regdata_in;
03.reg data_reg; //data_inout的映象寄存器
04.reg link_enable;
05.assign data_inout=link_enable?data_reg:1’bz; //link_enable控制三态门
always@(posedge clk)
data_in<= data_inout
页:
[1]