Kursen ger grundläggande kunskaper om hur en dator fungerar och är uppbyggd, både ur hårdvaru- och programvaruperspektiv. Kursen är uppdelad i sex olika moduler, vilka bland annat inkluderar följande grundläggande begrepp och koncept:
- C-programmering och assemblerspråk: pekare, funktioner, stack, assemblerspråk, maskinspråk, instruktionskodning och processorregister.
- In- och utmatningssystem: timerfunktioner, avbrott och minnesmappad in- och utmatning.
- Digital design: sanningstabeller, grindar, boolesk algebra, multiplexer, avkodare, adderare, kombinatoriska nät, sekvensnät och register.
- Processorkonstruktion: aritmetisk-logisk enhet, dataväg (datapath), styrenhet och pipeline.
- Minneshierarkier: instruktionscache, datacache och virtuellt minne.
- Parallella processorer och program: Amdahls lag, olika varianter av parallellism, samt multicore.
Notera att modul 3 är rekommenderad förkunskap till kursen och kommer inte att behandlas på föreläsningar eller laborationer. Dock kommer materialet för modul 3 vara tillgängligt på kurshemsidan, då det är förkunskap till modul 4.