CN103425625A - 基于微核的可重构处理器以及使用其处理多数据的方法 - Google Patents

基于微核的可重构处理器以及使用其处理多数据的方法 Download PDF

Info

Publication number
CN103425625A
CN103425625A CN2013101298259A CN201310129825A CN103425625A CN 103425625 A CN103425625 A CN 103425625A CN 2013101298259 A CN2013101298259 A CN 2013101298259A CN 201310129825 A CN201310129825 A CN 201310129825A CN 103425625 A CN103425625 A CN 103425625A
Authority
CN
China
Prior art keywords
micronucleus
functional unit
reconfigurable processor
simd
computing
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
Application number
CN2013101298259A
Other languages
English (en)
Inventor
徐东宽
金硕镇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN103425625A publication Critical patent/CN103425625A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8023Two dimensional arrays, e.g. mesh, torus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Abstract

提供了基于微核的可重构处理器以及使用其处理多数据的方法。所述可重构处理器技术可在不需要增加数据宽度或额外地消耗计算能力的情况下使用现有的资源灵活地形成单指令多数据(SIMD)。一种可重构处理器包括:两个或更多个微核,每个微核包括执行不同的运算的两个或更多个功能单元;处理单元,激活微核之中执行SIMD指令的运算的两个或更多个微核的功能单元,使得激活的功能单元执行SIMD指令。因此,可重构处理器可灵活地支持SIMD。

Description

基于微核的可重构处理器以及使用其处理多数据的方法
本申请要求于2012年5月24日提交的第10-2012-0055621号韩国专利申请的权益,所述申请的全部公开通过引用合并于此,以用于所有目的。
技术领域
以下描述涉及一种基于微核(minicore-based)的可重构处理器和使用基于微核的可重构处理器灵活地处理多数据的方法。
背景技术
可重构架构是一种可基于将被计算装置执行的任务来改变计算装置的硬件配置的架构。存在多种类型的可重构架构,例如,粗粒度阵列(CGA)。CGA包括多个具有相同的计算能力的功能单元,并且功能单元之间的连接状态可根据将被执行的每个任务而被改变。
可重构处理器具有CGA模式。在CGA模式下,可重构处理器具有用于同时执行多个运算的阵列结构,以便通过处理多个应用程序域(applicationdomain)来加速循环或数据。为了支持各种应用程序域,很多内联函数(intrinsic)被添加到可重构处理器,并且增加了运算的总数。因此,设计可重构处理器使得一个功能单元处理所有运算需要额外的流水线并对性能有不利影响。
发明内容
在一个总体方面,提供了一种可重构处理器,包括:两个或更多个微核,每个微核包括执行不同的运算的两个或更多个功能单元;处理单元,激活微核之中执行单指令多数据(SIMD)指令的运算的两个或更多个微核的功能单元,使得激活的功能单元执行SIMD指令。
包括在两个或更多个微核中的每一个微核中的一个或多个功能单元可与包括在其它微核或其它微核中的每一个微核中的一个或多个功能单元执行相同的运算。
处理单元可基于SIMD指令的数据类型确定将执行SIMD指令的微核的数量。
每个微核还可包括本地寄存器文件,其中,所述本地寄存器文件相应于每个功能单元并暂时存储执行SIMD指令的结果。
可重构处理器还可包括使微核相互连接的外部网络。
每个微核还可包括使功能单元相互连接的内部网络。
可重构处理器可以是基于微核的粗粒度阵列(CGA)处理器或基于微核的超长指令字(VLIW)处理器。
每个微核可被定义为CGA处理器或VLIW处理器中的基本设计单元或基本扩展单元。
在另一方面,提供了一种使用可重构处理器灵活地处理多数据的方法。所述方法包括:在可重构处理器的微核之中,确定将执行SIMD指令的运算的两个或更多个微核;激活确定的微核的功能单元。
包括在两个或更多个微核中的每一个微核中的一个或多个功能单元可与包括在其它微核或其它微核中的每一个微核中的一个或多个功能单元执行相同的运算。
在确定微核的步骤中,可基于SIMD指令的数据类型确定将执行SIMD指令的微核的数量。
所述方法还包括:使用激活的功能单元执行SIMD指令,并将执行SIMD指令的结果存储在本地寄存器文件中。
可重构处理器可以是基于微核的CGA处理器或基于微核的VLIW处理器。
通过下面的详细描述、附图和权利要求,其它特征和方面将是清楚的。
附图说明
图1是示出示例可重构处理器的示图;
图2是示出示例可重构处理器的示图;
图3是示出示例可重构处理器的微核的示图;
图4是示出在粗粒度阵列(CGA)模式下灵活地形成的示例SIMD的示图;
图5是示出使用可重构处理器灵活地处理多数据的示例方法的流程图。
在整个附图和详细描述中,除非另有描述,否则相同的附图标号将被理解为表示相同的元件、特征和结构。为了清晰、说明和便利,这些元件的相对大小和描述可能被夸大。
具体实施方式
通过参考示例性实施例的以下详细描述和附图,可更容易地理解本发明的优点和特征以及实现本发明的方法。然而,可以以很多不同的形式实现本发明,并且本发明不应被解释为限于在此阐述的实施例。相反,提供这些实施例,使得本公开将会是彻底和完整的,并将本发明的构思充分地传达给本领域的技术人员,本发明将仅由权利要求限定。在整个说明书中,相同的标号表示相同的元件。
现将参照示出本发明的示例性实施例的附图更充分地描述本发明。
图1是示出示例可重构处理器100的示图。参照图1,示例可重构处理器100可包括处理单元101以及两个或更多个微核MC#0至MC#19。
可重构处理器100可支持使用相同的指令对多数据进行处理的单指令多数据(SIMD)。处理单元101和微核MC#0至MC#19可被设计为灵活地配置SIMD。
微核MC#0至MC#19中的每一个可以是可重构处理器100的基本设计单元或基本扩展单元。
微核MC#0至MC#19中的每一个可具有完整的计算能力。计算能力是指运算处理能力(即,系统可处理多少类型的运算)。因此,可基于系统可提供的运算的类型来定义系统的计算能力。
例如,可以说提供运算A和运算B的系统与提供运算C和运算D的系统具有不同的计算能力。另外,可以说提供运算A、运算B和运算C的系统与提供运算A、运算B、运算C和运算D的系统具有不同的计算能力。具体地讲,可以说后一种系统较前一种系统具有更高或更强的计算能力。这里,运算A、运算B、运算C和运算D可以是例如“加法”、“乘法”、“OR(或)”和“AND(与)”。然而,这些仅是用于帮助理解本发明的示例,当前示例的范围不限于所述示例运算。显而易见,当前示例还可被应用到包括算术运算、逻辑运算、标量运算和矢量运算的各种其它运算。
微核MC#0至MC#19中的每一个可包括两个或更多个功能单元。包括在微核MC#0至MC#19中的每一个中的功能单元可被配置为执行不同的运算。也就是说,可重构处理器100将所有的运算分配到功能单元,使得几乎所有运算可由功能单元的集合(即,微核)执行。因此,每个微核可具有完整的计算能力。
如果一个功能单元必须处理所有运算,则数据处理时间可能会增加,并且可能需要额外的流水线以解决该问题。然而,在当前示例中,由于基于微核的可重构处理器100被设计为将所有运算分配到功能单元,因此基于微核的可重构处理器100可在不需额外的带宽或资源的情况下灵活地支持SIMD。
处理单元101可通过以各种方式组合微核MC#0至微核MC#19来支持任意SIMD指令。也就是说,处理单元101基于SIMD指令的数据类型确定微核的数量,并激活包括在确定的微核中的功能单元,使得激活的功能单元执行该SIMD指令。这里,每个微核的功能单元是执行与SIMD指令对应的运算的功能单元。
例如,如果微核的每个功能单元可处理32比特的数据,则当解码的SIMD指令的数据类型是64比特ADD(加法)运算时,执行ADD运算的两个微核的功能单元可被组合以执行该SIMD指令。此外,当SIMD指令的数据类型是128比特时,四个微核可被组合以执行该SIMD指令。以这样的方式,示例可重构处理器100可根据SIMD指令的数据类型灵活地支持该SIMD指令。
处理单元101可具有两种操作模式。例如,处理单元101可具有用于处理循环操作的粗粒度阵列(CGA)模式以及用于处理循环操作以外的运算的超长指令字(VLIW)模式。
在CGA模式下,处理单元101作为CGA模块111进行操作。CGA模块111可包括16个微核(MC#4至MC#19)和配置存储器113。微核MC#4至微核MC#19中的每一个可并行处理循环。可针对CGA模块111意图处理的循环的类型对微核MC#4至MC#19的连接或网络结构进行最优化。指示微核MC#4至MC#19的连接或网络结构的配置信息被存储在配置存储器113中。换句话说,在CGA模式下,作为CGA模块111进行操作的处理单元101可基于存储在配置存储器113中的配置信息来处理循环。
在VLIW模式下,处理单元101作为VLIW模块112进行操作。VLIW模块112可包括四个微核(MC#0至MC#3)和VLIW存储器114。微核MC#0至微核MC#3中的每一个根据VLIW架构来处理存储在VLIW存储器114中的超长指令。换句话说,在VLIW模式下,作为VLIW模块112进行操作的处理单元101可根据存储在VLIW存储器114中的指令来处理运算。
在另一方面,一些微核可被VLIW模式和CGA模式共享。例如,在图1中,在CGA模式下使用的微核MC#5至微核MC#8可在VLIW模式下作为VLIW机(VLIW machine)进行操作。
在另一方面,可重构处理器100还可包括模式控制单元102。模式控制单元102控制从CGA模式到VLIW模式的切换或从VLIW模式到CGA模式的切换。模式控制单元102可产生模式切换信号或模式切换命令。
例如,当在CGA模式下处理循环操作时,处理单元101可响应于模式切换信号而切换到VLIW模式,随后处理循环操作以外的运算。这里,处理循环操作的结果被暂时存储在全局寄存器文件115中。此外,当在VLIW模式下进行操作时,处理单元101可响应于模式控制单元102的控制信号而切换到CGA模式。随后,处理单元101可从全局寄存器文件(GRF)115检索上下文信息(context information),并继续处理先前的循环操作。
对于该模式切换,可重构处理器100还可包括用于在模式切换期间暂时存储进出的数据的全局寄存器文件115。
如上所述,在当前示例中,完整的计算能力(即,执行所有运算的能力)被划分并被分配到功能单元,并且多个功能单元被组合为作为基本处理单元的微核。这在提高性能的同时使高频环境中的不必要的资源消耗最小化。另外,微核被灵活地组合以执行各种SIMD指令。因此,可在不需要额外的资源或带宽的情况下支持SIMD。
图2是示出示例可重构处理器200的示图。参照图2,示例可重构处理器200可包括两个或更多个微核201和使微核201相互连接的外部网络202。
微核201可彼此独立地处理指令、工作、任务等。例如,微核201(MC#0和MC#1)可同时处理两个独立指令。另外,两个或更多个不同的微核可处理相同的指令。在这种情况下,微核可处理针对相同指令的多数据。
每个微核201可以是可重构处理器200的基本设计单元或基本扩展单元。如图2中所示,可按需要增加微核201的数量。
外部网络202使微核201能够相互通信。例如,由微核201(MC#0)产生的数据可通过外部网络202被传送到微核201(MC#3)。
外部网络202的配置可根据配置信息而改变。例如,外部网络202的配置(即,微核201之间的连接状态)可根据存储在存储器中(即,图1的配置存储器113中)的配置信息而改变。
微核201可具有相同或不同的计算能力。例如,微核201(MC#0)可执行运算A、运算B、运算C和运算D,而微核201(MC#2)可执行运算A、运算C和运算E。微核201可被配置以执行至少一个相同的运算。
两个或更多个微核201(例如,MC#0和MC#1)可根据SIMD指令的数据类型(16比特、32比特、64比特、128比特等)而执行相同的运算。
在另一方面,每个微核201可具有本地寄存器文件(未示出)。每个微核201可使用本地寄存器文件暂时存储数据。
在另一方面,可重构处理器200可作为CGA处理器或VLIW处理器进行操作。例如,在CGA模式下,四个微核201(例如,MC#3至MC#6)可基于CGA架构处理循环操作。在VLIW模式下,一些微核(例如,MC#0和MC#2)可处理循环操作以外的一般运算。
图3是示出示例可重构处理器的微核300的示图。参照图3,每个微核300可包括两个或更多个功能单元301和使功能单元301相互连接的内部网络303。每个功能单元301可执行标量运算或矢量运算。
当前示例的每个微核300是多个功能单元301的集合,并且包括在每个微核300中的功能单元301可执行不同的运算。也就是说,不是应用的所有运算都由一个功能单元301处理。而是,将应用的运算分配到功能单元301。另外,可执行应用的几乎所有运算的功能单元201的这样的集合被配置为一个微核300。
例如,运算A、运算B、运算C和运算D可被分别分配到四个功能单元301(VFU#0至VFU#3),并可分别被所述四个功能单元301处理。这四个功能单元301(VFU#0至VFU#3)可形成一个微核300以处理应用的所有运算。
可增加微核300的数量,其中,每个微核300具有执行不同的运算的多个功能单元301。这里,每个微核300中的任意一个功能单元301可被配置为与其它微核300的功能单元301执行相同的运算。
例如,当每个微核300包括四个功能单元301(VFU#0至VFU#3)时,每个微核300的功能单元301(VFU#0至VFU#3)可被设计为分别处理运算A、运算B、运算C和运算D。然而,这仅是示例,每个微核300的功能单元301可被设计为执行各种运算。
内部网络303使功能单元301能够相互通信。例如,由功能单元301(VFU#0)产生的数据可通过内部网络303被传送到功能单元301(VFU#1)。
内部网络303的配置可根据配置信息而改变。例如,内部网络303的配置(即,功能单元301之间的连接状态)可根据存储在存储器(未示出)中的配置信息而改变。
在另一方面,每个微核300可具有本地寄存器文件(未示出),其中,所述本地寄存器文件相应于每个功能单元301并暂时存储各种处理结果。示例可重构处理器300可暂时将处理SIMD指令的结果存储在本地寄存器文件中并使用存储的结果。因此,在没有矢量寄存器文件的情况下,示例可重构处理器300可支持SIMD。
图4是示出在CGA模式下灵活地形成的示例SIMD的示图。具体来说,图4a和图4b示出在CGA模式下形成的预定大小的示例SIMD,图4c示出在CGA模式下形成的灵活大小的示例SIMD。
在CGA模式下,功能单元0至功能单元15中的每一个可用作SIMD资源或标量资源。例如,可根据SIMD指令的数据类型如图4中所示形成各种SIMD。图4a示出在SIMD指令的数据类型是128比特时形成的示例SIMD。四个微核400a(MC0至MC3)具有相同的计算能力(即,相同的运算处理能力)。
例如,微核MC0的功能单元0、功能单元1、功能单元2和功能单元3,微核MC1的功能单元4、功能单元5、功能单元6和功能单元7,微核MC2的功能单元8、功能单元9、功能单元10和功能单元11,微核MC3的功能单元12、功能单元13、功能单元14和功能单元15可分别执行相同的运算A、运算B、运算C和运算D。如果每个功能单元可处理32比特的数据,并且如果解码的指令的数据类型是128比特SIMD指令,则可使用四个微核MC0至MC3的功能单元0、功能单元4、功能单元8和功能单元12来处理SIMD指令。
图4b示出在SIMD指令的数据类型是64比特时形成的示例SIMD。可使用执行相同运算的两个微核400b(MC0和MC1、MC2和MC3)的功能单元来形成用于处理64比特数据的SIMD。
在另一方面,可根据SIMD指令使用不同数量的微核400c的功能单元,以便如图4c所示灵活地形成SIMD。参照图4c,微核MC0至微核MC3的功能单元0、功能单元4、功能单元8和功能单元12执行不同的运算,微核MC0至微核MC3的功能单元1、功能单元5、功能单元9和功能单元13执行相同的运算,微核MC0和微核MC1的功能单元2和功能单元6执行相同的运算,微核MC2和微核MC3的功能单元10和功能单元14执行相同的运算。
在另一方面,也可在VLIW模式下灵活地形成SIMD。在VLIW模式下,当通过对发出的指令进行解码而获得的运算是32比特SIMD时,相应的功能单元执行所述运算。在这种情况下,假设每个功能单元可处理32比特。当运算是64比特SIMD或更多比特的SIMD时,使用需要数量的微核(即,两个或更多个微核)的功能单元执行该运算。例如,使用两个微核的两个功能单元处理64比特SIMD,使用四个微核的功能单元处理128比特SIMD。
一般来说,为了通过增加数据并行性来提高数据处理性能,需要增加数据路径的带宽。然而,在当前示例中,每个微核的功能单元可根据数据类型被灵活地彼此连接,以形成SIMD。因此,可在不必增加数据路径的宽度的情况下,对运算进行处理。
如上所述,用于灵活地形成SIMD的示例可重构处理器可将功能单元的处理结果存储在本地寄存器文件(未示出)中。因此,不需要用于支持矢量类型的矢量寄存器文件和用于并行处理的额外的资源,并且可使用现有的本地寄存器文件和资源灵活地支持SIMD。
图5是示出使用可重构处理器灵活地处理多数据的示例方法的流程图。参照图5,在灵活地处理多数据的示例方法中,在510,可重构处理器的处理单元101对发出的SIMD指令进行解码并识别解码的SIMD指令的数据类型。随后,在520,基于数据类型确定将执行SIMD指令的微核。可基于每个微核的每个功能单元可处理的数据大小来确定将处理SIMD指令的微核的数量。因此,可处理具有各种数据类型的SIMD指令。
例如,如果每个功能单元可处理32比特的数据,则当解码的SIMD指令的数据类型是64比特时,需要两个微核。当解码的SIMD指令的数据类型是128比特时,需要四个微核。如上所述,当解码的SIMD指令的数据类型是128比特时,可如图4a中所示形成SIMD。当数据类型是64比特时,可如图4b中所示形成SIMD。为了使可重构处理器处理各种SIMD指令,可根据SIMD指令连接不同数量的微核400c,以灵活地形成SIMD。
接下来,在530,激活确定的微核的功能单元。这里,确定的微核的激活的功能单元可分别执行相同的运算。例如,参照图4a,四个微核400a(MC0至MC3)具有相同的计算能力(即,相同的运算处理能力)。也就是说,微核MC0的功能单元0、功能单元1、功能单元2和功能单元3,微核MC1的功能单元4、功能单元5、功能单元6和功能单元7,微核MC2的功能单元8、功能单元9、功能单元10和功能单元11以及微核MC3的功能单元12、功能单元13、功能单元14和功能单元15可分别执行相同的运算A、运算B、运算C和运算D。参照图4c,微核MC0至微核MC3的功能单元0、功能单元4、功能单元8和功能单元12执行不同的运算,微核MC0至微核MC3的功能单元1、功能单元5、功能单元9和功能单元13执行相同的运算,微核MC0和微核MC1的功能单元2和功能单元6执行相同的运算,微核MC2和微核MC3的功能单元10和功能单元14执行相同的运算。
在540,使用激活的功能单元执行SIMD指令,并且将执行结果记录在本地寄存器文件中。
本发明的实施例可被实现为计算机可读记录介质中的计算机可读代码。计算机可读记录介质包括存储计算机可读数据的所有类型的记录介质。
计算机可读记录介质的示例包括ROM、RAM、CD-ROM、磁带、软盘、光学数据存储器。另外,可以以载波的形式(诸如互联网传输)实现记录介质。另外,计算机可读记录介质可被分布在网络上的计算机系统,其中,在所述计算机系统中可以以分布式方式存储和执行计算机可读代码。此外,可由本发明所属的领域的编程人员容易地解释用于完成本发明的功能性程序、代码和代码段。
虽然已参照本发明的示例性实施例具体地示出和描述了本发明,但本领域的技术人员将理解,在不脱离权利要求限定的本发明的精神和范围的情况下,可在形式和细节上对本发明做出各种改变。示例性实施例应被理解为仅是描述性的意义,而不是为了限制。由权利要求而不是以上描述的详细说明限定本发明的范围。权利要求的含义和范围、以及从权利要求的等同概念得出的所有修改或修改的样式应被理解为被包括在本发明的范围中。

Claims (13)

1.一种可重构处理器包括:
微核,每个微核分别包括被配置为执行不同的运算的功能单元;
处理单元,被配置为激活所述微核之中被配置为执行单指令多数据(SIMD)指令的运算的两个或更多个各个微核的两个或更多个功能单元,使得激活的功能单元执行SIMD指令。
2.如权利要求1所述的可重构处理器,其中,包括在两个或更多个微核中的每一个微核中的一个或多个功能单元与包括在其它微核或其它微核中的每一个微核中的一个或多个功能单元执行相同的运算。
3.如权利要求1所述的可重构处理器,其中,处理单元基于SIMD指令的数据类型确定将执行SIMD指令的微核的数量。
4.如权利要求1所述的可重构处理器,其中,每个微核还包括本地寄存器文件,其中,所述本地寄存器文件相应于每个功能单元并暂时存储执行SIMD指令的结果。
5.如权利要求1所述的可重构处理器,还包括:使微核相互连接的外部网络。
6.如权利要求1所述的可重构处理器,其中,每个微核还包括使功能单元相互连接的内部网络。
7.如权利要求1所述的可重构处理器,所述可重构处理器是基于微核的粗粒度阵列(CGA)处理器或基于微核的超长指令字(VLIW)处理器。
8.如权利要求7所述的可重构处理器,其中,每个微核被定义为CGA处理器或VLIW处理器中的基本设计单元或基本扩展单元。
9.一种使用可重构处理器灵活地处理多数据的方法,所述的方法包括:
在可重构处理器的微核之中确定将执行单指令多数据(SIMD)指令的运算的两个或更多个微核;
激活确定的微核的功能单元。
10.如权利要求9所述的方法,其中,包括在两个或更多个微核中的每一个微核中的一个或多个功能单元与包括在其它微核或其它微核中的每一个微核中的一个或多个功能单元执行相同的运算。
11.如权利要求9所述的方法,其中,在确定微核的步骤中,基于SIMD指令的数据类型确定将执行SIMD指令的微核的数量。
12.如权利要求9所述的方法,还包括:使用激活的功能单元执行SIMD指令,并将执行SIMD指令的结果存储在本地寄存器文件中。
13.如权利要求9所述的方法,其中,可重构处理器是基于微核的粗粒度阵列(CGA)处理器或基于微核的超长指令字(VLIW)处理器。
CN2013101298259A 2012-05-24 2013-04-15 基于微核的可重构处理器以及使用其处理多数据的方法 Pending CN103425625A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2012-0055621 2012-05-24
KR1020120055621A KR20130131789A (ko) 2012-05-24 2012-05-24 미니코어 기반의 재구성 가능 프로세서 및 그 재구성 가능 프로세서를 이용한 유연한 다중 데이터 처리 방법

Publications (1)

Publication Number Publication Date
CN103425625A true CN103425625A (zh) 2013-12-04

Family

ID=49622509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013101298259A Pending CN103425625A (zh) 2012-05-24 2013-04-15 基于微核的可重构处理器以及使用其处理多数据的方法

Country Status (4)

Country Link
US (1) US20130318324A1 (zh)
JP (1) JP2013246816A (zh)
KR (1) KR20130131789A (zh)
CN (1) CN103425625A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022001499A1 (zh) * 2020-06-30 2022-01-06 上海寒武纪信息科技有限公司 一种计算装置、芯片、板卡、电子设备和计算方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970720B (zh) * 2014-05-30 2018-02-02 东南大学 基于大规模粗粒度嵌入式可重构系统及其处理方法
KR102593320B1 (ko) 2016-09-26 2023-10-25 삼성전자주식회사 전자 장치, 프로세서 및 그 제어 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070118727A1 (en) * 2005-09-01 2007-05-24 Carsten Noeske Processor for processing data of different data types
CN1991793A (zh) * 2005-12-30 2007-07-04 英特尔公司 用于在多核系统中进行邻近高速缓存的方法及系统
US20090070552A1 (en) * 2006-03-17 2009-03-12 Interuniversitair Microelektronica Centrum Vzw (Imec) Reconfigurable multi-processing coarse-grain array

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070118727A1 (en) * 2005-09-01 2007-05-24 Carsten Noeske Processor for processing data of different data types
CN1991793A (zh) * 2005-12-30 2007-07-04 英特尔公司 用于在多核系统中进行邻近高速缓存的方法及系统
US20090070552A1 (en) * 2006-03-17 2009-03-12 Interuniversitair Microelektronica Centrum Vzw (Imec) Reconfigurable multi-processing coarse-grain array

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022001499A1 (zh) * 2020-06-30 2022-01-06 上海寒武纪信息科技有限公司 一种计算装置、芯片、板卡、电子设备和计算方法

Also Published As

Publication number Publication date
KR20130131789A (ko) 2013-12-04
JP2013246816A (ja) 2013-12-09
US20130318324A1 (en) 2013-11-28

Similar Documents

Publication Publication Date Title
CN110688157B (zh) 一种计算装置及计算方法
KR101710116B1 (ko) 프로세서, 메모리 관리 장치 및 방법
US9720696B2 (en) Independent mapping of threads
JP4424443B2 (ja) 混合モード並列プロセッサシステム、混合モード並列プロセッサ方法、および、混合モード並列プロセッサプログラム
JP4921638B2 (ja) メモリサブシステムに複数のメモリアルゴリズムプロセッサを組込むマルチプロセッサコンピュータアーキテクチャ
CN111310910A (zh) 一种计算装置及方法
US20110320765A1 (en) Variable width vector instruction processor
US10678541B2 (en) Processors having fully-connected interconnects shared by vector conflict instructions and permute instructions
CN112612521A (zh) 一种用于执行矩阵乘运算的装置和方法
KR20110112810A (ko) 데이터 처리 방법 및 장치
CN107315717B (zh) 一种用于执行向量四则运算的装置和方法
CN102306141A (zh) 一种描述动态可重构阵列配置信息的方法
US20070300044A1 (en) Method and apparatus for interfacing a processor and coprocessor
CN103425625A (zh) 基于微核的可重构处理器以及使用其处理多数据的方法
CN107844321B (zh) 一种mcu处理系统
US9262162B2 (en) Register file and computing device using the same
US20130311753A1 (en) Method and device (universal multifunction accelerator) for accelerating computations by parallel computations of middle stratum operations
US10127040B2 (en) Processor and method for executing memory access and computing instructions for host matrix operations
US20100186006A1 (en) Programmable device for software defined radio terminal
US10503541B2 (en) System and method for handling dependencies in dynamic thread spawning for a multi-threading processor
US7925862B2 (en) Coprocessor forwarding load and store instructions with displacement to main processor for cache coherent execution when program counter value falls within predetermined ranges
CN105022609A (zh) 一种数据混洗方法和数据混洗单元
EP2860643A2 (en) Collective communications apparatus and method for parallel systems
CN114528248A (zh) 阵列重构方法、装置、设备及存储介质
CN116635841A (zh) 寄存器的近存储器确定

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20131204

WD01 Invention patent application deemed withdrawn after publication