微处理器通信的方法、处理单元及数据处理系统技术方案

技术编号:2871178 阅读:144 留言:0更新日期:2012-04-11 18:40
一种在包含多个处理器的多处理器系统中进行处理器通信的方法,其中该多个处理器中有至少一个处理器包含一个处理器通信寄存器(PCR),它向该至少一个处理器提供对PCR中所存储的信息的连续访问,该方法包含如下步骤:    从该多个处理器的一个处理器中包含的PCR的一个或多个区中提取信息,其中这些区之一被分配只供该多个处理器中的相关联的一个处理器进行存储;以及    把来自该相关联的处理器的信息存储到该多个处理器中的每个PCR中与其关联的区。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

一般地说,本专利技术涉及数据处理,特别是在数据处理系统中各处理器之间的通信。更具体地说,本专利技术涉及多处理器数据处理系统中处理器通信和协调的方法、处理单元和系统。
技术介绍
在计算机
,大家都知道通过利用多个单处理器联合的处理能力能达到更强的计算机系统性能。多处理器(MP)计算机系统能以若干不同的体系结构设计出来,其中,根据预期的设计目的、系统的性能要求以及每个应用的软件环境,可有各种设计更好地适用于特定的应用。已知的MP体系结构包括例如对称多处理器(SMP)和非均衡存储器访问(NUMA)体系结构。在共享存储器的多处理器数据处理系统中,系统中多个处理器每个都可以访问和修改共享存储器中存储的数据。为了在多处理器之间同步对存储器特定区组(例如高速缓存线)的访问,程序设计模型往往要求一个处理器在修改该区组之前获取与该区组关联的锁并在修改之后释放该锁。在SMP体系结构中,多处理器利用进、出共享存储器内可高速缓存的存储器单元的“加载”和“存储”,在互联总线上实现彼此通信。当同步多处理器系统以实现流水线或并行处理时,在各处理器之间不断地传送通信信息,以允许每个处理器与执行该进程的其他处理器协调。处理器通过高速缓存子系统内的加载和存储,传送特定的处理器信息,如处理器的状态或进程的状态。当一个处理器达到需要更新它的状态信息并将其告知其他处理器的状态时,该处理器通过获取对数据的锁来取得对该信息的排他控制以便对其进行修改。这使得持有这一信息的其他处理器使它们的副本无效,并在前述处理器已存储了其对信息的更新之后再次从存储器中加载该状态信息。这种处理器通信机制的效率是低的,因为它需要处理器不断地争夺对信息的控制,它需要从其他处理器中清空那个信息,只在已发生改变之后再重新加载,并且每当一个处理器存储该信息而其他处理器停住以等待信息更新时,它使流水线或并行处理减慢。本专利技术认识到,相对于互连耦合的处理器之间进行的小百分比和小数量的处理间通信及其他事务而言,这些低效行为消耗大量互连带宽并且使得通信延迟太高。例如,一个8路SMP系统中两个节点每个中存在的四个处理器由较高级总线耦合,而这两个节点本身由较低级总线耦合,即使对于这样一个比较简单的系统,在不同节点中的处理器之间的一个数据请求的传送将在这三条总线的每一个中产生与总线获取及其他事务有关的延迟。即使在同一节点中处理器之间进行的处理器间通信,也必须消耗较高级总线带宽并造成总线延迟。因为这种延迟只是由于增大互连层次结构的深度造成的,所以本专利技术认识到,提供一种改善的数据处理系统体系结构是人们所希望的和有益的,这一系统减小了物理上远离的处理器间通信的延迟并减小了总线带宽消耗,从而释放了总线带宽,以用于各处理器及分级存储器系统之间的一般数据传送。
技术实现思路
根据一个优选实施例,提供了处理器通信的方法、处理器和多处理器系统,其中这多个处理器中有至少一个处理器包含一个处理器通信寄存器(PCR),它向该处理器提供对其中所存储的信息的连续访问。一个处理器从这多个处理器的一个处理器中包含的PCR的一个或多个区(sector)提取信息,其中这些区之一被分配只供该多个处理器中的相关联的一个处理器进行存储;以及把来自该相关联的处理器的信息存入该多个处理器中的每个PCR中与其关联的区。在另一个实施例中,该多个处理器中至少两个处理器同时从它们各自的PCR提取信息。在又一个优选实施例中,在该多个处理器中包含的各个PCR中含有相同的信息。在又一个优选实施例中,该信息对于该多个处理器协调流水线或并行多重处理是有用的。在又一个优选实施例中,这一个或多个区的每个区被排他地分配给只供该多个处理器中的一个相关的处理器进行存储。在又一个实施例中,该一个或多个区的每个区为4字节。在又一个优选实施例中,该处理器不断地更新每个PCR中的每个区,从而使该多个处理器中的每个处理器访问它自己的PCR中存储的信息,无需从系统存储器加载这一信息。附图说明在所附权利要求中陈述了相信能表征本专利技术的新特性。然而,结合附图参考下文中对实施示例的详细描述,将能最好地理解专利技术本身以及它的优选使用方式,进一步的目的和优点,其中图1描绘根据本专利技术优选实施例的一个支持微处理器通信的多处理器数据处理系统的高级方框图;图2A显示根据本专利技术一个优选实施例的数据处理系统的一个简图中互连每个PCR的星型总线结构;图2B显示根据本专利技术优选实施例的数据处理系统的一个简图中互连每个PCR的环型总线结构;图3A和3B描绘根据本专利技术的一个优选实施例,使用PCR以便于在多处理器系统中分别进行流水线处理和并行处理的举例;图4A描绘根据本专利技术的优选实施例,具有改进的处理器通信的基于集群的数据处理网络;图4B显示根据本专利技术的一个优选实施例,在集群C1-C3中所有处理器单元内包含的处理器通信寄存器使用的数据格式;以及图5描绘根据本专利技术的一个优选实施例,利用独立的无线网络提供改进的处理器通信的数据处理系统。具体实施例方式现在参考附图,特别是参考图1,图中显示根据本专利技术的一个实施例,支持微处理器通信的多处理器(MP)数据处理系统的高级方框图。如图中所示,数据处理系统8包括若干个(例如64个)处理单元10,它们通过系统互连12耦合以进行通信。如图1的实施例中所示,处理单元10包含四个处理器单元1-4作为举例;然而,该优选实施例不受处理器单元数量的限制,本专利技术将支持任何数量或类型的处理器单元。本专利技术能在具有任何数量的处理器单元的数据处理系统中实现,例如在该多处理器系统中包括2、4、8、16、32等数量的处理器。每个处理单元10是一个包括一个或多个处理器核心14的集成电路。除了寄存器、指令流程逻辑和用于执行程序指令的执行单元外,每个处理器核心14还包括相关联的一级(L1)指令和数据高速缓存16和18,它们分别暂时缓存可能由相关联的处理器核心14访问的指令和操作数数据。如图1中进一步显示的那样,数据处理系统8的存储器分层结构还包括物理存储器22,包含一个或多个存储器模块(图中示为存储器模块36、38和40),它们构成该存储器分层结构中最低级易失性数据存储器,以及一个或多个较低级高速缓冲存储器,如芯片上二级(L2)高速缓存20,它们用于中间集结从物理存储器22到处理器核心14的指令和操作数数据。如本领域技术人员理解的那样,存储器分层结构的每个相继的较低级通常能比较高级存储更大量数据,但是具有更高的访问延迟。如图所示,物理存储器22通过存储器控制器30、32和34与互连12接口,可存储操作数数据以及一个或多个操作系统的一些部分以及一个或多个应用程序。存储器控制器30、32和34分别与相应的存储器模块36、38和40耦合并控制它们。图中还显示了输入/输出连接器52,当执行对存储器系统的直接存储器访问操作时,连接器52以与处理单元10相似的方式操作。如将理解的那样,该系统可有附加的输入/输出连接器,与输入/输出连接器52等同,连接于互连12。由于各种输入/输出设备,如盘驱动器和视频监视器,被添加到PCI总线58(或其他类似的附加总线)上或从该总线上去掉,输入/输出连接器52用于通过桥54在PCI总线58和互连12之间传送数据。本领域技术人员将会理解,数据处理系统8可包括许多额外的图中未示出的本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:R·K·阿里米利R·A·卡哥诺尼D·E·威廉斯K·L·赖特
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

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

1