CISC Flashcards
Why was Microcode used for CISC?
Adding more and more instructions increased hardware complexity to decode / control functions with direct decode from opcode.
What did CISC do?
Added more functionality to single instructions (and a lot more of them)
Easier to program in assembler
Less instructions, less memory usage (more efficient)
How did CISC implement instructions?
Decode for opcode converted into microinstructions by group stored in ROM (faster than ram)
One microinstruction per clock cycle (many cycles for one regular instruction)
Advantages of CISC microcode
Simplify hardware design
All instructions decoded in a common way
Easy to implement/update ROM instruction groups instead of hardware decode circuits
What is a microinstruction?
Textual representation of the control signals required to perform a phase of an instruction
List 3 types of instruction length formats & adv & disadv
Variable length:
More complex decode hardware (CPU doesn’t know how long instruction is on fetch), limits parallelism
Fixed:
More memory instruction space used (unused fields)
Hybrid:
set of multiple fixed length/format instructions
List some features of CISC machines
Large number of functionally complex instructions
Executed over a number of cycles
Multiple addressing modes for memory/operand access
Small number of general purpose registers (lots of special purpose to help with complex calculations)
Complex decoding logic:
Variable length instructions
Microcode/microinstructions
Not much pipelining (limited overlap)