Board logo

标题: 有哪位高手用过Verilog 中inout的,请指点兄弟一把,急啊!救命啊!!! [打印本页]

作者: long    时间: 2003-8-21 14:59

wire tri_inout; // 这句话哪里去了?
作者: 张振坤    时间: 2003-8-21 18:11

系统默认的就是wire型,加不加wire tri_inout效果一样
作者: long    时间: 2003-8-22 09:09

我认为关键的问题在于assign tri_inout=oe?in_n:'bz,建议将oe和we同时加入控制试试--原因无非是输入输出控制
作者: hstaii@163.net    时间: 2003-8-22 11:29

把:2'b01: begin out_n<= ri_inout; in_n<= 1'bz end 改为: 2'b01: begin out_n<= 1'bz; in_n<= 1'bz end
作者: qin    时间: 2003-8-22 17:21

非常感谢大侠们的帮助,但问题仍然没有解决,inout端口只能起到输入输出中的一项功能,另一个就是不定态(我用的编译、仿真软件都是maxplus2),我现在是狂郁闷!
作者: ljp    时间: 2003-8-22 18:52

当有数据输出时,将此时的数据输入的信号设为高阻 inout在仿真时是分成input和output两个管脚,当有数据输出时,必须把此时的输            入的信号设为高阻               
                       
        input xxxxxxxxxxxxxxxxx_________--------xxxxxxxxx               
        output---------________xxxxxxxxxxxxxxxxx---------               
        enable-----------------_________________---------               
                       
        enabale有效时,表示输出允许,输入就不能有仿真信号,enable无效时,才能输入仿        真信号。 否则会导致仿真信号冲突仿真
作者: qin    时间: 2003-8-23 10:30     标题: 有哪位高手用过Verilog 中inout的,请指点兄弟一把,急啊!救命啊!!!

为什么我设计的程序,仿真时总是出现: found logic contention at 48.51us on node tri_inout1 found logic contention at 48.51us on node tri_inout2(tri_inout [2:1] 是我定义的inout端口) 到底是什么地方有毛病呢? 我的源程序如下: module inout_test(we,oe,in,tri_inout,out); inout[2:1] tri_inout; output[2:1] out; input[2:1] in; input we,oe; reg[2:1] out_n,in_n; assign tri_inout=oe?in_n:'bz; assign out=out_n; always@(oe or we) begin case({oe,we}) 2'b01: begin out_n<=tri_inout; in_n<='bz;?? end 2'b10: begin in_n<=in; out_n<='bz; end default: begin out_n<='bz; in_n<='bz; end endcase end endmodule
作者: long    时间: 2003-8-23 10:30

老兄,我遇到的问题和你一样,不知道解决没有,我想肯定是没问题了。怎么样,              解救老弟一把,虽然我用VHDL,但二者现象一样。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0