管线式处理器及节电方法技术

技术编号:25086472 阅读:68 留言:0更新日期:2020-07-31 23:30
本发明专利技术提供了管线式处理器,用于执行指令的管线式处理,其经历多个阶段。管线式处理器包括存储器激活指示器和存储器控制器。存储器激活指示器用于存储内容信息,该内容信息指示在执行当前指令时是否激活第一易失性存储器和/或第二易失性存储器。存储器控制器用于根据存储在该存储器激活指示器中的该内容信息,在当前指令的多个阶段的特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活。

【技术实现步骤摘要】
管线式处理器及节电方法
本申请通常涉及一种计算器(computer)系统,以及更特别地,涉及一种管线式处理器(pipelinedprocessor)以及用于管线式处理器中的存储器子系统(memorysub-system)的节电(power-saving)方法。
技术介绍
许多处理装置利用缓存(cache,亦被称为高速缓冲存储器)来减少对存储在存储器中的信息进行存取/访问(access)所需的平均时间。缓存是一种体积较小、速度较快的存储器,用于存储预期会相对频繁使用的指令和/或数据的副本。例如,诸如中央处理单元(centralprocessingunit,CPU)、图形处理单元(graphicalprocessingunit,GPU)、加速处理单元(acceleratedprocessingunits,APU)等的处理器通常与缓存或缓存存储器组件的层次结构相关联。预期将由CPU使用的指令或数据被从主存储器(相对较大和较慢)移入缓存。当CPU需要读取或写入主存储器中的位置时,它首先检查以查看所需的存储器位置是否被包括在缓存中。如果此位置被包括在缓存中(缓存命中),则CPU能够对缓存存储器位置中的副本执行读取或写入操作。如果此位置未被包括在缓存中(缓存未命中),则CPU需要存取被存储在主存储器中的信息,在一些情况下,可以从主存储器中复制信息并将其添加到缓存中。缓存的适当配置和操作能够将存储器访问的平均延迟降低到低于主存储器的延迟的值,使其接近于缓存存储器的值。一种用于CPU缓存存储器的被广泛使用的体系结构是分层(hierarchical)缓存,其将缓存划分为两个级别(level),称为L1缓存和L2缓存。L1缓存通常比L2缓存更小和更快,而L2缓存比主存储器更小和更快。CPU首先尝试在L1缓存中查找所需的存储器位置,然后,当在L1缓存中无法找到存储器位置时继续在L2缓存和主存储器中查找。L1缓存可以进一步细分为单独的(separate)L1缓存,用于存储指令(L1-I)和数据(L1-D)。L1-I缓存可被放置在需要比数据更频繁地存取的指令的实体附近,而L1-D被放置在需要比指令更频繁地存取的数据的实体附近。L2缓存通常与L1-I和L1-D缓存都关联,且能够存储从主存储器获得/读取(retrieve)的指令或数据的副本。常用指令从L2高速缓存被复制到L1-I缓存中,而常用数据可以从L2缓存被复制到L1-D缓存中。利用此配置,L2缓存被称为统一(unified)缓存。
技术实现思路
在下面的实施例中将参照附图给出详细描述。本专利技术提供了一种管线式处理器,用于对要输入的指令执行管线式处理,该指令经历多个阶段。管线式处理器包括存储器激活指示器和存储器控制器。存储器激活指示器用于存储内容信息,该内容信息指示在执行当前指令时是否激活第一易失性存储器和/或第二易失性存储器。存储器控制器用于根据存储在该存储器激活指示器中的该内容信息,在当前指令的多个阶段的特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活。在一实施例中,该存储器激活指示器为程序计数器,该特定阶段为取指令阶段,以及,该第一易失性存储器和该第二易失性存储器分别为该管线式处理器中用于存储(多条)指令的指令缓存和指令存储器。在一实施例中,该存储器控制器根据存储在该程序计数器中的程序计数器值和该内容信息,在当前指令的该特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活和停用。在一实施例中,用于当前指令的程序计数器值和内容信息是在执行上一条指令的过程中基于顺序获取指令的方式确定出来的。在一实施例中,响应于存储在该程序计数器中的该程序计数器值等于当前指令所指示的程序地址,该存储器控制器确定出存储在该程序计数器中的该内容信息是有效的,并根据存储在该程序计数器中的该内容信息在当前指令的该特定阶段中激活该第一易失性存储器或该第二易失性存储器;以及,响应于存储在该程序计数器中的该程序计数器值不等于当前指令所指示的程序地址,该存储器控制器确定出存储在该程序计数器中的该内容信息是无效的,并在当前指令的该特定阶段中激活该第一易失性存储器和该第二易失性存储器这两者。在另一实施例中,该存储器激活指示器为该管线式处理器中的寄存器堆,该特定阶段为执行阶段,以及,该第一易失性存储器和该第二易失性存储器分别为该管线式处理器中用于存储数据的数据缓存和数据存储器。在一实施例中,该第一易失性存储器在逻辑地址中具有第一范围,以及,该第二易失性存储器在逻辑地址中具有第二范围,其中,该第一范围之后是该第二范围,且该第一范围和该第二范围是连续的。在一实施例中,该内容信息包括存储器信息和距离信息,该存储器信息指示在该执行阶段中是否激活该第一易失性存储器和/或该第二易失性存储器,以及,该距离信息指示当前指令的地址到该第一易失性存储器的边界的距离是否长于预定长度。在一实施例中,在该存储器信息指示激活第一易失性存储器的情况下,响应于该距离信息指示该当前指令的地址到该第一易失性存储器的边界的距离长于该预定长度(例如,偏移量小于或等于该预定长度),该存储器控制器在当前指令的执行阶段中激活该第一易失性存储器并停用该第二易失性存储器。在一实施例中,响应于该距离信息指示该下一条指令的地址到该第一易失性存储器的边界的距离等于或小于该预定长度(例如,偏移量大于0),该存储器控制器在当前指令的执行阶段中激活该第一易失性存储器和该第二易失性存储器这两者。在一实施例中,该存储器控制器还利用当前指令的执行阶段的结果和用于下一条指令的内容信息来更新阶段寄存器;其中,在当前指令的写回阶段中,该存储器控制器利用存储在该阶段寄存器中的值更新该寄存器堆;其中,在下一条指令的执行阶段中,该存储器控制器获取存储在该寄存器堆中的该内容信息,以确定是否激活该第一易失性存储器和/或该第二易失性存储器。在一实施例中,该存储器控制器还利用当前指令的执行阶段的结果和用于下一条指令的内容信息来更新阶段寄存器;其中,在下一条指令的执行阶段中,该存储器控制器获取被存储在该阶段寄存器中的该内容信息,以确定是否激活该第一易失性存储器和/或该第二易失性存储器。在一实施例中,该存储器激活指示器为该管线式处理器中的寄存器堆,该特定阶段为执行阶段,以及,该第一易失性存储器和该第二易失性存储器分别为管线式处理器的内部存储器和外部存储器。本专利技术还提供了一种节电方法,其用在管线式处理器的存储器子系统中,其中,管线式处理器包括多个阶段,该存储器子系统包括第一易失性存储器和第二易失性存储器,该方法包括以下步骤:从该管线式处理器中的存储器激活指示器获取内容信息,其中,该内容信息指示在执行当前指令时是否激活该第一易失性存储器和/或该第二易失性存储器;以及,根据存储在该存储器激活指示器中的该内容信息,在当前指令的多个阶段的特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活。在一实施例中,该存储器激活指示器为程序计数器,该特定阶段为取指令阶段,以及,该第一易失性存储器本文档来自技高网
...

【技术保护点】
1.一种管线式处理器,用于执行指令的管线式处理,其特征在于,该管线式处理器包括:/n存储器激活指示器,用于存储内容信息,该内容信息指示在执行当前指令的同时是否激活第一易失性存储器和/或第二易失性存储器;以及,/n存储器控制器,用于根据存储在该存储器激活指示器中的该内容信息,在当前指令的多个阶段的特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活。/n

【技术特征摘要】
20190123 US 16/255,1651.一种管线式处理器,用于执行指令的管线式处理,其特征在于,该管线式处理器包括:
存储器激活指示器,用于存储内容信息,该内容信息指示在执行当前指令的同时是否激活第一易失性存储器和/或第二易失性存储器;以及,
存储器控制器,用于根据存储在该存储器激活指示器中的该内容信息,在当前指令的多个阶段的特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活。


2.根据权利要求1所述的管线式处理器,其特征在于,该存储器激活指示器为程序计数器,该特定阶段为取指令阶段,以及,该第一易失性存储器和该第二易失性存储器分别为该管线式处理器中用于存储指令的指令缓存和指令存储器。


3.根据权利要求2所述的管线式处理器,其特征在于,该存储器控制器根据存储在该程序计数器中的程序计数器值和该内容信息,在当前指令的该特定阶段中控制该第一易失性存储器和/或该第二易失性存储器的激活和停用,其中,用于当前指令的程序计数器值和内容信息是在执行上一条指令的过程中基于顺序获取指令的方式确定出来的。


4.根据权利要求3所述的管线式处理器,其特征在于:
响应于存储在该程序计数器中的该程序计数器值等于当前指令所指示的程序地址,该存储器控制器确定出存储在该程序计数器中的该内容信息是有效的,并根据存储在该程序计数器中的该内容信息在当前指令的该特定阶段中激活该第一易失性存储器或该第二易失性存储器;以及,
响应于存储在该程序计数器中的该程序计数器值不等于当前指令所指示的程序地址,该存储器控制器确定出存储在该程序计数器中的该内容信息是无效的,并在当前指令的该特定阶段中激活该第一易失性存储器和该第二易失性存储器这两者。


5.根据权利要求1所述的管线式处理器,其特征在于,该存储器激活指示器为该管线式处理器中的寄存器堆,该特定阶段为执行阶段,以及,该第一易失性存储器和该第二易失性存储器分别为该管线式处理器中用于存储数据的数据缓存和数据存储器。


6.根据权利要求5所述的管线式处理器,其特征在于,该第一易失性存储器在逻辑地址中具有第一范围,以及,该第二易失性存储器在逻辑地址中具有第二范围,其中,该第一范围之后是该第二范围,且该第一范围和该第二范围是连续的。


7.根据权利要求6所述的管线式处理器,其特征在于,该内容信息包括存储器信息和距离信息,该存储器信息指示在该执行阶段中是否激活该第一易失性存储器和/或该第二易失性存储器,以及,该距离信息指示当前指令的地址到该第一易失性存储器的边界的距离是否长于预定长度。


8.根据权利要求7所述的管线式处理器,其特征在于,在该存储器信息指示激活第一易失性存储器的情况下,响应于该距离信息指示该当前指令的地址到该第一易失性存储器的边界的距离长于该预定长度,该存储器控制器在当前指令的执行阶段中激活该第一易失性存储器并停用该第二易失性存储器。


9.根据权利要求8所述的管线式处理器,其特征在于,响应于该距离信息指示该下一条指令的地址到该第一易失性存储器的边界的距离等于或小于该预定长度,该存储器控制器在当前指令的执行阶段中激活该第一易失性存储器和该第二易失性存储器这两者。


10.根据权利要求5所述的管线式处理器,其特征在于,该存储器控制器还利用当前指令的执行阶段的结果和用于下一条指令的内容信息来更新阶段寄存器;
其中,在当前指令的写回阶段中,该存储器控制器利用存储在该阶段寄存器中的值更新该寄存器堆;
其中,在下一条指令的执行阶段中,该存储器控制器获取存储在该寄存器堆中的该内容信息,以确定是否激活该第一易失性存储器和/或该第二易失性存储器。


11.根据权利要求5所述的管线式处理器,其特征在于,该存储器控制器还利用当前指令的执行阶段的结果和用于下一条指令的内容信息来更新阶段寄存器;
其中,在下一条指令的执行阶段中,该存储器控制器获取被存储在该阶段寄存器中的该内容信息,以确定是否激活该第一易失性存储器和/或该第二易失性存储器。


12.根据权利要求1所述的管线式处理器,其特征在于,该存储器激活指示器为该管线式处理器中的寄存器堆,该特定阶段为执行阶段,以及,该第一易失性存储器和该第二易失性存储器分别为管线式处理器的内部存储器和外部存储器...

【专利技术属性】
技术研发人员:刘兴庄李章嘉陈玉书
申请(专利权)人:联发科技股份有限公司
类型:发明
国别省市:中国台湾;71

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

1