-
data path
-
control unit (CU)
-
stored-program computer
-
memory hierarchy
-
cache memory
-
virtual memory
-
I/O devices
-
system-on-chip (SoC)
-
operands
-
program counter (PC) (aka instruction pointer (IP) in x86)
-
instruction register (IR)
-
pipelining
-
physical address space
-
address space
-
memory-mapped I/O (MMIO)
-
port-mapped I/O (PMIO)
-
bus
- address bus
- data bus
- control bus
-
arithmetic logic unit (ALU)
-
general-purpose register (GPR)
-
instruction set architecture (ISA) (or architecture) is an abstract interface between the hardware and the lowest-level software that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on
- RISC (reduced instruction set computer)
- RISC-V is an open-source ISA based on established RISC principles
- Examples: MIPS, ARM
- CISC (complex instruction set computer)
- Examples: x86, PowerPC
- RISC (reduced instruction set computer)
-
word
- word size (or word length) is the number of bits in a word
- word size may be used for:
- registers: the number of bits in a general-purpose register
- memory addresses: the number of bits in a memory address
- instructions
- data types (e.g., integer, floating-point, character)
- address bus
- data bus
- e.g., 32 bits in MIPS, 64 bits in x86-64, or 16 bits in the 8086
-
register is a small, fast storage location within the CPU used to store data temporarily
- register file
- The process of putting less commonly used variables (or those needed later) into memory is called spilling registers