5.1.1 · D1Instruction Set Architecture (ISA)

Foundations — CISC vs RISC philosophies

2,406 words11 min readBack to topic

Before you can weigh those two bets, you need to know exactly what an "instruction" is, what a "register" is, what a "cycle" is, and — once those words exist — how a small three-factor timing formula is built. This page assumes nothing. We build every word and every symbol from the ground up, then assemble the formula.


0. The machine we are talking about

Figure s01 (below): a CPU box on the left holding three little register boxes, joined to its registers by a short orange arrow labelled "short = fast", and joined to a large memory box on the right by a long arrow labelled "long trip = slow". The picture makes one point: registers are near, memory is far.

Figure — CISC vs RISC philosophies
Figure s01 — Registers sit inside the CPU (near, fast); memory sits far away (slow to reach). This distance is why RISC does arithmetic only in registers.


1. What "CISC" and "RISC" actually name

Before either symbol appears again, pin down the two words themselves.

Both words are fully unpacked in the parent CISC vs RISC philosophies. For now just hold this contrast: CISC = few heavy orders; RISC = many light orders. Every symbol below is what we need to measure which bet wins.


2. Instruction — the atom of a program

A program is simply a list of instructions, run top to bottom (with occasional jumps).


3. The clock and the cycle

Figure s02 (below): a teal square-wave "clock signal" rising and falling; one full rise-and-fall is bracketed by an orange arrow labelled " seconds", and dotted plum lines mark each "tick". It shows a cycle as the gap between two ticks.

Figure — CISC vs RISC philosophies
Figure s02 — The clock alternates low/high; one full period is one cycle, lasting seconds. Each dotted line is a tick.

Why does the CISC/RISC debate care about ? Because simpler hardware can tick faster — a shorter, cleaner path between switches means the drummer can beat quicker. RISC keeps hardware simple partly to shrink .


4. Cycles per instruction — the symbol CPI

Not every instruction finishes in one tick. A simple "add two registers" might take one cycle; a heavy "read memory, multiply, write memory" might take several. We need a symbol for how many ticks an instruction costs.

Figure s03 (below): a bar chart of "cycles this instruction costs" for four instructions — a register-only ADD (1 cycle), a LOAD (3), a heavy MUL (4), and a memory-to-memory CISC ADD (5) — with a dashed orange line at 1 marking the "RISC dream: CPI → 1". Taller bar = more cycles eaten.

Figure — CISC vs RISC philosophies
Figure s03 — Different instructions cost different numbers of cycles; CPI is their program-weighted average. Light RISC ops sit near 1; heavy CISC ops rise well above it.


5. Assembling the timing equation

Now every symbol is earned, so we can build the formula the parent note uses.


6. Two structural words you must know


7. How the foundations feed the topic

The diagram below is read top-to-bottom: each arrow means "this is needed to understand that." Start at the roots and follow the arrows down into the final "CISC vs RISC bet" node.

  • CPU registers and memory (s01) let us define an Instruction.
  • An instruction is the unit we count, giving (the instruction count).
  • The clock and cycle (s02) give us (cycle time) and, together with the instruction, CPI (cycles per instruction).
  • , CPI, and combine into the CPU Time equation (Section 5).
  • That equation, plus the three structural rules (load/store, fixed vs variable encoding, microcode) and pipelining, is everything the parent topic needs to argue which design wins.

CPU registers and memory

Instruction

N instruction count

Clock and cycle

Tc cycle time

CPI cycles per instruction

CPU Time equation

Load store rule

CISC vs RISC bet

Fixed vs variable encoding

Microcode and micro-ops

Pipelining

Jump back up: CISC vs RISC philosophies.


  • The three knobs get their own detailed treatment in CPU Performance Equation.
  • Why RISC keeps arithmetic in registers connects to Addressing Modes and Compiler Optimization.
  • Real chips implementing each side: x86 vs ARM.

Equipment checklist

Do you already know…

What "CISC" and "RISC" name at the highest level?
CISC = few, heavy, variable-length instructions (complexity in hardware); RISC = many, simple, fixed-length instructions (complexity in the compiler).
What a register is and why it's faster than memory?
A tiny fast box inside the CPU; reaching it is near-instant, while reaching memory means a long, slow trip off-chip.
What the symbol counts?
The total number of instructions actually executed (loops counted each pass), not the lines typed.
What one clock cycle is?
One tick of the CPU's internal drummer; every switch may only update on a tick.
What means and its units?
Seconds per cycle — the gap between two ticks; it's the reciprocal of clock speed.
What means, and what pushes it above 1?
Average clock cycles per instruction; memory/cache stalls (especially cache misses) drag the average upward in real machines.
How the CPU Time equation is built?
instructions × CPI cycles each × seconds each total seconds: .
What a "relative " means in the example?
The faster design's cycle time is taken as baseline ; another design's means its cycle is 25% longer — only the ratio of results matters.
The load/store rule?
Only LOAD and STORE touch memory; all arithmetic is register-to-register (RISC's defining trait).
Fixed vs variable-length encoding?
Fixed = every instruction same size (RISC, easy to fetch/pipeline); variable = different sizes (CISC, compact but harder to decode ahead).
What microcode does?
Expands one complex CISC instruction into several tiny internal micro-ops the silicon runs.