Context controller having instruction-based time slice task switching capability and processor employing the same
First Claim
Patent Images
1. A context controller for managing multitasking of a plurality of tasks including foreground tasks and background tasks in a processor, comprising:
- a time slice instruction counter that counts a number of instructions executed with respect to a given background task; and
a background task controller that cyclicly activates a context corresponding to another background task when said number equals a dynamically-programmable time slice value.
17 Assignments
0 Petitions
Accused Products
Abstract
A context controller for managing multitasking in a processor and a method of operating the same. In one embodiment, the context controller includes: (1) a time slice instruction counter that counts a number of instructions executed with respect to a given background task and (2) a background task controller that cyclicly executes a context corresponding to another background task when the number of instructions executed equals a dynamically-programmable time slice value.
47 Citations
22 Claims
-
1. A context controller for managing multitasking of a plurality of tasks including foreground tasks and background tasks in a processor, comprising:
-
a time slice instruction counter that counts a number of instructions executed with respect to a given background task; and a background task controller that cyclicly activates a context corresponding to another background task when said number equals a dynamically-programmable time slice value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of managing multitasking of a plurality of tasks including foreground tasks and background tasks in a processor, comprising the steps of:
-
counting a number of instructions executed with respect to a given background task; and cyclicly activating a context corresponding to another background task when said number equals a dynamically-programmable time slice value. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A processor, comprising:
-
an instruction decoder that decodes instructions received into said processor and corresponding to a plurality of tasks which includes foreground tasks and background tasks; a plurality of register sets, corresponding to said plurality of tasks, that contain operands to be manipulated; an execution core, coupled to said instruction decoder and said plurality of register sets, that executes instructions corresponding to an active one of said plurality of tasks to manipulate ones of said operands; and a context controller, coupled to said instruction decoder and said execution core, that manages multitasking with respect to said plurality of tasks, including; a time slice instruction counter that counts a number of instructions executed with respect to a given background task; and a background task controller that cyclicly activates a context corresponding to another background task when said number equals a dynamically-programmable time slice value. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
Specification