CN101320364A - 一种阵列处理器结构 - Google Patents
一种阵列处理器结构 Download PDFInfo
- Publication number
- CN101320364A CN101320364A CNA2008100681271A CN200810068127A CN101320364A CN 101320364 A CN101320364 A CN 101320364A CN A2008100681271 A CNA2008100681271 A CN A2008100681271A CN 200810068127 A CN200810068127 A CN 200810068127A CN 101320364 A CN101320364 A CN 101320364A
- Authority
- CN
- China
- Prior art keywords
- processor
- unit
- array
- routing unit
- routing
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了一种阵列处理器结构,包括构成处理器阵列的复数个处理器单元,相邻的处理器单元通过互联总线相连,还包括至少一个路由单元,每个路由单元分别通过互联总线至少连接两个所述处理器单元;路由单元接收源处理器单元传送的数据包,按照数据包中附带的目的处理器单元的寻址信息,将数据包中的数据体通过传输路径转发到目的处理器单元。本发明能够通过配置处理器和路由单元的规模和功能,支撑不同算法的ASIC芯片实现。
Description
技术领域
本发明属于集成电路设计领域,特别涉及一种的阵列处理器结构。
背景技术
当前的集成系统芯片,主要由三部分构成:承载操作系统的一个或多个CPU,若干个标准的I/O接口,支撑特定算法处理的ASIC(ApplicationSpecific Integrated Circuit,即专用集成电路)。芯片设计的复杂性和功能的差异性主要由ASIC决定,因为它的设计不仅会影响整个芯片的体系架构,同时一定会影响设计时间和费用。目前的ASIC设计主要是针对某种算法,设计相应的ASIC电路,或者采用一个或多个DSP(digital signalprocessor,即数字信号处理器)完成算法的运算功能。以DSP实现的ASIC结构为例,特定算法ASIC电路可以包含一个或者几个功能强大的DSP,各DSP之间具有确定的互联关系,协作执行任务程序。但该方案由于DSP的功能过于强大,导致DSP的数目不好确定,一个DSP可能满足不了设计要求,两个或多个DSP则可能存在浪费,同时根据DSP数目的不同还要修正若干设计内容,以满足不同算法应用的差异性,这样在设计时需要改变硬件的整体结构,不易于快速实现,无法满足产品快速上市的需求,需要多次的研发流片导致较长的设计周期,因而设计研发费用高。ASIC设计从过去0.5um以上工艺的全定制阶段,进入今天0.35-0.09um的标准单元自动综合阶段,未来ASIC设计将进入90-45nm阶段,如何提升ASIC设计的效率和效果,是亟待解决的问题。
发明内容
本发明的主要目的就是解决现有技术中的问题,提供一种阵列处理器结构,该结构中的处理器单元的功能相对简单,只有几种可以选择的配置,该结构中的路由单元支撑处理器单元之间的数据通信,利用该阵列处理器结构能方便地实现阵列规模和功能的可配置性,从而灵活适应不同算法之间的差异并大大提高集成系统芯片的设计效率。
为实现上述目的,本发明采用以下技术方案:
一种阵列处理器结构,包括构成处理器阵列的复数个处理器单元,相邻的所述处理器单元通过互联总线相连,还包括至少一个路由单元,所述每个路由单元分别通过互联总线至少连接两个所述处理器单元;所述路由单元接收源处理器单元传送的数据包,按照所述数据包中附带的目的处理器单元的寻址信息,将所述数据包中的数据体通过传输路径转发到目的处理器单元。
在一种实施例中,相邻的所述路由单元通过互联总线相连构成阵列结构。
所述处理器阵列为按行与列排布的二维网格结构,所述路由阵列也是按行与列排布的二维网格结构,所述每个处理器单元至少连接一个路由单元。
所述处理器阵列的每个网格分配有一个路由单元,该路由单元与所述网格内的四个处理器单元相连。
还包括向所述处理器阵列提供程序与指令加载的输入单元,所述输入单元与所述路由阵列相连,所述处理器单元和路由单元设置有加载引导模块,其预装有用于以数据帧的形式加载程序和数据的引导程序。
所述处理器单元向所述路由单元传送的数据包以及所述路由单元之间传送的数据包包含有源处理器单元的标识信息和目的处理器单元的寻址信息,所述路由单元向所述处理器单元传送的数据包包含有源处理器单元的标识信息。
所述处理器单元和/或所述路由单元内部具有执行停止自身运行的功能的停止模块,以及定时触发的唤醒模块或利用外部输入信息触发的唤醒模块。
所述处理器单元之间、所述路由单元之间以及所述处理器单元和所述路由单元之间对应的连接端口为异步串行输入/输出端口,所述数据包由异步串行数据帧组成,所述异步串行数据帧包含用于使数据接受方同步于数据发送方的信息。
所述处理器单元和所述路由单元内部具有时钟产生模块,用于提供独立的时钟信号。
所述处理器单元为数字信号处理器。
本发明有益的技术效果是:
1、由于在阵列处理器结构中设置了路由单元,路由单元通过互联总线至少连接两个处理器单元,增加了传输路径,数据传输不再局限于处理器单元之间进行传输,源处理器单元传出的数据可通过路由单元进行路径选择,直接或间接地传送到目的处理器单元,使数据传输更加灵活、快速。并且处理器单元主要承载运算功能,而路由单元则主要承载处理器单元之间的数据传输功能,阵列结构中除了已经设计好的少数几类处理器单元和路由单元外,没有其他需要重新设计的电路,因此,针对不同算法,只需要配置每个处理器单元、路由单元的互联关系,确定阵列的规模,编写软件即可实现产品,易于快速实现,设计效率高,设计周期短。
2、设计产品异性除软件差异外主要体现在阵列处理器结构的规模,以及处理器单元的功能配置和路由单元的互联关系。本发明不需要改变硬件的整体结构,通过调整路由单元与处理器单元的互联关系,就可以很方便地对阵列处理器结构的规模和功能进行配置,进而能灵活地适应各种不同算法,因此能够在实现产品快速上市的同时满足多种广泛应用需求。
3、相对于现有的ASIC实现,由于本发明实现了一个可配置规模和功能的系列化的体系架构,能支撑不同特定算法处理的ASIC实现,提升了设计效率和效果,故不需要在每次设计ASIC时进行多次的研发流片,在满足产品差异性和上市时间约束的同时也大大降低了设计研发的费用。
附图说明
图1为本发明阵列处理器结构一种实施例的结构示意图;
图2为图1的阵列处理器结构的局部放大图;
图3为本发明一种实施例中的路由单元的功能框图;
图4为本发明一种实施例中的DSP的功能框图;
图5为本发明一种实施例的指令和数据加载通道示意图;
图6为本发明一种实施例的输入输出IO通道示意图。
具体实施方式
本发明的特征及优点将通过实施例结合附图进行详细说明。
如图1所示,阵列处理器结构包括多个处理器单元和多个路由单元(图中以R标识),本实施例中的处理器单元采用DSP(图中以D标识)。各DSP按行与列依次通过互联总线邻接而排布成的方形网格结构的DSP阵列,各路由单元R也按行与列依次通过互联总线邻接而排布成的方形网格结构的路由阵列,其行与列与DSP阵列的行与列呈相间分布。在一种实施例中,每个DSP具有五个输入/输出端口,非阵列边界上的DSP的输入/输出端口为五个,其中四个连接相邻的四个DSP的对应端口,剩下的一个连接一个相邻的路由单元R的对应端口。每个路由单元R具有八个输入/输出端口,非阵列边界上的路由单元R的输入/输出端口为八个,其中四个连接相邻的四个DSP的对应端口,另外四个连接相邻的四个路由单元R的对应端口。阵列边界条件下的各单元与其它单元的连接相应减少,而其上设置的端口数目也可根据实际需求减少。
根据实际需要,每个DSP也可以具有其他数目的输入/输出端口,与相邻的DSP和路由单元R相连,例如四个或六个。同理,路由单元R也可以具有其他数目的输入/输出端口与相邻的DSP或其他路由单元相连。例如六个。
路由单元接收源处理器单元传送的数据包,数据包包括包头和数据体,其中包头中附带有寻址信息,路由单元按照数据包中附带的寻址信息,将数据包中的数据体通过传输路径转发到目的处理器单元。处理器单元向路由单元传送的数据包以及路由单元之间传送的数据包的包头中包含有源处理器单元的标识信息和目的处理器单元的寻址信息,路由单元向处理器单元传送的数据包的包头中包含有源处理器单元的标识信息。如果路由单元和目的处理器单元直接相连,路由单元可直接将数据包从源处理器单元转发到目的处理器单元。如果路由单元和目的处理器单元不直接相连,而是通过其他路由单元相连,路由单元可选择合适的路径,通过其他路由单元将数据包转发到目的处理器单元。
通过以互联总线与DSP阵列相连,路由单元R为DSP之间的数据传输提供通信路由,增加了数据传输路径,数据传输不再局限于处理器单元之间进行传输,源处理器单元传出的数据可通过路由单元进行路径选择,直接或间接地传送到目的处理器单元,使数据传输更加灵活、快速。
图2展示了阵列处理器结构的局部放大图,其中DSP和路由单元R的输入接口、输出接口是独立的,此外也可以输入输出接口合一的方案实现互联。
阵列处理器结构中,DSP主要承载运算功能,路由单元R则主要承载DSP之间的数据传输功能。路由单元可以采用状态机控制接口之间的互联网络实现数据帧的直接转发,也可以采用类似处理器架构的存储程序控制的方式实现数据帧的存储转发。
通信方式上,本实施例的阵列处理器结构优选采用异步串行通信,此时DSP和路由单元R上的输入/输出端口为异步串行输入/输出端口,DSP阵列和路由阵列中的各单元利用异步串行输入/输出端口通过互联总线与其它单元进行异步通信。
针对异步串行通信,各DSP、路由单元之间传输数据包采用数据帧的形式,所有数据帧均包括帧头和帧体,帧体主要是所要传递的数据;帧头根据DSP和路由单元R之间的连接关系,至少分为如下几种:
1)相邻DSP之间传递的数据帧
其帧头包括一定长度的引导码,一方面用于激活目的DSP(如果它进入休眠状态的话),另一方面用于使目的DSP产生接收的同步信息,此外,帧头还包括指示帧体数据长度的信息。
2)DSP向路由单元传递的数据帧
其帧头除了包括相邻DSP之间传递的数据帧的帧头信息外,还包括源DSP的标识信息和目的DSP的标识信息(寻址信息),旨在使路由单元能够据以识别和规划路径并传递到目的DSP;
进一步地,通过目的DSP的标识信息,数据帧可以采用广播和分组广播的方式进行传递。
3)路由单元向路由单元传递的数据帧
由于路由单元本身不产生数据帧,路由单元向路由单元传递的数据帧,实质上是源DSP向不相邻的目的DSP传递数据帧所经路径上的路由单元之间的数据帧传递,因此,帧头也包括源DSP和目的DSP的标识信息,使接收数据帧的路由单元能够根据目的DSP的标识信息,继续向前传递;
4)路由单元向DSP传递的数据帧
从路由单元接收数据帧的DSP均为目的DSP,数据帧的帧头除了包括相邻DSP之间传递的数据帧的帧头信息外,可以只包括源DSP的标识信息。
本实施例中,从源DSP到目的DSP的绝对地址信息根据目的DSP的标识信息得到。也可以采用相对地址的方式进行路由选择,此时,相对地址信息即指明所传数据当前所在位置的下一级传输路径的寻址信息。
采用异步串行通信,不仅有利于降低阵列芯片内部的通信和布线复杂性,同时也有利于改善时钟管理和容错管理,还有利于灵活配置阵列的规模支撑不同的算法。
此外,也可以采用同步串行通信方式,此时所传送的数据帧对应地去掉帧中的同步信息。采用其它的同步方式时,具体方案与现有的同步传输方式相同。
进一步地,每个DSP和每个路由单元内部均设置有时钟产生模块,提供独立时钟信号,这样,整个阵列可以采用全局异步、局部同步的时钟模式运行,即不同的DSP及路由单元使用不同的时钟,以异步方式运行,而在各DSP和路由单元内部使用同一时钟,以同步方式运行,这样的时钟模式可以使阵列中各个单元所用的时钟与自身工作的需要相适应,从而降低功耗。另一实施例中,也可以将一个路由单元和它连接的几个DSP共用一个时钟。
如图3所示,路由单元包括独立的通信控制器以及输入输出接口,输入输出接口为八个异步串行输入输出接口(阵列边界条件下接口数目根据实际情况有所变化),其中四个接口分别接至另外四个DSP的相应接口,另外四个接口分别接至另外四个路由单元Router的相应接口。通信控制器优选又包括DSP通信控制器和路由单元控制器,分别用于对相应的异步串行接口进行通信管理。路由单元主要功能是按照帧头包含的目的DSP标识,选择合适的路径将数据帧向目的DSP转发,包括异步串行输入输出接口单元、帧头目的DSP标识解析、路由选择与转发控制等模块。
如图4所示,DSP包括DSP核、独立的通信控制器和输入输出接口,DSP核负责数据处理与控制,输入输出接口为五个异步串行输入输出端口(阵列边界条件下端口数目根据实际情况有所变化),其中四个端口分别接至另外四个DSP,另一个端口接至一个路由单元Router。通信控制器优选又包括DSP通信控制器和路由单元Router通信控制器,分别用于对相应的异步串行接口进行通信管理。进一步地,阵列处理器结构还设置有向DSP提供程序与指令加载的输入单元,如图5所示,加载控制器作为输入单元,路由单元按列与加载控制器的输出端相连接,首先是通过加载控制器将程序或数据逐级加载到路由单元中,路由单元再根据地址将程序或数据加载到与之相连的四个DSP中。本实施例利用异步串行接口采用数据帧的形式对阵列中的各个DSP进行加载。图中只示出了路由阵列中的加载通道,详细链接关系被省略没有画出,具体说明如下:
(1)每级路由单元根据接收到数据帧的地址信息将其转发到下一级路由单元或传递到本级的DSP中。
(2)DSP首先启动自身的加载引导程序,该程序的功能是接收路由单元发来的加载数据帧,并根据帧头标志位信息(程序加载或数据加载),将数据帧搬移到指令寄存器或数据寄存器中,完成程序或数据的加载。
此外,也可以选择路由阵列的行的方式传送数据到路由单元。
图6展示了阵列处理器结构处理数据的输入输出,数据可以通过IO通道直接进入DSP的异步串行接口。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。例如数据包还可以是符合要求的其他结构形式,处理器单元还可以是其他处理单元,处理器单元和路由单元所分别构成的阵列结构还可以是三维的网格结构。
Claims (10)
1.一种阵列处理器结构,包括构成处理器阵列的复数个处理器单元,相邻的所述处理器单元通过互联总线相连,其特征在于,还包括至少一个路由单元,所述每个路由单元分别通过互联总线至少连接两个所述处理器单元;所述路由单元接收源处理器单元传送的数据包,按照所述数据包中附带的目的处理器单元的寻址信息,将所述数据包中的数据体通过传输路径转发到目的处理器单元。
2.如权利要求1所述的阵列处理器结构,其特征在于,相邻的所述路由单元通过互联总线相连构成阵列结构。
3.如权利要求2所述的阵列处理器结构,其特征在于,所述处理器阵列为按行与列排布的二维网格结构,所述路由阵列也是按行与列排布的二维网格结构,所述每个处理器单元至少连接一个路由单元。
4.如权利要求3所述的阵列处理器结构,其特征在于,所述处理器阵列的每个网格分配有一个路由单元,该路由单元与所述网格内的四个处理器单元相连。
5.如权利要求2所述的阵列处理器结构,其特征在于,还包括向所述处理器阵列提供程序与指令加载的输入单元,所述输入单元与所述路由阵列相连,所述处理器单元和路由单元设置有加载引导模块,其预装有用于以数据帧的形式加载程序和数据的引导程序。
6.如权利要求2所述的阵列处理器结构,其特征在于,所述处理器单元向所述路由单元传送的数据包以及所述路由单元之间传送的数据包包含有源处理器单元的标识信息和目的处理器单元的寻址信息,所述路由单元向所述处理器单元传送的数据包包含有源处理器单元的标识信息。
7.如权利要求1所述的阵列处理器结构,其特征在于,所述处理器单元和/或所述路由单元内部具有执行停止自身运行的功能的停止模块,以及定时触发的唤醒模块或利用外部输入信息触发的唤醒模块。
8.如权利要求1至7任意一项所述的阵列处理器结构,其特征在于,所述处理器单元之间、所述路由单元之间以及所述处理器单元和所述路由单元之间对应的连接端口为异步串行输入/输出端口,所述数据包由异步串行数据帧组成,所述异步串行数据帧包含用于使数据接受方同步于数据发送方的信息。
9.如权利要求1至7任意一项所述的阵列处理器结构,其特征在于,所述处理器单元和所述路由单元内部具有时钟产生模块,用于提供独立的时钟信号。
10.如权利要求1至7任意一项所述的阵列处理器结构,其特征在于,所述处理器单元为数字信号处理器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100681271A CN101320364A (zh) | 2008-06-27 | 2008-06-27 | 一种阵列处理器结构 |
PCT/CN2008/073179 WO2009155762A1 (zh) | 2008-06-27 | 2008-11-24 | 一种阵列处理器结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100681271A CN101320364A (zh) | 2008-06-27 | 2008-06-27 | 一种阵列处理器结构 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101320364A true CN101320364A (zh) | 2008-12-10 |
Family
ID=40180421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008100681271A Pending CN101320364A (zh) | 2008-06-27 | 2008-06-27 | 一种阵列处理器结构 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101320364A (zh) |
WO (1) | WO2009155762A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009155762A1 (zh) * | 2008-06-27 | 2009-12-30 | 北京大学深圳研究生院 | 一种阵列处理器结构 |
CN101882127A (zh) * | 2010-06-02 | 2010-11-10 | 湖南大学 | 一种多核心处理器 |
CN102122275A (zh) * | 2010-01-08 | 2011-07-13 | 上海芯豪微电子有限公司 | 一种可配置处理器 |
CN101706767B (zh) * | 2009-08-13 | 2012-08-08 | 北京大学深圳研究生院 | 一种阵列处理器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003256699A1 (en) * | 2002-07-23 | 2004-02-09 | Gatechange Technologies, Inc. | Self-configuring processing element |
GB2397668B (en) * | 2003-01-27 | 2005-12-07 | Picochip Designs Ltd | Processor array |
US20070165547A1 (en) * | 2003-09-09 | 2007-07-19 | Koninklijke Philips Electronics N.V. | Integrated data processing circuit with a plurality of programmable processors |
CN101320364A (zh) * | 2008-06-27 | 2008-12-10 | 北京大学深圳研究生院 | 一种阵列处理器结构 |
-
2008
- 2008-06-27 CN CNA2008100681271A patent/CN101320364A/zh active Pending
- 2008-11-24 WO PCT/CN2008/073179 patent/WO2009155762A1/zh active Application Filing
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009155762A1 (zh) * | 2008-06-27 | 2009-12-30 | 北京大学深圳研究生院 | 一种阵列处理器结构 |
CN101706767B (zh) * | 2009-08-13 | 2012-08-08 | 北京大学深圳研究生院 | 一种阵列处理器 |
CN102122275A (zh) * | 2010-01-08 | 2011-07-13 | 上海芯豪微电子有限公司 | 一种可配置处理器 |
WO2011082690A1 (en) * | 2010-01-08 | 2011-07-14 | Shanghai Xin Hao Micro Electronics Co. Ltd. | Reconfigurable processing system and method |
CN101882127A (zh) * | 2010-06-02 | 2010-11-10 | 湖南大学 | 一种多核心处理器 |
CN101882127B (zh) * | 2010-06-02 | 2011-11-09 | 湖南大学 | 一种多核心处理器 |
Also Published As
Publication number | Publication date |
---|---|
WO2009155762A1 (zh) | 2009-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103198043B (zh) | 一种改进的AHB to APB总线桥及其控制方法 | |
CN101383712B (zh) | 一种片上网络的路由节点微结构 | |
CN104158738A (zh) | 一种低缓冲区片上网络路由器及路由方法 | |
US20120072699A1 (en) | Logic cell array and bus system | |
CN102521201A (zh) | 多核数字信号处理器片上系统及数据传输方法 | |
CN103971325A (zh) | 可动态配置的流水线预处理器 | |
CN105247817A (zh) | 用于源同步电路交换片上网络(NoC)的方法、装置和系统 | |
CN101180596A (zh) | 一种互连系统 | |
CN101320364A (zh) | 一种阵列处理器结构 | |
CN105207957A (zh) | 一种片上网络多核架构 | |
CN202077061U (zh) | 一种多端口多网络协议转换器 | |
CN102063408B (zh) | 一种多核处理器片内数据总线 | |
CN102111327B (zh) | 信元调度方法和系统 | |
CN103257946A (zh) | 一种紧耦合多控存储系统控制器之间的高速互联方法 | |
CN105095150B (zh) | 一种支持片上网络的网络接口 | |
CN102158435A (zh) | 一种支持虚连接的基于can总线和以太网实时嵌入式网关 | |
CN103136141A (zh) | 一种多控制器间的高速互联方法 | |
CN110347622A (zh) | 一种多接口协议双向转换装置及实现方法 | |
US6694385B1 (en) | Configuration bus reconfigurable/reprogrammable interface for expanded direct memory access processor | |
US20070124607A1 (en) | System and method for semi-automatic power control in component architecture systems | |
CN105045566A (zh) | 一种嵌入式并行计算系统及采用其的并行计算方法 | |
CN105229621A (zh) | 多模式代理器 | |
CN108449287A (zh) | Fc交换机芯片体系架构 | |
CN101655825B (zh) | 一种使用fpga实现lpc-usb双向通信的装置及lpc-usb和usb-lpc数据转换方法 | |
CN102546336A (zh) | 一种基于VersaPHY的IEEE-1394b光总线协议转换器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20081210 |