Computer Organization & Architecture
Computer Organization and Architecture is one of the most numerical GATE CS subjects. These lessons explain how a CPU executes instructions, how pipelines and caches make it fast, and how it talks to memory and devices, with small simulators for Booth multiplication, pipelines and caches, so every cycle count and hit count shown is computed.
1Basics
2Instructions
- Instruction Sets and FormatsWhat an instruction contains, 3-, 2-, 1- and 0-address machines, fixed and variable instruction formats, field-width calculations, expanding opcodes, and RISC versus CISC.
- Addressing ModesHow an instruction finds its operand: immediate, register, direct, indirect, register indirect, indexed, base, PC-relative and auto-increment modes, effective-address calculations and memory reference counts.
3Arithmetic
4Processor Design
5Pipelining
- Instruction PipeliningHow a pipeline overlaps instructions, the classic five stages, clock period with unequal stages and latches, total time for n instructions, speedup, efficiency and throughput.
- Pipeline HazardsStructural, data and control hazards, RAW, WAR and WAW dependences, stalls and operand forwarding, the load-use hazard, branch penalties and their effect on CPI, and a pipeline simulator that counts stalls.
6Memory
- Memory Hierarchy and Cache MappingLocality and the memory hierarchy, hit ratio and average memory access time, direct-mapped, fully associative and set-associative caches, splitting an address into tag, index and offset, and tag memory size.
- Cache Replacement, Writes and Access PatternsReplacement policies (LRU, FIFO, optimal), write-through and write-back with write-allocate options, the cost of writes, and how row-major versus column-major loops change the number of cache misses.
- Main Memory and Secondary StorageSRAM and DRAM, refresh, building a memory from smaller chips, address decoding, memory interleaving, and disk capacity and access time.