A method and device for eliminating explicit control flow instructions (for example, branch instructions) from atomic instruction blocks according to block based instruction collective architecture (ISA) are disclosed. In one example disclosed in the explicit data graph execution (EDGE) ISA processor is configured to obtain instructions from the memory block and perform at least one block of instruction blocks, each instruction instruction blocks in the block is encoding into having one or more exit points, the next instruction block the goal position of the one or more exit point. Processor control circuit for evaluation of one or more predicate in the instruction block in the first block of instructions in the instruction encoding, and control instructions to the second processor block transfer target position based on the assessment of the location of the target is not controlled by the first instruction in the block specified by the instruction stream.
【技术实现步骤摘要】
【国外来华专利技术】用于处理器控制传送的目标位置的确定
技术介绍
由于由摩尔定律预测的晶体管尺寸的持续变化,微处理器已经从晶体管计数、集成电路成本、制造资本、时钟频率和能量效率的持续增益中受益,其中在相关联的处理器指令集体系架构(ISA)中几乎没有改变。然而,过去40年来推动半导体产业发展的光刻缩放带来的益处正在放缓甚至被扭转。多年来,精简指令集计算(RISC)体系架构一直是处理器设计的主要范例。无序超标量实现方式在面积或性能方面没有表现出持续改进。因而,在处理器ISA方面,有充分的机会来扩展性能改善。
技术实现思路
公开了用于以基于块的处理器指令集体系架构(BBISA)来编码和执行指令块的方法、装置和计算机可读存储设备,包括:确定用于传送处理器控制的目标位置。在所公开的技术的某些示例中,基于块的处理器执行作为原子块的多个两个或更多指令。基于块的指令可以被用来以更显式方式来表达程序数据流和/或指令流的语义,从而允许改善编译器和处理器性能。在所公开的技术的某些示例中,基于块的处理器包括多个基于块的处理器核。所描述的用于改善处理器性能的解决方案的技术和工具可以分开实现,或者以彼此的各种组合实现。如下文将更全面描述的,所描述的技术和工具可以在信号处理器、微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)中实现的微处理器、可编程逻辑或其他适当的逻辑电路中实现。对于本领域普通技术人员而言显而易见的是,所公开的技术可以在各种计算平台中实现,这些计算平台包括但不限于服务器、大型机、手机、智能电话、PDA、手持式设备、手持式计算机、PDA、触摸屏平板设备、平板电脑、可穿戴式电脑和膝上型电 ...
【技术保护点】
一种包括基于块的指令集体系架构(ISA)处理器的装置,所述装置包括:存储器;一个或多个处理器核,其被配置为从所述存储器获取多个指令块并且执行所述多个指令块中的当前指令块,所述当前指令块具有若干一个或多个退出点;以及控制逻辑电路,其被配置为将所述处理器的控制从所述当前指令块传送到由所述当前指令块的退出点中的一个退出点所确定的目标位置处的下一指令块。
【技术特征摘要】
【国外来华专利技术】2015.06.26 US 14/752,6601.一种包括基于块的指令集体系架构(ISA)处理器的装置,所述装置包括:存储器;一个或多个处理器核,其被配置为从所述存储器获取多个指令块并且执行所述多个指令块中的当前指令块,所述当前指令块具有若干一个或多个退出点;以及控制逻辑电路,其被配置为将所述处理器的控制从所述当前指令块传送到由所述当前指令块的退出点中的一个退出点所确定的目标位置处的下一指令块。2.根据权利要求1所述的装置,其中所述当前指令块包括比用于所述当前指令块的退出点数目少的至少一个控制流指令。3.根据权利要求1所述的装置,其中所述控制逻辑电路被配置为向所述目标位置处的所述下一指令块传送所述处理器的控制,其中所述目标位置未被所述当前指令块中的控制流指令编码。4.根据权利要求3所述的装置,其中所述控制逻辑电路被配置为确定所述目标位置在紧接着所述当前指令块之后的地址处。5.根据权利要求1所述的装置,其中所述控制逻辑电路被配置为至少部分地基于在用于所述当前指令块的指令头部中编码的退出类型信息,来确定所述下一指令块的所述目标位置。6.根据权利要求5所述的装置,还包括:核调度器,其被配置为映射所述指令块以供在所述处理器核中的相应处理器核上执行,所述核调度器被配置为至少部分地基于所述退出类型信息,来推测地执行至少一个控制流指令。7.根据权利要求1所述的装置,其中:所述当前指令块包括相较于用于所述当前指令块的退出点数目而言较少的至少一个控制流指令,所述较少的至少一个控制流指令包括以下至少一项或多项:分支、跳转、过程调用、或过程返回;所述较少的至少一个控制流指令中的每个控制流指令有条件地或无条件地基于用于所述控制流指令中的至少一个控制流指令的谓语;以及所述较少的至少一个控制流指令中的每个控制流指令指示作为相对地址或绝对地址的目标位置。8.根据权利要求1所述的装置,其中所述控制逻辑电路被配置为通过执行以下动作中的至少一个或多个来传送所述处理器的控制:将指示所述下一指令块的存储器位置的值存储在程序计数器寄存器中;发信号通知所述处理器核中的至少一个处理器核,以便从存储在程序计数器寄存器中的目标位置获取指令块;或者将目标位置地址写入存储器位置,并且发信号通知所述处理器核中的至少一个处理器核,以便从由所述存储器...
【专利技术属性】
技术研发人员:D·C·伯格,A·L·史密斯,J·S·格雷,
申请(专利权)人:微软技术许可有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。