专利名称:多核处理器及多核处理器组的制作方法
技术领域:
本发明涉及处理器领域,特别涉及一种多核处理器及多核处理器组。
背景技术:
随着信息技术的发展,对计算机处理器的处理运算能力的需求越来越高,传统的单核处理器已经无法满足需要,因此多核处理器(multi-core processor)和众核处理器 (many-core processor)逐渐得到了广泛应用。多核处理器是指在一个处理器中集成两个或两个以上的处理器内核,通过在各个内核之间划分任务,实现了多个处理器内核的并行运行,从而提高了整个处理器的运算处理能力。多核处理器可以分为同构多核处理器(homogeneous multi-coreprocessors)和异构多核处理器(heterogeneous multi-core processors),其中,同构多核处理器中包含多个结构相同的处理器核,而异构多核处理器中包含多个结构不同的处理器核。在异构多核处理器中,由于不同的处理器核的结构和/或指令集存在差异,使得能够对处理进程进行分工,将不同的任务分配至不同的处理器核上执行,提高执行效率。申请号为200810039567. 4的中国专利申请中公开了一种基于可配置处理器及指令集扩展的异构多核处理器,图1示出了该异构多核处理器的结构示意图,包括片上总线 100、全能核/基本核101、第一扩展核102、第二扩展核103、仲裁器104和共享内存105,其中,全能核/基本核101中基本核和全能核是互斥的,在一个异构系统中仅能存在一个基本核或一个全能核,所述基本核包括基本指令集,用于执行操作系统和应用程序中没有进行过指令扩展优化的部分,并负责核间通信的控制;所述全能核包括所有指令集;所述第一扩展核102和第二扩展核103包括基本指令集,另外包括扩展指令集,用于执行应用程序中进行了指令扩展优化的部分,也可以执行程序中未进行指令扩展优化的部分,每一个扩展核只包含一种扩展指令集。上述异构多核处理器中的各处理器核都通过片上总线100连接,片上总线100通过一个仲裁器104连接到共享内存105上,所述片上总线100用于处理器核间的通信,所述仲裁器104用于控制各存储器核对共享内存105的访问。上述异构多核处理器包括多个不同的扩展核构成异构,分别包括不同的扩展指令,根据应用程序的特点, 将程序中的不同部分分配到相应的扩展核上,提高了执行效率。但是,上述方法中的不同扩展核包括不同的扩展指令集,使得整体结构较为复杂, 而且其全能核/基本核与全部的扩展核都挂接在同一片上总线进行通信,扩展核的数量不能太多,否则会造成片上总线在通信过程中的冲突增多,因此该结构的多核处理器的计算密度较低。
发明内容
本发明的目的是提供一种多核处理器及多核处理器组,提高计算密度,改善处理器核间的通信效率。为解决上述问题,本发明提供了一种多核处理器,包括至少一个主核、至少一个从核阵列、第一互连结构和从核互连结构,所述从核阵列包括多个从核,所述从核与主核异构,其中,所述第一互连结构和从核互连结构用于所述主核与所述从核阵列间的通信,所述从核互连结构还用于所述从核阵列中任意两从核间的通信。可选的,所述主核与所述从核阵列间的通信包括所述主核用于将计算任务分配给所述从核阵列中的至少一个从核;所述从核用于在完成所述计算任务后,向所述主核发送主从通信信号,并将所述计算任务的运算结果保存在所述主核与从核共享的存储空间中。可选的,所述主核与所述从核阵列间的通信包括所述从核用于向所述主核发送主从通信信号,请求所述主核进行代理服务;所述主核用于在处理完所述代理服务后,将所述代理服务的完成标志和结果保存在所述主核与从核共享的存储空间中。可选的,所述从核向所述主核发送的主从通信信号为中断信号。可选的,所述从核向所述主核发送的主从通信信号为所述从核向所述主核与从核共享的存储空间写入标志信号。可选的,所述从核包括核内存储器,所述主核与从核共享的存储空间包括主存和/ 或从核的核内存储器。可选的,所述第一互连结构还用于所述主核对主存的数据访问。可选的,所述第一互连结构和从核互连结构还用于所述从核阵列对主存的数据访问。可选的,所述从核包括核内存储器,所述核内存储器用于存储指令和/或数据。可选的,所述从核互连结构还用于所述从核阵列中多个从核的核内存储器间的数据访问。可选的,所述从核具有精简结构和优化指令集。可选的,所述从核互连结构为总线结构、格栅网络或交叉开关。可选的,所述从核还包括通信发送单元和接收通信缓冲单元,所述通信发送单元用于将发送数据传输至所述从核互连结构,所述通信接收缓冲单元用于经由所述从核互连结构获取接收数据并进行缓存。可选的,还包括同步单元,用于接收所述从核产生的同步请求信号,所述同步请求信号包括需参与同步的从核信息,所述同步单元在接收到全部需参与同步的从核发出的同步请求信号后产生同步完成信号,并发送至所述需参与同步的从核。可选的,所述从核包括核内存储器,所述多核处理器还包括数据流引擎,所述数据流引擎由所述主核或从核触发,控制至少一个从核与主存之间进行批量数据传输。可选的,所述多核处理器还包括指令预取单元,用于接收所述从核的预取请求并进行合并,获取与所述合并后的预取请求对应的指令并根据所述预取请求提供给各从核。可选的,所述指令预取单元包括取指控制单元和指令缓存,所述取指控制单元用于接收所述从核的预取请求并进行合并,在所述指令缓存中搜索与所述合并后的预取请求对应的指令或控制所述指令缓存从主存中获取与所述合并后的预取请求对应的指令,所述指令缓存用于存储指令并向所述从核提供与其发出的预取请求对应的指令。可选的,所述主核为通用处理器核。
可选的,所述第一互连结构为总线结构。可选的,所述多核处理器集成于同一芯片上。为解决上述问题,本发明提供了一种多核处理器组,包括多个上述任一项所述的多核处理器;第二互连结构,用于所述多个多核处理器间的通信。可选的,所述第二互连结构为总线结构、环网或交叉开关。可选的,所述多核处理器组集成于同一芯片上。与现有技术相比,本技术具有以下优点本技术方案的多核处理器中,采用两级互连结构,其中第一互连结构用于主核与从核阵列间的通信,而从核互连结构用于所述从核阵列中任意两从核间的通信,减少了多个处理器核共用同一总线造成的通信冲突,提高了通信效率。另外,所述从核还包括核内存储器,用于存储指令和/或数据,避免了从核频繁访问主存,改善了主存接口的瓶颈问题。进一步的,本技术方案中的从核具有两种运行方式,可以受主核控制以处理主核分配的运算任务,也可以独立运行由主核提供代理服务,具有较大的应用灵活性。进一步的,本技术方案中的主核为通用处理器核,具有较好的适用性和兼容性,从核具有精简结构和优化指令集,能够在有限的面积提供超高的计算性能,使得整个多核处理器取得了易用性和高性能的均衡。进一步的,本技术方案中的从核包括通信发送单元和通信接收缓冲单元,用于任意两从核间的通信,进一步提高了从核间的通信效率。进一步的,本技术方案中的多核处理器包括同步单元,用于多个从核间的同步,提高了同步速率。进一步的,本技术方案的多核处理器包括数据流引擎,控制至少一个从核与主存之间进行批量的数据传输,提高了数据读写的效率。进一步的,本技术方案中的多核处理器包括指令预取单元,将多个从核的预取请求合并后再进行指令预取操作,以便于向需求相同指令的从核同时装载指令,提高了指令预取的效率。
图1是现有技术的一种异构多核处理器的结构示意图;图2是本发明实施例的异构多核处理器的结构示意图;图3是本发明实施例的从核阵列的一种互连方式;图4是本发明实施例的相互通信的两从核的连接结构示意图;图5是本发明实施例的实现同步的多个从核间的连接结构示意图;图6是本发明实施例的指令预取单元与多个从核间的连接结构示意图;图7是本发明实施例的多核处理器组的一种连接结构示意图;图8是本发明实施例的多核处理器组的另一种连接结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图和实施例对本发明的具体实施方式
做详细的说明。现有技术的异构多核处理器中,一般将全部处理器核连接于同一总线,使得通信过程中的冲突增多,通信效率较低,而且为了避免过多的冲突,往往从核的数量较少,影响了整个异构多核处理器的计算密度的提高。本发明的技术方案采用两级互连结构,其中第一互连结构用于主核与从核阵列之间的通信,而从核互连结构用于所述从核阵列内部任意两从核之间的通信,减少了通信冲突,提高了通信效率,使得从核的数量可以显著增多,提高了整个多核处理器的性能。图2示出了本发明实施例的异构多核处理器的结构示意图,如图2所示,包括至少一个主核201、包括多个从核20 的从核阵列204、第一互连结构202和从核互连结构 203,其中,所述第一互连结构202和从核互连结构203用于所述主核201与所述从核阵列 204间的通信,所述从核互连结构203还用于所述从核阵列204中任意两从核20 间的通所述第一互连结构202还用于所述主核201对主存205进行数据访问,所述第一互连结构202和从核互连结构203共同用于所述从核阵列204对主存205的数据访问。所述主核201经由第一互连结构202对主存205进行读取和写入操作,而各从核20 则经由从核互连结构203和第一互连结构202实现对主存205的读取和写入操作。在一具体实施例中,所述主核201、第一互连结构202、从核互连结构203以及从核阵列204集成于同一芯片上,而所述主存205为片外存储器,即并未集成在所述多核处理器中,而是通过存储器接口与所述第一互连结构202连接,所述主存205可以是SDRAM等常用的存储器。所述主核201与从核20 异构,在本实施例中,所述主核201为通用处理器核,其指令集为完整指令集,包括相关的控制指令、运算指令等,选自ARM、MIPS、X86或PowerPC 处理器核中的一种,因此具有较高的易用性。在一具体实施例中,所述主核201用于运行操作系统,对整个多核处理器的片上资源进行统一调度和管理,将图形处理、数字信号处理等复杂的计算任务分配至所述从核阵列204中的一个或多个从核20如。所述从核阵列 204中的从核20 的微结构和指令集经过精简优化,在一优选的实施例中仅包括运算指令及从核间的通信和同步指令,但其结构是针对运算指令进行过专门优化的,使其数据通路 (datapath)可以较高效的执行图形处理或数字信号处理(DSP,Digital Signal Process) 等计算密集型运算任务,而常见的通用处理器执行该类复杂运算任务的效率较低,因此主核201将相应的运算任务分配至从核204a,提高了所述运算任务的执行效率,进而提高了整个多核处理器的性能。另外,由于所述从核20 的指令集较为简单,不包括复杂的控制指令,因此其结构也相应的比较简单,减小了硬件开销,在占用的芯片面积相同的情况下能够提供更强大的计算能力,提高了整个多核处理器的计算密度,实现了易用性和高性能的均衡。另外,所述从核20 中还包括核内存储器(图中未示出),该核内存储器为集成在芯片内的片内存储器,如SRAM,用于存储指令和/或数据,其存储空间较小,可以为数K至数十K,一方面可以将从核20 正在执行的指令或者待处理的数据进行暂存,避免了各个从核20 频繁访问主存205,导致所述第一互连结构202的冲突以及主存205的存储接口的瓶颈问题;另一方面,由于所述核内存储器的容量较小,因此其面积较小,对芯片面积的影响并不大。所述从核互连结构203为总线结构(bus)、格栅网络(mesh)或交叉开关 (corssbar),所述第一互连结构202为总线结构,相应的,所述第一互连结构202和从核互连结构203包括各自的控制器(图中未示出),用于对第一互连结构202和从核互连结构 203各自的占用、释放等进行裁决。图3示出了所述从核阵列的一种互连方式,在该方案中,各个从核20 之间采用格栅网络204b互连,实现两两的数据交互,其中,格栅网络204b的每一个连接节点中包括一从核2(Ma和一交换开关(switcti) 2(Mc。在一具体实施例中,主核201在运行程序的过程中,需要处理某一计算任务,如图形处理或数字信号处理等,所述主核201将该任务分配至某一从核204a,具体分配过程可以为所述主核201将所述计算任务相关的指令和/或数据地址发送至所述某一从核20 , 该从核20 根据所述地址,通过所述从核互连结构203和第一互连结构202访问主存205, 获取相应的指令和数据并完成具体的运算处理过程;或者所述主核201通过所述第一互连结构202和从核互连结构203建立与所述某一从核20 的通信通路,将相应的指令和/或数据发送至所述某一从核20 ,由其完成具体的运算处理过程。此外,由于所述从核20 包括核内存储器,且可以通过所述从核互连结构203实现同一从核阵列内的核内存储器的共享,因此,当某一从核20 需要读取一数据段时,若其中另一从核20 中存储有相应的数据段,则两从核之间可通过所述从核互连结构203建立共享访问连接,在从核阵列内实现数据的内部获取,进一步避免了各个从核20 频繁访问主存205导致的第一互连结构202的冲突,有效提高了数据交换和获取的效率。所述从核20 在完成所述计算任务后,向主核201发送主从通信信号,并将所述计算任务的运算结果保存在所述主核201与从核20 共享的存储空间中,如主存205或核内存储器。在一实施例中,所述主从通信信号可以为中断信号,当从核20 完成所述计算任务后,向所述主核201发送一中断信号,使得主核201获知从核20 已经完成所述计算任务,并通过所述第一互连结构202和从核互连结构203由从核20 的核内存储器或是通过所述第一互连结构202从主存205中获取相应的运行结果,之后继续执行后续的进程。需要说明的是,在所述从核20 运行所述计算任务的过程中,所述主核201可以继续执行后续的其他进程,直至被所述中断信号中断,由于所述主核201和从核20 为并行运行,提高了整个多核处理器的处理能力。此外,根据实施例的不同,所述从核20 向主核201发送主从通信信号还包括在所述主核201与从核20 共享的存储空间(主存205或从核20 的核内存储器)中写入标志信号。如在所述主存205或是从核20 的核内存储器的某一预定地址写入标志信号, 表明所述运算任务已经完成,当所述主核201检测到该标志信号后,获知所述运算任务已经完成,并通过所述第一互连结构202和从核互连结构203由从核20 的核内存储器或是通过所述第一互连结构202从所述主存205中获取相应的运行结果,之后执行后续的进程。 需要说明的是,采用此种方式,在所述从核20 执行所述运算任务的过程中,所述主核201 为保持状态,即反复检测所述主存205或核内存储器中是否写有该标志信号,因此主核201 此时并没有执行其他进程。本实施例中所述的多核处理器还具有另一种工作模式,仍然参考图2,所述从核阵列204中的某一从核20 用于向所述主核201发送主从通信信号,请求所述主核进行代理服务;所述主核201在处理完所述代理服务后,将所述代理服务的完成标志和结果保存在所述主核201与从核20 共享的存储空间中,如保存在主存205或从核20 的核内存储器中。在一具体实施例中,可以由某一从核20 执行主函数,在执行过程中,若需要执行访问I/O等操作,由于所述从核20 为精简结构,不能完成该操作,因此向所述主核201发送主从通信信号,请求代理服务;所述主核201访问I/O后,将完成标志和访问获取的结果保存在所述主核201与从核20 共享的存储空间中。与前述工作模式类似,所述主从通信信号可以为中断信号,或是由所述从核20 在主核201与该从核20 共享的存储空间中写入标志信号,具体过程参见上文,这里不再赘述。本实施例的多核处理器提供了两种工作模式,从核20 可以由主核201控制完成主核201分配的运算任务,也可以独立运行而请求主核201进行代理服务,提高了在实际应用中的灵活性。此外,本实施例的多核处理器中的主核201、第一互连结构202、从核互连结构203 和从核阵列204集成在同一芯片上,对计算任务进行共同的协调处理,因而对于外部电路而言,本实施例的多核处理器相当于一个性能得到了较大提升的处理器。所述主核201和从核阵列204中的各个从核20 异构,主核201为通用处理器核,从核20 为微结构和指令集经过精简优化的处理器核,从而兼顾了通用控制功能和单位面积的运算处理能力,提高了整个多核处理器的计算密度,实现了通用控制功能和高计算密度的均衡。图4示出了本发明实施例的相互通信的两从核之间的连接结构示意图,如图4所示,从核301和从核302之间需要进行数据传输,其中,从核301为发送方,而从核302为接收方,每一从核内部都包括通信发送单元和通信接收缓冲单元,为了清楚的示出通信过程的数据传输,图4中从核301中仅示出了通信发送单元301b,所述通信发送单元301b用于将发送数据传输至所述从核互连结构303 ;从核302中仅示出了通信接收缓冲单元302b,所述通信接收缓冲单元302b用于经由所述从核互连结构303获取接收数据并进行缓存。具体的,从核301向所述从核互连结构303发送通信请求,请求将数据发送至从核302,所述从核互连结构303经过仲裁,若无优先级更高的其他通信过程占用,则建立从核301至从核302的通信通路。所述从核301中的发送数据由通用寄存器文件(register file) 301a传输至所述通信发送单元301b,并经由所述从核互连结构303传输至从核302 的通信接收缓冲单元302b,所述通信接收缓冲单元302b获取所述发送数据后,将其作为接收数据进行缓存,直至所述从核302空闲时将该接收数据传输至从核302的通用寄存器文件30 ,之后,从核302对所述接收数据进行进一步的处理。所述通信接收缓冲单元302b 可以为一先入先出寄存器(FIF0,First In First Out),对接收到的接收数据进行缓存,并将先接收到的数据先发送至所述通用寄存器文件30加。图5示出了本发明实施例的实现同步的多个从核之间的连接结构示意图,为了清楚的示出同步过程,图5中仅示出了需参与同步的各个从核(即从核401a至从核401η) 及同步单元402,略去了主核、第一互连结构以及从核互连结构。所述同步单元402用于接收所述各个从核产生的同步请求信号,所述同步请求信号包括需参与同步的从核信息, 本实施例中,所述需参与同步的从核信息为从核401a至从核401η,在具体应用中,可以为相应的各从核的地址或者编号;所述同步单元402在接收到全部需参与同步的从核发出的同步请求后,产生同步完成信号并发送至所述需参与同步的从核,本实施例中,所述同步单元402接收到从核401a发出的同步请求信号,其中包括了需参与同步的从核信息,即从核 401a至从核401η,则所述同步单元402获知当前需参与同步的从核包括从核401a至从核 401η,因此,当接收到所述待同步从核即从核401a至从核401η发送的同步请求信号后,向从核401a至从核401η发送同步完成信号。在一具体实施例中,主核将一运算任务分配至所述从核40Ia至40In共同执行,由于运算过程中的数据依赖性等问题,需要对各个从核进行同步,以使得各从核处于一个可以预知的状态,并在此基础上完成数据的同步、交互从而继续进行后续的运算。因此,若某一从核在执行到一同步指令后,发出同步请求信号后,该从核进入待机保持状态,不再继续运行后续的程序,直至各个需参与同步的从核都执行到程序中的同步指令并发出同步请求信号,相应的,所述同步单元402发出同步完成信号,当各个从核接收到所述同步完成信号后,同步跳出待机保持状态并继续执行后续的程序。另外,本实施例的多核处理器还包括数据流引擎(图中未示出),所述数据流引擎由所述主核201或从核20 触发,控制至少一个从核20 与主存之间进行批量的数据传输。在一具体实施例中,所述数据流引擎挂接在所述第一互连结构202和从核互连结构 203上,用于控制主存205与从核阵列204之间的数据传输,如受所述主核201或某一从核 20 触发,将主存205中的某一数据段同时读入,并依次存储于多个从核20 的核内存储器中,即相当于将多个从核20 的核内存储器拼接在一起共同存储读取自主存205中的数据段。由于任意两从核20 之间可以通过所述从核互连结构203进行通信,因此,若某一从核20 需要读取数据时,可以优先在整个从核阵列204中搜索相应的数据,而不是直接访问主存20 ,因此进一步避免了主存205的接口瓶颈问题。图6示出了本发明实施例的指令预取单元与多个从核间的连接结构示意图,图6 中仅示出了当前需要进行指令预取的多个从核501a至501η、指令预取单元502以及主存 503,略去了主核、第一互连结构以及从核互连结构,需要说明的是,所述指令预取单元502 并不是直接连接于主存503上的,而是通过所述第一互连结构来访问主存503的。本实施例中,所述指令预取单元502用于接收所述从核501a至从核501η的预取请求并进行合并,获取与所述合并后的预取请求对应的指令并根据所述预取请求提供给各从核。具体的,所述指令预取单元502包括取指控制单元50 和指令缓存502b,其中,所述取值控制单元用于接收所述从核501a至从核501η的预取请求并进行合并,例如,从核 501a的预取请求中包括预取指令段1至指令段5,从核501b的预取指令中包括预取指令段 3至指令段7,则合并后的预取请求中包括预取指令段1至指令段7,之后,在所述指令缓存 502b中搜索与所述合并后的预取请求对应的指令(即指令段1至指令段7),如果所述指令缓存502b中并不包括相关的指令,则所述取指控制单元50 控制所述指令缓存502b从主存503中获取与所述合并后的预取指令对应的指令(即指令段1至指令段7),之后所述指令缓存502b将各指令发送至对应的从核,即向从核501a提供指令段1至指令段5,向从核 501b提供指令段3至指令段7。图7示出了本发明实施例的多核处理器组的一种连接结构示意图,包括多个上述实施例中所述的多核处理器601以及第二互连结构602,所述第二互连结构602用于各多核处理器601之间的通信,可以为总线结构或交叉开关。在一具体通信过程中,可以为其中某一多核处理器601中的某一主核经由其中的第一互连结构发出通信请求,或某一从核经由第一互连结构与从核互连结构发出通信请求,请求与另一多核处理器601中的某一主核或从核进行通信,所述第二互连结构602获取该通信请求,进行仲裁后,建立二者之间的通信通路,并且对所述另一多核处理器601中的第一互连结构或第一互连结构与从核互连结构进行相应的配置,使得所述某一多核处理器601中的某一主核或从核与另一多核处理器 601中的某一主核或从核之间建立通信通路,实现通信过程。由于该多核处理器组中集成了多个多核处理器,且位于同一芯片中,进一步提高了计算密度和运算处理能力。图8示出了本实施例的多核处理器组的另一种连接结构示意图,包括多个上述实施例中的多核处理器601以及第二互连结构602’,所述第二互连结构602’为环网(ring)。综上,本技术方案的多核处理器采用两级互连结构,其中第一互连结构用于主核与从核阵列间的通信,而从核互连结构用于所述从核阵列中任意两从核间的通信,减少了多个处理器核共用同一总线造成的通信冲突,提高了通信效率。另外,所述从核阵列中的各个从核包括各自独立的核内存储器,用于对指令和/ 或数据进行暂存,避免了多个从核频繁访问主存,改善了主存接口的瓶颈问题。进一步的,本技术方案中的从核具有两种运行方式,可以受主核控制以处理主核分配的运算任务,也可以独立运行由主核提供代理服务,具有较大的应用灵活性。进一步的,本技术方案中的主核为通用处理器核,具有较好的适用性和兼容性,从核具有精简结构和优化指令集,能够在有限的面积提供超高的计算性能,使得整个多核处理器取得了易用性和高性能的均衡。进一步的,本技术方案中的从核包括通信发送单元和通信接收缓冲单元,用于任意两从核间的通信,进一步提高了从核间的通信效率。更进一步的,本技术方案中的多核处理器包括同步单元,用于多个从核间的同步, 提高了同步速率。进一步的,本技术方案的多核处理器包括数据流引擎,控制至少一个从核与主存之间进行批量的数据传输,提高了数据读写的效率。进一步的,本技术方案中的多核处理器包括指令预取单元,将多个从核的预取请求合并后再进行指令预取操作,以便于向需求相同指令的从核同时装载指令,提高了指令预取的效率。本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。
权利要求
1.一种多核处理器,其特征在于,包括至少一个主核、至少一个从核阵列、第一互连结构和从核互连结构,所述从核阵列包括多个从核,所述从核与主核异构,其中,所述第一互连结构和从核互连结构用于所述主核与所述从核阵列间的通信,所述从核互连结构还用于所述从核阵列中任意两从核间的通信。
2.如权利要求1所述的多核处理器,其特征在于,所述主核与所述从核阵列间的通信包括所述主核用于将计算任务分配给所述从核阵列中的至少一个从核;所述从核用于在完成所述计算任务后,向所述主核发送主从通信信号,并将所述计算任务的运算结果保存在所述主核与从核共享的存储空间中。
3.如权利要求1所述的多核处理器,其特征在于,所述主核与所述从核阵列间的通信包括所述从核用于向所述主核发送主从通信信号,请求所述主核进行代理服务;所述主核用于在处理完所述代理服务后,将所述代理服务的完成标志和结果保存在所述主核与从核共享的存储空间中。
4.如权利要求2或3所述的多核处理器,其特征在于,所述从核向所述主核发送的主从通信信号为中断信号。
5.如权利要求2或3所述的多核处理器,其特征在于,所述从核向所述主核发送的主从通信信号为所述从核向所述主核与从核共享的存储空间写入标志信号。
6.如权利要求2或3所述的多核处理器,其特征在于,所述从核包括核内存储器,所述主核与从核共享的存储空间包括主存和/或从核的核内存储器。
7.如权利要求1所述的多核处理器,其特征在于,所述第一互连结构还用于所述主核对主存的数据访问。
8.如权利要求1所述的多核处理器,其特征在于,所述第一互连结构和从核互连结构还用于所述从核阵列对主存的数据访问。
9.如权利要求1所述的多核处理器,其特征在于,所述从核包括核内存储器,所述核内存储器用于存储指令和/或数据。
10.如权利要求9所述的多核处理器,其特征在于,所述从核互连结构还用于所述从核阵列中多个从核的核内存储器间的数据访问。
11.如权利要求1所述的多核处理器,其特征在于,所述从核具有精简结构和优化指令集。
12.如权利要求1所述的多核处理器,其特征在于,所述从核互连结构为总线结构、格栅网络或交叉开关。
13.如权利要求1所述的多核处理器,其特征在于,所述从核还包括通信发送单元和通信接收缓冲单元,所述通信发送单元用于将发送数据传输至所述从核互连结构,所述通信接收缓冲单元用于经由所述从核互连结构获取接收数据并进行缓存。
14.如权利要求1所述的多核处理器,其特征在于,还包括同步单元,用于接收所述从核产生的同步请求信号,所述同步请求信号包括需参与同步的从核信息,所述同步单元在接收到全部需参与同步的从核发出的同步请求信号后产生同步完成信号,并发送至所述需参与同步的从核。
15.如权利要求1所述的多核处理器,其特征在于,所述从核包括核内存储器,所述多核处理器还包括数据流引擎,所述数据流引擎由所述主核或从核触发,控制至少一个从核与主存之间进行批量数据传输。
16.如权利要求1所述的多核处理器,其特征在于,还包括指令预取单元,用于接收所述从核的预取请求并进行合并,获取与所述合并后的预取请求对应的指令并根据所述预取请求提供给各从核。
17.如权利要求16所述的多核处理器,其特征在于,所述指令预取单元包括取指控制单元和指令缓存,所述取指控制单元用于接收所述从核的预取请求并进行合并,在所述指令缓存中搜索与所述合并后的预取请求对应的指令或控制所述指令缓存从主存中获取与所述合并后的预取请求对应的指令,所述指令缓存用于存储指令并向所述从核提供与其发出的预取请求对应的指令。
18.如权利要求1所述的多核处理器,其特征在于,所述主核为通用处理器核。
19.如权利要求1所述的多核处理器,其特征在于,所述第一互连结构为总线结构。
20.如权利要求1所述的多核处理器,其特征在于,所述多核处理器集成于同一芯片上。
21.一种多核处理器组,其特征在于,包括多个如权利要求1至20中任一项所述的多核处理器; 第二互连结构,用于所述多个多核处理器间的通信。
22.如权利要求21所述的多核处理器组,其特征在于,所述第二互连结构为总线结构、 环网或交叉开关。
23.如权利要求21所述的多核处理器组,其特征在于,所述多核处理器组集成于同一芯片上。
全文摘要
一种多核处理器及多核处理器组,包括至少一个主核、至少一个从核阵列、第一互连结构和从核互连结构,所述从核阵列包括多个从核,所述从核与主核异构,其中,所述第一互连结构和从核互连结构用于所述主核与所述从核阵列间的通信,所述从核互连结构还用于所述从核阵列中任意两从核间的通信,作为一个优选的技术方案,所述主核为通用处理器核,所述从核为微结构和指令集经过精简优化的处理器核,且所述多核处理器集成在同一芯片上。本发明改善了处理器核之间的通信效率,提高了整个多核处理器的计算密度,实现了通用控制功能和高计算密度的均衡。
文档编号G06F9/50GK102446158SQ20101050884
公开日2012年5月9日 申请日期2010年10月12日 优先权日2010年10月12日
发明者吕晖, 李宏亮, 胡苏太, 谢向辉, 过锋, 郑方 申请人:无锡江南计算技术研究所