打印

请教verilog HDL中的双向开关tranif0

[复制链接]
4722|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhaoyi10|  楼主 | 2011-1-18 20:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
小弟最近需要用CPLD做一个类似总线扩展器的电路——双向SDA信号线接入CPLD,通过CPLD开关控制,输出4路SDA信号(同一时刻只有一路SDA信号可以输出)。现在大部分双向总线都是采用三态来模拟的,但是感觉比较复杂所以想用Verilog自带的双向开关tranif0来完成这项功能。运用双向开关仿真可以得到想要的结果,但是我的综合器不能综合tranif0。请教各位大侠tranif0这样的双向开关用Verilog是怎样实现的,这样我可以编写一个相应模块调用即可。谢谢

相关帖子

沙发
jeaper| | 2011-1-20 19:15 | 只看该作者
verilog 模拟也不复杂吧
输出:
assign   dataio = out_en ?  data : 1'bz ;
输入时直接读取就可以。

使用特权

评论回复
板凳
ar_dong| | 2011-1-26 11:54 | 只看该作者
呵呵 fpga双向口还是有难度的
必须想办法避免两个口之间的自激震荡
当然,严格意义上的i2c的scl也是双向的
不过最保险的办法是窃听协议,根据协议确定输出方向

使用特权

评论回复
地板
whiteLi| | 2015-10-18 21:11 | 只看该作者
请问楼主这个问题解决了没?现在遇到了类似的问题,求请教!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

6

帖子

1

粉丝