IP Library Granted Patent US 7,853,954
Granted Patent B2
US 7,853,954 · App. 11/175,296 · Granted Dec 14, 2010

Method and apparatus for preserving the context of tasks during task switching in a pipeline architecture

Assignee: Kabushiki Kaisha Toshiba
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 7,853,954
App. No.
11/175,296
Granted
Dec 14, 2010
Kind
B2
Abstract

A microprocessor executes programs in a pipeline architecture including a task register management unit that, if a switch instruction to a second task is issued when a plurality of units executes a first task, switches a value of a task register to second register information that is used when the second task is executed after the execution of the first task is completed and a task manager that switches a value of a task identification information register to a second task identifier after the value is switched to the second register information, and grants each of the plurality of units permission to execute the second task.

Claims (20)

1. A microprocessor comprising:

a pipeline, having a plurality of units, configured to process tasks;

a task identification register configured to hold current task identification information;

a task register configured to hold register information that is used while the plurality of units processes a task;

a task completion detector configured to detect that the pipeline completes processing a first task that has already entered in an execution unit among of the plurality of units, if a switch instruction to a second task has is issued while the execution unit executes the first task;

a task register manager configured to switch values of the task register to second register information, which is used while the second task is executed, if the task completion detector detects that the pipeline has completed processing the first task;

a task manager configured to switch a value of the task identification information register to a second task identification information to identify the second task and to grant each of the units permission to execute the second task, if the task register manager switches to the second register information;

a task setting device configured to set the units to stall an instruction fetch until the task register manager completely switches to the second register information after the switch instruction has issued;

a switch flag specifying device configured to specify a switch flag to the first task, which is executed by the execution unit, after the switch instruction has issued,

wherein the execution unit sends the first task and the switch flag to a next unit, and the task completion detector detects that the execution of the first task is completed if a last unit of the pipeline acquires the switch flag.

2. A method for executing tasks in a pipeline architecture, comprising:

processing tasks in a pipeline having a plurality of units;

holding a current task identification information in a task identification register;

holding, in a task register, register information associated with a current task;

detecting whether the pipeline completes processing a first task that has already entered an execution unit of the plurality of units if a switch instruction to a second task has issued while the execution unit executes the first task;

setting the units to stall an instruction fetch until switching to second register information has been completed after the switch instruction has issued;

specifying a switch flag to the first task, which is executed by the execution unit, after the switch instruction has issued, wherein the execution unit sends the first task and the switch flag to a next unit;

detecting completion of the execution of the first task if a last unit of the pipeline acquires the switch flag;

switching values of the task register to the second register information, which is used while the second task is executed, based on the detecting completion of the execution of the first task; and

switching values of the task identification information register to a second task identification information to identify the second task and to grant each of the units permission to execute the second task, based on the switching values of the task register to the second register information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2005
From: HARUKI, HIROYOSHI; HASHIMOTO, MIKIO; KAWABATA, TAKESHI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 017030/0660 →
Priority Claims (1)
JP 2004-200366 · Jul 7, 2004 · national
Continuity (1)
Related Publication 20060010308A1 · Jan 12, 2006