Kursplan för Datorsystemteknik

Kursplan fastställd 2026-02-10 av programansvarig (eller motsvarande).

Kursöversikt

  • Engelskt namnComputer system engineering
  • KurskodEDA333
  • Omfattning7,5 Högskolepoäng
  • ÄgareTKDAT
  • UtbildningsnivåGrundnivå
  • HuvudområdeDatateknik, Elektroteknik
  • InstitutionDATA- OCH INFORMATIONSTEKNIK
  • BetygsskalaTH - Mycket väl godkänd (5), Väl godkänd (4), Godkänd (3), Underkänd

Kurstillfälle 1

  • Undervisningsspråk Engelska
  • Anmälningskod 49127
  • Max antal deltagare165
  • Sökbar för utbytesstudenterNej
  • Endast studenter med kurstillfället i programplan.

Poängfördelning

0119 Tentamen 4,5 hp
Betygsskala: TH
4,5 hp
0219 Laboration 3 hp
Betygsskala: TH
3 hp

I program

Examinator

Behörighet

Grundläggande behörighet för grundnivå
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från kravet

Särskild behörighet

Samma behörighet som det kursägande programmet
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från kraven

Kursspecifika förkunskaper

EDA452 Grundläggande datorteknik och EDA482  Maskinorienterad programmering eller motsvarande kurser.

Syfte

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.

Lärandemål (efter fullgjord kurs ska studenten kunna)

Kunskap och förståelse:

  • Beskriv dataväg och kontrollväg i en pipeline processor
  • 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.
  • Förklara hur ett datorsystems prestanda kan definieras och mätas.
  • Översiktligt beskriva de komponenter och principer som används vid konstruktion av fler-kärniga processorer.

Färdighet och förmåga:

  • Läsa och skriva enkla assemblerprogram för en typisk tre-adress register maskin.
  • På korrekt sätt använda sig av instruktioner som utför aritmetiska operationer, såväl för flyttal som heltal.
  • 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, samt redovisa detta i en kortare skriftlig rapport.

Värderingsförmåga och förhållningssätt:

  • Identifiera de grundläggande typer av konflikter som uppkommer till följd av pipelining av en processors dataväg. 
  • Peka ut och beskriva enkla metoder för att hantera dessa konflikter, identifiera begränsningar i dessa metoder, samt uppskatta prestandainverkan.
  • Identifiera prestandamässiga flaskhalsar i ett sådant system.
  • Uppskatta parameterändringars inverkan på systemets prestanda enligt ovan.

Innehåll

Genom föreläsningar, gruppövningar och laborationer förmedlas en grundläggande insikt om hur ett litet datorsystem (med processor, minnen samt in- och utmatning) är uppbyggt och fungerar. Stor vikt läggs vid prestandaaspekter och vid samverkan med mjukvara.

Organisation

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.

Litteratur

Patterson & Hennessy: "Computer Organization and Design RISC-V Edition: The Hardware/Software Interface". Kompletterande material via kurshemsidan i Canvas

Examination inklusive obligatoriska moment

Kursen examineras genom individuell skriftlig tentamen om 4,5 hp och laborationsuppgifter om 3 hp.

Laborationerna genomförs i grupp och bedöms med godkänd (G) eller underkänd (U). En av laborationerna är ett projekt som betygsätts enligt skalan U, 3, 4 eller 5. Studenter klarar laborationsdelen av kursen om de får godkänt betyg på samtliga uppgifter. Laborationsbetyget motsvarar då betyget på projektet.

Betygsskalan på tentamen och för hela kursen omfattar underkänd (U), 3, 4 och 5.

För att bli godkänd på kursen krävs godkänt resultat på både laborationsdelen och tentamen. Kursbetyget beräknas genom att kombinera betyget på laborationsprojektet och tentamensresultatet (maximalt 60 poäng). Betyget 4 på laborationsprojektet ger 6 poäng som tillägg till tentamenspoängen, och betyget 5 ger 12 poäng som tillägg.

Kursens examinator får examinera enstaka studenter på annat sätt än vad som anges ovan om särskilda skäl föreligger, till exempel om en student har ett beslut från Chalmers om riktat pedagogiskt stöd på grund av funktionsnedsättning.