Frå transistor til datamaskin
Authors: Tengesdal Morten 
Published: June 2022

Dette skrivet prøver å gi ei forståing av korleis datamaskinar er oppbygde og virkar. Ein ser også på korleis ein kan programmera mindre datamaskinar brukte til styring og overvaking av prosessar. Skrivet er laga for bruk i emnet Datamaskinarkitektur ved Universitetet i Stavanger (UiS). Det kan også brukast til å gi ei innføring i digitalteknikk generelt og som ein del av dette, mikroprosessoren sin struktur og virkemåte. Ein får også ei innføring i grunnlaget for konstruksjon av datamaskinar. Ein har prøvd å gjera framstillinga kort og klar. Hovudfokus er på dei ulike byggjesteinane i ein datamaskin og korleis digitalteknikk blir praktisert i dag. Mykje av den klassiske digitalteknikken som manuell logikkonstruksjon med enkle portar av ein type, manuell optimalisering av logikk vhja. Karnaugh-diagram og konstruksjon av tilstandsmaskinar basert på J-K-vipper er tillagt redusert vekt samanlikna med vanlege lærebøker. Utviklingsprosjekt i dag tar stort sett utgangspunkt i programmerbar elektronikk. Mange klassiske metodar er her innbakt i utviklingsverktøyet ein bruker, eller blir realisert på andre måtar. Tema som logikkoptimalisering er likevel tatt med til ein viss grad der dette høyrer heime. Emnet Datamaskinarkitektur kom inn som ein obligatorisk del av bachelorstudia i data og elektro ved UiS hausten 2013. Læringsmåla for desse bachelorstudia kan formulerast som vist i det følgjande. Studentane skal som ferdige ingeniørar i data vera i stand til å: - Forstå ulike typar operativsystem. - Spesifisera, utvikla og testa objektorienterte datasystem. - Utnytta kjente algoritmer og datastrukturar til å løysa konkrete datatekniske problem. - Utvikla og bruka databaser. - Planleggja og driva datasystem. - Vurdera og utvikla nettbaserte dataløysinger. Studentane skal som ferdige ingeniører i elektro vera i stand til å: - Analysera og konstruera mikroprosessorbaserte system og programvare for desse. - Vurdera måletekniske løysingar for ei gitt oppgåve. - Vurdera komponentar og metodar for overvaking og automatisering av prosessar og produksjonslinjer. - Konstruera og programmera PLS- baserte styringssystem. - Utvikla diskrete algoritmer for regulerings- og signalbehandlingsformål. Ei solid forståing av korleis ein datamaskin er oppbygd og virkar er eit grunnleggjande vilkår for dei fleste av desse måla. Skrivet blir som vist gjort tilgjengeleg under ein såkalla Creative Common-lisens. Dette gir brei tilgang og gjer det i tillegg mogleg å byggja på eit stort tilfang av materiell som er gjort tilgjengeleg under same lisens, f.eks. frå den store dugnadsbasen Wikimedia. I tillegg er det i skrivet brei bruk av referansar til utdjupande stoff på internett. Ein del av stoffet på mikroprosessorar og datamaskinkonstruksjon er basert på skrivet som blei laga for eit tidlegare datamaskinemne ved UiS. I tillegg er vedlegg A.1 basert på forelesingsnotat i digitalteknikk frå 2009 av Trygve Eftestøl, UiS. Desse notata innheldt også handteikna skisser av Tom Ryen, UiS. Elles har Jon Fidjeland, UiS, kome med mange verdifulle kommentarar undervegs i arbeidet. Sidan oppstarten i 2013 har rundt 400 studentar tatt emnet Datamaskinarkitektur, og spørsmåla og kommentarane frå dei har påverka utviklinga av skrivet gjennom desse åra. Skrivet er norsk. Engelske omgrep blir sett i hermeteikn viss dei blir nytta åleine og i parentes når dei blir viste saman med norsk utgåve av nemninga.