Round-Robin Arbiter思路

本文介绍了Round-Robin Arbiter的计算思路,通过一个例子展示了如何根据上一次的仲裁结果求解下一次的结果,并强调了请求输入的注意事项,如不能全为零且不应包含上一次结果位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载请标明出处:
原文发布于:浅尝辄止,未尝不可的博客

Round-Robin Arbiter思路

思路源于网络,细致计算下来发现,这真的是一个万能公式。

假设上一次的Arbiter结果为0000 0001,则下一次的结果应该为1~7位中的最低请求位。
比如:

请求 结果
1111 1110 0000 0010
1010 1000 0000 1000
0000 0110 0000 0010

以表格最后一行为例:请求A = 0000 0110,上一次的Round-Robin结果为 B = 0000 0001,需要求本次的Round-Robin结果C。

计算过程
解:
A = 0000 0110 , B = 0000 0001
AA = 0000 0110 0000 0110
AA& ~(AA-B)
=(0000 0110 0000 0110)& ~(0000 0110 0000 0110 - 0000 0001)
=(0000 0110 0000 0110)& ~(0000 0110 0000 0101)
=(0000 0110 0000 0110)& (1111 1001 1111 1010)
= 0000 0000 0000 0010
= DE
D = 0000 0000 , E = 0000 0010
C

Round-robin仲裁器是一种常见的仲裁器模块,用于解决多个模块竞争同一资源的问题。它的工作原理是按照固定的顺序轮流选择模块来占用资源,以保证公平性和均衡性。\[1\]这种仲裁器的设计思想是每个模块依次产生请求,然后仲裁器按照轮询的方式依次授予许可。\[3\]这样可以避免某个模块连续占用资源而导致其他模块无法获得许可的情况。\[3\]轮询仲裁器的优点是简单易实现,但也存在一些问题,比如公平性的考虑。\[2\]在某些情况下,如果按照固定的顺序授予许可,可能会导致某些模块的机会较少,从而不公平。因此,在设计中需要考虑如何解决这个公平性问题。 #### 引用[.reference_title] - *1* [round robin arbiter 轮询仲裁器设计](https://blog.youkuaiyun.com/qq_57502075/article/details/129764974)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [仲裁器设计(二)-- Round Robin Arbiter 轮询调度算法](https://blog.youkuaiyun.com/m0_49540263/article/details/114967443)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值