2007/2008

02321 Hardware/software programmering

Engelsk titel: 


Hardware/software Programming

Sprog:


Point (ECTS )

  10

Kursustype:   

Diplomkursus
Kurset udbydes under Tompladsordningen


Skemaplacering:

E2 eller
F2

 

Undervisningsform:

Forelæsninger, øvelser og projekter

Kursets varighed:

13-uger

Eksamensplacering:

E2A,   F2A 

Evalueringsform:

Hjælpemidler:

Bedømmelsesform:

Faglige forudsætninger:

,
                                          

Overordnede kursusmål:

At sætte deltagerne i stand til at designe, implementere, fejlfinde, afprøve og dokumentere et samlet system bestående af hardware og software. Målet er at få studerende til forstå den proces, der er involveret i konstruktionen af digitale kredsløb, software programmer, og hvorledes grænsefladen imellem disse håndteres.


Læringsmål:

En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:

  • opdele designet af et større digitalt system i mindre og overskuelige dele af hardware og software.
  • implementere simple algoritmer.
  • designe software med en datastruktur i form af lænkede lister, samt kendskab til lignende selv- og krydsrefererende datastrukturer (træer, grafer).
  • håndtere manipulation med, samt dynamisk oprettelse og fjernelse af dataelementer i ovennævnte datastruktur.
  • foretage en syntese af mindre digitale systemer både ved hjælp af beskrivelsessproget VHDL, og ved at sammensætte primitive komponenter.
  • implementere et interface mellem en CPU og en FPGA
  • implementere en styring af ekstern hardware ud fra en given protokol på en FPGA.
  • skrive en teknisk rapport som dokumenterer det udførte arbejde, og hvor specielt analysen af opgaven samt det herudfra valgte design beskrives og kommenteres.
  • fungere som medlem af en mindre arbejdsgruppe og deltage konstruktivt i styringen af denne.


Kursusindhold:

ANSI C. Projekt med oprettelse og vedligeholdelse af kundekartotek.
Forenklet mikroprocessorbus og timing ved operationer på ekstern memory.
Funktion og intern opbygning af en RAM.
Porte og interrupt.
Datablade for RAM, ROM og mikroprocessor inkl. timingspecifikationer.
Oversigt over hvordan en mikroprocessor programmeres på assembler niveau og fra et højniveau sprog.
Mikrokontroller, herunder intern/ekstern- og program/datalager, bustiming, interruptsystem, timer/counter og serielkanal.
Implementering af et simpelt 2D-grafik kort på FPGA.
Projekt med strukturering, design, implementering og afprøvning af et spil, som kører på et komplekst digitalt system bestående af en Pc, en mikrokontroller og en FPGA.


Kursusansvarlig:

Sune Fallgaard Nielsen, 322, 226, (+45) 4525 3741, sfn@imm.dtu.dk  
Edward Alexandru Todirica, 322, 214, (+45) 4525 3748, edward@imm.dtu.dk  

Institut:

02 Institut for Informatik og Matematisk Modellering

Kursushjemmeside:

http://www.imm.dtu.dk/courses/02321
Sidst opdateret: 15. februar, 2008