Datorsystemteknik
Computer System Engineering
Om kursplanen
Betygsskala
Kursens moduler
Inplacering
Kursen ingår i Datavetenskapligt program, kandidatprogram samt som en fristående kurs vid Göteborgs universitet.
Huvudområde med fördjupning
Behörighetskrav
Kursen DIT151 Maskinorienterad programmering godkänd.
Innehåll
Undervisningen omfattar föreläsningar, fördjupningsövningar i grupp samt laborativt arbete baserat på en mjukvarusimulator av ett litet datorsystem. Den laborativa delen avslutas med en inlämningsuppgift.
Mål
Kursen har som syfte att förmedla hur ett modernt datorsystem är uppbyggt och hur dess hårdvarudelar samverkar med varandra och med mjukvaran (på låg nivå). Speciellt tas stor hänsyn till prestandafrågor, eftersom många designbeslut eftersträvar en viss prestanda till lägsta kostnad, eller mesta möjliga prestanda
för en given kostnad. Efter genomgången kurs och avklarad examination kommer studenten att kunna
- Identifiera och översiktligt beskriva de hårdvarukomponenter som ett datorsystem består av.
- Översiktligt beskriva instruktionsuppsättningsarkitekturen hos en utvald tre-adress-registermaskin av modernt snitt.
- Identifiera och översiktligt beskriva de hårdvarukomponenter som en enkel skalär implementation av denna maskin består av.
- Läsa och skriva enkla assemblerprogram för denna maskin.
- Motivera pipelining som designprincip för mikroprocessorer.
- Identifiera de grundläggande typer av konflikter som uppkommer till följd av pipelining.
- Peka ut och beskriva enkla metoder för att hantera dessa konflikter, identifiera begränsningar i dessa metoder, samt uppskatta prestandainverkan.
- På korrekt sätt använda sig av instruktioner som utför aritmetiska operationer, såväl för flyttal som heltal.
- Redogöra för olika typer av undantag och avbrott samt för hur dessa i enklaste fall kan hanteras.
- Redogöra för funktionen hos och uppskatta prestandapåverkan av en minneshierarki, som kan omfatta cacheminnen, huvudminne och virtuellt minne, och som använder olika parameterar (total storlek, blockstorlek, associativitet, etc) för de olika minnesnivåerna.
- Beräkna prestanda (i enkla lastfall) hos ett I/O-system, speciellt i system som består av processorer, bussar och skivminnen.
- Identifiera prestandamässiga flaskhalsar i ett sådant system.
- Förklara hur ett datorsystems prestanda kan definieras och mätas.
- Uppskatta parameterändringars inverkan på systemets prestanda enligt ovan.
- Genomföra en enklare samoptimering av mjukvara (på assemblernivå) med hårdvaruparametrar för att uppnå bästa möjliga prestanda/ kostnadsförhållande för en viss funktion
Hållbarhetsmärkning
Former för undervisning
Undervisningsspråk: svenska.
Examinationsformer
Skriftlig redovisning på engelska av inlämningsuppgift. Demonstration av inlämningsuppgift. Tentamen. Alternativa examinationsformer kan förekomma.
Betyg
Betygsskalan omfattar betygsgraderna Underkänd (U), Godkänd (G), Väl godkänd (VG).
Kursvärdering
Kursen utvärderas genom möten både under och efter kursen mellan lärare och studentrepresentanter. Därutöver kan en anonym enkät användas för att få skriftlig information. Resultatet av utvärderingen används för att förbättra kursen genom att visa på delar som kan läggas till, förbättras, ändras eller tas bort.