[发明专利]聚集页错误信令和处理有效
| 申请号: | 201180076471.5 | 申请日: | 2011-12-29 |
| 公开(公告)号: | CN104246694B | 公开(公告)日: | 2019-01-01 |
| 发明(设计)人: | B·靳兹伯格;R·罗恩;I·殴萨池依 | 申请(专利权)人: | 英特尔公司 |
| 主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38;G06F11/07;G06F13/00 |
| 代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 毛力 |
| 地址: | 美国加利*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 处理器 多页 存储器地址 指令流水线 错误信息 处理指示 地址指令 多存储器 通信接口 耦合的 信令 指令 关联 | ||
一方面的处理器包括用于处理指示多个存储器地址的多存储器地址指令的指令流水线。该处理器还包括与指令流水线耦合的多页错误聚集逻辑。该多页错误聚集逻辑用于聚集多个页错误的页错误信息,该多个页错误各自与该指令的多个存储器地址之一相关联。该多页错误聚集逻辑用于将聚集的页错误信息提供给页错误通信接口。还公开了其它处理器、装置、方法和系统。
技术领域
各实施例涉及计算机架构。具体而言,各实施例涉及计算机架构中的页错误。
背景技术
处理器通常执行访问(例如,读取和/或写入)存储器的指令。例如,这些指令可具有提供存储器位置的地址的存储器操作数。虚拟存储器管理方案通常被使用,其中这些指令指示虚拟或逻辑存储器地址,这些虚拟或逻辑存储器地址被转换成用于访问主存储器中的各个位置的物理地址。分页通常被用作存储器管理方案。分页将存储器组织成各个页。各个页可表示存储器的作为单独实体来处理的固定或可变大小的块或部分。因此,各指令对存储器操作数的访问可以表示对页的访问。分页的一个优点是它允许数据被存储在次级存储(例如,硬盘)中并在需要时被取回到主存储器中。
页错误可在指令尝试访问主存储器中没有的页时发生。例如,该指令可指示不能被映射到与该页相关联的物理地址的虚拟地址。页错误还可在该指令所尝试的访问被认为不许可时发生。这可例如在该指令尝试向只读页进行写入时发生。页错误可有效地表示由硬件(例如,处理器和/或存储器管理单元(MMU))对软件(例如,操作系统和/或页错误处理程序)发起或用信号通知的错误、中断、异常、或陷入。响应于页错误,软件(例如,页错误处理程序)可以在从页错误返回到处理器之前尝试处理该页错误。这样的页错误往往花费大量时间来解决,往往降低性能,并且一般是不合乎需要的。
一些指令具有多个存储器操作数并且尝试访问多个存储器位置。作为示例,2011年6月发布的文档参考号为319433-011的Advanced Vector ExtensionsProgramming Reference(英特尔高级向量扩展编程参考)描述了若干VGATHER指令(例如,VGATHERDPD、VGATHERQPD、VGATHERDPS、VGATHERQPS、VPGATHERDD、VPGATHERQD、VPGATHERDQ以及VPGATHERQQ)。VGATHER指令被用来使用从索引的向量中导出的存储器地址来从存储器收集或加载多个值。作为示例,VPGATHERDD/VPGATHERQD能够从存储器收集高达4或8个值。具有两个或更多个存储器操作数并尝试访问两个或更多个存储器位置的其他指令在本领域中是已知的。
图1是示出可响应于VGATHER指令101来执行的示例收集操作100的框图,VGATHER指令101指定存储器104中的多个对应页103的多个存储器地址102。VGATHER操作使用由该VGATHER指令指定的8个对应的存储器地址从8个页收集或加载8个值并将它们存储在结果打包数据104中。例如,第一存储器地址0 102-0与第一页0 103-0相对应,第二存储器地址1102-1与第二页1 103-1相对应,以此类推。因此,该VGATHER指令潜在地尝试同时访问高达8个不同页。这样的VGATHER指令/操作可在例如置换大型矩阵或以其他方式访问稀疏存储器位置时使用。
在该VGATHER指令所指示的页中的两个或更多个(或更糟地全部8个)不在存储器中时和/或对这些页的访问不许可时,可发生重大问题。具体而言,该VGATHER指令的执行可涉及两个或更多个(或更糟地潜在8个)连续页错误。用于VGATHER的当前页错误机制是连续的,伴随这些页错误的从右至左地址排序。例如,如果在VGATHER指令的执行期间,与存储器地址0、存储器地址2以及存储器地址7相对应的页不存在于物理存储器中,则第一页错误可针对存储器地址0来引起。在第一页错误已被解决之后,VGATHER指令的执行可重启并且第二页错误可针对存储器地址2来引起。在第二页错误已被解决之后,VGATHER指令的执行可重启并且第三页错误可针对存储器地址7来引起。在一些情况下,对于这样的VGATHER指令,高达8个连续页错误可被引起。类似地,各种其他指令可以指定可潜在地导致两个或更多个连续页错误被引起的两个或更多个存储器地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180076471.5/2.html,转载请声明来源钻瓜专利网。





