computerarkitektur
Computerarkitektur omhandler de overordnede designbeslutningene som former hvordan en datamaskin fungerer, hvilken ytelse den kan levere og hva kostnadene blir. Den dekker tre hovednivåer: instruksjonssettarkitektur (ISA), mikroarkitektur og systemarkitektur, samt mekanismene som binder disse lagene sammen.
Instruksjonssettarkitektur definerer grensesnittet mellom programvare og maskinvare: hvilke instruksjoner som finnes, dataformater, hukommelsesadressering og avbrytelseshåndtering. ISA
Mikroarkitektur beskriver hvordan en gitt ISA konkret implementeres i en prosessor. Den omfatter teknikker som pipelining,
Hukommelseshierarki og systembuss beskriver hvordan data flyttes mellom lagringsnivåer og mellom komponenter. Cachelagre (L1/L2/L3), hovedminne og
Parallellisme og systemdesign inkluderer multicore- og manycore-arkitekturer, trådparallellisering, SIMD og grafikkprosessorer, samt accelerators som GPU-er og