There are currently no projects
This tab is intentionally left blank.
Maskinarkitektur er et obligatorisk bachelorkursus, der ligger i blok 1 på andet studieår. Undervisningen omhandler den grundlæggende virkemåde af et computersystem, dets design på kredsløbsniveau og hvordan det programmeres. Det er et forsimplet computersystem der gennemgåes; fokus er rettet mod beregningsenheden (CPUen) og brugen af hukommelsen (adresseringsformer og caching). På kurset lærer man også hvordan et program skrevet i et (forholdsvist) høj-niveau sprog som C i grove træk oversættes til maskinkode.
Stikord: Assembler programmering, C Programmering, binær talrepræsentation, kredsløbsdesign, CPU, hukommelse, hukommelsesadressering, caching.
(dette er på ingen måde en komplet liste)
Finn Schiermer Andersen er måske den person der har været tilknyttet kurset i længst tid. Han skrev i 1999 en 130 siders rapport omkring afholdelsen af kurset, efter han havde været underviser på det i 7 år. I dag fungerer han som ekstern lektor på kurset.
Kurset blev ikke afholdt i 2008, da det blev flyttet fra første til andet år.
Siden 1996 har man brugt bogen "Computer Organization and Design" af Patterson & Hennessy. Den er lige nu i sin fjerde udgave.
I løbet af kurset stilles opgaver i kredsløbsdesign, hvor af den største opgave er at konstruere sin egen CPU fra bunden. I løbet af årene er der blevet brugt en del forskelligt software til kredsløbsdesign og afvikling af assemblerkode:
I år 2010 udskiftede man KredsDesign (se herunder) med programmet Logisim. Der er dog lavet en del tilpasninger for at få komponenterne til at opføre sig mere som dem der gennemgåes i lærebogen.
https://github.com/andersbll/logisim-diku
MARS (MIPS Assembler and Runtime Simulator) er et grafisk program til afprøvning af MIPS assemblerkode.
http://courses.missouristate.edu/KenVollmar/MARS/
KredsDesign blev udviklet af som et bachelorprojekt på DIKU
http://image.diku.dk/kreds/index.php/Main_Page
http://sourceforge.net/projects/kredsdesign
Kreds er et sprog til definition af kredsløb. KredsDesign er en grafisk grænseflade der genererer og afvikler Kreds kode. Kreds selv, bygger oven på SimSys.
SimSys blev udviklet Finn Schiermer Andersen
http://www.diku.dk/hjemmesider/studerende/schier/simsyshome.html
Før SimSys blev de studerende bedt om at implementere mikroarktikturerne direkte i C eller C++.
masm
og mips
masm
(MIPS assembler) og mips
(MIPS simulator) blev tidligere brugt til afvikling af assemblerkode. masm
assemblerede assemblerkoden til maskinkode og mips
kunne derefter afvikle den genererede maskinkode.