管线化可配置处理器制造技术

技术编号:13491634 阅读:39 留言:0更新日期:2016-08-07 03:02
一种能够同时处理多个线程的可配置处理电路,该电路包括:线程数据存储器;多个可配置执行单元;可配置路由网,用于将所述线程数据存储器中的位置连接至所述执行单元;配置数据存储器,用于存储配置实例,每个配置实例定义了所述路由网的配置和所述多个执行单元中的一者或多者的配置;管线,该管线形成自所述执行单元、所述路由网和所述线程数据存储器,该管线包括多个管线部分,该多个管线部分被配置以使得每个时钟周期中每个线程从一个管线部分传播到下一个管线部分;所述电路被配置为:(i)将每个线程与配置实例相关联;(ii)针对每一时钟周期对所述多个管线部分中的每一者进行配置以符合所述配置实例,该配置实例与将在该时钟周期期间穿过该管线部分的各自的线程相关联。

【技术实现步骤摘要】
【国外来华专利技术】本专利技术涉及用于集成电路的处理器设计。集成电路一般包括大量通过互联电路连接的功能单元。有时,该功能单元和互联电路是可配置的。这意味着,这些功能单元可以被编程以接受特定的操作,并且该互联电路可以被设计为将电路的不同部分连接在一起。一个众所周知的可配置电路的示例是FPGA(现场可编程门阵列),使用者可以对其进行编程以执行广泛、不同的功能。US7,276,933、US8493090和US6282627中描述了另一个可编程集成电路的示例。很多可配置电路都在速度与灵活性间进行平衡。为了获得最大的灵活性,希望能够尽可能多的获得不同功能单元的组合。如果执行单元之间间隔有芯片,这需要很长的互联路径。一般,集成电路的时钟不可能被设置得比在单一时钟周期内执行的最长运算运行更快。由互联造成的延迟经常会超过任何由功能单元造成的延迟,因此,通过长互联路径传输数据花费的时间从根本上限制了整个电路的时钟速度。一种在集成电路中设置时间延迟上限的方法是限制可在一个时钟周期内遍历的所有互联路径的长度。这种方法可以通过在遍历集成电路时管线输送(pipelining)数据实现。US6,940,308中描述了这样一个实施例,其中至互联网络中切换单元的输入具有锁存器(latch)以在路由互联网络时输送数据。这种方法的问题在于,需要修正使用者的设计以包含该所需的锁存器。因此,需要一种更加灵活的处理电路。根据一种实施方式,提供了一种能够同时处理多个线程的可配置处理电路,该电路包括:线程数据存储器;多个可配置执行单元;可配置路由网,用于将所述线程数据存储器连接至所述执行单元;配置数据存储器,用于存储配置实例,每个配置实例定义了所述路由网的配置和所述多个执行单元中的一者或多者的配置;管线,该管线形成自所述执行单元、所述路由网和所述线程数据存储器,该管线包括多个管线部分,该多个管线部分被配置以使得每个时钟周期中每个线程从一个管线部分传播到下一个管线部分;所述电路被配置为:(i)将每个线程与配置实例相关联;(ii)针对每一时钟周期对所述多个管线部分中的每一者进行配置以符合所述配置实例,该配置实例与将在该时钟周期期间穿过该管线部分的各自的线程相关联。该电路可被配置为将每个配置实例与配置标识符相关联。该电路可被配置为将与线程关联的配置标识符通过与该线程相协同的管线进行传播。所述配置数据存储器可包括多个存储单元,并且所述电路可被配置为将所述配置实例划分至所述多个存储单元,以使得每个存储单元存储适用于特定管线部分的部分所述配置实例。每个管线部分可被配置为通过访问存储了适用于该管线部分的所述部分所述配置实例的存储单元来访问配置实例。所述管线的每个部分可被配置为使用与线程关联的配置标识符来访问所述配置数据存储器中与该线程关联的配置实例。所述多个线程可以是独立的。所述电路可被配置为将多个线程与同一配置标识符相关联。所述电路可能够改变与线程关联的配置标识符,从而使线程在一次通过所述电路时与在随后的第二次通过所述电路时能够按照不同的配置。所述电路可被配置为根据所述执行单元中的一者对与所述线程相关联的输入进行操作时所生成的输出,改变所述配置标识符。所述可配置路由网可包括多个网络输入和多个网络输出,并且可被配置为将每个网络输入与网络输出连接起来。所述可配置路由网能够将任意网络输入与任意网络输出连接起来。所述可配置路由网能够将任意网络输入与任意一个或多个所述网络输出连接起来。所述可配置路由网的输出可与所述执行单元的输入相连接。所述可配置路由网可具有多级开关。所述多级开关在每一级可具有一个或多个开关,每个开关具有多个开关输入和多个开关输出,并且能够被配置为将每个开关输入与开关输出连接起来。所述多级开关每一级中的所述开关可具有相同数量的开关输入和开关输出。所述多级开关的一级内所包含的开关与另一级内所包含的开关具有不同数量的开关输入与开关输出。所述管线部分可形成自所述多级开关中的一级或多级内所包含的所述开关。相比于形成自所述多级开关的外部级内所包含的开关的管线部分,形成自所述多级开关的内部级内的开关的管线部分可包含来自所述多级开关的不同数量的级的开关。所述可配置路由网可包括Clos网。所述可配置路由网可包括一个或多个交叉开关。所述可配置路由网可以是无阻塞的。所述可配置路由网可以是完全可配置的。所述可配置路由网可以是部分可配置的。所述电路的每个执行单元可具有专用片上存储单元。所述电路可包括用于检查所述线程数据存储器内存储的数据是否有效的检查单元。所述检查单元可被配置为,如果其识别到无效数据,则当所述执行单元正在对已读取该无效数据的线程进行操作时,暂停所述执行单元向所述线程数据存储器进行写入和/或暂停执行存储单元访问操作。所述电路可被配置为使已读取到无效数据的线程将在其再次通过该电路时被关联到相同的状态。所述线程数据存储器中的位置可以与两个有效比特相关联。所述可配置路由网可包括多比特宽度的数据路径,以承载从所述线程数据存储器中读取的数据。所述电路可包括两个可配置路由网,该可配置路由网中的一者比另一者具有更宽的数据路径。所述电路可包括可分割执行单元。所述电路可包括执行单元,该执行单元被配置为使得其输入是可切换的。所述可配置路由网可被配置为将所述线程数据存储器连接至与执行单元可切换输入和执行单元非可切换输入,所述可配置路由网的最外侧级可包括被配置为将所述线程数据存储器连接至所述执行单元可切换输入的第一数量的开关和被配置为将所述线程数据存储器连接至所述执行单元非可切换输入的第二数量的开关,并且对于每个连接的输入,所述第一数量可以小于所述第二数量。所述电路能够被动态再配置。根据本专利技术第二实施方式,提供了一种在可配置处理电路中同时处理多个线程的方法,该可配置处理电路包括线程数据存储器、多个可配置执行单元、用于将所述线程数据存储器连接至所述执行单元的可配置路由网、以及形成自所述执行单元、所述路由网和所述线程数据存储器构成的管线,该管线具有多个管线部分,该方法包括:将每一线程与配置实例相关联,该配置实例定义了所述路由网的配置和所述多个执行单元中的一者或多者的配置;促使每一线程在每一时钟周期从一个管线部分传播到下一个管线部分;以及针对每一时钟周期对所述多个管线部分中的每一者进行配置,以使得每一管<本文档来自技高网...

【技术保护点】
一种能够同时处理多个线程的可配置处理电路,该电路包括:线程数据存储器;多个可配置执行单元;可配置路由网,用于将所述线程数据存储器连接至所述执行单元;配置数据存储器,用于存储配置实例,每个配置实例定义了所述路由网的配置和所述多个执行单元中的一者或多者的配置;管线,该管线形成自所述执行单元、所述路由网和所述线程数据存储器,该管线包括多个管线部分,该多个管线部分被配置以使得每个时钟周期中每个线程从一个管线部分传播到下一个管线部分;所述电路被配置为:(i)将每个线程与配置实例相关联;(ii)针对每一时钟周期对所述多个管线部分中的每一者进行配置以符合所述配置实例,该配置实例与将在该时钟周期期间穿过该管线部分的各自的线程相关联。

【技术特征摘要】
【国外来华专利技术】2013.10.31 GB 1319279.41.一种能够同时处理多个线程的可配置处理电路,该电路包括:
线程数据存储器;
多个可配置执行单元;
可配置路由网,用于将所述线程数据存储器连接至所述执行单元;
配置数据存储器,用于存储配置实例,每个配置实例定义了所述路由网
的配置和所述多个执行单元中的一者或多者的配置;
管线,该管线形成自所述执行单元、所述路由网和所述线程数据存储器,
该管线包括多个管线部分,该多个管线部分被配置以使得每个时钟周期中每
个线程从一个管线部分传播到下一个管线部分;
所述电路被配置为:(i)将每个线程与配置实例相关联;(ii)针对每一
时钟周期对所述多个管线部分中的每一者进行配置以符合所述配置实例,该
配置实例与将在该时钟周期期间穿过该管线部分的各自的线程相关联。
2.如权利要求1所述的可配置处理电路,该电路被配置为将每个配置
实例与配置标识符相关联。
3.如权利要求2所述的可配置处理电路,该电路被配置为将与线程关
联的配置标识符通过与该线程相协同的管线进行传播。
4.如上述任一个权利要求所述的可配置处理电路,所述配置数据存储
器包括多个存储单元,并且所述电路被配置为将所述配置实例划分至所述多
个存储单元,以使得每个存储单元存储适用于特定管线部分的部分所述配置
实例。
5.如权利要求4所述的可配置处理电路,每个管线部分被配置为通过

\t访问存储了适用于该管线部分的所述部分所述配置实例的存储单元来访问
配置实例。
6.如权利要求2-5中任一项所述的可配置处理电路,所述管线的每个
部分被配置为使用与线程关联的配置标识符来访问所述配置数据存储器中
与该线程关联的配置实例。
7.如上述任一个权利要求所述的可配置处理电路,其中该多个线程是
独立的。
8.如上述任一个权利要求所述的可配置处理电路,该电路被配置为将
多个线程与同一配置标识符相关联。
9.如上述任一个权利要求所述的可配置处理电路,该电路能够改变与
线程关联的配置标识符,从而使线程在一次通过所述电路时与在随后的第二
次通过所述电路时能够按照不同的配置。
10.如权利要求9所述的可配置处理电路,该电路被配置为根据所述执
行单元中的一者对与所述线程相关联的输入进行操作时所生成的输出,改变
所述配置标识符。
11.如上述任一个权利要求所述的可配置处理电路,所述可配置路由网
包括多个网络输入和多个网络输出,并且能够被配置为将每个网络输入与网
络输出连接起来。
12.如权利要求11所述的可配置处理电路,所述可配置路由网能够将
任意网络输入与任意网络输出连接起来。
13.如权利要求11或12所述的可配置处理电路,所述可配置路由网能
够将任意网络输入与任意一个或多个所述网络输出连接起来。
14.如上述任一个权利要求所述的可配置处理电路,所述可配置路由网
的输出与所述执行单元的输入相连接。
15.如上述任一个权利要求所述的可配置处理电路,所述可配置路由网
具有多级开关。
16.如权利要求15所述的可配置处理电路,所述多级开关在每一级具
有一个或多个开关,每个开关具有多个开关输入和多个开关输出,并且能够
被配置为将每个开关输入与开关输出连接起来。
17.如权利要求16所述的可配置处理电路,所述多级开关每一级中的
所述开关具有相同数量的开关输入和开关输出。
18.如权利要求16所述的可配置处理电路,所述多级开关的一级内所
包含的开关与另一级内所包含的开关具有不同数量的开关输入与开关输出。
1...

【专利技术属性】
技术研发人员:P·梅岑
申请(专利权)人:斯利肯泰勒有限公司
类型:发明
国别省市:英国;GB

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1