关于verilog语言的初级问题,请指教

[复制链接]
3012|6
 楼主| lzlsw 发表于 2009-3-30 14:08 | 显示全部楼层 |阅读模式
verilog语言中&nbsp;assign&nbsp;将右端的值连续赋值给左端,那么请问若我想对一个&nbsp;I/O信号进行直连,&nbsp;应该怎么做?<br /><br />请指教,谢谢!
 楼主| lzlsw 发表于 2009-3-30 15:16 | 显示全部楼层

是不是问题太菜了?

怎么没人指导一下啊?难道只能用&nbsp;always&nbsp;来做吗
lelee006 发表于 2009-3-30 17:43 | 显示全部楼层

LZ没问清楚

你的IO是WIRE型还是REG型?<br /><br />还有,你跟IO直连的是什么信号?是另外一个IO么?<br /><br />不真不知道你这个直连该怎么理解
wujing198 发表于 2009-3-30 18:01 | 显示全部楼层

什么叫对IO进行直连?

如果表示模块之间的连接应在高层的module对底层的module进行例化。类似于结构描述的方式。
 楼主| lzlsw 发表于 2009-3-30 23:20 | 显示全部楼层

呵呵,是我没说清楚

哦,这样说吧,我用一个单片机的i/o口通过cpld和另一个芯片的io口相接,只是想将cpld作为导线用,不需要做任何逻辑和时序变化,应该怎么写呢?比如说&nbsp;i2c&nbsp;的<br />sda信号
sheshichu 发表于 2009-9-24 14:18 | 显示全部楼层
我也是菜鸟.
你要做导线用,直接用导线连不就行了吗?
真非要用的话,用2个IO,一个输入一个输出,assign out=in;就行了吧应该.....
一只小蜗牛 发表于 2009-9-25 13:12 | 显示全部楼层
回lz:
这个问题很麻烦,如果只适用于仿真的行为级模型,这很简单,用trans门八两个双向接在一起就可以了。
如果你要变现的话就麻烦了。
既然是个双向信号,你必须译出它的方向控制信号。
写个例子吧
// PAD1,in1,out1,oe1  : the first pad
// PAD2,in2,out2,oe2  : the second pad
// sig_control : the direction control of signal,1: send to CPLD(PA1),
//                                                                    0: receive from CPLD(PAD1)
assign oe1 = ~sig_control ;
assign out1 = in2 ;
assign oe2 = sig_control ;
assign out2 = in1 ;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部