CN100346335C - 一种采用异步通信机制的可重构计算单元 - Google Patents
一种采用异步通信机制的可重构计算单元 Download PDFInfo
- Publication number
- CN100346335C CN100346335C CNB200510061777XA CN200510061777A CN100346335C CN 100346335 C CN100346335 C CN 100346335C CN B200510061777X A CNB200510061777X A CN B200510061777XA CN 200510061777 A CN200510061777 A CN 200510061777A CN 100346335 C CN100346335 C CN 100346335C
- Authority
- CN
- China
- Prior art keywords
- asynchronous
- data
- final election
- computing unit
- multichannel final
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开的采用异步通信机制的可重构计算单元包括数据输入路由模块、异步计算控制模块、异步计算模块、数据输出路由模块、异步信号生成模块、异步信号输出路由模块和配置模块。根据配置模块中的信息,输入数据经数据输入路由模块选择进入异步计算模块,在异步计算控制模块的控制下进行计算。计算结果输出到异步信号生成模块和数据输出路由模块。数据输出路由模块通过选择产生该可重构单元的输出数据,异步信号生成模块通过对计算结果进行判断产生该可重构单元的异步应答信号输至异步信号输出路由模块,其通过选择产生该可重构单元的输出异步信号。本发明采用异步通信机制,不需要用最长运算周期来统一时钟周期,极大地提高了运算效率,同时功耗大大降低。
Description
技术领域
本发明涉及一种采用异步通信机制的可重构计算单元,适用于计算密集型应用领域。
背景技术
随着微电子技术和计算机技术的发展,可重构器件被越来越广泛的使用在电子产品的开发应用中。其中,现场可编程门阵列FPGA以其通用性和高性能,几乎占据了可重构器件的半壁江山。
然而,目前市场上以FPGA为代表的可重构器件,由于其单元结构以及连接方式,不可避免的存在以下缺陷。首先,像FPGA这类采用同步通信机制的可重构结构,由于全局时钟的使用,不可避免的出现时钟歪斜的问题。并且,虽然这类单元结构简单且相对面积较小,但都很难突破功耗、性能上的瓶颈。这也是阵列计算具有规模大、路由路径长短差距悬殊等特点所决定的。其次,像FPGA之类可重构结构,为了保证其灵活性,常常加入大面积的路由资源,这就不可避免的导致了片上面积的大规模浪费。
发明内容
本发明的目的在于针对现有技术的不足,提供一种采用异步通信机制的可重构计算单元。
本发明的异步通信可重构计算单元包括数据输入路由模块、异步计算控制模块、异步计算模块、数据输出路由模块、异步信号生成模块、异步信号输出路由模块和配置模块,所说的数据输入路由模块内具有三个数据输入多路复选器,数据输出路由模块具有八个数据输出多路复选器,异步信号输出路由模块内具有八个异步信号输出多路复选器,异步计算模块包括计算电路、一个预充电电路以及两个用于计算多路复选器,数据输入路由模块中的每个数据输入多路复选器的输入端与输入可重构计算单元的八个数据信号相连,输出端分别与异步计算模块中的预充电电路以及计算电路的输入端相连,异步计算控制模块的输入端与输入可重构计算单元的八个异步信号相连,输出端和异步计算模块中的预充电电路的另一输入端相连,预充电电路的输出端和计算电路的另一输入端相连,计算电路的一个输出端和第一计算多路复选器的输入端相连,计算电路的另一个输出端和第二计算多路复选器的输入端相连,两个计算多路复选器的输出端分别和数据输出路由模块中的八个数据输出多路复选器以及异步信号生成模块的输入端相连,数据输出路由模块中的第一数据输出多路复选器的输入端和可重构计算单元的第三、第五、第七数据信号相连,第二数据输出多路复选器的输入端和可重构计算单元的第四、第六、第八数据信号相连,第三数据输出多路复选器的输入端和可重构计算单元的第一、第五、第七数据信号相连,第四数据输出多路复选器的输入端和可重构计算单元的第二、第六、第八数据信号相连,第五数据输出多路复选器的输入端和可重构计算单元的第一、第三、第七数据信号相连,第六数据输出多路复选器的输入端和可重构计算单元的第二、第四、第八数据信号相连,第七数据输出多路复选器的输入端和可重构计算单元的第一、第三、第五数据信号相连,第八数据输出多路复选器的输入端和可重构计算单元的第二、第四、第六数据信号相连,八个数据输出多路复选器的输出端为可重构计算单元的输出数据信号端,异步信号生成模块的输出端分别与异步信号输出路由模块中的八个异步信号输出多路复选器的输入端相连,异步信号输出路由模块中的第一、第三、第五、第七异步信号输出多路复选器的输入端均与输入可重构计算单元的第一、第三、第五、第七异步信号相连,第二、第四、第六、第八异步信号输出多路复选器的输入端均与输入可重构计算单元的第二、第四、第六、第八异步信号相连,八个异步信号输出多路复选器的输出端为可重构计算单元的输出异步信号端,用于存放单元配置信息的配置模块的输入端连接输入配置数据,输出端分别和可重构计算单元中的数据输入多路复选器、数据输出多路复选器、异步信号输出多路复选器、异步计算控制模块、异步信号生成模块以及计算多路复选器的输入端相连。
本发明具有以下技术效果:
1.提高性能:采用数据驱动异步通信机制,不需要用最长运算周期来统一时钟周期,极大地提高了运算效率。
2.降低功耗:采用数据驱动异步通信机制,较之同步通信机制功耗大大降低。
附图说明
图1是采用异步通信机制的可重构单元结构框图;
图2是异步计算模块的结构框图;
图3是预充电电路图;
图4是以差动级联逻辑实现1位全加器的计算电路图;
具体实施方式
下面根据附图详细说明本发明。
参照图1,本发明的异步通信可重构计算单元包括数据输入路由模块1、异步计算控制模块2、异步计算模块3、数据输出路由模块4、异步信号生成模块5、异步信号输出路由模块6和配置模块7,所说的数据输入路由模块1内具有三个数据输入多路复选器8,数据输出路由模块4具有八个数据输出多路复选器9,异步信号输出路由模块6内具有八个异步信号输出多路复选器10,异步计算模块3包括一个预充电电路11、计算电路12以及两个用于计算多路复选器13(如图2所示),其中,计算电路12的个数与异步可重构计算单元支持的计算功能数目相对应,例如要支持与、与非、或、或非、异或、比较、判零、判一、多路复选、动态路由、移位、全加、全减等13种运算功能,则需要13个计算电路12。数据输入路由模块1中的每个数据输入多路复选器8的输入端与输入可重构计算单元的八个数据信号ed1,ed2,sd1,sd2,wd1,wd2,nd1,nd2相连,输出端分别与异步计算模块3中的预充电电路11以及计算电路12的输入端相连,异步计算控制模块2的输入端与输入可重构计算单元的八个异步信号ea1,ea2,sa1,sa2,wa1,wa2,na1,na2相连,输出端和异步计算模块3中的预充电电路11的另一输入端相连,预充电电路11的输出端pre和计算电路12的另一输入端相连,计算电路12的一个输出端fout和第一计算多路复选器13的输入端相连,计算电路12的另一个输出端cout和第二计算多路复选器13的输入端相连,两个计算多路复选器13的输出端dout1,dout2分别和数据输出路由模块4中的八个数据输出多路复选器9以及异步信号生成模块5的输入端相连,数据输出路由模块4中的第一数据输出多路复选器9的输入端和可重构计算单元的第三、第五、第七数据信号sd1,wd1,nd1相连,第二数据输出多路复选器9的输入端和可重构计算单元的第四、第六、第八数据信号sd2,wd2,nd2相连,第三数据输出多路复选器9的输入端和可重构计算单元的第一、第五、第七数据信号ed1,wd1,nd1相连,第四数据输出多路复选器9的输入端和可重构计算单元的第二、第六、第八数据信号ed2,wd2,nd2相连,第五数据输出多路复选器9的输入端和可重构计算单元的第一、第三、第七数据信号ed1,sd1,nd1相连,第六数据输出多路复选器9的输入端和可重构计算单元的第二、第四、第八数据信号ed2,sd2,nd2相连,第七数据输出多路复选器9的输入端和可重构计算单元的第一、第三、第五数据信号ed1,sd1,wd1相连,第八数据输出多路复选器9的输入端和可重构计算单元的第二、第四、第六数据信号ed2,sd2,wd2相连,八个数据输出多路复选器9的输出端为可重构计算单元的输出数据信号端,异步信号生成模块5的输出端分别与异步信号输出路由模块6中的八个异步信号输出多路复选器10的输入端相连,异步信号输出路由模块6中的第一、第三、第五、第七异步信号输出多路复选器10的输入端均与输入可重构计算单元的第一、第三、第五、第七异步信号ea1,sa1,wa1,na1相连,第二、第四、第六、第八异步信号输出多路复选器10的输入端均与输入可重构计算单元的第二、第四、第六、第八异步信号ea2,sa2,wa2,na2相连,八个异步信号输出多路复选器10的输出端为可重构计算单元的输出异步信号端,用于存放单元配置信息的配置模块7的输入端连接输入配置数据,输出端分别和可重构计算单元中的数据输入多路复选器8、数据输出多路复选器9、异步信号输出多路复选器10、异步计算控制模块2、异步信号生成模块5以及计算多路复选器13的输入端相连。这里,配置模块7可由基于双端口D触发器的寄存器堆文件构成。
由于该异步可重构计算单元支持8个输入数据信号,因此,数据输入多路复选器8可采用8选1多路复选器实现。
由于每个数据输出多路复选器9分别与3个异步可重构计算单元输入数据信号以及计算多路复选器13的2个输出数据信号相连,因此数据输出多路复选器9可采用5选1多路复选器实现。
由于每个异步信号输出多路复选器10的输入端分别和4个异步可重构计算单元输入异步信号以及异步信号生成模块5的输出信号aout相连,因此异步信号输出多路复选器10可采用5选1多路复选器实现。
本发明中的预充电电路11如图3所示,可由七个pmos管P、七个nmos管N以及一个反相器T构成。图中,start信号端为与异步计算控制模块2的输出端相连端点,ainh,binh,cinh信号端为与三个数据输入多路复选器8的输出端相连的端点。ainl,binl,cinl信号分别为ainh,binh,cinh信号的取反。
图4是以1位全加器为例的计算电路图,它由两个差动级联逻辑电路构成,其中第一个差动级联逻辑电路用于产生结果位(fout),其包括两个pmos管P,四个反向器T以及21个nmos管N;第二个差动级联逻辑电路用于产生进位(cout),其包括两个pmos管P,四个反向器T以及11个nmos管N。其中,每个差动级联逻辑电路中的四个反向器T都分为两组,头尾相接,起到缓冲暂存的作用。
本发明的异步通信可重构计算单元工作过程如下:
数据输入路由模块1中的三个8选1数据输入多路复选器8从可重构计算单元的8个输入数据信号ed1,ed2,sd1,sd2,wd1,wd2,nd1,nd2中选择3个ain,bin,cin作为异步计算模块3的3个输入数据。异步计算控制模块2通过对可重构计算单元的8个输入异步信号ea1,ea2,sa1,sa2,wa1,wa2,na1,na2进行判断,看其是否有效,从而产生异步计算启动信号start输出到异步计算模块3,用于控制异步计算的工作状态。预充电电路11中,ainh,ainl,binh,binl,cinh,cinl为3组互补输入信号。这3组互补输入信号用于通过2位编码来标志输入数据——当互补输入信号为“01”或者“10”时,代表有效的“0”或者“1”信号,可以用以计算;“00”则代表无效信号,不进行计算;“11”为非法信号,不应在计算中出现。当且仅当3组互补输入数据均为有效,且异步计算控制模块2的输出的计算启动信号start有效时,预充电电路11的输出充电信号pre才为有效,即该充电信号将对计算电路12进行充电,使其进入计算状态。
以一位全加器为例,当充电信号有效时,计算电路12中的两个差动级联逻辑电路中的四个pmos管P均导通,两个接地的nmos管N均关闭,电路开始进行充电,进入待计算状态。第一个差动级联逻辑电路中的其余20个nmos管N用于实现一位全加器的结果位逻辑,分别产生2个互补的结果位(fouth,foutl),其中有效结果位为fouth;第二个差动级联逻辑电路中的其余10个nmos管N用于实现一位全加器的结果位逻辑,分别产生2个互补的结果位(couth,coutl),其中有效结果位为couth。计算电路12的两个输出fout,cout通过反向器缓冲暂存,分别输出到第一、第二计算多路复选器13。第一、第二计算多路复选器13从计算电路12输出信号中选择出所需的两个计算结果信号dout1,dout2,分别输出到异步信号生成模块5以及八个数据输出多路复选器9。八个数据输出多路复选器9对计算结果dout1,dout2以及可重构计算单元输入数据进行选择,生成该可重构计算单元的八个输出数据。异步信号生成模块5通过对计算结果进行处理,判断当前计算是否完成,从而产生用于标志该可重构计算单元状态的异步应答信号aout输出到八个异步信号输出多路复选器10。八个异步信号输出多路复选器10对异步信号生成模块5产生的异步应答信号以及可重构计算单元的输入异步信号进行选择,生成该异步可重构计算单元的八个输出异步信号。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
Claims (8)
1.一种采用异步通信机制的可重构计算单元,其特征是,它包括数据输入路由模块(1)、异步计算控制模块(2)、异步计算模块(3)、数据输出路由模块(4)、异步信号生成模块(5)、异步信号输出路由模块(6)和配置模块(7),所说的数据输入路由模块(1)内具有三个数据输入多路复选器(8),数据输出路由模块(4)具有八个数据输出多路复选器(9),异步信号输出路由模块(6)内具有八个异步信号输出多路复选器(10),异步计算模块(3)包括计算电路(12)、一个预充电电路(11)以及两个用于计算多路复选器(13),数据输入路由模块(1)中的每个数据输入多路复选器(8)的输入端与输入可重构计算单元的八个数据信号ed1,ed2,sd1,sd2,wd1,wd2,nd1,nd2相连,输出端分别与异步计算模块(3)中的预充电电路(11)以及计算电路(12)的输入端相连,异步计算控制模块(2)的输入端与输入可重构计算单元的八个异步信号ea1,ea2,sa1,sa2,wa1,wa2,na1,na2相连,输出端和异步计算模块(3)中的预充电电路(11)的另一输入端相连,预充电电路(11)的输出端pre和计算电路(12)的另一输入端相连,计算电路(12)的一个输出端和第一计算多路复选器(13)的输入端相连,计算电路(12)的另一个输出端和第二计算多路复选器(13)的输入端相连,两个计算多路复选器(13)的输出端dout1,dout2分别和数据输出路由模块(4)中的八个数据输出多路复选器(9)以及异步信号生成模块(5)的输入端相连,数据输出路由模块(4)中的第一数据输出多路复选器(9)的输入端和可重构计算单元的第三、第五、第七数据信号sd1,wd1,nd1相连,第二数据输出多路复选器(9)的输入端和可重构计算单元的第四、第六、第八数据信号sd2,wd2,nd2相连,第三数据输出多路复选器(9)的输入端和可重构计算单元的第一、第五、第七数据信号ed1,wd1,nd1相连,第四数据输出多路复选器(9)的输入端和可重构计算单元的第二、第六、第八数据信号ed2,wd2,nd2相连,第五数据输出多路复选器(9)的输入端和可重构计算单元的第一、第三、第七数据信号ed1,sd1,nd1相连,第六数据输出多路复选器(9)的输入端和可重构计算单元的第二、第四、第八数据信号ed2,sd2,nd2相连,第七数据输出多路复选器(9)的输入端和可重构计算单元的第一、第三、第五数据信号ed1,sd1,wd1相连,第八数据输出多路复选器(9)的输入端和可重构计算单元的第二、第四、第六数据信号ed2,sd2,wd2相连,八个数据输出多路复选器(9)的输出端为可重构计算单元的输出数据信号端,异步信号生成模块(5)的输出端分别与异步信号输出路由模块(6)中的八个异步信号输出多路复选器(10)的输入端相连,异步信号输出路由模块(6)中的第一、第三、第五、第七异步信号输出多路复选器(10)的输入端均与输入可重构计算单元的第一、第三、第五、第七异步信号ea1,sa1,wa1,na1相连,第二、第四、第六、第八异步信号输出多路复选器(10)的输入端均与输入可重构计算单元的第二、第四、第六、第八异步信号ea2,sa2,wa2,na2相连,八个异步信号输出多路复选器(10)的输出端为可重构计算单元的输出异步信号端,用于存放单元配置信息的配置模块(7)的输入端连接输入配置数据,输出端分别和可重构计算单元中的数据输入多路复选器(8)、数据输出多路复选器(9)、异步信号输出多路复选器(10)、异步计算控制模块(2)、异步信号生成模块(5)以及计算多路复选器(13)的输入端相连。
2.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的配置模块(7)由基于双端口D触发器的寄存器堆文件构成。
3.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的数据输入多路复选器(8)是8选1多路复选器。
4.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的数据输出多路复选器(9)是5选1多路复选器。
5.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的异步信号输出多路复选器(10)是5选1多路复选器。
6.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的预充电电路(11)由七个pmos管、七个nmos管以及一个反相器构成。
7.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的计算电路(12)是差动级联逻辑运算电路。
8.根据权利要求1所述的采用异步通信机制的可重构计算单元,其特征在于所说的计算电路(12)的个数与异步可重构计算单元支持的计算功能数目相对应。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510061777XA CN100346335C (zh) | 2005-12-02 | 2005-12-02 | 一种采用异步通信机制的可重构计算单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510061777XA CN100346335C (zh) | 2005-12-02 | 2005-12-02 | 一种采用异步通信机制的可重构计算单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1776661A CN1776661A (zh) | 2006-05-24 |
CN100346335C true CN100346335C (zh) | 2007-10-31 |
Family
ID=36766168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510061777XA Expired - Fee Related CN100346335C (zh) | 2005-12-02 | 2005-12-02 | 一种采用异步通信机制的可重构计算单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100346335C (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001445A1 (en) * | 2002-07-01 | 2004-01-01 | Elixent, Ltd | Loosely-biased heterogeneous reconfigurable arrays |
US20040225980A1 (en) * | 2003-02-14 | 2004-11-11 | Stmicroelectronics S.R.L. | Architecture for a connection block in reconfigurable gate arrays |
CN2849838Y (zh) * | 2005-12-02 | 2006-12-20 | 浙江大学 | 采用异步通信机制的可重构计算单元 |
-
2005
- 2005-12-02 CN CNB200510061777XA patent/CN100346335C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001445A1 (en) * | 2002-07-01 | 2004-01-01 | Elixent, Ltd | Loosely-biased heterogeneous reconfigurable arrays |
US20040225980A1 (en) * | 2003-02-14 | 2004-11-11 | Stmicroelectronics S.R.L. | Architecture for a connection block in reconfigurable gate arrays |
CN2849838Y (zh) * | 2005-12-02 | 2006-12-20 | 浙江大学 | 采用异步通信机制的可重构计算单元 |
Also Published As
Publication number | Publication date |
---|---|
CN1776661A (zh) | 2006-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102541809B (zh) | 一种动态可重构处理器 | |
CN101782893B (zh) | 可重构数据处理平台 | |
KR950033952A (ko) | 반도체 집적회로 | |
CN101685385A (zh) | 一种复数乘法器 | |
CN105719599A (zh) | 移位寄存器电路单元、栅极驱动电路和显示装置 | |
CN102812433A (zh) | 支持四进制加法器的查找表结构 | |
CN2849838Y (zh) | 采用异步通信机制的可重构计算单元 | |
CN100346335C (zh) | 一种采用异步通信机制的可重构计算单元 | |
CN111047034A (zh) | 一种基于乘加器单元的现场可编程神经网络阵列 | |
CN1564125A (zh) | 一种基于cordic单元的阵列式可重构dsp引擎芯片结构 | |
CN105575328A (zh) | 移位寄存器单元、栅极驱动电路和显示装置 | |
CN103257842B (zh) | 一种加法进位信息输出的方法和一种加法器 | |
CN2854697Y (zh) | 面向计算的通用型可重构计算阵列 | |
CN100419734C (zh) | 一种面向计算的通用型可重构计算阵列装置 | |
Ye et al. | Architecture of datapath-oriented coarse-grain logic and routing for FPGAs | |
CN1280892C (zh) | 可编程逻辑器件结构 | |
Yegnanarayanan et al. | On some graph operations and related applications | |
CN104750659A (zh) | 一种基于自动布线互连网络的粗粒度可重构阵列电路 | |
CN203276274U (zh) | 基于寄存器窗口互相重叠的多核间数据交换装置 | |
Sourabh et al. | Design of a Reversible Full Adder Using Quantum Cellular Automata | |
JP5918568B2 (ja) | 論理モジュール | |
RU2808782C1 (ru) | Самосинхронный одноразрядный четверичный сумматор с единичным спейсером | |
Devlin et al. | A low power and high throughput self synchronous FPGA using 65 nm CMOS with throughput optimization by pipeline alignment | |
CN100449553C (zh) | 在集成电路芯片上实现信号处理功能的方法及逻辑模块 | |
Alia et al. | On the lower bound to the VLSI complexity of number conversion from weighted to residue representation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071031 Termination date: 20111202 |