Kursöversikt
EDA433 Grundläggande datorteknik Lp 2 HT22 (7,5 hp)
Kurs-PM - Uppdaterad 22 oktober 2022 (JK)
Kursen ges av Institutionen för data- och informationsteknik
Första föreläsningen ges måndagen den 31 oktober kl. 15.15 i HA 4.
Kontaktuppgifter
Examinator
Johan Karlsson (mail: johan at chalmers dot se)
Kursassistenter
Elias Hällqvist (mail: haelia at chalmers dot se)
Andreas Wieden (mail: andreas dot wieden at chalmers dot se)
Henrik Valter (mail: valterh at chalmers dot se)
Laborationer och frågeforum:
Roman Melnik (mail: melnik at chalmers dot se)
Kursens syfte
Kursen ska ge förståelse av datorns uppbyggnad och funktionssätt och därigenom en mycket god teoretisk och praktisk grund för fortsatta studier i såväl datortekniska som programmeringstekniska kurser.
Schema
Se schema i TimeEdit
Kurslitteratur
- Grundläggande datorteknik för högskolans ingenjörsutbildningar, Roger Johansson, Göteborgs Mikrovaror (GMV), 2021 , ISBN: 978-91-89280-30-4
- Exempelsamling (on-line)
- Ext-häfte (Används vid föreläsningar)
- Flisp-handboken. Delas ut på första föreläsningen och finns att hämta på D&IT-institutionens studieexpedition.
- Laborations-PM (4st). Delas ut på första föreläsningen och finns att hämta på D&IT-institutionens studieexpedition.
- En elektronisk kopia av Flisp-handboken och simulatormjukvaran DigiFlisp kan laddas ner från hemsidan för Göteborgs Mikrovaror.
- Direktlänk till Flisp-handboken
Kursens upplägg
Schemalagd undervisning består av föreläsningar, demonstrationer och handledda simulerings- och kodningsövningar. Dessutom utförs handledda obligatoriska laborationer där förkunskapskontroll genomförs inför varje laboration.
Under kursen konstruerar studenten genomgående större och större digitala byggblock ingående i digitala system och datorsystem. Teorin inhämtas genom föreläsningar och demonstrationer. Studenten konstruerar sina byggblock och testar sin konstruktion med hjälp av simulatorer under simuleringsövningar. Därefter implementerar studenten sina byggblock i hårdvara under laborationerna. Konstruktionsarbetet avslutas med att sammankoppla byggblocken till en dator som studenter sedan skall programmera. Laborationerna genomförs i grupper om två studenter.
Förändringar sedan förra kurstillfället
TBD
Lärandemål
Kunskap och förståelse:
- beskriva binära koder som NBCD-kod, Alfanumeriska koder, Excess-n koder och Graykod
- beskriva addition och subtraktion med 2- och 10-komplementaritmetik.
- beskriva datorns uppbyggnad och funktion, visa hur styrenhet, dataväg, registerfil, aritmetik- och logikenhet (ALU) kopplas samman i en centralenhet på blocknivå
- beskriva och analysera den automatiska styrenhetens funktion och uppbyggnad samt förklara hur instruktioner byggs upp av styrsekvenser
- förklara det lagrade programmets princip
- beskriva en programmerares bild av en processor, (instruktionsuppsättning och adresseringssätt)
- beskriva elementär undantagshantering i datorsystem.
- beskriva olika typer av minnesteknologier såsom ROM, PROM, FLASH, statiskt RAM och dynamiskt RAM.
- förklara begreppet minneshierarki.
- beskriva synkrona och asynkrona bussprotokoll samt multiplexteknik.
Färdigheter och förmåga:
- beskriva och använda binära koder för aritmetik.
- utföra omvandling av tal mellan decimal, binär och hexadecimal representation.
- utföra addition och subtraktion med binära heltal utan tecken.
- utföra addition och subtraktion med binära tal med 2-komplementaritmetik.
- utföra multiplikation och division med binära heltal.
- med hjälp av Boolesk algebra, beskriva, analysera och konstruera sådana kombinatoriska nät (såsom väljare, fördelare, heladderare, skiftregister etc.) som typiskt används för att bygga en dators centralenhet
- med hjälp av Boolesk algebra, beskriva och analysera sådana sekvensnät (minneselement och räknare) som typiskt används för att bygga en dators centralenhet.
- analysera/konstruera en enkel ALU och utforma styrsignalsekvenser för grundläggande ALU-operationer
- analysera en enkel dataväg, samt konstruera och utforma styrsignalsekvenser för överföringar mellan register, ALU och minne.
- beskriva, analysera och konstruera enkla assemblerprogram, organiserade i subrutiner.
- översätta kod mellan maskin- och assemblerprogram (assemblera, disassemblera)
- beskriva och analysera avkodningslogik för primärminne med digitala komponenter.
- beskriva och analysera enkel minnesadresserad IO med digitala komponenter
- beskriva och förklara de vanligaste primärminnesteknologierna (statiskt/dynamiskt RAM, ROM och FLASH-minnen).
Värderingsförmåga och förhållningssätt:
- ha förmåga att förstå samspelet mellan maskinvara och programvara.
- ha insikter i om hur grundläggande kunskaper i datorteknik är en förutsättning för att kunna förstå och arbeta med frågeställningar som rör datorers prestanda, energiförbrukning, miljöpåverkan, realtidsegenskaper, tillförlitlighet och sårbarhet för dataintrång.
- analysera och konstruera styrsignalsekvenser utgående från instruktioners semantik.
- konstruera sekvensnät (minneselement och räknare ) som typiskt används för att bygga en dators centralenhet med hjälp av Boolesk algebra.
- konstruera avkodningslogik för primärminne med digitala komponenter.
- konstruera enkel minnesadresserad IO med digitala komponenter.
Examination
Skriftlig tentamen ges den 14 januari 2022 , 3 april 2023 och 17 augusti 2023
Godkända laborationer (4 stycken).
Slutbetyget bestäms av tentamensresultatet.
Betygsgränser Chalmers: TBD
Betygsgränser GU: TBD
Länk till kursplanen i Studieportalen Studieplan