Get Affordable VMs - excellent virtual server hosting


browse words by letter
a b c d e f g h i j k l m n o p q r s t u v w x y z

microcode

microcode


  1  definition  found 
 
  From  The  Free  On-line  Dictionary  of  Computing  (13  Mar  01)  [foldoc]: 
 
  microcode 
 
    A  technique  for  implementing  the  {instruction 
  set}  of  a  processor  as  a  sequence  of  microcode  instructions 
  ("microinstructions"),  each  of  which  typically  consists  of  a 
  large  number  of  bit  fields  and  the  address  of  the  next 
  microinstruction  to  execute.  Each  bit  field  controls  some 
  specific  part  of  the  processor's  operation,  such  as  a  gate 
  which  allows  some  {functional  unit}  to  drive  a  value  onto  the 
  {bus}  or  the  operation  to  be  performed  by  the  {ALU}.  Several 
  microinstructions  will  usually  be  required  to  fetch,  decode 
  and  execute  each  {machine  code}  instruction 
  ("{macroinstruction}").  The  microcode  may  also  be  responsible 
  for  {polling}  for  hardware  {interrupt}s  between  each 
  macroinstruction  Writing  microcode  is  known  as 
  "microprogramming". 
 
  Microcode  may  be  classified  as  "horizontally  encoded"  or 
  "vertically  encoded".  Horizontal  microcode  is  as  described 
  above  where  there  is  a  fairly  direct  correspondence  between 
  the  bit  fields  in  a  microinstruction  and  the  control  signals 
  sent  to  the  various  parts  of  the  CPU.  Not  all  combinations  of 
  bits  will  be  valid  (e.g.  two  units  driving  the  bus  at  once). 
  Vertical  microcode  is  closer  to  {machine  code}  because  a  bit 
  field  value  may  pass  through  some  intermediate  combinatory 
  logic  which  generates  the  actual  control  signals.  This  allows 
  a  few  bits  of  a  microinstruction  to  determine  several  control 
  signals  and  ensure  that  only  valid  combinations  of  those 
  signals  are  generated  (e.g.  a  field  may  be  decoded  to  determine 
  which  unit  drives  the  bus).  The  disadvantage  with  vertical 
  encoding  is  that  the  encoding  is  usually  fixed  and  takes  extra 
  time  compared  with  horizontal  encoding  which  allows  any 
  combination  of  signals  to  be  generated  and  takes  no  time  to 
  decode. 
 
  The  alternative  to  a  microcoded  processor  is  a  {hard-wired} 
  one  where  the  control  signals  are  generated  directly  from  the 
  bits  of  the  {machine  code}  instruction.  This  is  more  common 
  in  modern  {RISC}  architectures  because  it  is  faster. 
 
  Microcode  is  usually  stored  in  {ROM}  chips  though  some 
  processors  (e.g.  the  {Orion})  use  fast  RAM,  making  them 
  dynamically  microprogrammable 
 
  (1996-11-26)