CPE 315
Professor Stearns
Why Microcode?


If the CPU is microprogrammed
  1. Microcode allows the control unit to be defined/implemented in a formal language

  2. Microcode allows the creation of complex instructions and address modes using programming concepts.
    CPUs with complex instructions are called CISC (complex instruction set computer)

  3. Microcode allows the CPU design engineers to makes control unit changes/fixes without touching the hardware.

  4. Microcode allows the CPU to include emulators.
    It's possible but infeasible to build emulators in hardware logic.
    e.g. The Eagle control unit includes an Eclipse emulator written by the Microkids

If the CPU is microprogrammable (you load the microcode on powerup)
  1. You can make hardware fixes/updates in the field.

  2. Customers can write emulators (microcode that interprets other instruction sets).
    Note: emulators, unlike simulators, often run faster than the real machine they are emulating.

Last updated 2/27/08