在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2843|回复: 8

[原创] valid 与ready 握手机制的分支逻辑

[复制链接]
发表于 2022-9-21 18:49:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
做过valid 与ready握手机制的打拍逻辑,闲暇无聊的时候尝试做下其分支逻辑,mux和dmux,感觉不是太好做,有没有大佬做过,给讲解下思路呢 ?我的困惑是一不小心,就生成了latch电路 。
比如两个输入端口,交替优先级输出在输出端口上,接口如下:
module  vld_rdy_mux
(
//输入端口1
input                    din1_vld      ,
input       [7:0]      din1            ,
output  logic          din1_rdy      ,
//输入端口2
input                   din2_vld       ,
input      [7:0]      din2             ,
output  logic         din2_rdy       ,

//输出端口
output  logic         dout_vld      ,
output  logic [7:0]  dout           ,
input                     dout_rdy
);

发表于 2022-9-21 19:34:34 | 显示全部楼层
按照楼主的想法,其实这就是rr仲裁。思路:内部加个1bit寄存器,表示仲裁状态即可
 楼主| 发表于 2022-9-22 09:21:20 | 显示全部楼层


大力哥 发表于 2022-9-21 19:34
按照楼主的想法,其实这就是rr仲裁。思路:内部加个1bit寄存器,表示仲裁状态即可 ...


感谢回复,你尝试写一下就知道问题在哪,关键不在于rr仲裁,而在于两个输入端口的ready 逻辑生成,乍一看就是一个Mux2,实际写起来完全不是那么回事
发表于 2022-9-22 19:46:48 | 显示全部楼层


ll_ago 发表于 2022-9-22 09:21
感谢回复,你尝试写一下就知道问题在哪,关键不在于rr仲裁,而在于两个输入端口的ready 逻辑生成,乍一看 ...


没有理解到具体复杂在哪,能把您的代码贴出来吗?
 楼主| 发表于 2022-9-23 14:19:50 | 显示全部楼层
本帖最后由 ll_ago 于 2022-9-23 14:48 编辑


image.png
image.png
image.png image.png image.png


image.png
 楼主| 发表于 2022-9-23 14:22:14 | 显示全部楼层
本帖最后由 ll_ago 于 2022-9-23 14:24 编辑


大力哥 发表于 2022-9-22 19:46
没有理解到具体复杂在哪,能把您的代码贴出来吗?


代码见楼上贴图,主要是中间的data1_in_rdy 和data2_in_rdy的逻辑,只能用NS和组合逻辑来赋值,要不然就会出现切换的异常,但用NS状态和组合逻辑,我总是担心出现一些意想不到的问题。
发表于 2022-9-23 15:07:44 | 显示全部楼层
用组合逻辑没问题呀
 楼主| 发表于 2022-9-23 16:40:02 | 显示全部楼层


Ronnie_Qiu 发表于 2022-9-23 15:07
用组合逻辑没问题呀


有没有更好的方法? 貌似ready 信号只能用组合逻辑从最后一级,一级一级的反馈到输入端口,如果中间级数较多,担心这部分的时序。
发表于 2022-9-23 16:59:09 | 显示全部楼层
似乎还是组合逻辑直接Mux2送回去比较好,不然要对ready信号打拍,比较麻烦
https://blog.csdn.net/iNostory/a ... 1001.2014.3001.5502
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-21 05:55 , Processed in 0.022009 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表