02132 Computersystemer

2020/2021

P.g.a. Covid-19 afholdes den skriftlige eksamen for sommeren 2021 som hjemmeonline-eksamen med alle hjælpemidler tilladt og åbent net.
P.g.a. Covid-19 afholdes den skriftlige eksamen for vinteren 2020 som hjemmeonline-eksamen.
Kurset gives delvist på engelsk.
Kursusinformation
Computer Systems
Dansk
10
Bachelor
E5 (ons 8-17)
Campus Lyngby
Forelæsninger, øvelser og projektarbejde
13-uger
E5A, F5A
Skriftlig eksamen og bedømmelse af rapport(er)
Helhedsvurdering af 3 individualiserede grupperapporter og en 2 timers skriftlig prøve.
2 timer
Uden hjælpemidler
7-trins skala , ekstern censur
02131
02131
02100 / 02101 / 02102 / 02199 / 02115 , Der forudsættes beherskelse af begreber og terminologi om udvikling, test og dokumentation af programmer. Der gives en introduktion til sproget C.
Jan Madsen , Lyngby Campus, Bygning 322, Tlf. (+45) 4525 3751 , jama@dtu.dk
Paul Pop , Lyngby Campus, Bygning 322, Tlf. (+45) 4525 3732 , paupo@dtu.dk
Luca Pezzarossa , Lyngby Campus, Bygning 322, Tlf. (+45) 4525 3033 , lpez@dtu.dk
01 Institut for Matematik og Computer Science
http://www.imm.dtu.dk/courses/02131
I studieplanlæggeren
Kontakt underviseren for information om hvorvidt dette kursus giver den studerende 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
Computersystemer er blevet en integreret del af vores samfund. De er grundlaget for en bred vifte af teknologier fra Internet-of-Things og Smartphones til Skyen. I dette kursus vil vi studere, hvordan moderne computere virker. Vi vil undersøge computerens begrænsninger, samt hvilke muligheder den giver. Vi vil studere den tætte integration mellem hardware of software (HW/SW codesign) som er nødvendig for at udvikle effektive indlejrede computersystemer.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Forklare i generelle termer computersystemarkitekturen for generelle processorer, applikationsspecifikke instruktionssætprocessorer og dedikerede hardwareaccelerator processorer og give eksempler på, hvor de anvendes.
  • Beskrive hvordan data er repræsenteret i computersystemer.
  • Forklare computermodellen Finite State Machine med Datapath (FSMD) og hvordan den kan bruges til at modellere udførelsen af ​​både software og hardware.
  • Forklare hukommelseshierarkiet for en moderne computer med processoren, cacheniveauer, hukommelse og opbevaring.
  • Udvikle, kompilere, debugge, udføre og analysere programmer ved hjælp af programmeringssproget C.
  • Forklare hvordan compileren, assembleren og linkeren bruges til at oprette eksekverbare filer.
  • Udvikle og simulere dele af en beregnende arkitektur ved hjælp af FSMD-modellen udtrykt i et HDL sprog.
  • Forklare de grundlæggende principper for synkronisering og kommunikation indenfor såvel som mellem computersystemer.
  • Analysere ydeevne og energiforbrug af et softwareprogram og analysere hvordan hardware/software codesign can anvendes til at opnå højere ydeevne.
  • Forklare i generelle termer rolle og principper for computernetværk, control systemer og distribuerede systemer.
  • Skrive en teknisk rapport som dokumenterer resultater og analyser på en klar og præcis form
Kursusindhold
I dette kursus vil vi studere, hvordan computere udfører programmer og manipulere data, og udforske de involverede værktøjer og metoder. Vi vil studere, hvad værktøjerne, som en compiler, gør. Vi vil introducere programmeringssproget C, som stadig er det dominerende sprog til programmering af moderne indlejrede og cyber-fysiske systemer.

Computere består af flere dele, hvor processoren uden tvivl er den vigtigste. For at opnå en solid forståelse af, hvordan computere opfører sig, vil vi i kurset studere, hvordan en generaliseret processor udfører programmer. Vi vil også studere, hvordan programmer, herunder variabelt indhold, er kodet for at kunne eksekveres. Endelig, vil vi udvikle og simulere dele af beregnende arkitektur og studerer dens ydeevne.

De fleste moderne computere er forbundet i store netværk. I mange tilfælde er det utænkeligt at have computere uden adgang til netværk, såsom internettet. Vi vil i kurset dække computernetværkets og distribuerede computers rolle og principper, som er grundlæggende koncepter for moderne computersystemer. Derudover vil vi dække det grundlæggende kontrolsystemer, der tegner sig for størstedelen af ​​cyber-fysiske systemer, hvor computersystemet interagerer med dets fysiske omgivelser.
Litteraturhenvisninger
"Embedded Systems Design: A Unified Hardware/Software Introduction" af Frank Vahid og Tony Givargis, Wiley
Bemærkninger
Kurset gives delvist på engelsk.
Sidst opdateret
05. maj, 2020