IP Library Granted Patent US 9,958,928
Granted Patent B2
US 9,958,928 · App. 14/899,190 · Granted May 1, 2018

Method and apparatus for controlling an operating mode of a processing module

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,958,928
App. No.
14/899,190
Granted
May 1, 2018
Kind
B2
Abstract

A method of controlling an operating mode of at least one processing module. The method comprises receiving an indication of the execution of at least one background task by the at least one processing module, aggregating an execution duration for the at least one background task on the at least one processing module, and configuring a lower power mode for the at least one processing module when the at least one background task is allocated to the at least one processing module for execution thereon if the aggregated execution duration for the at least one background task exceeds a threshold duration within an evaluation period.

Claims (52)

1. A method of controlling an operating mode of at least one processing module; the method comprising:

receiving an indication of the execution of at least one background task by the at least one processing module;

aggregating an execution duration for the at least one background task on the at least one processing module;

determining whether the aggregated execution duration for the at least one background task exceeds a threshold duration within one of a plurality of repeated evaluation periods; and

if the aggregated execution duration for the at least one background task exceeds a threshold duration within one of the repeated evaluation periods:

switching a power mode for the at least one processing module to a lower power mode from a higher power mode when the at least one background task is allocated to the at least one processing module for execution thereon;

while the at least one processing module is in the lower power mode, switching the at least one processing module from the lower power mode to the higher power mode when a timing-critical task is allocated to the at least one processing module for execution thereon;

receiving a reset signal in response to an expiration of the one of the repeated evaluation periods; and

resetting the aggregated execution duration for the at least one background task in response to receiving the reset signal.

2. The method of claim 1 , wherein the indication of the execution of the at least one background task comprises at least one of:

a process identifier;

an instruction fetch address; and

an interrupt priority level.

3. The method of claim 1 , wherein the method comprises aggregating the execution duration for the at least one background task based at least partly on at least one of:

a clock cycle count value; and

a timing signal aggregator value.

4. The method of claim 1 , wherein the lower power mode for the at least one processing module comprises an inactive mode.

5. The method of claim 1 , wherein the method comprises configuring the higher power mode for the at least one processing module when the at least one background task is allocated to the at least one processing module for execution thereon if the aggregated execution duration for the at least one background task does not exceed the threshold duration.

6. The method of claim 1 , wherein the method comprises configuring the lower power mode for the at least one processing module by way of a WAIT control signal provided to a hardware power management component.

7. The method of claim 1 , wherein the method comprises configuring the lower power mode for the at least one processing module by way of a low-priority interrupt request.

8. Power mode control circuitry to control an operating mode of a processing module, the power mode control circuitry to:

receive an indication of the execution of at least one background task by the at least one processing module;

aggregate an execution duration for the at least one background task on the at least one processing module; and

determine whether the aggregated execution duration for the at least one background task exceeds a threshold duration within one of a plurality of repeated evaluation periods; and

if the aggregated execution duration for the at least one background task exceeds a threshold duration within one of the repeated evaluation periods:

switch a power mode for the at least one processing module to a lower power mode from a higher power mode when the at least one background task is allocated to the at least one processing module for execution thereon;

while the at least one processing module is in the lower power mode, switch the at least one processing module from the lower power mode to the higher power mode when a timing-critical task is allocated to the at least one processing module for execution thereon;

receive a reset signal in response to an expiration of the one of the repeated evaluation periods; and

reset the aggregated execution duration for the at least one background task in response to receiving the reset signal.

9. The power mode control circuitry of claim 8 implemented within an integrated circuit device comprising at least one die within a single integrated circuit package.

10. A signal processing device comprising at least one power mode control circuitry according to claim 8 .

11. The power mode control circuitry of claim 8 , wherein the indication of the execution of the at least one background task comprises at least one of:

a process identifier;

an instruction fetch address; and

an interrupt priority level.

12. The power mode control circuitry of claim 8 , wherein the aggregation of the execution duration for the at least one background task is based at least partly on at least one of:

a clock cycle count value; and

a timing signal aggregator value.

13. The power mode control circuitry of claim 8 , wherein the lower power mode for the at least one processing module comprises an inactive mode.

14. The power mode control circuitry of claim 8 , wherein the power mode control circuitry further to configure the higher power mode for the at least one processing module when the at least one background task is allocated to the at least one processing module for execution thereon if the aggregated execution duration for the at least one background task does not exceed the threshold duration.

15. The power mode control circuitry of claim 8 , wherein the power mode control circuitry further to configure the lower power mode for the at least one processing module by way of a WAIT control signal provided to a hardware power management component.

16. The power mode control circuitry of claim 8 , wherein the power mode control circuitry further to configure the lower power mode for the at least one processing module by way of a low-priority interrupt request.

17. A method of controlling an operating mode of a processing module, the method comprising:

receiving an indication of the execution of first and second background tasks by the processing module;

aggregating an execution duration for the first and second background tasks on the processing module;

determining whether the aggregated execution duration for the at least one background task exceeds a threshold duration within one of a plurality of repeated evaluation periods; and

if the aggregated execution duration for the first and second background tasks exceeds a threshold duration within one of the repeated evaluation periods:

switching a power mode for the at least one processing module to a lower power mode from a higher power mode when the first and second background tasks are allocated to the at least one processing module for execution thereon;

while the at least one processing module is in the lower power mode, switching the at least one processing module from the lower power mode to the higher power mode when a timing-critical task is allocated to the at least one processing module for execution thereon;

receiving a reset signal in response to an expiration of a timer of a first evaluation period of the one of the repeated evaluation periods; and

resetting the aggregated execution duration for the first and second background tasks in response to receiving the reset signal.

18. The method of claim 17 , wherein a second evaluation period of the one of the repeated evaluation periods begins after the reset signal is received.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040626 FRAME: 0683. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME EFFECTIVE NOVEMBER 7, 2016. Recorded Jan 12, 2017
From: NXP SEMICONDUCTORS USA, INC. (MERGED INTO); FREESCALE SEMICONDUCTOR, INC. (UNDER)
To: NXP USA, INC.
Reel/Frame 041414/0883 →
CHANGE OF NAME Recorded Nov 16, 2016
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 040626/0683 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2015
From: MAIOLANI, MARK; CIRCELLO, JOSEPH; MARSHALL, RAY
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037314/0739 →