一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种适用于异步电路的轮询仲裁器及其方法与流程

2021-11-15 17:56:00 来源:中国专利 TAG:


1.本发明涉及集成电路领域,尤其涉及异步电路路由调度的轮询优先级仲裁器。


背景技术:

2.仲裁器是一类在数字集成系统中用于调度分配共享资源的常用结构,其主要作用是根据对共享资源的请求按照一定的规则进行响应。一种常见的仲裁器使用场景是:在总线系统中多个主模块共用同一总线,各主模块在占用总线传输数据之前,首先向仲裁器发出请求,若有多个模块的请求同时到达,仲裁器将按照设计的优先级规则决定各模块使用总线的先后次序,使得各模块的数据传输能够有序执行,从而避免因冲突而导致的数据丢失或错误。
3.仲裁器的一个重要特性是公平性。若仲裁器对于来自不同模块的请求给予固定的优先级,则虽然高优先级模块能够无阻塞地进行数据传输,但低优先级模块的请求则可能一直得不到响应,那么将出现总线一直被高优先级模块占用,低优先级模块的数据被阻塞的情况。针对上述问题,出现了可变优先级仲裁器、轮询仲裁器等结构。一个基本的n输入轮询仲裁器结构如图1所示,该结构由多级包含权值输入的仲裁单元、d触发器等组合而成,d触发器的输出端q端接下一级仲裁单元的权值输入端口,同一时钟周期内有且仅有一个权值信号p
i
置于高电平,此时该级仲裁单元的优先级最高,其余单元的优先级依次降序排列。为了便于说明,假定所有数据传输的过程均能在一个时钟周期内完成,则在某一时钟周期,若第i级仲裁单元接收到请求信号,且在所有收到有效请求的仲裁单元内具有最高的优先级,则该仲裁单元的响应信号g
i
随请求信号r
i
拉高,该高电平信号经过d触发器,在下一时钟周期到来时传递到第i 1级仲裁单元的权值输入端口,即p
i 1
将被置于高电平,在此时钟周期内第i 1级仲裁单元优先级最高,上述电路动作完成了整个仲裁器权值的更新。当某一时钟周期内没有任何有效请求信号,即r
i
全为0时,g
i
全为0,若更新到p
i
全为0,则将导致仲裁失效,故在仲裁单元和d触发器之间增加由多输入或非门和多级与非门组成的逻辑门结构,其作用在于当g
i
全为0时,d触发器在下一时钟周期内传递原p
i
信号,即所有p
i
信号保持,优先级不变,直到某个或多个请求信号拉高再进行更新。
4.上述轮询仲裁器中的仲裁单元本质是一种权值可变的仲裁单元结构,由多个逻辑门组成,如图2所示。对于一个n级级联的仲裁结构,将第i级仲裁单元输出的响应信号g
i
拉高的充要条件为:1.请求信号r
i
有效,置于高电平;2.来自第i

1级的进位输入信号c
i
拉高,或权值信号p
i
置于高电平。将第i级仲裁单元输出到第i 1级的进位信号c
i 1
拉高的充要条件为:1.请求信号r
i
无效,置于低电平;2.来自第i

1级的进位输入信号c
i
拉高,或权值信号p
i
置于高电平。故上述结构保证了同一时钟周期内最多仅有一个响应信号g
i
置于高电平,进位信号保证了各级仲裁单元的优先级以权值信号p
i
置于高电平的第i级单元开始依次降序排列。
5.在对集成电路速度和功耗要求愈发严格的当下,特别是随着片上系统、片上网络的兴起和广泛应用,全局同步时钟的实现已愈发困难,时钟产生的功耗问题也无法得到很
好的解决;因此不依赖全局时钟的异步电路作为一种颇具发展前景的解决方案,逐渐受到广泛关注。但上述的轮询仲裁器仅适用于同步电路,需要利用d触发器和同步时钟信号完成权值的更新,并不适用于异步电路。


技术实现要素:

6.为克服现有技术不足,针对现有轮询仲裁结构不适用于异步电路的问题,本发明目的在于设计一种适用于异步电路的轮询仲裁器及其方法,取消对于全局时钟的依赖。
7.本发明采用的技术方案是:
8.一种适用于异步电路的轮询仲裁器,该轮询仲裁器包括仲裁部分、互斥锁部分和多路选择部分;其中,仲裁部分由多级仲裁单元级联而成,仲裁部分的输入为请求信号以及各请求的权值信息,仲裁部分的输出为反应仲裁结果的响应信号;互斥锁部分由多级互斥单元级联而成,互斥锁部分的输入为从仲裁部分输出的响应信号以及从后级流水线结构输出的握手信号,互斥锁部分的输出为选通信号以及向前级流水线结构传递的握手信号;多路选择部分的输入为互斥锁部分输出的选通信号以及输入数据,多路选择部分的输出为仲裁优先级最高的有效数据。
9.进一步地,所述互斥单元由多级c单元和多输入非与门级联构成。
10.本发明利用上述轮询仲裁器的仲裁方法,具体过程为:假设具有n输入的所述轮询仲裁器同时收到多个有效请求信号,即r
i
,r
i m0
,r
i m1,

……
,r
i mn
拉高,data_in
i
,data_in
i m0
,data_in
i m1,

……
,data_in
i mn
为非空有效输入,其中m0<m1<
……
<mn且均为正整数,0≤i<i mn≤n;假设此时请求的权值信息p
q
为1,即第q级仲裁单元具有最高的优先级;此时自q级开始降序计算优先级,由请求信号r
s
获得最高优先级,对应互斥锁部分输出的响应信号g
s
拉高,当存在q<s≤n时,s的取值满足(s

q)最小,反之s的取值满足(q

s)最大;互斥锁部分在响应信号g
s
拉高后,将对应的选通信号sel
s
拉高,多路选择部分将data_in
s
作为有效数据输出;多路选择部分完成数据data_out的输出后,由后级流水线结构传来的握手信号ack_in拉高,故第s级互斥单元的c单元将输出的握手信号ack_out
s
随之拉高,告知前级单元数据传输已完成;其余向前级传输的握手信号仍保持低位,权值信息p
s 1
的权值信号拉高,其余权值信号置低,至此完成权值信息的更新;此时自s 1级开始降序计算优先级,由请求信号r
j
获得最高优先级,对应互斥锁部分输出的响应信号g
j
拉高,当存在s<j≤n时,j的取值满足(j

s)最小,反之j的取值满足(s

j)最大;但由于c单元的特性,握手信号ack_out
s
仍保持为1,其余所有选通信号均为0,故第j级的选通信号实际“锁存”在互斥单元当中;直到数据data_in
s
传输完成并由下一级流水线确认收到后,全局流水线进行复位动作,握手信号ack_in拉低,第j级的选通信号“解锁”,对应选通信号sel
j
拉高,输出握手信号ack_out
j
拉高,多路选择部分将data_in
j
作为有效数据输出;多路选择部分完成数据data_out的输出后,由后级流水线结构传来的握手信号ack_in信号拉高,故第j级互斥单元的c单元将输出的握手信号ack_out
j
随之拉高,告知前级单元数据传输已完成;其余向前级传输的握手信号仍保持低位,权值信息p
j 1
的权值信号拉高,其余权值信号置低,完成权值信息的再次更新,以下继续重复上述过程。
11.本发明基于基本的轮询仲裁结构,通过以多级c单元和多输入非与门级联构建的互斥锁部分替代d触发器,借助流水线结构的握手信号有序更新权值信息、有序输出数据,
实现了适用于异步电路的轮询仲裁器。
附图说明
12.图1为现有一种基本的n输入轮询仲裁器结构图。
13.图2为现有一种基本的仲裁单元结构图。
14.图3为本发明适用于异步电路的轮询仲裁器基本结构示意图。
15.图4为本发明实施例中互斥单元结构图。
16.图5为本发明实施例中c单元电路结构图。
具体实施方式
17.本发明采用的适用于异步电路的轮询仲裁器结构如图3所示,借助异步电路的流水线结构,该仲裁器包括仲裁部分、互斥锁部分和多路选择部分。其中,仲裁部分由多级图2给出的仲裁单元级联而成,r0至r
n
为请求信号,p0至p
n
为各请求的权值信息,输出g0至g
n
为反应仲裁结果的响应信号。
18.互斥锁部分由多级如图4所示的互斥单元级联而成,输入除了接从仲裁部分得到的响应信号g0至g
n
,还包括从后级流水线结构得到的ack_in握手信号,输出sel0至sel
n
为选通信号,ack_out0至ack_out
n
为向前级流水线结构传递的握手信号;多路选择部分的输入除了sel0至sel
n
的选通信号,还包括data_in0至data_in
n
的数据输入,输出仲裁优先级最高的数据作为data_out,此部分的功能描述为:当且仅当选通信号sel
i
拉高,同时data_in
i
为有效数据输入,data_out才具备有效输出数据data_in
i
。此外,互斥锁部分使用到的c单元是一种muller c单元的电路结构,如图5所示,其功能描述为:当两输入全为0时,输出置0;当两输入全为1时,输出置1;否则,输出不发生改变。
19.本实施例轮询仲裁器的工作原理和过程叙述如下:
20.假设具有n输入的轮询仲裁器同时收到多个有效请求信号,即r
i
,r
i m0
,r
i m1,

……
,r
i mn
(m0<m1<
……
<mn且均为正整数,0≤i<i mn≤n)拉高,data_in
i
,data_in
i m0
,data_in
i m1,

……
,data_in
i mn
为非空有效输入,假设此时p
q
为1,即第q级仲裁单元具有最高的优先级。此时自q级开始降序计算优先级,有请求信号r
s
获得最高优先级,对应输出的响应信号g
s
拉高。互斥锁部分在g
s
拉高后,将对应的选通信号sel
s
拉高,多路选择部分将data_in
s
作为有效数据输出;完成数据data_out的输出后,由后级流水线结构传来的ack_in信号拉高,故第s级互斥单元的c单元将输出的握手信号ack_out
s
随之拉高,告知前级单元数据传输已完成;其余向前级传输的握手信号仍保持低位,p
s 1
权值信号拉高,其余权值信号置低,至此完成权值信息的更新。
21.此时自s 1级开始降序计算优先级,有请求信号r
j
获得最高优先级,对应输出的响应信号g
j
拉高。但由于c单元的特性,ack_out
s
仍保持为1,其余所有选通信号均为0,故第j级的选通信号实际“锁存”在互斥单元当中。直到data_in
s
数据传输完成并由下一级流水线确认收到后,全局流水线进行复位动作,ack_in拉低,第j级的选通信号“解锁”,对应选通信号sel
j
拉高,输出握手信号ack_out
j
拉高,多路选择部分将data_in
j
作为有效数据输出;完成数据data_out的输出后,由后级流水线结构传来的ack_in信号拉高,故第j级互斥单元的c单元将输出的握手信号ack_out
j
随之拉高,告知前级单元数据传输已完成;其余向前级传
输的握手信号仍保持低位,p
j 1
权值信号拉高,其余权值信号置低,完成权值信息的再次更新,以下继续重复上述过程。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献