IP Library Granted Patent US 6,996,838
Granted Patent B2
US 6,996,838 · App. 09/879,307 · Granted Feb 7, 2006

System and method for media processing with adaptive resource access priority assignment

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 6,996,838
App. No.
09/879,307
Granted
Feb 7, 2006
Kind
B2
Abstract

An embodiment of the present invention provides a system and method for adaptive resource access priority allocation. A method for adaptive resource access priority allocation includes determining whether a resource constrained mode is to be initiated, and responsive to a determination that the resource constrained mode is to be initiated, initiating the resource constrained mode, including modifying a resource access priority. For example, adaptive resource access priority allocation may include increasing the priority for graphical data transfer during intervals of high demand for memory and/or bus bandwidth resources.

Claims (50)

1. A method in a video decoding system for adapting to resource constraints, said method comprising steps of:

configuring a first resource access priority assignment to a plurality of resource consuming operations, each resource consuming operation being assigned a priority according to the first resource access priority assignment;

configuring a second resource access priority assignment that is different than the first resource access priority assignment to the plurality of resource consuming operations, each resource consuming operation being assigned a priority according to the second resource access priority assignment;

receiving a user input corresponding to performing a second media processing task, said second media processing task corresponding to a second amount of resource consumption, said user input being received while performing a first media processing task according to the first configured resource access priority assignment, said first media processing task corresponding to a first amount of resource consumption;

responsive to the user input determining whether a resource constrained mode is to be initiated to perform simultaneously the first and second media processing tasks; and

responsive to determining that the resource constrained mode is to be initiated, initiating the resource constrained mode according to the second configured resource access priority assignment.

2. The method of claim 1 , wherein the the first media processing task includes a first operation and the priority assigned to the first operation is different in the first and second resource access priority assignments, said first operation corresponding to an amount of consumption of a data bus.

3. The method of claim 2 , wherein the first operation corresponds to at least one from the group consisting of: a processor, an audio decoder, a video digital encoder, a memory buffer, a data storage device, and a digital to analog converter.

4. The method of claim 1 , wherein the priority assigned to a first operation is different in the first and second resource access priority assignments, said first operation corresponding to an amount of consumption of a data bus while performing a specific function.

5. The method of claim 4 , wherein the specific function is selected from a group consisting of:

writing data to a compressed audio buffer, writing data to a compressed video buffer, reading data from a compressed audio buffer, reading data from a compressed video buffer, writing data to a video picture buffer, writing data to a graphical data buffer, reading data from a graphical data buffer, writing data to an alpha-blend plane buffer, writing data to an off-screen buffer, writing data to an audio buffer, reading data from an audio buffer, reading data from an off-screen buffer, and reading data from an alpha-blend plane.

6. The method of claim 1 , wherein the resource constrained mode corresponds to performing a constrained version of the first media processing task simultaneously with the second media processing task.

7. The method of claim 1 , wherein the determining step includes determining that the resource constrained mode is to be initiated responsive to inadequate memory availability to perform simultaneously the first and second media processing tasks.

8. The method of claim 1 , wherein the determining step includes determining that the resource constrained mode is to be initiated responsive to inadequate bus bandwidth availability to perform simultaneously the first and second media processing tasks.

9. The method of claim 1 , wherein the first operation corresponds to decoding video.

10. The method of claim 1 , wherein the step of determining whether the resource constrained mode is to be initiated further responsive to receiving a first data describing a video being processed in the first media processing first task.

11. The method of claim 10 , wherein the user input includes causing the video being processed to be output at a reduced spatial resolution.

12. The method of claim 10 , wherein the user input includes causing graphics to be generated and output along with the video being processed.

13. The method of claim 1 , wherein the second configured resource access priority assignment comprises alternating the priority of at least one resource consumption operation between a first priority and a second priority.

14. The method of claim 13 , wherein the at least one resource consumption operation is assigned the first priority during intervals corresponding to each instance of a specific portion of an output video signal.

15. The method of claim 14 , wherein the at least one resource consumption operation is assigned the second priority outside the intervals.

16. The method of claim 10 , wherein the resource constrained mode is one of a plurality of resource constrained modes that can be initiated.

17. The method of claim 10 , wherein the video being processed is encoded using a Motion Picture Experts Group (MPEG) encoding scheme.

18. The method of claim 1 , wherein the second resource access priority assignment is responsive to a degree of resource constraint to perform simultaneously the first and second media processing tasks.

19. The method of claim 18 , wherein the degree of resource constraint is determined in view of an amount of resource availability and an amount of additional resource needed.

20. The method of claim 19 , wherein the resource constraint includes a memory constraint.

21. The method of claim 19 , wherein the resource constraint includes a memory bus bandwidth constraint.

22. The method of claim 19 , wherein the amount of resource constraint needed is determined at least according to at least one look-up table.

23. The method of claim 1 , wherein the step of determining whether the resource constrained mode is to be initiated according to a history of resource need to perform the first media processing task.

24. The method of claim 1 , wherein the step of determining whether the resource constrained mode is to be initiated is according to a history of resource need to perform the second media processing task.

25. The method of claim 1 , wherein the step of determining whether the resource constrained mode is to be initiated is according to a history of resource need to perform simultaneously the first and second media processing tasks.

26. The method of claim 1 , wherein the determining and initiating steps are performed by a processor in a digital home communication terminal.

27. The method of claim 1 , wherein the initiating step includes continuing to present audio to a user at a regular rate and maintaining audio and video synchronization during the resource constrained mode.

28. The method of claim 1 , further comprising a step of terminating the resource constrained mode responsive to determining adequate resource availability.

29. A video decoding system for adapting to resource constraints, said system comprising:

logic for configuring a first resource access priority assignment to a plurality of resource consuming operations, each resource consuming operation being assigned a priority according to the first resource access priority assignment;

logic for configuring a second resource access priority assignment that is different than the first resource access priority assignment to the plurality of resource consuming operations, each resource consuming operation being assigned a priority according to the second resource access priority assignment;

logic for performing a first media processing task according to the first configured resource access priority assignment, said first media processing task corresponding to a first amount of resource consumption;

logic for performing simultaneosly the first media processing task and a second media processing task according to the second configured resource access priority assignment, said second media processing task corresponding to a second amount of resource consumption; and

logic for initiating a resource constrained mode according to the second configured resource access priority assignment for performing simultaneosly the first and second media processing tasks.

30. The system of claim 29 , wherein the logic is further configured for determining whether the resource constrained mode is to be initiated responsive to inadequate memory availability.

31. The system of claim 29 , wherein the logic is further configured for determining whether the resource constrained mode is to be initiated responsive to inadequate bus bandwidth availability.

32. A video decoding system for adapting to resource constraints, said system comprising:

logic for configuring a first resource access priority assignment to a plurality of resource consuming operations, each resource consuming operation being assigned a priority according to the first resource access priority assignment;

logic for configuring a second resource access priority assignment that is different than the first resource access priority assignment to the plurality of resource consuming operations, each resource consuming operation being assigned a priority according to the second resource access priority assignment;

logic for configuring at least one resource consumption operation in second configured resource access priority assignment with an alternating first priority and a second priority;

logic for performing a first media processing task according to the first configured resource access priority assignment, said first media processing task corresponding to a first amount of resource consumption; and

logic for performing simultaneously the first media processing task and a second media processing task according to the second configured resource access priority assignment, said second media processing task corresponding to a second amount of resource consumption.

33. The system of claim 32 , wherein the logic is further configured for initiating a resource constrained mode according to the second configured resource access priority assignment for performing simultaneosly the first and second media processing tasks.

34. The method of claim 2 , wherein the first operation corresponds to a data access operation by a processor.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT 7523479 NEEDS TO BE INCLUDED, WAS ACCIDENTALLY MISSED WHEN RECORDING ASSIGNMENT PREVIOUSLY RECORDED ON REEL 049603 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE NEED TO INCLUDE PATENT 7523479 IN THE ASSIGNMENT. WAS ACCIDENTALLY MISSED ON LAST RECORDING. Recorded Jun 9, 2021
From: CISCO TECHNOLOGY, INC.
To: TECH 5 SAS
Reel/Frame 058043/0001 →
CHANGE OF NAME Recorded Nov 19, 2014
From: SCIENTIFIC-ATLANTA, INC.
To: SCIENTIFIC-ATLANTA, LLC
Reel/Frame 034299/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2014
From: SCIENTIFIC-ATLANTA, LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 034300/0001 →