用于临时加载指令的系统、设备和方法技术方案

技术编号:17144197 阅读:28 留言:0更新日期:2018-01-27 16:35
一种用于处理器的瞬时加载指令可包含与多个输入操作数并行地执行的瞬时或临时加载指令。所述临时加载指令将存储器值加载到临时位置中以用于在指令包内使用。根据一些实例,基于VLIW的微处理器架构可包含用于在单个VLIW包循环期间在写入/读取临时存储器值的临时高速缓存。所述临时高速缓存不同于正常寄存器组,正常寄存器组不允许写入并接着读取刚在同一VLIW包循环期间写入的值。

Systems, devices, and methods used for temporary loading instructions

An instantaneous loading instruction for a processor can contain instantaneous or temporary loading instructions executed in parallel with multiple input operands. The temporary loading instruction loads the memory value into the temporary position for use in the instruction package. According to some examples, the microprocessor architecture based on VLIW can contain temporary cache for writing / reading temporary memory value during the single VLIW packet cycle. The temporary cache is different from the normal register group, and the normal register group is not allowed to write and then read the values that have just been written during the same VLIW packet cycle.

【技术实现步骤摘要】
【国外来华专利技术】用于临时加载指令的系统、设备和方法
本公开大体上涉及存储器加载操作,且更确切地说,涉及用于基于超长指令字(verylonginstructionword,VLIW)的系统的临时加载向量操作。
技术介绍
在计算中,优化编译器是尝试最小化或最大化可执行计算机程序的一些属性的编译器。最常见的要求是最小化执行程序所耗费的时间;较不常见的要求是最小化所占用存储器的量。可携式计算机的发展已为最小化程序消耗的功率创造了市场。使用优化变换、算法的序列来大体上实施编译器优化,所述变换、算法取得程序并对其进行变换以产生使用更少资源的语义上等效的输出程序。在过去,计算机存储器局限性也是限制可执行那些优化的主要因素。由于所有这些因数,优化很少产生“优化”输出,而是实际上使用探试法来改善典型程序中的资源使用。在编译器优化中,寄存器分配是将大量目标程序变数分配到少量CPU寄存器上的过程。寄存器分配可在基本块上方(局部寄存器分配)、在完整函数/规程上方(全局寄存器分配)或跨越通过调用图形所遍历的函数边界(规程间寄存器分配)发生。当按函数/规程完成时,调用公约可需要围绕每一调用点插入保存/恢复。在许多编程语言中,编程器具有任意地分配许多变数的错觉。然而,在编译期间,编译器必须决定如何将这些变数分配给寄存器的小的有限集合。并非所有变数同时在使用中(或“活跃”),因此一些寄存器可分配给多于一个变数。然而,同时在使用中的两个变数无法分配给相同寄存器而不破坏其值。无法分配给某一寄存器的变数必须保持在RAM中,且针对每一读取/写入而加载/载出,此过程被称作溢出。存取RAM比存取寄存器显著地慢,并减缓编译程序的执行速度,因此优化编译器旨在向寄存器分配尽可能多的变数。寄存器压力是在存在比将最优更少的硬件寄存器时所使用的术语;更高的压力通常意味着需要更多溢出和再加载。当从存储器加载数据、仅针对一个操作需要且接着被舍弃时,这可产生寄存器压力(在展开内部回路时尤其如此),并致使难以对加载进行调度,并可能隐藏“加载到使用”时延。因此,常规系统遭受寄存器压力和最小化在本质上极其瞬时的数据的影响(仅需要针对1个循环/1个包而存在)。负荷并接着使用数据引起使用之后的写入到寄存器的时延的问题,以及针对对实际上是临时值的内容的对寄存器的使用。因此,存在对改进常规方法的方法的持续工业需求,包含特此提供的改进的方法和设备。从具体实施方式和附图较好地理解作为所述教示的特性的专利技术性特征,以及其它特征和优点。图式中的每一个仅出于说明和描述的目的提供,且并不限制本专利技术教示。
技术实现思路
以下呈现关于与本文中所公开的设备和方法相关联的一或多个方面和/或实例的简化概述。因而,不应将以下概述视为相关于所有预期方面和/或实例的详尽总览,也不应认为以下概述识别相关于所有预期方面和/或实例的关键或至关重要的要素,或描绘与任何特定方面和/或实例相关联的范围。因此,以下概述的唯一目的是以简化形式呈现与关于本文中所公开的设备和方法的一或多个方面和/或实例相关的特定概念,以先于下文所呈现的详细描述。本公开的一些实例是针对用于降低寄存器压力的系统、设备和方法,其途径是获得能在当前包,如专用“加载操作(load-op)”内立刻使用的“自由”临时寄存器,而不需要在存储器上操作的额外指令。在一个方面中,一种设备包含:存储器,其存储瞬时加载指令、第二指令和加载数据;指令寄存器,其经配置以存储所述瞬时加载指令和所述第二指令;处理器,其耦合到所述存储器和所述指令寄存器;所述处理器经配置以:从所述存储器检索所述瞬时加载指令;将所述瞬时加载指令存储于所述指令寄存器中;响应于所述瞬时加载指令而从所述存储器检索所述加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述指令寄存器中;以及使用所述加载数据来执行所述第二指令。在另一方面中,一种用于通过处理器执行存储器加载操作的方法包含:从存储器检索瞬时加载指令;将所述瞬时加载指令存储于指令寄存器中;响应于所述瞬时加载指令而从所述存储器检索加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述指令寄存器中;以及使用所述加载数据来执行第二指令。在另一方面中,一种驻留在处理器可执行计算机存储媒体上的计算机程序产品,所述计算机程序产品包括经配置以致使处理器执行以下操作的处理器可执行指令:从存储器检索瞬时加载指令;将所述瞬时加载指令存储于指令寄存器中;响应于所述瞬时加载指令而从所述存储器检索加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述指令寄存器中;以及使用所述加载数据来执行第二指令。在又一方面中,一种设备包含:用于存储瞬时加载指令、第二指令和加载数据的第一装置;用于存储所述瞬时加载指令和所述第二指令的第二装置;用于处理数据的装置,其耦合到所述用于存储的第一装置和所述用于存储的第二装置;所述用于处理数据的装置经配置以:从所述用于存储的第一装置检索所述瞬时加载指令;将所述瞬时加载指令存储于所述用于存储的第二装置中;响应于所述瞬时加载指令而从所述用于存储的第一装置检索所述加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述用于存储的第二装置中;以及使用所述加载数据来执行所述第二指令。与本文中所公开的设备和方法相关联的其它特征和优点将基于附图和详细描述而对所属领域的技术人员显而易见。附图说明呈现附图以描述本专利技术教示的实例,且附图并不是限制性的。呈现附图以辅助描述本公开的实例,且仅仅为了说明而非限制所述实例而提供附图。随着在结合附图考虑时通过参考以下具体实施方式更好地理解本公开的方面及其许多附带优点,将容易获得对本公开的方面及其许多附带优点的更全面了解,附图只是为了说明而不是限制本公开而呈现,且在附图中:图1说明根据本公开的一些实例的示范性加载指令包。图2说明根据本公开的一些实例的包含可操作以执行存储器加载操作的组件的示范性VLIW处理器架构。图3说明根据本公开的一些实例的用于存储器加载操作的方法的示范性流程图。图4是根据本公开的一些实例的包含可操作以执行存储器加载操作的组件的无线装置的示范性框图。根据惯例,附图描绘的特征可不按比例绘制。因此,为了清晰起见,可任意扩大或减小所描绘特征的尺寸。根据惯例,为了清晰起见,简化了一些附图。因此,附图可能不描绘特定设备或方法的全部组件。此外,贯穿本说明书和图式,相同参考标号表示相同特征。具体实施方式在以下描述和相关图式中公开各个方面以展示与本公开相关的具体实例。在阅读本公开之后所属领域的技术人员将显而易见替代性实例,且可在不脱离本公开的范围或精神的情况下建构并实践替代性实施例。另外,将不详细地描述或可省略熟知元件以便不混淆本文中所公开的方面和实例的相关细节。根据本公开的一些实例的高性能处理器依赖于用于在程序中采用指令级并行(也就是说,用于一次执行多于一个指令/输入操作数)的超标量和/或瞬时加载指令(例如超长指令字(VLIW))技术。这些处理器,例如ASIC208,含有多个功能单元,执行指令/输入操作数的依序串流,能够从存储器按时钟循环提取两个或多于两个指令/输入操作数,且能够依据资源的相依性和可用性按时钟循环调度两个或多于两个指令/输入操作数。这些能力由产生针对例如VLIW特征等超标量和/或瞬时加载指令特征最优化本文档来自技高网
...
用于临时加载指令的系统、设备和方法

【技术保护点】
一种设备,其包括:存储器,其存储瞬时加载指令、第二指令和加载数据;指令寄存器,其经配置以存储所述瞬时加载指令和所述第二指令;处理器,其耦合到所述存储器和所述指令寄存器;所述处理器经配置以:从所述存储器检索所述瞬时加载指令;将所述瞬时加载指令存储于所述指令寄存器中;响应于所述瞬时加载指令而从所述存储器检索所述加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述指令寄存器中;以及使用所述加载数据来执行所述第二指令。

【技术特征摘要】
【国外来华专利技术】2015.06.08 US 14/732,7841.一种设备,其包括:存储器,其存储瞬时加载指令、第二指令和加载数据;指令寄存器,其经配置以存储所述瞬时加载指令和所述第二指令;处理器,其耦合到所述存储器和所述指令寄存器;所述处理器经配置以:从所述存储器检索所述瞬时加载指令;将所述瞬时加载指令存储于所述指令寄存器中;响应于所述瞬时加载指令而从所述存储器检索所述加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述指令寄存器中;以及使用所述加载数据来执行所述第二指令。2.根据权利要求1所述的设备,其中所述处理器经进一步配置以通过参考所述指令寄存器来检索所述加载数据,并通过参考所述指令寄存器以检索所述加载数据来执行所述第二指令。3.根据权利要求1所述的设备,其中所述处理器是超长指令字处理器,所述处理器经配置以处理包含所述瞬时加载指令和所述第二指令的超长指令字包。4.根据权利要求1所述的设备,其中所述瞬时加载指令是多指令包中的第一指令。5.根据权利要求1所述的设备,其进一步包括第三指令,且其中所述处理器经配置以使用所述加载数据来执行所述第三指令。6.根据权利要求5所述的设备,其中所述第三指令是在一个时钟循环中实现对第二存储器的读取和写入的存储器写入指令。7.根据权利要求1所述的设备,其中所述处理器经进一步配置以:在一个时钟循环中检索所述瞬时加载指令、检索所述加载数据和执行所述第二指令。8.根据权利要求1所述的设备,其中所述处理器经进一步配置以:在多个时钟循环中接收所述瞬时加载指令、检索所述加载数据和执行所述第二指令。9.根据权利要求1所述的设备,其中所述设备并入到选自包括以下各项的群组的装置中:音乐播放器、视频播放器、娱乐单元、导航装置、通信装置、移动装置、移动电话、智能电话、个人数字助理、固定位置终端、平板计算机、计算机、可佩戴式装置、膝上型计算机、服务器和机动车中的装置,且所述群组进一步包含所述装置。10.一种用于通过处理器执行存储器加载操作的方法,所述方法包括:从存储器检索瞬时加载指令;将所述瞬时加载指令存储于指令寄存器中;响应于所述瞬时加载指令而从所述存储器检索加载数据;响应于所述瞬时加载指令而将所述加载数据存储于所述指令寄存器中;以及使用所述加载数据来执行第二指令。11.根据权利要求10所述的方法,其进一步包括通过参考所述指令寄存器来检索所述加载数据,并通过参考所述指令寄存器以检索所述加载数据来执行所述第二指令。12.根据权利要求10所述的方法,其中将所述加载数据存储于所述指令寄存器中和执行所述第二指令是由超长指令字型处理器执行,且所述瞬时加载指令和所述第二指令是超长指令字包。13.根据权利要求10所述的方法,其中所述瞬时加载指令是多指令包中的第一指令。14.根据权利要求10所述的方法,其进一步包括使用所述加载数据来执行第三指令。15.根据权利要求14所述的方法,其中所述第三指令是在一个时钟循环中实现对第二存储器的读取和写入的存储器写入指令。16.根据权利要求10所述的方法,其中检索所述瞬时加载指令、检索所述加载数据和执行所述第二指令是在一个时钟循环中发生。17.根据权利要求10所述的方法,其中检索所述瞬时加载指令、检索所述加载数据和执行所述第二指令是在多个时钟循环中发生。18.根据权利要求10所述的方法,其中执行所述第二指令是由处理器执行,所述处理器并入到选自由以下各项组成的群组的装置中:音乐播放器、视频播放器、娱乐单元、导航装置、通信装置、移动装置、移动电话、智能电话、个人数字助理、固定位置终端、平板计算机、计算机、可佩戴式装置、膝上型计算机、服务...

【专利技术属性】
技术研发人员:艾瑞克·马胡林雅各布·帕维尔·戈拉布
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国,US

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

1