home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / arch / 11575 < prev    next >
Encoding:
Internet Message Format  |  1992-12-11  |  3.7 KB

  1. Path: sparky!uunet!spool.mu.edu!agate!doc.ic.ac.uk!uknet!mucs!mshute
  2. From: mshute@cs.man.ac.uk (Malcolm Shute)
  3. Newsgroups: comp.arch
  4. Subject: What's the difference between Horizontal and Vertical microcode?
  5. Message-ID: <7018@m1.cs.man.ac.uk>
  6. Date: 11 Dec 92 12:49:31 GMT
  7. Sender: news@cs.man.ac.uk
  8. Organization: Dept Computer Science, University of Manchester, U.K.
  9. Lines: 68
  10.  
  11. Through an email conversation with a computer architect,
  12. far more learned and experienced than I,
  13. I discovered that we were talking at cross-purposes.
  14.  
  15. The distinction between Vertical and Horizontal microcode which I had
  16. picked up, was not one that he worked with.
  17.  
  18. This suggests, to me, that either I am completely wrong, or that the distinction
  19. is not a tightly defined one (hardly surprising, I suppose, when you look at
  20. other classifying terms in computer architecture...
  21. anyone for another RISC v CISC war?)
  22.  
  23. So...
  24.  
  25. The purpose of this posting is to ask people to respond, preferably by email,
  26. as to what they understand the distinction to be.
  27.  
  28. I will undertake to collate the responses, and to summarise to the net.
  29. In order that I might do this easily, I would appreciate if you would keep
  30. your responses down to less than 23 lines (an old VDU screenful).
  31.  
  32. To give you an idea of the sort of thing that I want, here are the two
  33. definitions which I have so far:
  34.  
  35. ----------------------------------------------------------------------------
  36. DEFINITION 1:
  37.  
  38. HuC: instructions are not atomic: they can be broken down into a number
  39.      of sub-instructions.  These are encoded in 'fields' layed out horizontally
  40.      along the instruction op-code.
  41.  
  42. VuC: instructions are not atomic: they can be broken down into a number
  43.      of sub-instructions.  These are listed in a 'microprogram', in a
  44.      structure which ressembles a CASE statement from a high level language
  45.      (with one case block for each macro instruction being defined).
  46.  
  47. In practice:  Most VuC machines have a native instruction set that is
  48.      vertically microcoded into micro instructions, with the micro-instruction
  49.      set horizontally microcoded.  The fields of the micro-instruction are
  50.      then supported directly in the hardware.  Thus: the *instructions* are
  51.      the things which can be said to be microcoded or not (in this case,
  52.      the native instructions are vertically microded, the microcode instructions
  53.      are horizontally microcoded, and the microcode fields are not microcoded)
  54. ----------------------------------------------------------------------------
  55. DEFINITION 2:
  56.  
  57. VuC: instructions are not atomic: they can be broken down into a number
  58.      of sub-instructions.  These are listed in a 'microprogram', in a
  59.      structure which ressembles a CASE statement from a high level language
  60.      (with one case block for each macro instruction being defined).
  61.      Each micro instruction is very tightly encoded, and can be quite narrow.
  62.  
  63. HuC: instructions are not atomic: they can be broken down into a number
  64.      of sub-instructions.  These are listed in a 'microprogram', in a
  65.      structure which ressembles a CASE statement from a high level language
  66.      (with one case block for each macro instruction being defined).
  67.      Each micro instruction is extravagantly wide, to aid the decode operation
  68.      which has to go on in the hardware (as in the 'In practice:' clause of
  69.      definition-1).
  70.  
  71. In practice:  It is the *machine* which is the thing that can be said to be
  72.      microcoded or not.  Those machines which *are* microcoded can then be
  73.      categorised as having a wide (HuC) or narrow (VuC) microprogram control
  74.      store.
  75. ----------------------------------------------------------------------------
  76. --
  77.  
  78. Malcolm SHUTE.         (The AM Mollusc:   v_@_ )        Disclaimer: all
  79.