KURS-PM (Denna sida ändrad 2014-05-09)


KURS:  Digital- och datorteknik, för E 1 (7,5 hp) EDA216
LÄSÅR:  2013/2014, LP 4


Kursens organisation
och syfte:
Kursen omfattar integrerade föreläsningar och demonstrationer, konsultationer, simulatorövningar och laborationer. Digital- och datorteknik är en grundläggande kurs i ämnesområdet.
 
På laborationerna ges vissa praktiska erfarenheter av digitala kretsars funktion, en enkel dators konstruktion och instruktionsuppsättning samt programmering i assemblerspråk. Simulatorövningarna är tillsammans med laborationerna utformade så att de täcker en stor del av kursen.

Efter avslutad kurs skall deltagare kunna analysera och konstruera enkla digitala system samt ha kännedom om principerna för en dators uppbyggnad, arbetssätt och användning.
 

Information om kursen: Kurshemsidan nås enklast från studentportalen.
www-sida: http://www.cse.chalmers.se/edu/year/2014/course/EDA216/

Examinator och lärare: Lars-Eric Arebrink, rum 4126, EDIT-huset, plan 4, telefon 772 5718,
e-post:  lea@chalmers.se

Labchef: Rolf Snedsböl, rum 4465, EDIT-huset, plan 4, telefon 772 1665, e-post: rolf(at)chalmers.se   

Övriga lärare: Rolf Snedsböl, rum 4465, EDIT-huset, plan 4, telefon 772 1665, e-post: rolf(at)chalmers.se   
Studenternas kursrepresentant:
Carl Johansson, e-post: cajohans(at)student.chalmers.se
Simon Nilsson, e-post: simonil(at)student.chalmers.se

Halvtids utvärdering: Protokoll.
Lektioner: Lektionerna är i huvudsak uppdelade i kombinerade föreläsningar/demonstrationer i storgrupp och självverksamhet (övning) vid simulatorer i mindre grupper.

Simulatorövningarna ägnas åt att utföra det arbete som anvisas som självverksamhet och förberedelsearbete för laborationerna. Vid simulatorövningarna finns också möjlighet att fråga om sådant i kursen som man inte har förstått.

Konsultationer: En dubbeltimma läsveckorna 2-8 är avsatt för självverksamhet och konsultation i en lektionssal med en lärare närvarande.

Laborationer: Under kursen skall fyra obligatoriska laborationer utföras. De startar i läsvecka 3 och utförs gruppvis med två personer i varje grupp. 
Mera information om simulatorövningarna och laborationerna finns här.

Lärandemål:

  Om digitalteknik
 
* beskriva och använda binära koder.
  Detta betyder att man till exempel ska kunna
  - utföra omvandling av tal mellan decimal, binär och hexadecimal representation.
  - utföra addition och subtraktion med binära heltal.
  - känna till hur multiplikation och division utförs i binär representation.

  * beskriva och analysera datorns uppbyggnad som programmerbart digitalt system.
  Detta betyder att man till exempel ska kunna
  - beskriva, analysera och konstruera sådana kombinatoriska nät och sekvensnät som typiskt
     används för att bygga en dators centralenhet. De kombinatoriska nät som här avses utgörs
     huvudsakligen av enklare nät såsom väljare,fördelare, heladderare, bitskiftare etc. De
     sekvensnät som här avses utgörs huvudsakligen av minneselement och räknare.

   Om datorns uppbyggnad och funktion
  * beskriva datorns uppbyggnad och funktion.
  Detta betyder att man till exempel ska kunna
  - beskriva på blocknivå hur styrenhet, dataväg med register och aritmetik- och logikenhet         (ALU) kopplas samman i en centralenhet.
 
  * beskriva och analysera/konstruera centralenhetens grundläggande delar.
   Detta betyder att man till exempel ska kunna
   - 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.

  * förklara hur instruktioner byggs upp av styrsekvenser.
  Detta betyder att man till exempel ska kunna
  - förklara och med exempel beskriva instruktionsformat, instruktionsavkodning och
     instruktionsutförande.

  * beskriva och analysera den automatiska styrenhetens funktion och uppbyggnad.
  Detta betyder att man till exempel ska kunna
  - beskriva hur styrsignalsekvenser kan realiseras med fast kopplad logik.
  - analysera och konstruera styrsignalsekvenser utgående från instruktioners semantik.

  * förklara primärminnets grundläggande funktioner samt beskriva, analysera och konstruera
     primärminnets anslutning till centralenheten.
  Detta betyder att man till exempel ska kunna
  - beskriva olika typer av primärminnen såsom ROM, PROM, FLASH, statiskt RAM och
    dynamiskt RAM, samt förklara respektive minnestyps användbarhet för olika ändamål.
  - förklara begreppet minneshierarki.
  - beskriva, analysera och konstruera avkodningslogik för primärminne med digitala
     komponenter.
  - beskriva, analysera och konstruera enkel minnesadresserad IO med digitala komponenter.
  - förklara/beskriva hur centralenhet och minne kopplas samman med hjälp av datorns
     bussystem.
  - beskriva synkrona och asynkrona bussprotokoll samt multiplexteknik.

  * beskriva elementär undantagshantering i datorsystem.
  Detta betyder att man till exempel ska kunna
  - förklara undantagstyper såsom återstart, programvaruinitierade undantag samt externt
     genererade undantag (avbrott).
  - beskriva hur återstart och programvaruinitierade undantag utförs i styrenheten.
  - beskriva hur avbrott hanteras i centralenheten.

  Om assemblerprogrammering
  * förklara det lagrade programmets princip.
  Detta betyder att man till exempel ska kunna
  - beskriva hur en sekvens maskininstruktioner, som ordnats sekvensiellt i minnet, utförs.

 * beskriva programmerarens bild av maskinen, dvs instruktionsuppsättning och
     adresseringssätt.
  Detta betyder att man till exempel ska kunna
  - förklara olika allmängiltiga typer av instruktionsgrupper och adresseringssätt samt beskriva
     dessa med exempel.

  * beskriva, analysera och konstruera enkla assemblerprogram, organiserade i subrutiner.
  Detta betyder att man till exempel ska kunna
  - strukturera program med hjälp av subrutiner och stackhantering.
  - skriva små rutiner innefattande programstyrd och avbrottsstyrd in- och utmatning samt
     fördröjningar.

Förändringar: Jämfört med kursen VT12 har den tidigare använda FLEX-datorn i huvudsak ersatts av den snarlika FLIS-datorn, som har ett enkelt avbrottssystem. Anslutning av minnesmoduler och in-/utportar till synkron buss har tillkommit liksom de aritmetiska operationerna heltalsmultiplikation och heltalsdivision.
 
Examination: En 4-timmars skriftlig tentamen på hela kursen. Det enda tillåtna hjälpmedlet är en av institutionen utgiven lista med FLIS-processorns instruktioner (INS1). För godkänt slutbetyg fordras godkänd tentamen och godkänd laborationskurs.

Tentamen och 
omtentamen:
Måndag 2014-05-27 kl. 14.00-18.00 och torsdag 2014-08-21 kl.8.30-12.30.
 
Kurslitteratur:
(KMP) Johnson, Larsson & Arebrink: Grundläggande digital- och datorteknik. 2008. Del 1. Digital teknik. Finns på DC.
(ARB) Johansson: GRUNDLÄGGANDE DATORTEKNIK, Arbetsbok för DigiFlisp, Studentlitteratur 2013. ISBN: 978-91-44-07596-9. Finns på DC och Cremona.
(EXT) Häfte.EDA216, Kompletterande kursmaterial för Digital- och datorteknik. 2014. Finns på DC och som pdf-fil.
(INS1)
(INSX)
Instruktionslista för FLISP. Inst för datorteknik, Chalmers, 2013. Finns på DC och som pdf-fil.
Instruktionslista för FLEX. Inst för datorteknik, Chalmers, 2013. Finns endast som pdf-fil.
(LAB) Laborations-PM nr 1-4. Inst för datorteknik, Chalmers, 2014. Utdelas, men finns också som pdf-filer. 
(SIM) Simulatorer och utvecklingsverktyg för digitala kretsar FLEX- och FLIS- processorn. Programvara för Windows, hämtas via kurshemsidan.

Distribution av kursmaterial (Sker genom DC)