Devices and methods are disclosed for dynamic invalidation of memory access instructions such as memory storage instructions. In some examples of the disclosed technologies, one device can include memory and one or more block based processor cores. One of the cores can include an execution unit that is configured to execute the memory access instruction, and the memory access instruction includes a plurality of memory loading and / or memory storage instructions contained in the instruction block. The core can also include hardware structure, and the hardware structure stores data for at least one assertion instruction in the instruction block, which identifies whether one or more of the memory storage instructions will be sent if the condition of the assertion instruction is satisfied. The core may further include a control unit, which is configured to control the emit of the memory access instruction to the execution unit at least partly based on the hardware structure data.
【技术实现步骤摘要】
【国外来华专利技术】空指令的动态生成
技术介绍
由于摩尔定律所预测的持续的晶体管扩展,微处理器已经从晶体管数的持续增加、集成电路成本、制造资本、时钟频率、以及能量效率中收益,而相关的处理器指令集架构(ISA)却很小变化。然而,从在过去40年里驱动半导体工业的光刻扩展实现的益处正在放缓或者甚至反转。精简指令集计算(RISC)架构已经成为处理器设计中的主导典范很多年。乱序超标量实施方式尚未在面积或性能方面展现出持续改进。因此,存在对于扩展性能改进的处理器ISA改进的足够机会。
技术实现思路
公开了用于配置、操作和编译用于基于块的处理器架构(BB-ISA)(包括显式数据图执行(EDGE)架构)的代码的方法、装置和计算机可读存储设备。所描述的用于例如改进处理器性能和/或减少能量消耗的解决方案的技术和工具可以单独地、或者以彼此的各种组合来实施。如下面将更充分地描述的,所描述的技术和工具可以被实施在以下各项中:数字信号处理器、微处理器、专用集成电路(ASIC)、软处理器(例如,使用可重新配置逻辑被实施在现场可编程门阵列(FPGA)中的微处理器核)、可编程逻辑、或者其他适合的逻辑电路。如对于本领域的普通技术人员而言将容易地明显的,所公开的技术可以被实施在各种计算平台中,包括但不限于服务器、大型机、手机、智能电话、PDA、手持式设备、手持式计算机、PDA、触摸屏平板设备、平板计算机、可穿戴计算机、以及膝上型计算机。在所公开的技术的一个示例中,一种基于块的处理器被配置为基于硬件结构来执行存储器访问指令(例如,存储器加载和存储器存储指令),硬件结构存储指示存储器访问指令的相对排序的数据以及无效数据。无效数 ...
【技术保护点】
一种包括存储器和一个或多个基于块的处理器核的装置,所述核中的至少一个核包括:执行单元,被配置为执行存储器访问指令,所述存储器访问指令包括指令块中包含的多个存储器加载和/或存储器存储指令;硬件结构,存储用于所述指令块中的至少一个断言指令的数据,所述数据标识在所述断言指令的条件被满足的情况下所述存储器存储指令中的一个或多个存储器存储指令是否将发出;以及控制单元,被配置为至少部分地基于所述硬件结构数据来控制所述存储器访问指令向所述执行单元的发出。
【技术特征摘要】
【国外来华专利技术】2015.09.19 US 62/221,003;2015.12.23 US 14/998,1471.一种包括存储器和一个或多个基于块的处理器核的装置,所述核中的至少一个核包括:执行单元,被配置为执行存储器访问指令,所述存储器访问指令包括指令块中包含的多个存储器加载和/或存储器存储指令;硬件结构,存储用于所述指令块中的至少一个断言指令的数据,所述数据标识在所述断言指令的条件被满足的情况下所述存储器存储指令中的一个或多个存储器存储指令是否将发出;以及控制单元,被配置为至少部分地基于所述硬件结构数据来控制所述存储器访问指令向所述执行单元的发出。2.根据权利要求1所述的装置,其中所述硬件结构进一步被配置为:存储指示所述存储器访问指令中的至少一些存储器访问指令的执行排序的数据。3.根据权利要求2所述的装置,其中指示执行排序的所述数据至少部分地基于针对所述指令块中的所述存储器访问指令中的每个存储器访问指令而编码的加载/存储标识符(LSID)。4.根据权利要求2所述的装置,其中所述控制单元进一步被配置为基于所述硬件结构数据来发出一个或多个空存储指令。5.根据权利要求1所述的装置,其中所述控制单元包括存储向量寄存器,所述存储向量寄存器存储指示所述存储器访问指令中的哪些存储器访问指令已经执行的存储向量数据,并且其中所述控制单元进一步被配置为基于所述硬件结构数据来修改所述存储向量数据,以指示在所述断言指令的所述条件被满足的情况下所述存储器存储指令中的一个或多个未发出指令已经发出。6.根据权利要求1所述的装置,其中所述控制单元包括存储向量寄存器,所述存储向量寄存器存储指示所述存储器访问指令中的哪些存储器访问指令已经执行的存储向量数据,并且其中所述控制单元进一步被配置为:将所述存储向量数据与存储掩码数据相比较以确定所述存储器存储指令中的哪些存储器存储指令已经执行,所述存储掩码数据指示所述存储器访问指令中的至少一些存储器访问指令的执行排序;以及将所述存储向量数据与所述存储掩码数据相比较以确定被排序在所述存储器访问指令中的当前存储器访问指令之前的所有存储器存储指令已经执行,并且基于所述确定向所述执行单元发出所述当前存储器访问指令。7.根据权利要求1所述的装置,其中所述硬件结构中存储的所述数据由译码所述存储器访问指令的指令译码器生成。8.一种操作处理器以执...
【专利技术属性】
技术研发人员:D·C·伯格,A·L·史密斯,
申请(专利权)人:微软技术许可有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。