当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于高速缓存占据确定和指令调度的方法和装置制造方法及图纸

技术编号:13078877 阅读:55 留言:0更新日期:2016-03-30 12:46
装置和方法用于确定一个或多个操作所需要的数据是否存储在高速缓存中并且基于所述确定调度操作以供执行。例如,处理器的一个实施例包括:包括至少1级(L1)高速缓存的分层级的高速缓存级,用于对数据进行缓存;高速缓存占据确定逻辑,用于确定与一个或多个随后操作相关联的数据是否存储在一个高速缓存级中;以及调度逻辑,用于基于与随后操作相关联的数据是否存储在高速缓存级中的确定来调度随后操作的执行。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术大体设及计算机处理器的领域。更具体地,本专利技术设及用于高速缓存占据 确定和指令调度的装置和方法。
技术介绍
数据高速缓存未命中导致程序代码的低效执行,因为如果执行操作所需要的数据 没有存储在高速缓存中,则必须花费大量时间(例如微处理器周期)来从存储器检索数据。 对该问题之前的一种解决方案是数据预取,其中提供显式架构支持W预计将需要的数据并 且预取该数据W缓存。另一解决方案是使用高速缓存遗忘和高速缓存意识算法,其确定如 何优化存储器中的数据结构的布局,而不使用任何特殊的架构支持或交互。【附图说明】 从结合W下各图的W下详细描述,可W得到对本专利技术的更好理解,其中: 图1A是图示了根据本专利技术的实施例的示例性有序管线和示例性寄存器重命名、无序发 布(issue)/执行管线二者的框图; 图1B是图示了根据本专利技术的实施例的要包括在处理器中的有序架构核的示例性实施 例和示例性寄存器重命名、无序发布/执行架构核二者的框图; 图2是根据本专利技术的实施例的具有集成存储器控制器和图形的多核处理器和单核处理 器的框图; 图3图示了依照本专利技术的一个实施例的系统的框图; 图4图示了依照本专利技术的实施例的第二系统的框图; 图5图示了依照本专利技术的实施例的第Ξ系统的框图; 图6图示了依照本专利技术的实施例的片上系统(SoC)的框图; 图7图示了根据本专利技术的实施例的与使用软件指令转换器来将源指令集中的二进制指 令转换成目标指令集中的二进制指令形成对比的框图; 图8图示了具有用于确定高速缓存占据的逻辑的架构的一个实施例。 图9图示了用于确定高速缓存占据并且基于所述确定执行随后操作的方法的一个实施 例。 图10图示了用于确定高速缓存占据并且基于所述确定执行来自工作队列的工作项目 的方法的一个实施例。【具体实施方式】 在W下描述中,出于解释的目的,阐述众多具体细节W便提供对下文描述的本发 明的实施例的透彻理解。然而,本领域技术人员将清楚的是,本专利技术的实施例可W在没有运 些具体细节中的一些的情况下实践。在其他实例中,W框图形式示出公知的结构和设备W 避免使本专利技术的实施例的底层原理模糊。 巧00引示例性处理器架构和数据类型 图1A是图示了根据本专利技术的实施例的示例性有序管线和示例性寄存器重命名、无序发 布/执行管线二者的框图。图1B是图示了根据本专利技术的实施例的要包括在处理器中的有序 架构核和示例性寄存器重命名、无序发布/执行架构核的示例性实施例二者的框图。图1A-1B中的实线框图示了有序管线和无序管线,而虚线框的可选添加图示了寄存器重命名、无 序发布/执行管线和核。在给定有序方面是无序方面的子集的情况下,将描述无序方面。 在图1A中,处理器管线100包括获取级102、长度解码级104、解码级106、分配级 108、重命名级110、调度(还称为分派或发布)级112、寄存器读取/存储器读取级114、执行级 116、回写/存储器写入级118、异常处置级122和提交级124。 图1B示出了处理器核190,其包括禪合到执行引擎单元150的前端单元130,并且运 两者都禪合到存储器单元170。核190可W是精简指令集计算(RISC)核、复杂指令集计算 (CISC)核、超长指令字(VLIW)核或者混合型或可替换核类型。作为又一选项,核190可W是 专用核,诸如例如网络或通信核、压缩引擎、协处理器核、通用计算图形处理单元(GPGPU) 核、图形核等等。 前端单元130包括禪合到指令高速缓存单元134的品牌预测单元132,指令高速缓 存单元134禪合到指令转换后备缓冲器(TLB)136,指令转换后备缓冲器(TLBH36禪合到指 令获取单元138,指令获取单元138禪合到解码单元140。解码单元140(或解码器)可W解码 指令,并且作为输出生成一个或多个微操作、微代码入口点、微指令、其他指令或其他控制 信号,其从原始指令解码或者W其他方式反映原始代码或者从原始代码导出。解码单元140 可W使用各种不同机制实现。适当机制的示例包括但不限于查找表、硬件实现、可编程逻辑 阵列(PLA)、微代码只读存储器(ROM)等等。在一个实施例中,核190包括微代码ROM或者存储 用于某些宏指令的微代码的其他介质(例如在解码单元140中或者W其他方式在前端单元 130内)。解码单元140禪合到执行引擎单元150中的重命名/分配器单元152。 执行引擎单元150包括禪合到引退单元154和一个或多个调度器单元156的集合的 重命名/分配器单元152。(多个)调度器单元156表示任何数目的不同调度器,包括预留站、 中央指令窗口等。(多个)调度器单元156禪合到(多个)物理寄存器文件单元158。(多个)物 理寄存器文件单元158中的每一个表示一个或多个物理寄存器文件,其中的不同物理寄存 器文件存储一个或多个不同数据类型,诸如标量整数、标量浮点数、封包整数、封包浮点数、 矢量整数、矢量浮点数、状态(例如,作为要执行的下一指令的地址的指令指针)等等。在一 个实施例中,(多个)物理寄存器文件单元158包括矢量寄存器单元、写入掩码寄存器单元W 及标量寄存器单元。运些寄存器单元可W提供架构矢量寄存器、矢量掩码寄存器和通用寄 存器。(多个)物理寄存器文件单元158与引退单元154重叠 W说明其中可W实现寄存器重命 名和无序执行的各种方式(例如使用(多个)重新排序缓冲器和(多个)引退寄存器文件;使 用(多个)将来文件、(多个)历史缓冲器和(多个)引退寄存器文件;使用寄存器图和寄存器 池;等等)。引退单元154和(多个)物理寄存器文件单元158禪合到(多个)执行群簇160。(多 个)执行群簇160包括一个或多个执行单元162的集合和一个或多个存储器访问单元164的 集合。执行单元162可W在各种类型数据(例如标量浮点数、封包整数、封包浮点数、矢量整 数、矢量浮点数)上执行各种操作(例如移位、加法、减除、乘法)。尽管一些实施例可W包括 专用于具体功能或功能集合的数个执行单元,但是其他实施例可W包括仅一个执行单元或 者全部执行所有功能的多个执行单元。(多个)调度器单元156、(多个)物理寄存器文件单元 158和(多个)执行群簇160被示为可能是复数个,因为某些实施例创建用于某些类型数据/ 操作的分离管线(例如标量整数管线、标量浮点数/封包整数/封包浮点数/矢量整数/矢量 浮点数管线,和/或存储器访问管线,每一个具有其自身的调度器单元、(多个)物理寄存器 文件单元和/或执行群簇一一并且在分离存储器访问管线的情况下,实现其中仅该管线的 执行群簇具有(多个)存储器访问单元164的某些实施例)。还应当理解到,在使用分离管线 的情况下,运些管线中的一个或多个可W是无序发布/执行并且其余为有序的。 存储器访问单元164的集合禪合到存储器单元170,其包括禪合到数据高速缓存单 元174的数据化B单元172,数据高速缓存单元174禪合到2级化2)高速缓存单元176。在一个 示例性实施例中,存储器访问单元164可W包括加载单元、存储地址单元和存储数据单元, 其中每一个禪合到存储器单元170中的数据化B单元172。指令高速缓存单元134还禪合到存 储器单元170中的2级化2)高速缓存单元176dL2高速缓存本文档来自技高网...

【技术保护点】
一种处理器,包括:包括至少1级(L1)高速缓存的分层级的高速缓存级,用于对数据进行缓存;高速缓存占据确定逻辑,用于确定与一个或多个随后操作相关联的数据是否存储在一个高速缓存级中;以及调度逻辑,用于基于与随后操作相关联的数据是否存储在高速缓存级中的确定来调度随后操作的执行。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:A扎克斯R瓦伦蒂内A纳基斯
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1