Claims Analysis
Total Claims: 13
Claim 1
Independent Claim
188 words
A multitasking controller comprising: task storage means (2) for storing up to N tasks (P0,P1,P2,P3) each comprising a sequence of instructions, a microprocessor for processing, by time-sharing, a plurality of said N tasks, and data storage means (12) for storing variable data created and used by said microprocessor, characterized in that said microprocessor further comprises a scheduler (7) realized in hardware for controlling the use of said microprocessor by said tasks, and program counter storage means for storing N program counters (Pc0,Pc1,Pc2,Pc3) each for use by said scheduler (7) to control the instruction sequence of a separate one of said N tasks, said scheduler (7) selecting a different one of said program counters (Pc0,Pc1,Pc2,Pc3) when the task processed by said microprocessor is changed without requiring the transfer of data from said data storage means (12), wherein said micro processor is configurable so as to process a portion of each of X said tasks in turn, where 1<X<N, the program counter of one or more of the remaining N-X tasks being used by said microprocessor to control the instruction sequence of a sub-routine called from within said X tasks.
Claim 2
Dependent Claim
188 words
A multitasking controller comprising: task storage means (2) for storing up to N tasks (P0,P1,P2,P3) each comprising a sequence of instructions, a microprocessor for processing, by time-sharing, a plurality of said N tasks, and data storage means (12) for storing variable data created and used by said microprocessor, characterized in that said microprocessor further comprises a scheduler (7) realized in hardware for controlling the use of said microprocessor by said tasks, and program counter storage means for storing N program counters (Pc0,Pc1,Pc2,Pc3) each for use by said scheduler (7) to control the instruction sequence of a separate one of said N tasks, said scheduler (7) selecting a different one of said program counters (Pc0,Pc1,Pc2,Pc3) when the task processed by said microprocessor is changed without requiring the transfer of data from said data storage means (12), wherein said micro processor is configurable so as to process a portion of each of X said tasks in turn, where 1<X<N, the program counter of one or more of the remaining N-X tasks being used by said microprocessor to control the instruction sequence of a sub-routine called from within said X tasks.
Claim 3
Dependent Claim
65 words
A multitasking controller according to claim 1, characterized in that said microprocessor further comprises accumulator value storage means (13) for storing a separate accumulator value for each of said N tasks, for enabling said microprocessor to select a different one of said accumulator values, when the task treated by said microprocessor is changed, without requiring the transfer of data from said data storage means (12).
Claim 4
Dependent Claim
65 words
A multitasking controller according to claim 1 characterized in that said microprocessor further comprises index value storage means (14) for storing a separate index value for each of said N tasks, for enabling said microprocessor to select a different one of said index values, when the task treated by said microprocessor is changed, without requiring the transfer of data from said data storage means (12).
Claim 5
Dependent Claim
19 words
A multitasking controller according to claim 1, characterized in that said scheduler (7) comprises a hardwired finite state machine.
Claim 6
Dependent Claim
18 words
A multitasking controller according to claim 1, characterized in that said scheduler (7) comprises a programmable logic array.
Claim 7
Dependent Claim
16 words
A multitasking controller according to claim 1, characterized in that said scheduler (7) comprises a ROM.
Claim 8
Dependent Claim
41 words
A multitasking controller according to claim 1, characterised in that said microprocessor further includes one or more stack-pointers (9,10) each for controlling the use of said program counters (Pc0,Pc1,Pc2,Pc3) used in the processing of a separate one of said X tasks.
Claim 9
Dependent Claim
61 words
A multitasking controller according to claim 1, characterised in that said microprocessor further comprises an event router (8) for receiving an event group signal from a group of one or more event signals and producing a task request signal (Req0,Req1,Req2,Req3) corresponding to a selected one of said X tasks, said task request signal requesting said scheduler to execute said selected task.
Claim 10
Dependent Claim
37 words
A multitasking controller according to claim 8, characterized in that each said event signal consists of either an external event signal from a device peripheral to said controller or an internal event signal caused by said microprocessor.
Claim 11
Dependent Claim
30 words
A multitasking controller according to claim 9, characterized in that said event router (8) is adapted to receive event group signals from each of N groups (gr0,gr1,gr2,gr3) of event signals.
Claim 12
Dependent Claim
48 words
A multitasking controller according to claim 10, characterized in that said event router (8) is configurable so that a task request signal (Req0,Req1,Req2,Req3) corresponding to said selected task is produced in response to an event group signal received from one or more selected groups (gr0,gr1,gr2,gr3) of event signals.
Claim 13
Dependent Claim
65 words
A multitasking controller according to claim 2 characterized in that said microprocessor further comprises index value storage means (14) for storing a separate index value for each of said N tasks, for enabling said microprocessor to select a different one of said index values, when the task treated by said microprocessor is changed, without requiring the transfer of data from said data storage means (12).