首页> 外国专利> Instruction fetch on demand for uncacheable memory which avoids memory mapped I/O side effects in a processor with speculative instruction fetch

Instruction fetch on demand for uncacheable memory which avoids memory mapped I/O side effects in a processor with speculative instruction fetch

机译:按需获取不可缓存内存的指令,从而避免了使用推测性指令获取的处理器中的内存映射I / O副作用

摘要

A computer system includes an instruction prefetching mechanism that detects whether an instruction to be prefetched is located in a region of memory that is uncacheable. To perform an instruction prefetch, an instruction fetch unit (IFU) receives an instruction pointer indicating a memory location containing an instruction to be prefetched. The instruction pointer may be provided by a branch target buffer (BTB) as a result of a branch prediction, or by auxiliary branch prediction mechanisms, or actual execution. The IFU accesses an instruction translation look-aside buffer (ITLB) to determine both the physical address corresponding to the linear address of the instruction pointer and to determine an associated memory type stored therein. If the memory type indicates an uncacheable memory location, the IFU waits until all previous executed instructions have completed. The IFU does this by inserting a "permission-to-fetch" instruction, and then stalling. The IFU remains stalled until either the permission-to-fetch instruction retires or until a branch misprediction is detected. Once a branch misprediction is detected, the permission-to-fetch instruction and all other instructions issued subsequent to the mispredicted branch are squashed. If no previous branch mispredictions are detected, the permission-to- fetch instruction eventually retires, the instruction pointer is reset based on the correct branch, and prefetching continues.
机译:一种计算机系统,包括指令预取机制,该指令预取机制检测要预取的指令是否位于不可缓存的存储器区域中。为了执行指令预取,指令取回单元(IFU)接收指示包含要预取的指令的存储器位置的指令指针。指令指针可以由分支目标缓冲器(BTB)作为分支预测的结果来提供,或者由辅助分支预测机制或实际执行来提供。 IFU访问指令转换后备缓冲器(ITLB),以确定与指令指针的线性地址相对应的物理地址,并确定存储在其中的关联存储器类型。如果内存类型指示不可缓存的内存位置,则IFU等待直到所有先前执行的指令完成。 IFU通过插入“ permit-to-fetch”指令,然后停顿来完成此操作。 IFU保持停止状态,直到允许提取指令退出或直到检测到分支预测错误为止。一旦检测到分支预测错误,就会压缩准许指令和在预测错误的分支之后发出的所有其他指令。如果未检测到先前的分支错误预测,则最终撤消许可允许指令,并根据正确的分支重置指令指针,并继续进行预取。

著录项

  • 公开/公告号US5819079A

    专利类型

  • 公开/公告日1998-10-06

    原文格式PDF

  • 申请/专利权人 INTEL CORPORATION;

    申请/专利号US19950526540

  • 发明设计人 ASHWANI GUPTA;ANDREW F. GLEW;

    申请日1995-09-11

  • 分类号G06F9/38;

  • 国家 US

  • 入库时间 2022-08-22 02:38:27

相似文献

  • 专利
  • 外文文献
  • 中文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号