CN107301143A - 一种基于双轨编码四相握手协议的异步仲裁器 - Google Patents
一种基于双轨编码四相握手协议的异步仲裁器 Download PDFInfo
- Publication number
- CN107301143A CN107301143A CN201710317810.3A CN201710317810A CN107301143A CN 107301143 A CN107301143 A CN 107301143A CN 201710317810 A CN201710317810 A CN 201710317810A CN 107301143 A CN107301143 A CN 107301143A
- Authority
- CN
- China
- Prior art keywords
- output
- data
- control module
- arbitration
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明公开了一种基于双轨编码四相握手协议的异步仲裁器,包括仲裁模块、握手控制模块和输出控制模块,仲裁模块用于检测输入双轨编码数据的有效性以及完成不同输入通道之间的仲裁,握手控制模块用于完成四相握手协议,输出控制模块用于根据仲裁结果输出相应数据通道的数据。本发明能够直接应用双轨编码协议电路中,高度模块化并且每个模块电路规则化,可以方便扩展应用于更大规模的电路中。
Description
技术领域
本发明涉及一种异步仲裁电路领域,尤其是一种基于双轨编码四相握手协议的异步仲裁器。
背景技术
人工神经网络是人工智能领域近年来兴起的研究热点,它是由人工完成的模仿动物神经网络的行为特征和连接关系,大量简单元件广泛互连而成的复杂网络***。目前关于人工神经网络的研究不断深入,已经广泛应用于模式识别、语音分析与识别、计算机视觉等感官信号处理领域,并且表现出了优异的性能。
目前,以硅材料为基础的超大规模集成电路技术已经很成熟,越来越多的研究采用CMOS工艺来设计并制造专用神经网络芯。这些硬件电路实现的神经网络中的信息处理通常具有并发性、异步事件驱动等特点。例如,多个神经元很可能同时产生脉冲信号。而异步电路不需要时钟信号,采用握手协议处理异步事件,不需要处理事件的时刻异步电路处于等待状态,只消耗极少功率。因此,异步电路被越来越多的应用于人工神经网络专用芯片中以处理各种异步事件,如输入输出的神经脉冲。神经脉冲的产生具有高度的并发性,输入和输出端都可能需要同时处理多个脉冲信号,但是通常我们一个时刻只能选择其中之一进行处理。仲裁器电路在这种场合被广泛使用,它可以从多个输入通道中选择其中之一进行输出。
传统的异步仲裁器一般只能够直接应用于捆绑数据协议,但是该种协议与电路延迟有关,电路设计时通常需要满足一定的延迟假设。目前实际应用更多的是双轨编码协议,这是一种延迟无关编码方式。但是,仍未有能够直接应用于双轨编码协议的通用异步冲裁电路结构。此外,四项握手协议是异步电路设计中使用最多的协议,具有设计简单等优点。
发明内容
为克服上述传统异步仲裁器的不足,本发明提供了一种基于双轨编码四相握手协议的异步仲裁器。
本发明所采用的技术方案是:
本发明的基于双轨编码四相握手协议的异步仲裁器,包括仲裁模块、握手控制模块和输出控制模块,所述的仲裁模块包括有效性检测电路和树形仲裁电路;
输入通道中数据总线Data_i分别连接至一个有效性检测电路,该有效性检测电路输出为Vi;所有输出Vi连接至树形仲裁电路的输入REQi用以发起仲裁请求,树形仲裁电路是由二输入仲裁电路以树形连接而成的电路,前级的输出作为后一级的输入,最后一级仲裁电路的输出之间短接;仲裁模块的输出即为仲裁结果Ai,所有的仲裁结果Ai信号线被连接至握手控制模块,同时输出通道的ACK信号也作为握手控制模块的输入,握手控制模块的输出为输入通道的ACKi和控制信号Ci,其中ACKi连接至各输入通信通道作为握手信号,控制信号Ci连接至输出控制模块控制其选择输出;输出控制模块的输入为各通道数据Data_i和控制信号Ci,输出为数据通道Data,即根据仲裁结果输出相应数据通道的数据。
所述的有效性检测采用异或门检测每一位双轨编码数据有效型,数据通道中每一位双轨编码数据xi.t和xi.f都连接到一个异或门电路用以检测其有效性;然后将每一位异或门输出结果连接至C单元构成的树形结构;C单元由两个PMOS和两个NMOS串接,输出结果经过由两个非门构成的锁存器后最终输出,只有当两个输入都为低电平时,输出结果变为低电平;两个输出都为高电平时,输出结果变为高电平;其他情况下C单元输出值维持原值不变。
所述的基于双轨编码四相握手协议的异步仲裁器的工作流程如下:
若第i个输入通道要传输的双轨编码数据总线为Data_i,其握手控制信号为ACKi,输出通道数据总线为Data,握手控制信号为ACK;
当第i个输入数据有效并且通过仲裁获得输出权限后,握手控制模块将控制输出信号Ci置为高电平,该信号控制输出控制模块将相应的输入数据输出,即等效于在输出通道发出数据传输请求,随后输出通道的ACK信号被输出接收端置为高电平,握手控制模块会将输入通道的ACKi信号置为高电平,代表数据已被接收,随后输入数据被输入端置为中性值,握手控制模块将Ci信号置为0,输出控制模块也将输出数据置为中性值,外部接收端将ACK信号拉低,最后握手控制模块将ACKi信号也置为0,至此完成输入输出两端的握手操作。
所述的输出控制模块的工作流程如下:
根据握手控制模块计算出的Ci值的情况来控制输出数据,当所有的控制信号Ci全为0时,代表电路处于空闲状态,此时输出的数据通道全部值为0;当某一时刻有一个Ci值为高电平时,输出控制模块会将输出数据置为第i号通道的数据值,以完成数据传送。
与现有技术相比,本发明的有益效果是:
本发明能够直接应用双轨编码协议电路中,高度模块化并且每个模块电路规则,可以方便扩展应用于更大规模的电路中。
附图说明
图1为本发明电路顶层结构示意图。
图2为本发明仲裁模块中有效性检测电路图与基础仲裁器电路图。
图3为本发明握手控制模块电路图。
图4为本发明输出控制模块中1位数据输出控制电路图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细说明。
如图1所示,本发明电路的输入为多个通信通道,输出为单个通信通道。每个通信通道包含有数据通道(输入端为Data_i,输出端为Data)和相应的握手控制线(输入端为ACKi,输出端为ACK),其中每个数据通道中包含有多位双轨编码的数据位。该电路主要包含有三个模块:仲裁电路(虚线框内)、握手控制模块和输出控制器。其连接关系为:外部输入通道中数据总线Data_i分别连接至一个有效性检测电路,该电路输出为Vi;所有通道的Vi连接至树形仲裁电路的输入REQi用以发起仲裁请求,树形仲裁器为基础二输入仲裁电路以二叉树形状连接,前级的输出作为后一级的输入,最后一级仲裁器的输出REQ与ACK之间短接;仲裁电路输出即为仲裁结果为Ai,可视为第i个通道取得输出权限;所有的Ai信号线被连接至握手控制模块,同时输出端的ACK信号也作为握手控制模块的输入,其输出为ACKi和Ci,其中ACKi连接至各输入通信通道作为握手信号,Ci连接至输出控制器控制其选择输出;输出控制器输入为各通道数据Data_i和控制信号Ci,输出为数据数据通道Data。各个模块功能如下:仲裁电路用以检测数据通道中数据的有效性以及完成多数据通道之间的仲裁选择,仲裁结果表现为信号线A1、A2、A3、A4中任意时刻最多仅有一个信号为高电平,代表着最多仅有一个通信通道会被选择输出。仲裁电路仲裁完毕后,A1、A2、A3、A4连接到握手控制模块,握手控制模块根据仲裁结果计算相应的ACKi信号完成和输入端的握手,并计算输出控制器的控制信号Ci。同样的,Ci信号在任意一个时刻最多仅有一个为高电平,能够使能输出控制器输出第i个输入通道的数据Data_i至输出端数据通道Data。
图(2)是仲裁器模块的详细电路图,(a)是数据通道有效性检测电路,数据通道中每一位双轨编码数据xi.t和xi.f都连接到一个异或门电路用以检测其有效性,每一个异或门的输出连接至树形C单元电路,用以确保所有数据位的有效性。需要注意的是每一位数据都变为有效时输出才会变为高电平,而每一位数据都为中性值时输出才会变为低电平,其余值时输出结果保持不变。(b)是非对称C单元的电路图与符号,该单元在基本仲裁器中使用到。(c)是我们采用的基本仲裁器结构,该仲裁器具有公平仲裁的特点,即当其中一个输入请求被处理后再次发出请求,这种仲裁器会先处理完其他所有输入后,才会再次响应该请求信号。
如图(3)是握手控制模块,主要由非门、多输入或非门和多个C单元组成。该电路输入为A1、A2、A3、A4和输出端握手信号线ACK,输出为输入端握手信号ACK1、ACK2、ACK3、ACK4以及输出控制器的控制信号C1、C2、C3、C4。其连接关系为:ACK信号连接至非门,输出结果为EN,EN为高电平时代表输出端通道空闲,反之代表输出端正在传输数据;ACKi被连接至多输入或门,其输出为EN_L,当EN_L为高电平时,代表输入端所有通道都未开始握手;ACK和Ci被连接至二输入C单元,输出结果为ACKi,即当ACK为高并且Ci信号为高时,ACK信号被置高,当ACK和Ci同时为低时,ACK信号被置低,其余时刻保持不变;EN、EN_L和Ai被连接至三输入C单元,其输出即为Ci即当EN、EN_L和Ai同时为高时,Ci被置高,反之三者同时为低时,Ci被置低,其余时刻保持不变。
如图(4)为1位数据输出控制电路,由4个PMOS管和8个NMOS管连接,输出截至由双非门级联而成的锁存电路得到最终输出。其中,4个PMOS串联,其栅极控制信号分别为C1~C4,8个NMOS分为4路并联,每一路都包含有2个串接的NMOS管,NMOS管栅极分别为控制信号Ci和数据位data_i。实际电路中根据输入数据位数的不同含有多个该电路。该电路根据C1、C2、C3、C4来计算输出值:初始状态下全部控制信号Ci都为低电平,输出值为0;当某一时刻Ci被置为高时,输出值data变为第i路输入数据data_i。
以下结合具体实例描述电路工作过程:假设在某时刻,通道1通道2同时发起数据传输,即Data_1、Data_2同时变为有效值,经过有效性检测模块后V1、V2将会变为有效,并输入至树形仲裁器中进行仲裁,仲裁结果为A1或A2被置为高;假设A1经过仲裁后变为高电平,则握手控制模块首先将C1变为高,控制输出通道输出值Data变为Data_1,即在输出端发起通信;输出端接收方随后会将ACK变为高电平,握手控制模块检测到ACK置高后会将通道1的ACK1信号置为高,代表数据传送完成;输入方发送端此后将Data_1的数据变为无效,V1也变为低电平,仲裁树输出结果中A1将会被置低,使得握手控制模块控制C1信号也变为低,同时ACK1也会变为低,完成和输入端的四相握手过程;此时C1、C2、C3、C4信号全为低电平,使得输出控制器输出结果全为低电平,即无效值,输出端接收方检测到高无效值后会将ACK信号置低,以此完成输出端四相握手过程。至此,通道1发起的数据通信被完成,通道2发起的通信将会在仲裁树中传递,并使得A2被置为高,经过同样的通信过程后通道2的数据也会完成传送。
通过以上三个电路三个模块的划分,完整的电路被拆分成三个不同的功能块,每个模块电路功能明确,连接关系简单,电路设计规则,易于被扩展为更大规模的电路。
Claims (4)
1.一种基于双轨编码四相握手协议的异步仲裁器,其特征在于包括仲裁模块、握手控制模块和输出控制模块,所述的仲裁模块包括有效性检测电路和树形仲裁电路;
输入通道中数据总线Data_i分别连接至一个有效性检测电路,该有效性检测电路输出为Vi;所有输出Vi连接至树形仲裁电路的输入REQi用以发起仲裁请求,树形仲裁电路是由二输入仲裁电路以树形连接而成的电路,前级的输出作为后一级的输入,最后一级仲裁电路的输出之间短接;仲裁模块的输出即为仲裁结果Ai,所有的仲裁结果Ai信号线被连接至握手控制模块,同时输出通道的ACK信号也作为握手控制模块的输入,握手控制模块的输出为输入通道的ACKi和控制信号Ci,其中ACKi连接至各输入通信通道作为握手信号,控制信号Ci连接至输出控制模块控制其选择输出;输出控制模块的输入为各通道数据Data_i和控制信号Ci,输出为数据通道Data,即根据仲裁结果输出相应数据通道的数据。
2.根据权利要求1所述的一种基于双轨编码四相握手协议的异步仲裁器,其特征在于所述的有效性检测采用异或门检测每一位双轨编码数据有效型,数据通道中每一位双轨编码数据xi.t和xi.f都连接到一个异或门电路用以检测其有效性;然后将每一位异或门输出结果连接至C单元构成的树形结构;C单元由两个PMOS和两个NMOS串接,输出结果经过由两个非门构成的锁存器后最终输出,只有当两个输入都为低电平时,输出结果变为低电平;两个输出都为高电平时,输出结果变为高电平;其他情况下C单元输出值维持原值不变。
3.根据权利要求1所述的一种基于双轨编码四相握手协议的异步仲裁器,其特征在于所述的握手控制模块的工作流程如下:
若第i个输入通道要传输的双轨编码数据总线为Data_i,其握手控制信号为ACKi,输出通道数据总线为Data,握手控制信号为ACK;
当第i个输入数据有效并且通过仲裁获得输出权限后,握手控制模块将控制输出信号Ci置为高电平,该信号控制输出控制模块将相应的输入数据输出,即等效于在输出通道发出数据传输请求,随后输出通道的ACK信号被输出接收端置为高电平,握手控制模块会将输入通道的ACKi信号置为高电平,代表数据已被接收,随后输入数据被输入端置为中性值,握手控制模块将Ci信号置为0,输出控制模块也将输出数据置为中性值,外部接收端将ACK信号拉低,最后握手控制模块将ACKi信号也置为0,至此完成输入输出两端的握手操作。
4.根据权利要求1所述的一种基于双轨编码四相握手协议的异步仲裁器,其特征在于所述的输出控制模块的工作流程如下:
根据握手控制模块计算出的Ci值的情况来控制输出数据,当所有的控制信号Ci全为0时,代表电路处于空闲状态,此时输出的数据通道全部值为0;当某一时刻有一个Ci值为高电平时,输出控制模块会将输出数据置为第i号通道的数据值,以完成数据传送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710317810.3A CN107301143B (zh) | 2017-05-08 | 2017-05-08 | 一种基于双轨编码四相握手协议的异步仲裁器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710317810.3A CN107301143B (zh) | 2017-05-08 | 2017-05-08 | 一种基于双轨编码四相握手协议的异步仲裁器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107301143A true CN107301143A (zh) | 2017-10-27 |
CN107301143B CN107301143B (zh) | 2020-09-04 |
Family
ID=60137105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710317810.3A Active CN107301143B (zh) | 2017-05-08 | 2017-05-08 | 一种基于双轨编码四相握手协议的异步仲裁器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107301143B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240977A (zh) * | 2018-09-10 | 2019-01-18 | 浙江大学 | 一种基于四相双轨编码协议的异步路由器电路 |
CN112803929A (zh) * | 2021-03-26 | 2021-05-14 | 北京中科芯蕊科技有限公司 | 一种异步真四相握手协议电路及其控制方法 |
CN116384309A (zh) * | 2023-05-31 | 2023-07-04 | 华中科技大学 | 一种应用于低功耗芯片设计的四相锁存异步握手单元 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030233622A1 (en) * | 2001-10-11 | 2003-12-18 | Mika Nystrom | Method and apparatus for an asynchronous pulse logic circuit |
CN101149763A (zh) * | 2007-11-06 | 2008-03-26 | 中国人民解放军国防科学技术大学 | 猝发模式异步控制电路设计方法 |
CN101187908A (zh) * | 2007-09-27 | 2008-05-28 | 上海大学 | 单芯片多处理器共享数据存储空间的访问方法 |
CN101477505A (zh) * | 2008-12-23 | 2009-07-08 | 北京中星微电子有限公司 | 一种主、从设备之间通过总线传输数据的方法 |
CN104065570A (zh) * | 2014-06-23 | 2014-09-24 | 合肥工业大学 | 异步可容错片上网络路由器设计方法 |
CN104298628A (zh) * | 2014-09-30 | 2015-01-21 | 中国电子科技集团公司第三十八研究所 | 一种用于并发访问的数据存储器仲裁电路及仲裁方法 |
-
2017
- 2017-05-08 CN CN201710317810.3A patent/CN107301143B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030233622A1 (en) * | 2001-10-11 | 2003-12-18 | Mika Nystrom | Method and apparatus for an asynchronous pulse logic circuit |
CN101187908A (zh) * | 2007-09-27 | 2008-05-28 | 上海大学 | 单芯片多处理器共享数据存储空间的访问方法 |
CN101149763A (zh) * | 2007-11-06 | 2008-03-26 | 中国人民解放军国防科学技术大学 | 猝发模式异步控制电路设计方法 |
CN101477505A (zh) * | 2008-12-23 | 2009-07-08 | 北京中星微电子有限公司 | 一种主、从设备之间通过总线传输数据的方法 |
CN104065570A (zh) * | 2014-06-23 | 2014-09-24 | 合肥工业大学 | 异步可容错片上网络路由器设计方法 |
CN104298628A (zh) * | 2014-09-30 | 2015-01-21 | 中国电子科技集团公司第三十八研究所 | 一种用于并发访问的数据存储器仲裁电路及仲裁方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240977A (zh) * | 2018-09-10 | 2019-01-18 | 浙江大学 | 一种基于四相双轨编码协议的异步路由器电路 |
CN112803929A (zh) * | 2021-03-26 | 2021-05-14 | 北京中科芯蕊科技有限公司 | 一种异步真四相握手协议电路及其控制方法 |
CN112803929B (zh) * | 2021-03-26 | 2021-07-02 | 北京中科芯蕊科技有限公司 | 一种异步真四相握手协议电路及其控制方法 |
CN116384309A (zh) * | 2023-05-31 | 2023-07-04 | 华中科技大学 | 一种应用于低功耗芯片设计的四相锁存异步握手单元 |
CN116384309B (zh) * | 2023-05-31 | 2023-08-11 | 华中科技大学 | 一种应用于低功耗芯片设计的四相锁存异步握手电路 |
Also Published As
Publication number | Publication date |
---|---|
CN107301143B (zh) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3962706A (en) | Data processing apparatus for highly parallel execution of stored programs | |
CN106294234B (zh) | 一种数据传输方法及装置 | |
CN107301143A (zh) | 一种基于双轨编码四相握手协议的异步仲裁器 | |
CN109858620A (zh) | 一种类脑计算*** | |
CN103559156B (zh) | 一种fpga与计算机之间的通信*** | |
CN104320341B (zh) | 路由自适应异步2D‑Torus片上网络***及其设计方法 | |
CN100552621C (zh) | 一种采用异步电路实现的算术逻辑单元 | |
CN106598889A (zh) | 一种基于fpga夹层板的sata主控器 | |
CN104699654A (zh) | 一种基于chi片内互联总线与qpi片间互联总线互联适配***和方法 | |
CN116074267B (zh) | 一种数据通信***及SoC芯片 | |
JPS6259495A (ja) | 通信接続スイッチの優先処理手順を修正する方法 | |
CN108345934A (zh) | 一种用于神经网络处理器的激活装置及方法 | |
CN1311374C (zh) | 计算机***的输入/输出节点标识命令的装置及方法 | |
CN109814482A (zh) | 机器人的控制器及其控制方法和工业机器人 | |
Ding et al. | A hybrid-mode on-chip router for the large-scale FPGA-based neuromorphic platform | |
CN106656103A (zh) | 一种fir滤波器组及滤波方法 | |
CN108494705A (zh) | 一种网络报文高速处理***和方法 | |
US11586572B2 (en) | Field programmable gate array and communication method | |
Manohar et al. | Asynchronous signalling processes | |
CN115378873A (zh) | 一种提高以太网数据传输效率的流量控制方法和*** | |
CN103810142B (zh) | 可重构***及其构建方法 | |
CN107783926A (zh) | 基于PowerPC与网口的FPGA与PC的通信方法 | |
CN103744817B (zh) | 用于Avalon总线向Crossbar总线的通讯转换桥设备及其通讯转换方法 | |
CN105488010A (zh) | 一种背板实时同步接口协议 | |
CN205594375U (zh) | 一种基于plc的通信*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |