zl程序教程

您现在的位置是:首页 >  硬件

当前栏目

【数字IC/FPGA】仲裁器进阶--固定优先级仲裁器

IC -- 数字 进阶 FPGA 优先级 固定 仲裁
2023-09-14 09:16:18 时间

固定优先级仲裁器

仲裁器Arbiter是数字设计中非常常见的模块,应用也非常广泛。定义就是当有两个或两个以上的模块需要占用同一个资源的时候,我们需要由仲裁器arbiter来决定哪一个模块来占有这个资源。最简单的仲裁器就是固定优先级仲裁器(Fixed Priority Arbiter),也叫SP(Strict Priority, 严格优先级)仲裁,该仲裁器会给各个输入队列分配优先级,当高优先级的队列非空时,优先调度高优先级队列。只有当高优先级队列为空时,才有可能调度低优先级的队列。在整个过程中,优先级是固定、保持不变的

仲裁器设计

对于一个固定优先级仲裁器,输入是一个多比特的request向量,每一个bit代表一个模块的request, 输出一个多比特的grant向量,每个bit代表给对应的模块的grant信号。我们可以把优先级这样安排,最低位优先级最高,最高位优先级最低。

方法一

一种简单的方法就是采用case语句实现:

module fixed_prio_arb
  (
      input [2:0