Datamaskinarkitektur våren 2009 Forelesning 1: Introduksjon til kurset T. M. Jonassen Department of Computer Science Faculty of Engineering Oslo University College 05. Januar 2009
Outline 1 Oversikt 2 Øvinger 3 Om pensum 4 Om innholdet 5 Slutt
Om meg Dr. grad i matematikk (ikke-lineære dynamiske systemer). Førsteamanuensis (associate professor) ved IU. Forskning på dynamiske systemer, samarbeider med StatoilHydro, Murmansk State Technical University, Russland [vibrasjoner og belastninger på offshorestrukturer] samt Yerevan Physics Institute, Armenia [teoretisk fysikk, latticemodeller]. Securety engineering, forskningsamarbeid med Columbia University, New York, University of Rovaniemi, Finland, Imperial College, London med flere.
Om meg Dr. grad i matematikk (ikke-lineære dynamiske systemer). Førsteamanuensis (associate professor) ved IU. Forskning på dynamiske systemer, samarbeider med StatoilHydro, Murmansk State Technical University, Russland [vibrasjoner og belastninger på offshorestrukturer] samt Yerevan Physics Institute, Armenia [teoretisk fysikk, latticemodeller]. Securety engineering, forskningsamarbeid med Columbia University, New York, University of Rovaniemi, Finland, Imperial College, London med flere.
Om meg Dr. grad i matematikk (ikke-lineære dynamiske systemer). Førsteamanuensis (associate professor) ved IU. Forskning på dynamiske systemer, samarbeider med StatoilHydro, Murmansk State Technical University, Russland [vibrasjoner og belastninger på offshorestrukturer] samt Yerevan Physics Institute, Armenia [teoretisk fysikk, latticemodeller]. Securety engineering, forskningsamarbeid med Columbia University, New York, University of Rovaniemi, Finland, Imperial College, London med flere.
Om meg Dr. grad i matematikk (ikke-lineære dynamiske systemer). Førsteamanuensis (associate professor) ved IU. Forskning på dynamiske systemer, samarbeider med StatoilHydro, Murmansk State Technical University, Russland [vibrasjoner og belastninger på offshorestrukturer] samt Yerevan Physics Institute, Armenia [teoretisk fysikk, latticemodeller]. Securety engineering, forskningsamarbeid med Columbia University, New York, University of Rovaniemi, Finland, Imperial College, London med flere.
Om meg forts. Har undervist en rekke matematikkurs og datakurs ved IU og UiO. Har veiledet både bachelor, master, cand scient og dr studenter. Innenfor computing er jeg intressert i parallellprogrammering/clustere. De siste årene har jeg stort sett undervist på mastergraden vi har på IU i Nettverk- og systemadministrasjon. Jeg treffes på mitt kontor (ikke for tidlig om morgenen) eller på e-mail, ikke på mobiltelefon.
Om meg forts. Har undervist en rekke matematikkurs og datakurs ved IU og UiO. Har veiledet både bachelor, master, cand scient og dr studenter. Innenfor computing er jeg intressert i parallellprogrammering/clustere. De siste årene har jeg stort sett undervist på mastergraden vi har på IU i Nettverk- og systemadministrasjon. Jeg treffes på mitt kontor (ikke for tidlig om morgenen) eller på e-mail, ikke på mobiltelefon.
Om meg forts. Har undervist en rekke matematikkurs og datakurs ved IU og UiO. Har veiledet både bachelor, master, cand scient og dr studenter. Innenfor computing er jeg intressert i parallellprogrammering/clustere. De siste årene har jeg stort sett undervist på mastergraden vi har på IU i Nettverk- og systemadministrasjon. Jeg treffes på mitt kontor (ikke for tidlig om morgenen) eller på e-mail, ikke på mobiltelefon.
Om meg forts. Har undervist en rekke matematikkurs og datakurs ved IU og UiO. Har veiledet både bachelor, master, cand scient og dr studenter. Innenfor computing er jeg intressert i parallellprogrammering/clustere. De siste årene har jeg stort sett undervist på mastergraden vi har på IU i Nettverk- og systemadministrasjon. Jeg treffes på mitt kontor (ikke for tidlig om morgenen) eller på e-mail, ikke på mobiltelefon.
Om meg forts. Har undervist en rekke matematikkurs og datakurs ved IU og UiO. Har veiledet både bachelor, master, cand scient og dr studenter. Innenfor computing er jeg intressert i parallellprogrammering/clustere. De siste årene har jeg stort sett undervist på mastergraden vi har på IU i Nettverk- og systemadministrasjon. Jeg treffes på mitt kontor (ikke for tidlig om morgenen) eller på e-mail, ikke på mobiltelefon.
Forelesninger og annet Forelesninger: Mandager 14.30 16.15 og fredager 10.30 12.15 i Auditorium 4, PH322. Mobiltelefoner slås av eller settes på stille modus i under forelesningene. Øvingstimer: Tirsdager 13.30 15.15 og onsdager 10.30 12.15 i PH422 og PH461. Det er ikke øvingstimer første uke, altså 05.01 09.01.
Forelesninger og annet Forelesninger: Mandager 14.30 16.15 og fredager 10.30 12.15 i Auditorium 4, PH322. Mobiltelefoner slås av eller settes på stille modus i under forelesningene. Øvingstimer: Tirsdager 13.30 15.15 og onsdager 10.30 12.15 i PH422 og PH461. Det er ikke øvingstimer første uke, altså 05.01 09.01.
Forelesninger og annet Forelesninger: Mandager 14.30 16.15 og fredager 10.30 12.15 i Auditorium 4, PH322. Mobiltelefoner slås av eller settes på stille modus i under forelesningene. Øvingstimer: Tirsdager 13.30 15.15 og onsdager 10.30 12.15 i PH422 og PH461. Det er ikke øvingstimer første uke, altså 05.01 09.01.
Forelesninger og annet Forelesninger: Mandager 14.30 16.15 og fredager 10.30 12.15 i Auditorium 4, PH322. Mobiltelefoner slås av eller settes på stille modus i under forelesningene. Øvingstimer: Tirsdager 13.30 15.15 og onsdager 10.30 12.15 i PH422 og PH461. Det er ikke øvingstimer første uke, altså 05.01 09.01.
Addresser Forelesninger ved Tore M. Jonassen E-mail: torejo@hio.no Telefon: 22 45 32 54 (kontor) Kursets webside: http://bluemaster.iu.hio.no/edu/ca/ Ekstra kursmatriell vil bli lagt ut på websiden. Merk: Jeg bruker ikke ClassFronter. Elektronisk materiell vil være nedlastbart fra kursets webside på bluemaster.iu.hio.no
Addresser Forelesninger ved Tore M. Jonassen E-mail: torejo@hio.no Telefon: 22 45 32 54 (kontor) Kursets webside: http://bluemaster.iu.hio.no/edu/ca/ Ekstra kursmatriell vil bli lagt ut på websiden. Merk: Jeg bruker ikke ClassFronter. Elektronisk materiell vil være nedlastbart fra kursets webside på bluemaster.iu.hio.no
Addresser Forelesninger ved Tore M. Jonassen E-mail: torejo@hio.no Telefon: 22 45 32 54 (kontor) Kursets webside: http://bluemaster.iu.hio.no/edu/ca/ Ekstra kursmatriell vil bli lagt ut på websiden. Merk: Jeg bruker ikke ClassFronter. Elektronisk materiell vil være nedlastbart fra kursets webside på bluemaster.iu.hio.no
Addresser Forelesninger ved Tore M. Jonassen E-mail: torejo@hio.no Telefon: 22 45 32 54 (kontor) Kursets webside: http://bluemaster.iu.hio.no/edu/ca/ Ekstra kursmatriell vil bli lagt ut på websiden. Merk: Jeg bruker ikke ClassFronter. Elektronisk materiell vil være nedlastbart fra kursets webside på bluemaster.iu.hio.no
Litteratur Hovedbok: M. Morris Mano and Charles R. Kime: Logic and Computer Design Fundamentals. Fourth Edition, 2008, Pearson Prentice Hall, ISBN 0-13-198926-X. ISBN-nummeret har er til hardcover utgaven. Annet 1: Tore M. Jonassen: Assemblerprogrammering. 2000. HiO Annet 2: HowTo om enkel C programmering. Annet 3: HowTo om inline assembler i C.
Litteratur Hovedbok: M. Morris Mano and Charles R. Kime: Logic and Computer Design Fundamentals. Fourth Edition, 2008, Pearson Prentice Hall, ISBN 0-13-198926-X. ISBN-nummeret har er til hardcover utgaven. Annet 1: Tore M. Jonassen: Assemblerprogrammering. 2000. HiO Annet 2: HowTo om enkel C programmering. Annet 3: HowTo om inline assembler i C.
Litteratur Hovedbok: M. Morris Mano and Charles R. Kime: Logic and Computer Design Fundamentals. Fourth Edition, 2008, Pearson Prentice Hall, ISBN 0-13-198926-X. ISBN-nummeret har er til hardcover utgaven. Annet 1: Tore M. Jonassen: Assemblerprogrammering. 2000. HiO Annet 2: HowTo om enkel C programmering. Annet 3: HowTo om inline assembler i C.
Litteratur Hovedbok: M. Morris Mano and Charles R. Kime: Logic and Computer Design Fundamentals. Fourth Edition, 2008, Pearson Prentice Hall, ISBN 0-13-198926-X. ISBN-nummeret har er til hardcover utgaven. Annet 1: Tore M. Jonassen: Assemblerprogrammering. 2000. HiO Annet 2: HowTo om enkel C programmering. Annet 3: HowTo om inline assembler i C.
Studentarbeid og eksamen En individuell oppgave i Boolesk algebra og behandling av binære data, samt konstruksjon av kombinatoriske og sekvensielle kretser. En individuell programmeringsoppgave med inline assembler i C. Begge disse oppgavene må være godkjent for å kunne ta eksamen. Fem timer skriftelig eksamen under tilsyn. Alle hjelpemidler tillatt. Vanlig karakterer A E for bestått, F ikke bestått. Merk: Individuelle oppgaver er individuelle, og gruppearbeid på disse tillates ikke.
Studentarbeid og eksamen En individuell oppgave i Boolesk algebra og behandling av binære data, samt konstruksjon av kombinatoriske og sekvensielle kretser. En individuell programmeringsoppgave med inline assembler i C. Begge disse oppgavene må være godkjent for å kunne ta eksamen. Fem timer skriftelig eksamen under tilsyn. Alle hjelpemidler tillatt. Vanlig karakterer A E for bestått, F ikke bestått. Merk: Individuelle oppgaver er individuelle, og gruppearbeid på disse tillates ikke.
Studentarbeid og eksamen En individuell oppgave i Boolesk algebra og behandling av binære data, samt konstruksjon av kombinatoriske og sekvensielle kretser. En individuell programmeringsoppgave med inline assembler i C. Begge disse oppgavene må være godkjent for å kunne ta eksamen. Fem timer skriftelig eksamen under tilsyn. Alle hjelpemidler tillatt. Vanlig karakterer A E for bestått, F ikke bestått. Merk: Individuelle oppgaver er individuelle, og gruppearbeid på disse tillates ikke.
Studentarbeid og eksamen En individuell oppgave i Boolesk algebra og behandling av binære data, samt konstruksjon av kombinatoriske og sekvensielle kretser. En individuell programmeringsoppgave med inline assembler i C. Begge disse oppgavene må være godkjent for å kunne ta eksamen. Fem timer skriftelig eksamen under tilsyn. Alle hjelpemidler tillatt. Vanlig karakterer A E for bestått, F ikke bestått. Merk: Individuelle oppgaver er individuelle, og gruppearbeid på disse tillates ikke.
Studentarbeid og eksamen En individuell oppgave i Boolesk algebra og behandling av binære data, samt konstruksjon av kombinatoriske og sekvensielle kretser. En individuell programmeringsoppgave med inline assembler i C. Begge disse oppgavene må være godkjent for å kunne ta eksamen. Fem timer skriftelig eksamen under tilsyn. Alle hjelpemidler tillatt. Vanlig karakterer A E for bestått, F ikke bestått. Merk: Individuelle oppgaver er individuelle, og gruppearbeid på disse tillates ikke.
Øvinger Jeg skal prøve å få en (to) studentassistent(er) til disse timene. På øvingene skal det jobbes med oppgaver, som gis hver uke. Disse hentes stort sett fra læreboken. Oppgavene vil bli gitt på forelesningen mandager, samt at disse blir lagt ut på kursets webside. Litt ut i semesteret blir det noen programmeringsoppgaver med inline assembler.
Øvinger Jeg skal prøve å få en (to) studentassistent(er) til disse timene. På øvingene skal det jobbes med oppgaver, som gis hver uke. Disse hentes stort sett fra læreboken. Oppgavene vil bli gitt på forelesningen mandager, samt at disse blir lagt ut på kursets webside. Litt ut i semesteret blir det noen programmeringsoppgaver med inline assembler.
Øvinger Jeg skal prøve å få en (to) studentassistent(er) til disse timene. På øvingene skal det jobbes med oppgaver, som gis hver uke. Disse hentes stort sett fra læreboken. Oppgavene vil bli gitt på forelesningen mandager, samt at disse blir lagt ut på kursets webside. Litt ut i semesteret blir det noen programmeringsoppgaver med inline assembler.
Pensum mm Læreboken, kapittel 1 11 og noe fra 13. Noen seksjoner i noen av kapitlene ikke er med. Detaljer om dette kommer i løpet av uken. Noe tilleggsmatriell om C programmering og inline assembler. Litt om assemblerprogrammering, dette kompendiet foreligger som en PDF-fil. Merk: Jeg kommer stort sett til å bruke white-board (tavle) på forelesningene. Forelesningsnotater vil derfor ikke foreligge på elektronisk form. Forelesningsplan vil bli gitt på fredag 9. januar. Fravik fra denne kan naturligvis forekomme.
Pensum mm Læreboken, kapittel 1 11 og noe fra 13. Noen seksjoner i noen av kapitlene ikke er med. Detaljer om dette kommer i løpet av uken. Noe tilleggsmatriell om C programmering og inline assembler. Litt om assemblerprogrammering, dette kompendiet foreligger som en PDF-fil. Merk: Jeg kommer stort sett til å bruke white-board (tavle) på forelesningene. Forelesningsnotater vil derfor ikke foreligge på elektronisk form. Forelesningsplan vil bli gitt på fredag 9. januar. Fravik fra denne kan naturligvis forekomme.
Pensum mm Læreboken, kapittel 1 11 og noe fra 13. Noen seksjoner i noen av kapitlene ikke er med. Detaljer om dette kommer i løpet av uken. Noe tilleggsmatriell om C programmering og inline assembler. Litt om assemblerprogrammering, dette kompendiet foreligger som en PDF-fil. Merk: Jeg kommer stort sett til å bruke white-board (tavle) på forelesningene. Forelesningsnotater vil derfor ikke foreligge på elektronisk form. Forelesningsplan vil bli gitt på fredag 9. januar. Fravik fra denne kan naturligvis forekomme.
Pensum mm Læreboken, kapittel 1 11 og noe fra 13. Noen seksjoner i noen av kapitlene ikke er med. Detaljer om dette kommer i løpet av uken. Noe tilleggsmatriell om C programmering og inline assembler. Litt om assemblerprogrammering, dette kompendiet foreligger som en PDF-fil. Merk: Jeg kommer stort sett til å bruke white-board (tavle) på forelesningene. Forelesningsnotater vil derfor ikke foreligge på elektronisk form. Forelesningsplan vil bli gitt på fredag 9. januar. Fravik fra denne kan naturligvis forekomme.
Pensum mm Læreboken, kapittel 1 11 og noe fra 13. Noen seksjoner i noen av kapitlene ikke er med. Detaljer om dette kommer i løpet av uken. Noe tilleggsmatriell om C programmering og inline assembler. Litt om assemblerprogrammering, dette kompendiet foreligger som en PDF-fil. Merk: Jeg kommer stort sett til å bruke white-board (tavle) på forelesningene. Forelesningsnotater vil derfor ikke foreligge på elektronisk form. Forelesningsplan vil bli gitt på fredag 9. januar. Fravik fra denne kan naturligvis forekomme.
Om innholdet I Representasjon av digital informasjon: Tallsystemer, BCD og ASCII koder. Kombinatoriske logiske kretser: Logiske porter, Boolesk algebra, standardformer, Karnoughdiagrammer. Design av kombinatoriske kretser: Designmetode og eksempler. Aritmetiske funksjoner og kretser: Addisjon og subtraksjon. 2-er komplement representasjon av binæe tall. Sekvensielle kretser: Vipper, analyse av sekvensielle kretser, tilstandstabeller, tilstandsgiagrammer, design av sekvensielle kretser, metode og eksempler.
Om innholdet I Representasjon av digital informasjon: Tallsystemer, BCD og ASCII koder. Kombinatoriske logiske kretser: Logiske porter, Boolesk algebra, standardformer, Karnoughdiagrammer. Design av kombinatoriske kretser: Designmetode og eksempler. Aritmetiske funksjoner og kretser: Addisjon og subtraksjon. 2-er komplement representasjon av binæe tall. Sekvensielle kretser: Vipper, analyse av sekvensielle kretser, tilstandstabeller, tilstandsgiagrammer, design av sekvensielle kretser, metode og eksempler.
Om innholdet I Representasjon av digital informasjon: Tallsystemer, BCD og ASCII koder. Kombinatoriske logiske kretser: Logiske porter, Boolesk algebra, standardformer, Karnoughdiagrammer. Design av kombinatoriske kretser: Designmetode og eksempler. Aritmetiske funksjoner og kretser: Addisjon og subtraksjon. 2-er komplement representasjon av binæe tall. Sekvensielle kretser: Vipper, analyse av sekvensielle kretser, tilstandstabeller, tilstandsgiagrammer, design av sekvensielle kretser, metode og eksempler.
Om innholdet I Representasjon av digital informasjon: Tallsystemer, BCD og ASCII koder. Kombinatoriske logiske kretser: Logiske porter, Boolesk algebra, standardformer, Karnoughdiagrammer. Design av kombinatoriske kretser: Designmetode og eksempler. Aritmetiske funksjoner og kretser: Addisjon og subtraksjon. 2-er komplement representasjon av binæe tall. Sekvensielle kretser: Vipper, analyse av sekvensielle kretser, tilstandstabeller, tilstandsgiagrammer, design av sekvensielle kretser, metode og eksempler.
Om innholdet I Representasjon av digital informasjon: Tallsystemer, BCD og ASCII koder. Kombinatoriske logiske kretser: Logiske porter, Boolesk algebra, standardformer, Karnoughdiagrammer. Design av kombinatoriske kretser: Designmetode og eksempler. Aritmetiske funksjoner og kretser: Addisjon og subtraksjon. 2-er komplement representasjon av binæe tall. Sekvensielle kretser: Vipper, analyse av sekvensielle kretser, tilstandstabeller, tilstandsgiagrammer, design av sekvensielle kretser, metode og eksempler.
Om innholdet II Timing og synkronisering: Timingdigrammer, vippetiming. Registere og mikroperasjoner: Registeroverføring, aritmetiske operasjoner, logiske operasjoner, shift operasjoner, tellere. Minne (RAM): Generell oppbygging, egenskaper, typer av RAM. Datapaths, ALU, kontrollenhet: Konstruksjon og oppbygging av hoveddelene i en forenklet CPU. Om instruksjoner: Operandtyper, adresseringstyper, generelt om instruksjoner (CPU uavhengig).
Om innholdet II Timing og synkronisering: Timingdigrammer, vippetiming. Registere og mikroperasjoner: Registeroverføring, aritmetiske operasjoner, logiske operasjoner, shift operasjoner, tellere. Minne (RAM): Generell oppbygging, egenskaper, typer av RAM. Datapaths, ALU, kontrollenhet: Konstruksjon og oppbygging av hoveddelene i en forenklet CPU. Om instruksjoner: Operandtyper, adresseringstyper, generelt om instruksjoner (CPU uavhengig).
Om innholdet II Timing og synkronisering: Timingdigrammer, vippetiming. Registere og mikroperasjoner: Registeroverføring, aritmetiske operasjoner, logiske operasjoner, shift operasjoner, tellere. Minne (RAM): Generell oppbygging, egenskaper, typer av RAM. Datapaths, ALU, kontrollenhet: Konstruksjon og oppbygging av hoveddelene i en forenklet CPU. Om instruksjoner: Operandtyper, adresseringstyper, generelt om instruksjoner (CPU uavhengig).
Om innholdet II Timing og synkronisering: Timingdigrammer, vippetiming. Registere og mikroperasjoner: Registeroverføring, aritmetiske operasjoner, logiske operasjoner, shift operasjoner, tellere. Minne (RAM): Generell oppbygging, egenskaper, typer av RAM. Datapaths, ALU, kontrollenhet: Konstruksjon og oppbygging av hoveddelene i en forenklet CPU. Om instruksjoner: Operandtyper, adresseringstyper, generelt om instruksjoner (CPU uavhengig).
Om innholdet II Timing og synkronisering: Timingdigrammer, vippetiming. Registere og mikroperasjoner: Registeroverføring, aritmetiske operasjoner, logiske operasjoner, shift operasjoner, tellere. Minne (RAM): Generell oppbygging, egenskaper, typer av RAM. Datapaths, ALU, kontrollenhet: Konstruksjon og oppbygging av hoveddelene i en forenklet CPU. Om instruksjoner: Operandtyper, adresseringstyper, generelt om instruksjoner (CPU uavhengig).
Om innholdet III Instruksjoner på x86 CPU og assembelerprogrammering: x86 registere, x86 instruksjoner, adresseringsmodeller. Enkel C programmering, inline assembler: Kompilering og kjøring av programmer. Gcc kompilatoren, hvordan generere assemblerkode fra C kode. RISC og CISC prosessorer: SPARC, Motorola og x86 CPUer. Litt mer om minne og minnemodeller: Cache minne og virtuelt minne.
Om innholdet III Instruksjoner på x86 CPU og assembelerprogrammering: x86 registere, x86 instruksjoner, adresseringsmodeller. Enkel C programmering, inline assembler: Kompilering og kjøring av programmer. Gcc kompilatoren, hvordan generere assemblerkode fra C kode. RISC og CISC prosessorer: SPARC, Motorola og x86 CPUer. Litt mer om minne og minnemodeller: Cache minne og virtuelt minne.
Om innholdet III Instruksjoner på x86 CPU og assembelerprogrammering: x86 registere, x86 instruksjoner, adresseringsmodeller. Enkel C programmering, inline assembler: Kompilering og kjøring av programmer. Gcc kompilatoren, hvordan generere assemblerkode fra C kode. RISC og CISC prosessorer: SPARC, Motorola og x86 CPUer. Litt mer om minne og minnemodeller: Cache minne og virtuelt minne.
Om innholdet III Instruksjoner på x86 CPU og assembelerprogrammering: x86 registere, x86 instruksjoner, adresseringsmodeller. Enkel C programmering, inline assembler: Kompilering og kjøring av programmer. Gcc kompilatoren, hvordan generere assemblerkode fra C kode. RISC og CISC prosessorer: SPARC, Motorola og x86 CPUer. Litt mer om minne og minnemodeller: Cache minne og virtuelt minne.
Slutt Noen spørsmål? Noen kommentarer? PDF-slidene er produsert i L A T E X i pakken Beamer, samt programmet dvipdf på en Linuxboks (med OpenSuSE 11.1, 64 bits). The END
Slutt Noen spørsmål? Noen kommentarer? PDF-slidene er produsert i L A T E X i pakken Beamer, samt programmet dvipdf på en Linuxboks (med OpenSuSE 11.1, 64 bits). The END