02321 Hardware/Software Programmering

2026/2027

Kursusinformation
Hardware/Software Programming
Dansk
10
Diplomingeniør
E1B (tors 13-17) og Januar
Campus Lyngby
Forelæsninger, lab øvelser og projekt.
13-uger + 3-uger
Sidste dag(e) i 3-ugersperioden
Skriftlig eksamen og bedømmelse af rapport(er)
Den endelige karakter gives på baggrund af en helhedsvurdering. Den skriftelige eksamen afholdes i afslutnings af 3-ugers perioden. Den afsluttende projektrapport afleveres i slutningen af 3-ugers perioden i januar.
Skriftlig eksamen: 2 timer
Skriftlige hjælpemidler er tilladt
7-trins skala , ekstern censur
02311.02322.02328.02329 , Færdighed i C programmering. Kendskab til grundlæggende computer arkitektur. Kendskab til digital elektronik og VHDL. Kendskab til indlejrede systemer.
Edward Alexandru Todirica , Tlf. (+45) 4525 3748 , eato@dtu.dk
01 Institut for Matematik og Computer Science
https://courses.compute.dtu.dk/02321
I studieplanlæggeren
Overordnede kursusmål
At give deltagerne en god viden om moderne indlejrede computer-systemers opbygning og virkemåde ved gennemgang af de involverede komponenter og abstraktionsniveauer, som bruges til at håndtere kompleksiteten af et sådant system.
At give deltagerne en forståelse af grænsefladen mellem en indlejret processor og eksterne enheder.
At gøre deltagerne i stand til at designe, implementere, fejlfinde, teste og dokumentere et computer-system til en indlejret applikation bestående af hardware og software komponenter.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Konstruere et indlejret system, der interfacer med I/O enheder.
  • Beskrive og anvende interrupts i et computer system.
  • Opdele designet af et indlejret computersystem af moderat kompleksitet i håndterbare hardware- og softwarekomponenter
  • Forklare memory-mapped input/output og anvende det til at kommunikere med enheder i et computersystem
  • Konstruere programmer, der gør det muligt for processoren at styre input-/outputenheder gennem relevante interfaces og kommunikationsprotokoller
  • Udvikle software i et højniveauprogrammeringssprog
  • Konstruere og anvende device drivers til at styre input-/outputenheder
  • Skabe specialudviklede IP-kerner ved hjælp af hardwarebeskrivelsessprog eller high-level synthesis-værktøjer (f.eks. VHDL eller HLS)
  • Skrive en teknisk rapport, der dokumenterer projektarbejdet.
  • Bidrage konstruktivt som medlem af et lille designteam (2–5 deltagere)
Kursusindhold
* ANSI C programmering
* Xilinx Zynq-arkitekturen (baseret på Digilent Zybo-boardet)
* Hardware design og implementation ved hjælp af FPGA og VHDL/HLS
* Hukommelser
* Interaktion med I/O enheder: polling, interrupts, memory mapping
* Programmer, der styrer I/O enheder
* Enhedsdrivere
* Projekt, der involverer strukturering, design, implementering og test af en applikation, som eksekverer på et computer system af en vis kompleksitet, hvor funktionaliteten realiseres ved en kombination af maskinel og programmel
* Dette kursus er det projektbærende kursus for 3. semester CDIO projekt.
Bemærkninger
Kravspecifikationen for 3-ugens-projektet udføres af de studerende i samarbejde med underviseren.
Sidst opdateret
04. maj, 2026