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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: gjb649666926

[求助] verilog设计遇到的问题,请大牛指导

[复制链接]
发表于 2013-7-15 23:04:49 | 显示全部楼层
本帖最后由 hiloco 于 2013-7-16 15:14 编辑

看看这样满足你的要求不

每当执行电路空闲的时候启动一次仲裁,

case(current_state)
READ: if ((rdcnt==`RD_TH)&&(wrop_fifoemp==0))
                next_state = WRITE;
           else if ((rdop_fifoemp==1)&&(wrop_fifoemp==0))
                next_state =WRITE;           else
                next_state =READ;
WRITE: if ((wrcnt==`WR_TH)&&(rdop_fifoemp==0))
                next_state =READ;
             else if ((wrop_fifoemp==1)&&(rdop_fifoemp==0))
                next_state = READ;
             else
                next_state =WRITE;
....................

`RD_TH和 `WR_TH 就是权重,如果两个fifo都非空那个,就会按照这个比例来执行
其他自己看着办吧
 楼主| 发表于 2013-7-15 23:41:49 | 显示全部楼层
回复 16# hiloco


    多谢,这个仲裁方法看起来还算合理,我可以参考参考
发表于 2013-7-16 15:12:56 | 显示全部楼层
回复 17# gjb649666926


   修改了一下避免了其中一个fifo空的时候浪费时间等待,直接跳转到另一状态
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-26 17:40 , Processed in 0.013790 second(s), 6 queries , Gzip On, Redis On.

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