02155 Computerarkitektur

2021/2022

Kursusinformation
Computer Architecture and Engineering
Engelsk
5
Bachelor
Kurset udbydes som enkeltfag
E2A (man 13-17)
Campus Lyngby
Forelæsninger, øvelser og projektopgave
13-uger
E2A
Skriftlig eksamen og bedømmelse af rapport(er)
Den endelige karakter gives på baggrund af en helhedsvurdering af en individualiseret grupperapport og den skriftlige eksamen.
Skriftlig eksamen: 2 timer
Alle hjælpemidler er tilladt
7-trins skala , intern bedømmelse
02151 og 02200
02131/02132/02139.02102 , Grundlæggende kendskab til programmering og digitalelektronik
Alberto Nannarelli , Lyngby Campus, Bygning 322, Tlf. (+45) 4525 3725 , alna@dtu.dk
Martin Schöberl , Tlf. (+45) 4525 3743 , masca@dtu.dk
01 Institut for Matematik og Computer Science
http://www.imm.dtu.dk/courses/02155
I studieplanlæggeren
Dette kursus giver den studerende en mulighed for at lave eller forberede et projekt som kan deltage i DTUs studenterkonference om bæredygtighed, klimateknologi og miljø (GRØN DYST). Se mere på http://www.groendyst.dtu.dk
Overordnede kursusmål
At give deltagerne en dyberegående hardwarenær viden om og forståelse af en computers funktion og interne struktur, en tilhørende viden om og forståelse af de forhold som påvirker køretiden for programmer samt en forståelse for samspillet mellem hardware og software. Da processorer i dag indgår i alle former for elektronisk udstyr, er kurset relevant for såvel softwareudviklere som (elektro)ingeniører, der designer såkaldte indlejrede systemer, hvor det ofte er vigtigt at udnytte processorernes ressourcer bedst muligt for at optimere pris, hastighed eller energiforbrug.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Beskrive den interne struktur af en processor, herunder pipeline, cache lager, lagerhierarki, virtuelt lager, busser, etc.
  • Forklare disse elementers funktion og forklare hvorledes de influerer på køretiden for programmer, og kompleksiteten (areal, hastighed, energiforbrug) af den underliggende hardware.
  • Anvende denne forståelse til at beregne og optimere køretiden af programmer; dels små specifikke programstumper og dels større programmer for hvilke der er fastlagt væsentlige nøgleparametre som, f.eks. cash-miss rates etc.
  • Forklare parametrene throughput og latenstid, og forklare deres indbyrdes sammenhæng.
  • Redegøre for hvorledes hardware (bl.a. teknologi og arkitektur) og software (bl.a. instruktionssæt, compiler og operativsystem) udgør et hele, og at interfacet mellem de to er et centralt element i ethvert system.
  • Give eksempler på tradeoffs og optimeringer der involverer både software og hardware.
  • Redegøre for instruktionssæt-arkitekturen af en typisk processor.
  • Dokumentere projektarbejde i form af en teknisk rapport, som henvender sig til en udenforstående fagfælle, og som overholder sædvanlige krav til form og indhold/​abstraktionsniveau.
Kursusindhold
Introduktion af maskinstruktur og instruktionssæt. Intern struktur af processoren i en moderne RISC-computer (kontrolenhed, beregningsenhed og pipelining). Samspil mellem maskinstruktur og instruktionssæt. Lagerhierarkier og lageradministration (cache teknikker og virtual memory teknikker). Orientering om bussystemer og ydre enheder. Orientering om nye arkitekturer, som i dag typisk udnytter flere former for parallelisme.

Sideløbende med forelæsningerne arbejdes den med opgaver og øvelser og der udføres an afsluttende projektopgave. Projektopgaven kan f.eks. bestå i at analysere og optimere et programs køretid under hensyntagen til processorens pipelinestruktur og lagerhierarki ved hjælp af simuleringsværktøjer.
Sidst opdateret
02. november, 2021