Patent ID: 9671856
Date: 2017-06-06
CPC Classifications: G06F,Y02D

Claim:
1. A method for a pipeline-based processor, wherein the pipeline-based processor includes at least one pipeline, the at least one pipeline including a particular pipeline, the method comprising: partitioning the particular pipeline into a plurality of pipeline stages based on one or more functions, the plurality of pipeline stages including one or more base pipeline stages and a plurality of enhanced pipeline stages, each enhanced pipeline stage configured to be either a shutdown enhanced pipeline stage or an activated enhanced pipeline stage, all functions of each shutdown enhanced pipeline stage being not activated, at least one function of each activated enhanced pipeline stage being activated, wherein at least one of the plurality of enhanced pipeline stages is configured to be activated while at least another of the plurality of enhanced pipeline stages is shut down, wherein each enhanced pipeline stage has an enhanced stage priority level of at least two different enhanced stage priority levels, at least one of the plurality of enhanced pipeline stages having a different enhanced stage priority level than at least one other of the plurality of enhanced pipeline stages; configuring each enhanced pipeline stage of the plurality of enhanced pipeline stages to be activated or shut down based on the enhanced stage priority level of each enhanced pipeline stage and requirements for performance of a workload; partitioning a particular pipeline stage of the plurality of pipeline stages into at least one base module and a plurality of enhanced modules, each base module of the at least one base module being a partitioned portion of the particular pipeline stage of the particular pipeline of the pipeline-based processor, each enhanced module of the plurality of enhanced modules being a partitioned portion of the particular pipeline stage of the particular pipeline of the pipeline-based processor, each enhanced module of the particular pipeline stage having a particular priority level of at least two different enhanced module priority levels, at least one of the plurality of enhanced modules of the particular pipeline stage having a different priority level than at least one other of the plurality of enhanced modules, each of the at least one base module of the particular pipeline stage configured to be activated while the particular pipeline stage is activated; and configuring each of the plurality of enhanced modules to be activated or shut down based on the particular priority level of a corresponding particular enhanced module and the requirements for the performance of the workload, wherein at least one of the plurality of enhanced modules of the particular pipeline stage is configured to be activated while at least another of the plurality of enhanced modules of the particular pipeline stage is shut down.