当前位置: 首页 > 专利查询>ARM有限公司专利>正文

转发对监听请求的响应制造技术

技术编号:18710958 阅读:19 留言:0更新日期:2018-08-21 22:41
本公开涉及转发对监听请求的响应。提供了一种数据处理装置,其包括用于接收关于代表请求节点的所请求的数据的监听请求的接收电路。监听请求包括对关于是否将要发生转发的指示。发送电路发送对监听请求的响应,并且缓存电路缓存至少一个数据值。当将要发生转发并且该至少一个数据值包括所请求的数据时,该响应包括所请求的数据并且发送电路将响应发送至请求节点。

Forwarding response to monitoring requests

This disclosure relates to forwarding responses to listening requests. A data processing apparatus includes a receiving circuit for receiving a listening request for data requested on behalf of the requesting node. The listener request includes instructions for whether or not forwarding will occur. The sending circuit sends the response to the monitoring request and caches the circuit to cache at least one data value. When forwarding is about to occur and the at least one data value includes the requested data, the response includes the requested data and the sending circuit sends the response to the requesting node.

【技术实现步骤摘要】
转发对监听请求的响应
本公开涉及数据处理。更具体地,本公开涉及缓存。
技术介绍
在多处理器系统中,可能具有许多节点或处理器,每个节点或处理器具有它们自己的(一个或多个)缓存。这些节点可连接至一个或多个共享缓存或存储器。因此,特定数据值可位于共享缓存或存储器之一中或位于处理器之一的本地缓存中。因此,当节点想要访问数据值时,获得来自另一节点的数据有时为必要的。这通过请求器向所谓的归属节点发送请求来实现,这维持了整个系统中数据的一致性。随后归属节点向可能具有所请求的数据的节点发送一或多个监听请求。若那些节点中的一个具有数据,则它们可将数据返回至归属节点,该归属节点将数据返回至请求器。然而,此过程涉及若干通信的交换,其可能花费时间来解决。
技术实现思路
从第一示例性配置来看,提供了一种数据处理装置,包括:接收电路,用于接收关于代表请求节点的所请求的数据的监听请求,该监听请求包括对关于是否将要发生转发的指示;发送电路,用于发送对该监听请求的响应;以及缓存电路,用于缓存至少一个数据值,其中当将要发生转发并且该至少一个数据值包括该所请求的数据时,该响应包括该所请求的数据并且该发送电路将该响应发送至该请求节点。从第二示例性配置来看,提供了一种数据处理装置,包括:接收电路,用于接收来自请求节点的关于所请求的数据的数据请求;以及发送电路,用于向另一节点发送监听请求,其中该监听请求包括:该请求节点的标识符、对该所请求的数据的引用、以及对当该所请求的数据被缓存在该另一节点处时,是否将直接从该另一节点到该请求节点发生转发的指示。从第三示例性配置来看,提供了一种数据处理方法,包括:缓存至少一个数据值;接收关于代表请求节点的所请求的数据的监听请求,该监听请求包括关于是否将要发生转发的指示;以及发送对该监听请求的响应,其中当将要发生转发并且该至少一个数据值包括该所请求的数据时,该响应包括该所请求的数据并且将该响应发送至该请求节点。附图说明本专利技术将参照如附图所示的本专利技术的实施例来仅通过示例的方式进一步描述,在附图中:图1示出了根据一个实施例的包括数据处理装置的系统;图2示出了根据一个实施例的归属节点及两个请求器节点;图3示出了根据一个实施例的归属节点与两个请求器节点之间的一系列事务;图4示出了根据一个实施例的归属节点与两个请求器节点之间的一系列事务;图5示出了根据一个实施例的归属节点与两个请求器节点之间的一系列事务;以及图6以流程图形式示出了根据一个实施例的通过请求器节点进行数据处理的方法。具体实施方式在参照附图讨论实施例之前,提供了对实施例的以下描述。根据一个示例性配置,提供了一种数据处理装置,包括:接收电路,用于接收关于代表请求节点的所请求的数据的监听请求,该监听请求包括对关于是否将要发生转发的指示;发送电路,用于发送对该监听请求的响应;以及缓存电路,用于缓存至少一个数据值,其中当将要发生转发并且该至少一个数据值包括该所请求的数据时,该响应包括该所请求的数据并且该发送电路将该响应发送至该请求节点。根据上文,监听请求自身包括对是否将要发生转发过程的指示。此可以是将要发生转发(若默认为不执行转发)的指示或者将不发生转发(若默认为执行转发)的指示。当转发发生时,数据处理装置(其可以是另一主/请求节点并且在此描述中还称作响应节点)将所请求的数据(若存在)直接转发至发布对该数据的请求的请求节点。因此,若数据在响应节点处可用,则数据不需要被发送回归属节点并从归属节点前进到请求节点。因此,这使得可以减少当请求节点发布对由响应节点持有的数据的请求时所涉及的延迟。监听请求由归属节点响应于请求节点请求访问数据而生成。归属节点可以生成监听请求以确定数据是否由系统内的另一节点(诸如响应节点)持有。例如,从响应节点访问数据可能比经由主系统存储器来访问数据更快。在一些实施例中,从归属节点接收该监听请求;并且当禁止发生转发时,该响应包括该所请求的数据并且该发送电路将该响应发送至该归属节点。当将不发生转发(通过默认或者通过指示)时,不是向请求节点转发响应,而是响应节点将响应发送至归属节点。在一些实施例中,从归属节点接收该监听请求;并且当将要发生转发并且该至少一个数据值包括该所请求的数据时,该发送电路另外向该归属节点发送完成通知以指示已经完成该监听请求。除了将响应发送至请求节点之外,响应节点还可以向归属节点发送完成通知以指示已经通过由响应节点执行的转发动作完成了该监听请求。结果,归属节点不需要继续发布监听请求,并且可以避免需要访问主系统存储器以取回由请求节点初始请求的数据。在一些实施例中,该监听请求包括对该请求节点的指示。通过在监听请求中包括对请求节点的指示,响应节点能够确定系统内的各个节点中的哪个节点最初请求了该数据。这使得在需要任意中间节点的情况下,响应节点可以直接将对监听请求的响应发送至相关的请求节点。所提议的方案允许互连(例如,归属节点)来使用其自己的标识符(不同于从请求节点120发送的标识符),以便与监听目标(例如,响应节点130)进行通信。为了使转发起作用,除其自身生成之标识符外,归属节点还必须包括由请求节点120生成的标识符。在一些实施例中,从归属节点接收到该监听请求;该监听请求包括事务标识符以标识从该请求节点到该归属节点的使得生成该监听请求的事务;并且该响应包括该事务标识符。通过包括在监听请求中提供的事务标识符(该事务标识符进而包括来自由请求节点对归属节点做出的初始请求的事务标识符),由响应节点产生的响应可以与初始数据请求相关联。以这种方式,请求节点可以确定返回的数据与任意所请求的数据之间的关系。在一些实施例中,该缓存电路包括与该至少一个数据值中的每一个相关联的缓存状态;并且该缓存状态指示数据值是下列项中的至少一项:无效、共享、自身、独占以及修改。提供各种缓存状态以便实现互连系统的各个节点之间的一致性。例如,缓存内的每个条目被提供有状态,该状态可用于指示整个系统内的数据的共享及/或修改的程度。例如,状态“无效”可用于指示缓存线不再无效并且可自由重写。缓存状态“共享”可指示数据值正在许多不同节点之间共享,但不可修改。状态“自身”可指示相关的缓存线在本地缓存中被修改。若数据尚未在存储器中更新,则此经修改的数据可与系统中的其他节点共享。状态“独占”可指以下事实:节点为系统中具有线的副本的唯一节点,但线尚未修改。最后,状态“修改”可指示节点具有系统中的缓存列的唯一副本,并且与系统中的主存储器相比,已经对该副本进行了修改。应理解,此处给出的状态仅为当前实施例能够使用的权限分配的示例。在其他实施例中,相同的权限分配可通过使用不同的缓存状态名称及/或标志来提供。例如,由英国剑桥ARM有限公司创造的AMBA规范描述了不同的分类,例如,“无效”、“原始/变更(clean/dirty)”、以及“唯一/共享”。这最后两个选项可组合成任意组合以提供总共五种不同的状态。在本描述的其余部分通篇,将使用AMBA缓存状态。然而,本领域普通技术人员将理解的是,还可使用替代/等效的缓存状态。在一些实施例中,该监听请求指示是否将要发生转发,而不管与该所请求的数据相关联地储存在该数据处理装置处的状态。通过指示是否将要发生由响应节点执行的转发动作,并且通过这样做而不管与所请求的数本文档来自技高网...

【技术保护点】
1.一种数据处理装置,包括:接收电路,所述接收电路接收关于代表请求节点的所请求的数据的监听请求,所述监听请求包括对关于是否将要发生转发的指示;发送电路,所述发送电路发送对所述监听请求的响应;以及缓存电路,所述缓存电路缓存至少一个数据值,其中当将要发生转发并且所述至少一个数据值包括所述所请求的数据时,所述响应包括所述所请求的数据并且所述发送电路将所述响应发送至所述请求节点。

【技术特征摘要】
2017.02.08 US 15/427,3841.一种数据处理装置,包括:接收电路,所述接收电路接收关于代表请求节点的所请求的数据的监听请求,所述监听请求包括对关于是否将要发生转发的指示;发送电路,所述发送电路发送对所述监听请求的响应;以及缓存电路,所述缓存电路缓存至少一个数据值,其中当将要发生转发并且所述至少一个数据值包括所述所请求的数据时,所述响应包括所述所请求的数据并且所述发送电路将所述响应发送至所述请求节点。2.根据权利要求1所述的数据处理装置,其中,从归属节点接收到所述监听请求;并且当禁止发生转发时,所述响应包括所述所请求的数据并且所述发送电路将所述响应发送至所述归属节点。3.根据权利要求1所述的数据处理装置,其中,从归属节点接收到所述监听请求;并且当将要发生转发并且所述至少一个数据值包括所述所请求的数据时,所述发送电路另外向所述归属节点发送完成通知以指示已经完成所述监听请求。4.根据权利要求1所述的数据处理装置,其中,所述监听请求包括对所述请求节点的指示。5.根据权利要求1所述的数据处理装置,其中,从归属节点接收到所述监听请求;所述监听请求包括事务标识符以标识从所述请求节点到所述归属节点的使得生成所述监听请求的事务;并且所述响应包括所述事务标识符。6.根据权利要求1所述的数据处理装置,其中,所述缓存电路包括与所述至少一个数据值中的每一个相关联的缓存状态;并且所述缓存状态指示数据值是下列项中的至少一项:无效、共享、自身、独占、修改。7.根据如权利要求1所述的数据处理装置,其中,所述监听请求指示是否将要发生转发,而不管与所述所请求的数据相关联地储存在所述数据处理装置处的状态。8.根据权利要求6所述的数据处理装置,其中,所述监听请求指示是否将要发生转发,而不管与所述所请求的数据相关联地储存在所述缓存电路中的缓存状态。9.根据权利要求1所述的数据处理装置,其中,所述监听请求通过编码一种类型的所述监听请求来指示是否将要发生转发。10.根据权利要求1所述的数据处理装置,其中,所述监听请求通过所述监听请求中的位来...

【专利技术属性】
技术研发人员:潘尼德拉·库玛·曼娜瓦布鲁斯·詹姆斯·梅休森詹姆师德·加拉克拉斯·玛格努斯·布鲁斯
申请(专利权)人:ARM有限公司
类型:发明
国别省市:英国,GB

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

1