DM588: Computerarkitektur
Kommentar
Indgangskrav
Faglige forudsætninger
Stoffet fra DM536: Introduktion til Programmering forudsættes kendt.
Kurset bygger på kompetencer i programmering, concurrent programmering, algoritmer og datastrukturer, og giver et fagligt grundlag for at udvikle kompetencer i operativsystemer, netværk og sikkerhed, compiler-konstruktion og videregående systemprogrammering
Formål
Kurset introducerer den studerende til arkitekturen og organisationen af generelt anvendelige computere, fra logikniveauet over mikroprogramniveauet til det konventionelle ISA niveau. Desuden indføres de vigtige komponenter i lagerhierarkiet, kommunikations-arkitekturer og organiseringen af moderne pipelinede processorer. Derudover indføres de fundamentale aspekter af systemprogrammering.
Målbeskrivelse
Efter kurset forventes det at den studerende har opnået følgende.
Viden om
- almindelige heltals- og flydende kommatals-repræsentationer.
- arkitekturen af computere i form af abstraktionslag.
- digital logik og Boolsk algebra.
- mikroarkitekturer og brugen af parallellismei moderne processorer.
- multikerne- og distribuerede arkitekturer.
- instruktionsætarkitekturer.
- assembly-sprog, herunder systemkald.
- organisationen af hardwarekomponenter (processorer, hukommelse, kommunikationsveje, eksterne enheder, osv.)
- I/O-enheder og afbrydelser (interrupts).
- egenskaberne og begrænsningerne for de forskellige lagerkomponenter, herunder deres adresseringstruktur.
Færdigheder i at
- fortolke elementære logikdiagrammer og sandhedstabeller, samt udtrykke funktionaliteten af basale processorkomponenter i form af sådanne diagrammer og tabeller.
- fortolke almindelige repræsentationer for binære heltal og flydende kommatal, og konvertering mellem disse.
- udtrykke funktionaliteten af en ISA-niveau instruktion ved fortolkning på en underliggende (mikro)arkitektur.
- designe og implementere simple programmer i et assembly-sprog.
Kompetencer i at
- vurdere ydeevnen af et flerniveau lagerhierarki.
- forklare og diskutere udnyttelsen af parallelisme i moderne processorer, herunder brugen af pipelining, out-of-order udførsel, samt fordelingen af opgaver på flere funktionelle enheder.
- forklare og diskutere den interne organisation og de interne kommunikationsveje på et overordnet plan, herunder kommunikation med ydre enheder samt afbrydelser fra disse.
- vurdere den praktiske ydeevne for algoritmer.
- opnå videregående viden om computerarkitektur.
Indhold
Kurset indeholder følgende faglige hovedområder.
- Det digitale logikniveau, mikroarkitekturniveauet, herunder pipelining, cache-lagre, og andre ydelsesforbedringer.
- ISA-niveauets instruktiontyper, -formater og adresseringsmetoder, datatyper og talrepræsentationer samt assembly-programmering.
- Organisationen af computer-komponenter og deres sammenhæng.
Litteratur
Eksamensbestemmelser
Eksamenselement a)
Tidsmæssig placering
Udprøvninger
Portfolio
EKA
Censur
Bedømmelse
Identifikation
Sprog
Varighed
Hjælpemidler
ECTS-point
Uddybende information
Vejledende antal undervisningstimer
Undervisningsform
Skemalagte undervisningstimer:
Antal undervisningstimer i alt: 56
Heraf:
Fællestimer i klasselokale/auditorium: 46
Fællestimer i laboratorium: 10
Fællestimerne er primært forelæsninger hvor emner og projekter bliver introduceret. I timerne vil der være plads til diskussioner og spørgsmål.
I holdtimerne i klasselokale forventes det at de studerende har forberedt sig ved at arbejder på de annoncerede opgaver, og i selve timerne vil opgaverne blive diskuteret.
I holdtimerne i laboratorium kan de studerende få hjælp til at løse de annoncerede programmeringsopgaver og projekterne.
Andre planlagte undervisningsaktiviteter:
Læse materialet til forelæsningerne, løse opgaver, og anvendelse af tilegnet viden og færdigheder i projekter.
Ansvarlig underviser
| Navn | Institut | |
|---|---|---|
| Jakob Lykke Andersen | jlandersen@imada.sdu.dk | Institut for Matematik og Datalogi |
Skemaoplysninger
Administrationsenhed
Team hos Registratur
Udbudssteder
Anbefalede studieforløb
Overgangsordninger
Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.