Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!husc6!linus!alliant!steckel From: steckel@Alliant.COM (Geoff Steckel) Newsgroups: comp.arch Subject: Re: Self timed processors (was Re: Cycle stretching) Message-ID: <1244@alliant.Alliant.COM> Date: 19 Feb 88 16:44:03 GMT References: <844@daisy.UUCP> <20409@amdcad.AMD.COM> <1232@alliant.Alliant.COM> <810@spar.SPAR.SLB.COM> Reply-To: steckel@alliant.UUCP (Geoff Steckel) Organization: Alliant Computer Systems, Littleton, MA Lines: 28 Keywords: KA-10 asynchronous Summary: history (DEC KA-10) The ancient DEC 36-bit machines were asynchronous. The PDP-6 and PDP-10 (KA-10) processors had chains of delays to time cycles. The concept of 'hardware subroutines' was used to perform memory cycles, ALU operations, and other arbitrarily timed operations. It worked remarkably well, except when one of the subroutines failed to return. Result: a hung machine, with busy people chasing around the estimated 2000+ lights looking for the one representing the condition being waited for. A later 36-bit processor, the KI-10, had a central clock, but also used the hardware subroutine concept, resynchronizing at every clock edge. It also used cycle stretching, with 3 lengths of cycles depending on what was to be performed. Since these were large (physically), had long cables to memory, and used core (200nS access was BLINDINGLY fast), they showed performance changes if you recabled the memory bus or changed the physical layout of memory boxes - even 10 feet of cable showed up as a percent or two. Note neither of these machines had microcode - all direct logic. With about 360+ instructions, they were almost impossible to compile for, but the easiest machines to code in assembler I've ever seen. They had registers mapped as low memory. This was useful to simplify the addressing (no special register-to-register instructions). In the PDP-6 the registers were actually part of low core. The 'delay chain' architecture could be built; it would require someone to adequately address synchronization (indeterminacy) with other clocked systems, but that problem arises in every system, so what else is new.