[Simh] VAX vectors

Bob Supnik bob at supnik.org
Thu Jul 9 12:09:46 EDT 2015


Vectors were all the rage at the time (late 80s) because of the success 
of the so-called "minisupers" like Convex and Alliant. It was just a 
flash in the pan, of course; with the end of the Cold War in the early 
90s, funding for HPTC dried up for a decade, and all the minisuper and 
VLIW companies died out.

Both VAX and Prism got vector extensions. The wedging of the vector 
instructions into the VAX was an interesting problem, because they were 
supposed to be implemented in both the Rigel-based systems (VAX 6400) 
and Aquarius (VAX 9000). Rigel's core instruction parsing mechanism was 
set in silicon, and its microstore was almost filled. I worked out a 
proposal for Rigel, Tryg Fossum and Dwight Manley did the same for 
Aquarius, and Dileep Bhandarkar provided architectural cleanup, 
particularly on exceptions (patent 4949250). The vector instructions 
take 36 microwords on Rigel.

The Rigel vector unit implementation was based on a chip set done by 
Doug William's Mid-Range systems VLSI team. It consisted of a unique 
register file chip and a data path chip derived from the Rigel floating 
point unit. (That design was reused five times: Rigel, Mariah, NVAX, 
Rigel vectors, EV4.)

Vectors were not the only extension to the architecture around that 
time. A security team worked out a virtualization option that required a 
handful of new extensions and features. Although the Rigel microcode has 
decode points for the instructions, no implementation ever made it to 
silicon. NVAX still has decode points (unimplemented) for the vector 
instructions, but the decode points for the virtualization proposal are 
gone.

As to Tim's point about covering the VAX's history - quite correct. 
However, there are no simulators for either the 6400 family or the 9000, 
and I don't think anyone is prepared to tackle them - certainly not me. 
Bolting on vectors to the existing 3900 would not be all that hard, 
because the core floating point routines are available, but it would be 
another "never existed in the real world" hybrid. That's already been 
done once, when the 3900's memory capacity was extended to 512MB, but 
this is trickier, because the vector option has to be context switched. 
You'd have to delve into the VMS sources to see how VMS knows about the 
option, and whether that is tied to specific models like the 6400 and 
9000 or is more independent.

/Bob




More information about the Simh mailing list