处理器中的一个或一个以上架构型寄存器是可写入分段字的,且可将来自多个未调准的存储器存取操作的数据直接汇集在架构型寄存器中,而不是首先将所述数据汇集在可写入分段字的非架构型寄存器中且接着将其传送到所述架构型寄存器。在通用寄存器文件利用寄存器重新命名或重新排序缓冲器的实施例中,将来自多个未调准的存储器存取操作的数据直接汇集在可写入分段字的架构型寄存器中,而无需在执行第一存储器存取操作之前对两个未调准的存储器存取操作进行全面的异常检查。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术大体上涉及处理器领域,且确切地说涉及一种具有一个或一个以上用于直接 累积未调准数据的可写入分段字的架构型寄存器的处理器。
技术介绍
微处理器在广泛的应用中执行计算任务,所述广泛的应用包含嵌入式应用(例如便 携式电子装置)。此种装置的日益增加的特征组和增强的功能性要求计算能力更加强大的 处理器经由软件提供额外的功能性。便携式电子装置的另一趋势是形状因数日渐縮小。 这种趋势的一个主要影响是,用来为装置中的处理器及其它电子器件供电的电池的尺寸 越来越小,从而使得功率效率成为主要的设计目标。便携式电子装置的縮小的尺寸还要 求处理器和其它电子器件经过高度集成和紧密的封装,从而使得芯片面积越发宝贵。因 此,便携式电子装置处理器需要增加执行速度、减少功率消耗和/或减小芯片大小的处理 器上的改进。通过处理器的指令集来界定处理器架构。现代精简指令集计算(RISC)架构的特征包含指令相对较少、在指令之间隔离存储器存取操作和逻辑/算术运算,以及将计算复 杂性从指令集(或微码)转移到编译器。RISC硬件特征包含 一个或一个以上高速执行 管线,其包括一连串相对简单的执行级;存储器层级;和架构型的一组通用寄存器(GPR)。 所有GPR具有相同宽度(架构的字宽度)、形成存储器层级的顶部(最快)层,并且用 作指令操作数或地址以及指令结果的目的地的来源。在特定的实施方案中,可提供广泛 的无架构支持硬件来辅助处理器,所述硬件例如为所属领域技术人员众所周知的擦除 寄存器、缓冲器、堆栈、FIFO和类似物。在处理器上执行的程序并不知晓这些非架构型 结构。一种已知的无架构擦除寄存器是可写入字节的寄存器,其用来累积来自存储器 存取的未调准数据,然后将累积的数据字加载到架构型寄存器中。未调准数据是在存储 在存储器中时跨越预定存储器边界(例如,字或半字边界)的数据。由于存储器在逻辑 上构成和寻址并且在物理上耦合到存储器总线的方式的缘故,跨越存储器边界的数据无法在单个循环中读取或写入。而是,需要两个连续的总线循环---个用以读取或写入边界一侧上的数据,而另一个用以读取或写入其余的数据。这需要未调准存储器的存取指令(例如加载)在管线中产生额外的指令步骤或微操 作,以执行未调准数据所需的额外存储器存取。因此,来自加载指令的数据以两个、部 分或分段字的小段返回,并且必须将其累积到一个字中,然后将其写入架构型寄存器(例 如GPR)。这可通过将来自第一和第二存储器存取微操作的分段字数据写入擦除寄存器中 来实现,其中每一字节可独立写入而不会改变其它任何字节的内容。当将最后到达的分 段字数据写入可写入字节的擦除寄存器中时,将累积的字写入加载指令的目的地GPR。如果正在进行的存储器存取操作引起较长的等待时间,则高性能处理器试图执行其 它存储器存取。虽然可写入字节的擦除寄存器足以为偶然的、孤立的未调准存储器存取 累积分段字数据,但如果遇到第二个未调准的存储器存取指令,则可写入字节的擦除寄 存器变为竞争资源。如以下实例所说明的,这会危及结构性管线。以下地址范围的数据驻存在数据高速缓存中且可用0x00-0x0F、 0x20-0x2F和 0x3O-0x3R。 0xl0-0xlF范围中的数据不在高速缓存中。第一 LDW(加载字)指令具有(未 调准)的目标地址OxOF。这个指令将执行存储器存取操作,以从高速缓存中检索OxOF 处的第一字节,并将其加载到可写入字节的擦除寄存器中。所述指令将产生第二存储器 存取操作,这次是针对0x10 (以检索0x10、 0x11和0x12处的三个字节,假设字的大小 为32位)。第二存储器存取将在高速缓存中未命中,从而需要从主存储器存取,这可能 会引起显著的等待时间。为了防止整个管线在待决主存储器存取时闲置,处理器可发出第二LDW指令,这个 指令是针对0x2E,其也是未调准的数据地址。第二LDW指令将产生两个存储器存取一一 第一存取是针对0x2E存取两个字节,且第二存取是针对0x30存取两个字节。这两个存 取均将在高速缓存中命中,且可在可写入字节的擦除寄存器中汇集数据,并将所述数据 加载到指令的目标GPR中,然后完成第一LDW指令。然而,第二LDW无法利用与第 一 LDW指令相同的可写入字节的擦除寄存器,因为第一未调准的LDW指令已将0x0F 字节存储在那里。由于只有一个可写入字节的擦除寄存器可用,所以管线控制器必须执行结构性危险 检查,然后才能发出第二LDW,并且如果资源正在使用中,则必须防止执行第二LDW。 这种危险检査会增加控制逻辑的复杂性和处理器的功率消耗,且会对性能造成负面影响。 或者,可提供多个可写入字节的擦除寄存器。这会浪费功率和硅面积,因为未调准的存 储器存取相对较少发生。此外,在任一情况下,由于需要将分段字数据汇集成一个字然 后将其加载到架构型寄存器中,所以会对存储器存取指令强加延迟,从而对性能造成负面影响。
技术实现思路
处理器中的架构型寄存器是可写入分段字的,且将来自未调准的存储器存取操作的 数据直接汇集在架构型寄存器中,而无需首先在可写入分段字的、非架构型寄存器中汇 集数据,且接着将所述数据传送到架构型寄存器。在一个实施例中, 一种将来自未调准的存储器存取的数据直接汇集到可写入分段字 的架构型寄存器的方法包括执行第一存储器存取操作,和将第一分段字数据写入架构 型寄存器。所述方法进一步包括执行第二存储器存取操作,和将第二分段字数据写入 架构型寄存器。在另一实施例中,处理器包含至少一个可写入分段字的架构型寄存器。所述处理器 还包含指令执行管线,其可操作以执行两个存储器存取操作,以存取未调准的数据,每 一存储器存取操作将分段字数据直接写入可写入分段字的架构型GPR寄存器中。 附图说明图1是处理器的功能方框图。图2是流程图。具体实施方式如本文所用,以下术语具有以下定义架构型寄存器通过处理器指令集(明确地或隐含地)界定的数据存储寄存器。架 构型寄存器是架构型字大小的宽度。指令对架构型寄存器进行存取以获得操作数和存储 器地址,且指令将结果写入架构型寄存器。请注意,架构型寄存器无需被静态界定或识 别(即,其可被重新命名),且无需包括硬件中的定时、静态寄存器(即,其可位于缓冲器、FIFO或其它存储器结构中)。通用寄存器(GPR)无论是否被指令集架构以此命名, 均为架构型寄存器。如本文中所用,术语架构型寄存器也包含作为动态指派的GPR 识别符的存储位置,如本文中更全面地论述。非架构型寄存器未由处理器指令集界定或辨识的给定实施方案中的数据存储寄存器。擦除寄存器和管线中的管级寄存器是非架构型寄存器的实例。字架构型字大小或字宽度是处理器指令集所辨识的数据的原子量。指令用字宽度的数据来读取和写入寄存器。现代RISC处理器通常具有32或64位的字宽度,但这并不 限制本专利技术。分段字小于架构型字宽度的量的数据。举例来说,从一个到三个字节的数据对于32位的字大小而言均是分段字量。可写入分段字可写入少于整个字的数据而不会改变或破坏寄存器中的其它数据的 数据存储位置。举例来说,具有四个独立字节允许的32位寄存器对于32位的字大小而 言是可写入分段字寄存器。可通过对可写入字寄存器执行的适当的读取-修改-写入操作来 模拟分段字的可写入性;如本文所用本文档来自技高网...
【技术保护点】
一种将来自未调准的存储器存取的数据直接汇集到可写入分段字的架构型寄存器中的方法,其包括:执行第一存储器存取操作,并将第一分段字数据写入所述架构型寄存器;和执行第二存储器存取操作,并将第二分段字数据写入所述架构型寄存器。
【技术特征摘要】
【国外来华专利技术】US 2005-2-3 11/051,0371. 一种将来自未调准的存储器存取的数据直接汇集到可写入分段字的架构型寄存器 中的方法,其包括执行第一存储器存取操作,并将第一分段字数据写入所述架构型寄存器;和 执行第二存储器存取操作,并将第二分段字数据写入所述架构型寄存器。2. 根据权利要求l所述的方法,其进一步包括在将所述第一分段字数据写入所述架构 型寄存器之前对所述两个存储器存取操作进行异常检查。3. 根据权利要求1所述的方法,其进一步包括对每一所述存储器存取操作进行异常检 査。4. 根据权利要求3所述的方法,其中所述可写入分段字的架构型寄存器包括位于寄存 器重新命名文件中的物理寄存器,且进一步包括通过向所述物理寄存器指派通用寄 存器(GPR)识别符来重新命名所述物理寄存器。5. 根据权利要求4所述的方法,其中如果所述第二存储器存取操作不引起异常,则执 行所述重新命名步骤。6. 根据权利要求4所述的方法,其进一步包括如果任一所述存储器存取操作引起异常, 则从所述物理寄存器中移除所述GPR识别符。7. 根据权利要求3所述的方法,其中所述可写入分段字的架构型寄存器包括重新排序 缓冲器中的位置,且进一步包括通过向重新排序缓冲器位置指派GPR识别符来重新 命名所述重新排序缓冲器位置。8. 根据权利要求7所述的方法,其中如果所述第二存储器存取操作不引起异常,则执 行所述重新命名步骤。9. 根据权利要求8所述的方法,其进一步包括如果任一所述存储器存取操作引起异常, 则从所述重新排序缓冲器位置移除所述GPR识别符。10. —种处理器,其包括至少一个可写入分段字的架构型寄存器;和指令执行管线,其可操作以执行两个存储器存取操作来存取未调准数据,每一所 述存储器存取操作将分段字数据直接写入所述可写入分段字的架构型寄存器中。11. 根据权利要求10所述的处理器,其中所述指令执行管线进一步可操作以在将第一 所述分段字数据写入所述可写入分段字的架构型寄存器之前对所述两个存储器存 取操作进行异常检査。12. 根据权利要求10所述的处理器,其中所述指令执行管线进一步可操作以对每一所 述存储器存取操作进行异常检查。13. 根据权利要求12所述的处理器,其中所述可写入分...
【专利技术属性】
技术研发人员:杰弗里托德布里奇斯,维克托罗伯茨奥格斯堡,詹姆斯诺里斯迪芬德尔费尔,托马斯安德鲁萨托里乌斯,
申请(专利权)人:高通股份有限公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。