发布信息

用于可配置并行计算的处理器的制作方法

作者:admin      2022-11-02 07:35:58     585



计算;推算;计数设备的制造及其应用技术1.本发明涉及处理器架构。特别地,本发明涉及具有大量处理单元和数据路径的处理器的架构,该数据路径可配置和可重新配置,以允许在处理单元中执行并行计算和数据转发操作。背景技术:2.许多应用(例如,信号处理、导航、矩阵求逆、机器学习、大型数据集搜索)需要大量的重复计算步骤,这些重复计算步骤最好由多个并行操作的处理器执行。当前的微处理器,无论是为台式机或移动计算机提供算力(power)的常规“中央处理单元”(cpu),还是更面向数字的常规“图形处理单元”(gpu),都适用于这样的任务。cpu或gpu,即使被设置许多核心,其硬件配置也不灵活。例如,信号处理应用通常需要多组大量的重复的浮点算术运算(例如,加法和乘法)。正如在常规cpu或gpu中实现的那样,单个神经元的操作可以被实现为一系列加法、乘法和比较指令,其中每条指令都需要从寄存器或存储器获取操作数、在算术逻辑单元(alu)中执行运算并将运算的结果或多个结果写回寄存器或存储器。尽管这样的操作的性质是周知的,但是指令集或指令的执行序列可能会随数据或应用而异。因此,由于存储器、寄存器文件和alu在常规cpu或gpu中的组织方式,没有重新配置在存储器、寄存器文件和alu之间往返操作数的数据路径的灵活性,就很难实现高度的并行处理和数据流的流线化。在许多应用中,由于这些操作可能会重复数亿次,因此在具有适当架构的处理器中可以获得巨大的效率。技术实现要素:3.根据本发明的一个实施例,一种处理器包括(i)通过模块化互连结构电路互连的多个可配置处理器,该模块化互连结构电路可配置为将可配置处理器划分为一个或多个组,用于并行执行,以及以任何顺序互连可配置处理器进行管线化(pipelined)操作。4.根据一个实施例,每个可配置处理器可以包括(i)控制电路;(ii)多个可配置算术逻辑电路;和(iii)用于互连可配置算术逻辑电路的可配置互连结构电路。5.根据本发明的一个实施例,每个可配置算术逻辑电路可以包括:(i)多个算术或逻辑运算符(operator)电路;和(ii)可配置互连结构电路。6.根据本发明的一个实施例,每个可配置互连结构电路可以包括(i)benes网络和(ii)多个可配置先进先出(fifo)寄存器。7.通过考虑以下结合附图的详细描述,可以更好地理解本发明。附图说明8.图1示出了根据本发明的一个实施例的包括流处理单元(spu)101-1、101-2、101-3、……和101-16的4×4阵列的处理器100。9.图2示出了根据本发明的一个实施例的图1的处理器100中的spu的一种实施方式中的spu 200。10.图3(a)示出了根据本发明的一个实施例的在图2的apc 201-1、201-2、201-3和201-4之一的一种实施方式中的apc 300。11.图3(b)示出了由每个运算符生成以用信号表示其输出数据流已准备好供下一个运算符处理的启用信号。12.图4示出了根据本发明的一个实施例的plf单元102-1、102-2、102-3和102-4中的任何一个和plf子单元202的一般化的表示性实施方式400。13.为了便于图之间的交叉引用,图中相同的元件被提供相同的附图标记。具体实施方式14.图1示出了根据本发明的一个实施例的处理器100,其包括例如流处理单元(spu)101-1、101-2、101-3、……和101-16的4×4阵列。当然,在本详细描述中选择4×4阵列是为了说明的目的。实际的实施方式可能有任意数量的spu。spu通过可配置管线结构(plf)102在它们自身之间互连,plf 102允许将来自给定spu的计算结果被提供或“流式传输”到另一spu。通过这种布置,处理器100中的spu的4×4阵列可以在运行时被配置成一组或多组spu,其中,每组spu被配置为用于管线化计算任务的管线级。15.在图1所示的实施例中,plf 102被示为包括plf单元102-1、102-2、102-3和102-4,每个plf单元可以被配置为在4×4阵列的四个象限之一中的四个spu之间提供数据路径。plf单元102-1、102-2、102-3和102-4也可以通过适当地配置plf单元102-5来互连,从而允许来自spu 101-1、101-2、101-3、……和101-16中的任一个的计算结果被转发到spu 101-1、101-2、101-3、……和101-16中的任何其他spu。在一个实施例中,处理器100的plf单元可以层级方式组织。(图1中所示的组织可以被认为是2级层级结构,其中,plf 102-1、102-2、102-3和102-4形成一个级别,而plf 102-5是第二级别。)在这个实施例中,主机cpu(未示出)在操作期间通过全局总线104实时配置和重新配置处理器100。提供中断总线105以允许每个spu向主机cpu提起(raise)中断以指示任务完成或许多异常状况中的任何一种。输入数据总线106-1和106-2将输入数据流式传输到处理器100中。16.在一个卫星定位应用中,处理器100可以用作实时处理来自射频(rf)前端电路的数字化样本的数字基带电路。在该应用中,在输入数据总线106-1和106-2处接收到处理器100中的输入数据样本是在天线处接收、在rf前端电路处进行信号处理之后的信号的同相和正交分量。接收的信号包括从众多定位卫星发射的导航信号。17.图2示出了根据本发明的一个实施例的处理器100中的spu的一种实施方式中的spu 200。如图2所示,spu 200包括算术和逻辑单元的2×4阵列,每个算术和逻辑单元在本文中称为“算术管线复合体”(apc),以强调(i)每个apc可以针对大量算术和逻辑运算中的任何算术和逻辑运算通过一组配置寄存器重新配置;和(ii)apc可以以多种方式中的任何一种方式进行配置,以将任何apc的结果流式传输到spu 200中的另一apc。如图2所示,spu 200中的apc的2×4阵列中的apc 201-1、201-2……201-8在plf子单元202上在它们之间被提供数据路径,plf子单元202是从其对应plf单元101-1、101-2、101-3或101-4的扩展。18.如图2所示,spu 200包括控制单元203,其执行来自指令存储器204的一小组指令,该一小组指令由主机cpu通过全局总线104加载。内部处理器总线209在配置阶段期间可由主机cpu通过全局总线104访问,并且在计算阶段期间可由控制单元203访问。通过从主机cpu断言的启用信号来实现配置和计算阶段之间的切换。当启用信号被取消断言时,到apc的任何时钟信号——并且因此,到具有apc的任何运算符的任何数据有效信号——都被关断以节省电力。主机cpu可以通过关断到spu的电力供应信号来禁用任何spu。在一些实施例中,到apc的电力供应信号也可以被选通。同样,也可以在适当的时间关断任何plf以节省电力。19.到apc的启用信号可以进行存储器映射,以允许通过内部处理总线209对其进行访问。通过这种布置,当在管线中配置多个apc时,主机cpu或spu 200可以酌情控制以正确的顺序启用apc——例如,以与管线中数据流相反的顺序启用apc,使得当数据流中的第一apc被启用时,所有apc都准备好进行数据处理。20.多路复用器205在主机cpu和控制单元203之间切换对内部处理器总线209的控制。spu 200包括存储器块207-1、207-2、207-3和207-4,其可由主机cpu或spu 200通过内部处理器总线209访问,并且在计算阶段期间可由apc 201-1、201-2、……201-8通过内部数据总线访问。开关208-1、208-2、208-3和208-4在内部处理器总线209和内部数据总线210-1、210-2、210-3和210-4中的对应一个之间切换对存储器块207-1、207-2、207-3和207-4的访问。在配置阶段期间,主机cpu可以通过经由全局总线104写入配置寄存器来配置spu 200中的任何元件,此时多路复用器205将该全局总线扩展到内部处理器总线209中。在计算阶段期间,控制单元203可以通过内部处理器总线209控制spu 200的操作,包括允许apc 201-1、201-2、……201-8彼此同步操作的一个或多个时钟信号。在适当的时间,apc 201-1、201-2、……201-8中的一个或多个可以在中断总线211上提起中断,该中断被接收到spu 200中以供服务。spu可以通过中断总线105将中断信号和其自己的中断信号转发到主机cpu。提供暂存(scratch)存储器206以支持控制单元203中的指令执行,诸如用于存储中间结果、标志和中断。配置阶段和计算阶段之间的切换由主机cpu控制。21.在一个实施例中,存储器块207-1、207-2、207-3和207-4由控制单元203使用本地地址空间来访问,该本地地址空间可以被映射到处理器100的全局地址空间的被分配部分。apc 201-1、201-2、……201-8的配置寄存器同样可以从本地地址空间和全局地址空间两者访问。apc 201-1、201-2、……201-8和存储器块207-1、207-2、207-3和207-4也可以由主机cpu通过全局总线104直接访问。通过存储器映射寄存器设置多路复用器205,主机cpu可以连接和分配内部处理器总线209以成为全局总线104的一部分。22.控制单元203可以是本领域普通技术人员称为最小指令集计算机(misc)处理器的类型的微处理器,其在主机cpu的监督下操作。在一个实施例中,控制单元203通过服务某些中断和通过在资源中本地地配置配置寄存器来管理较低级别的资源(例如,apc 201-1、201-2、201-3和201-4),从而减少对主机cpu上的这些资源的监督要求。在一个实施例中,资源可以在没有控制单元203参与的情况下操作,即,主机cpu可以直接服务中断和配置寄存器。此外,当配置的数据处理管线需要多个spu参与时,主机cpu可以直接控制整个数据处理管线。23.图3(a)示出了根据本发明的一个实施例的图2的apc 201-1、201-2、201-3和201-4之一的一种实施方式中的apc 300。如图3(a)所示,仅出于说明目的,apc 300包括表示性操作单元301-1、301-2、301-3和301-4。每个运算符单元可以包括一个或多个算术或逻辑电路(例如,加法器、乘法器、移位器、合适的组合逻辑电路、合适的时序逻辑电路或其组合)。apc plf 302允许主机cpu通过内部处理器总线209以任何合适的方式在运算符之间创建数据路径303。apc plf 302和运算符301-1、301-2、301-3和301-4均可由主机cpu和控制单元203两者通过内部处理器总线209进行配置,使得运算符可以被组织成以管线方式对数据流进行操作。24.在配置的管线中,每个运算符的输出数据流被作为对于下一个运算符的输入数据流提供。如图3(b)所示,每个运算符生成有效信号401以用信号表示,当被断言时,其输出数据流(402)对于由下一个运算符进行处理有效。管线中的运算符可以被配置为在检测到有效信号401的下降沿时生成中断信号以指示其输入数据流的处理完成。中断信号可以由控制单元203或主机cpu服务。通过图2的plf子单元202中的数据路径提供进出apc 300的数据。25.一些运算符可以被配置为访问关联的存储器块(即,存储器块207-1、207-2、207-3或207-4)。例如,一个运算符可以从关联的存储器块读取数据,并写入其进入管线的输出数据流上的数据。一个运算符可以从其管线中的输入数据流读取数据,并将数据写入关联的存储器块。在任一情况下,存储器位置的地址都在其输入数据流中提供给运算符。26.可以在apc中设置一个或多个缓冲器运算符。缓冲器运算符可以被配置为从本地缓冲器(例如,fifo缓冲器)读取或写入。当缓冲器运算符处发生拥塞时,缓冲器运算符可以断言暂停信号以暂停当前管线。暂停信号禁用所有相关的apc,直到拥塞消退。然后,缓冲器运算符重置暂停信号以恢复管线操作。27.图4示出了根据本发明的一个实施例的plf单元102-1、102-2、102-3和102-4中的任何一个和plf子单元202的一般化的表示性实施方式400。如图4所示,plf实施方式400包括benes网络401,其接收n个m位输入数据流403-1、403-2、……403-n并提供n个m位输出数据流404-1、404-2、……404-n。benes网络401是非阻塞的n×n benes网络,其可以被配置为允许以编程到其配置寄存器中的任何期望的排列使输入数据流被映射并被路由到输出数据流。然后,将输出数据流404-1、404-2、……404-n各自提供给fifo寄存器402中对应的可配置先进先出(fifo)寄存器,使得fifo输出数据流405-1、405-2、……405-n根据其相应的配置寄存器对于其相应的接收单元被及时正确对齐。控制总线410和411将配置信号分别表示到benes网络401的配置寄存器和fifo寄存器402中。28.提供以上详细描述是为了说明本发明的具体实施例,而不打算限制详细描述。在本发明范围内的许多修改和变化是可能的。本发明在所附权利要求中阐述。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部