Computer architecture revisited

ISA (Instruction Set Architecture): CISC (Complex Instruction Set Computer) vs RISC (Reduced Instruction Set Computer)

CISC – larger, more feature-rich instruction set (more operations, addressing modes, etc.). slower clock speeds. fewer general purpose registers. Examples: x86 variants.

RISC – smaller, simpler instruction set. faster clock speeds. more general purpose registers. Examples: ARM, MIPS, PowerPC, AVR, etc.

EPIC – permits microprocessors to execute software instructions in parallel by using the compiler, rather than complex on-die circuitry, to control parallel instruction execution.

The performance – how fast a processor?

Q&A

Q: Why RISC CPUs need faster clock speed?

A: RISC CPUs generally run at faster clock speeds than CISC because max clock period is dictated by the slowest step of the pipeline (more complex instructions are slower).

Q: Why RISC need more RAM?

A: Because of small number of instructions, RISC need more lines of code, so more RAM is needed to store the assembly level instructions.

Q: Why RISC consumes less power than CISC?

A: In simple (computer Architecture 101)

  • RISC has few, simple instructions. The hardware is highly optimized for each one.
  • CISC has lots of instructions. That needs a more complex decode logic (gates, power, area), and those instructions need a lot of complex logic to implement them (gates, power, area).

Register memory vs Load/store architecture

From Wikipedia, the free encyclopedia

In computer engineering a register memory architecture allows operations to be performed on (or from) memory, as well as registers.[1] If the architecture allows all operands to be in memory or in registers, or in combinations, it is called a “register plus memory” architecture.[1]

In a register memory approach one of the operands for ADD operation may be in memory, while the other is in a register. This differs from a load/store architecture (used by RISC designs such as MIPS) in which both operands for an ADD operation must be in registers before the ADD.[1]

Examples of register memory architecture are IBM System/360, its successors, and Intel x86.[1] Examples of register plus memory architecture are VAX and the Motorola 68000 family.[1]

===

From Wikipedia, the free encyclopedia

In computer engineering, a load/store architecture divides instructions into 2 categories: memory access (load and store between memory and registers), and ALUoperations (which only occur between registers).[1]:9-12

RISC systems such as PowerPC, SPARC, RISC-V, ARM or MIPS use the load/store architecture.[1]:9-12

For instance, in a load/store approach both operands and destination for an ADD operation must be in registers. This differs from a register memory architecture (used by CISC designs such as x86) in which one of the operands for the ADD operation may be in memory, while the other is in a register.[1]:9-12

The earliest example of a load/store architecture was the CDC 6600.[1]:54-56 Almost all vector processors (including many GPUs[2]) use the load/store approach.[3]

Refs:

One thought on “Computer architecture revisited

Leave a comment