Article View: comp.arch
Article #13150Re: register saving on context switch
From: ian
Date: Wed, 04 Mar 1987 21:09
Date: Wed, 04 Mar 1987 21:09
45 lines
2815 bytes
2815 bytes
In article <1430@navajo.STANFORD.EDU> billw@navajo.STANFORD.EDU (William E. Westfield) writes:
>
>So has anyone done research to see if it might be worthwhile to
>implement a machine with multiple sets of registers (say 16 sets
>of 64 registers, with register windows)? This would cut down on
>the overhead of conext switching a lot assuming that not too many
>processes were "active" at once. It would probably add a lot to
>the complexity of the system though...
>
>BillW
The Xerox Dorado has multiple register sets and as a result has
very fast context switch. For information on the Dorado see
"The Dorado: A High-Performance Personal Computer. Three Papers"
Xerox CSL-81-1 January 1981, Palo Alto Research Center
3333 Coyote Hill Rd., Palo Alto, CA 94304
These papers are well worth reading. To quote from the first paper
"A Processor for a High-Performance Personal Computer" by Butler W.
Lampson and Kenneth A. Pier, page 7
5.3 Task Specific State
In order to allow the immediate task switching described above, the
processor must be able to save and restore state within one microcycle.
This is accomplished by keeping the vital state information throughout
the processor not in a single rank of registers but in task specific
registers. These are actually implemented with high speed memory that
is addressed by a task number. Examples of task specific registera are
the microcode program counter, the branch condition register, the
microcode subroutine link register, the memory data register, and a
temporary storage register for each task. The number of the task whcih
will execute in the next microcycle is broadcast throughout the
processor and used to address the task specific registers. Thus, data
can be fetched from high speed task specific memories and be available
for use in the next cycle.
Ian Kaplan
Loral Dataflow Group
Loral Instrumentation
USENET: {ucbvax,decvax,ihnp4}!sdcsvax!loral!ian
ARPA: sdcc6!loral!ian@UCSD
USPS: 8401 Aero Dr. San Diego, CA 92123
Technical Details
Message-ID:
<1386@loral.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ihnp4!ptsfa!lll-lcc!styx!ames!ucbcad!ucbvax!sdcsvax!sdcc6!loral!ianReferences:
<4376@columbia.UUCP> <448@cpocd2.UUCP> <5763@amdahl.UUCP> <542@houxv.UUCP> <1430@navajo.STANFORD.EDU>Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ihnp4!ptsfa!lll-lcc!styx!ames!ucbcad!ucbvax!sdcsvax!sdcc6!loral!ian From: ian@loral.UUCP Newsgroups: comp.arch Subject: Re: register saving on context switch Message-ID: <1386@loral.UUCP> Date: Wed, 4-Mar-87 16:09:51 EST Article-I.D.: loral.1386 Posted: Wed Mar 4 16:09:51 1987 Date-Received: Sat, 7-Mar-87 04:30:06 EST References: <4376@columbia.UUCP> <448@cpocd2.UUCP> <5763@amdahl.UUCP> <542@houxv.UUCP> <1430@navajo.STANFORD.EDU> Reply-To: ian@loral.UUCP (Ian Kaplan) Organization: Loral Instrumentation, San Diego Lines: 45