You forgot the 5840 - an even slower 580. The 580 series had three levels of
"micro-code" (I define micro-code in this context as software that runs on the
machine that the customer can not get to (display/alter/etc.) - that to the 
customer, appears to be part of the hardware; in this broad definition, even
the Linux code that runs in the zSeries HMC is "micro-code").

In the Amdahl machines, the lowest level was nano-code (short words) - did
not change much. Next was micro-code (longer words), and at the top was
macro-code (a very modified s/370 instruction set). Simple and/or fast 
instructions were implemented in micro-code. More complex and/or seldom
used instructions were implemented in macro-code. To speed things up a
bit, there was Fast Assist Mode - run a few instructions in macro-code
without a full context switch (ie save registers, purge TLB, etc.). 

Each processing unit (I-unit, E-unit, IOP, etc.) had it's own nano-code and
micro-code word formats (really different languages).  

On the Amdahl 580 an instruction like TRT was really slow compared to many
other common instructions. I believe TRT was implemented in macro-code to
get it working quickly, but not efficiently - something about the system
architects not understand how much it was used by some programs, like
3270 screen optimizers. Another problem seen as slow instructions, was data
in the instruction stream forced cache flushes between the I(nstruction)-
buffer 
and the O(perand)-buffer.   

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to