Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

4.2. Tietotekniikan historiaa 1/3

Samankaltaiset esitykset


Esitys aiheesta: "4.2. Tietotekniikan historiaa 1/3"— Esityksen transkriptio:

1 4.2. Tietotekniikan historiaa 1/3
Tietokoneet mekaanisia  sähkömekaanisia  elektronisia roomalaisilla ja kreikkalaisilla abakus helmitaulun alkeismuoto, keksittiin satoja vuosia eKr 1600-luku: logaritminen asteikko (1. analoginen manuaalinen laskukone) 1642 Blaise Pascalin mekaanisen laskukoneen piirustukset (vasta toteutus) 1700-luku: Teollisuusvallankumous: laskulaitteitta tarvittiin yhä enemmän Laivojen ja siltojen rakentamisessa, topografiassa, talouselämän laskennassa rei’itetty metallirumpu kudonnan ohjaamiseen 1800-luku: aritmometri (Thomas) – alkeislaskin (sähkö)mekainen: koostui hammaspyöristä, akseleista ja vivuista lukujen asettaminen ja siirtäminen laskuriin kierrosten laskuri tuloksen laskuri tuloksen nollaus toimi pyörittämällä kahvaa käsin tai sähkön voimalla

2 Tietotekniikan historiaa 2/3
Charles Babbage 1830-luvulla: Difference Engine No 1:n mallikappale (ei ikinä valmistunut) Analyyttinen kone ohjelmoitava mekaaninen laskin, jopa muistilla! antoi palautteen, jonka avulla laskennan aikana syntyneitä välituloksia voitaisiin käyttää hyväksi koneen ohjaamisessa. toimintaohjeiden ja alkutietojen syöttö reikäkorteilla Babbage oli aikaansa edellä: tuohon aikaan analyyttisen koneen rakentaminen ei ollut vielä teknisesti mahdollista. 1800-loppu/1900-alku: analogiset sähkömekaaniset laskukoneet Krylovin differenssiyhtälöiden laskukone 1904

3 Tietotekniikan historiaa 3/3
1940-luku – ensimmäinen electroninen digitaalinen kone ENIAC engl. Electronic Numerical Integrator And Computer ensimmäinen täysin elektroninen yleiskäyttöinen tietokone Yhdysvaltain armeijan rakentama, käytettiin ballistiikan laskutoimituksiin pystyi suorittamaan sekunnissa yhteenlaskua, mutta vain 357 kertolaskua, tai 38 jakolaskua. painoi yli 30 tonnia ja täytti suuren huoneen koneessa oli lähes elektroniputkea, satoja tuhansia muita komponentteja ja yli viisi miljoonaa käsintehtyä juotosta. ENIACin tehontarve oli 160 kilowattia, mutta silti sen muistiin mahtui vain noin 80 merkin verran informaatiota!!! kuitenkin pystyi tekemään sellaisia laskuja, joiden käsin laskemiseksi ihmisikää ei olisi riittänyt puolijohteiden käyttöönotto Ensimmäinen transistori v ja integroitu piiri v. 1958

4 4.2.1 Puolijohteet Puolijohde on aine, joka johtaa hyvin huonosti tai ei lainkaan sähköä tärkeimpiä puolijohteita pii (Si) ja germanium (Ge) etenkin matalissa lämpötiloissa toimii eristeensä elektroneja on juuri tarvittu määrä, kaikki ovat kovalenttisessa sidoksessa (ks kuva s. 110) sähköjohtavuus paranee lämpötilan kasvaessa energian kasvaessa elektronit purkautuvat sidoksesta ja lähtevät pois omalta paikaltaan syntyy vaeltava elektroni, joka kuljettaa -varausta ja sen jättämä vaeltava aukko, joka kuljettaa  -varausta

5 4.2.1 Puolijohteet Johtavuutta voidaan parantaa myös huumaamalla puolijohde vierailla kiderakenteeseen sopivilla atomeilla (epäpuhtauksilla) jos puolijohteeseen lisää donoriainetta (antimoni, arseeni, fosfori), jolla on 5 valenssielektronia, tulee 1 elektroni liikaa – syntyy n-aine jos lisää akseptoriainetta (indium, boori, gallium), jolla on 3 valenssielektronia, tulee 1 elektronin vaje – syntyy p-aine

6 4.2.1 Puolijohteet Rakennetaan n- ja p-aineista ’komponentti’,
ns. np-liitos (sivu 110):

7 4.2.2 Puolijohdekomponentit
Jos np-liitokseen kytketään sähkövirta myötäsuuntaan, liitos johtaa sähköä. Jos sähkövirta kytketään vastasuuntaiseksi, liitos eristää sähköä. Tämä tarkoittaa: np-liitos johtaa sähköä toiseen suuntaan, mutta eristää toiseen suuntaan  kyseessä on diodi. (DI(kaksi)-elektrODI) Nuoli osoittaa sähkövirran suunnan, joka on p-aukkojen liikkumisen suunta

8 4.2.2 Puolijohdekomponentit…
Kahdesta np-liitoksesta puolestaan saadaan ns. bipolaarinen transistori (TRANsfer=siirtää + reSISTOR=vastus) elektroninen kytkin, joka: joko päästää signaalin itsensä läpi (ja välittää 1) tai ei pästä (ja välittää 0:n) sen keksivät v Bell-laboratorion tutkijat Bardeen, Brattain ja Shockley. saivat Nobel-palkinnon v

9 Transistori kolme kytkentäkohtaa: kollektori (C), emitteri E ja kanta (B) C:n ja E:n välinen virta säädetään B:n ja E:n välisellä virralla jos virtaa kulkee välillä B-E, niin virtaa kulkee myös välillä C-E kantakytkentä siis ohjaa sähkövirran pääsyä transistorin läpi

10 4.2.3 Loogiset piirit Loogiset piirit (logical circuits) rakennetaan transistorien ja diodien avulla boolen algebran toteuttamiseksi Perusperiaate: transistori on sähköisesti ohjattavissa oleva kytkin. 0 V = virta ei kulje = False 5 V = virta kulkee = True reaalimaailman abstraktio! Loogiset piirit siis jäljittelevät loogisia totuusarvoja True ja False, mistä syystä niitä kutsutaan tällä nimellä.

11 4.2.3 Loogiset piirit Portti (gate): looginen piiri, joka toteuttaa jotain logiikan perusfunktiota: portti antaa määrätyillä syöttötiedoilla eli true/false –arvoilla määrätyn tuloksen (true tai false) Niinpä mm. seuraavia portteja on olemassa: AND, OR ja NOT.

12 OR (+ -laskutoimitus) Esimerkiksi OR-portti toteuttaa loogisen OR-
operaation, se saadaan kahdella diodilla: merkitään syötteet: x ja y ja tulos: z. totuusarvotaulukko OR-operaatiossa, T=True, F=False: x y z ELI x y z F F F F T T T F T T T T

13 NOT (! -laskutoimitus) Vastaavasti NOT-operaation toteuttaa yksi
transistori (ks. monisteen kuva): x z ELI x z F T T F 1 0

14 AND (* -laskutoimitus)
AND-operaatioon tarvitaan kaksi transistoria (ks. monisteen kuva): x y z ELI x Y z F F F F T F T F F T T T

15 Yleisimpien porttien totuusfunktiot, totuustaulu
x y AND OR NAND NOR XOR EQV 1

16 Boolen algebran toteutusta
Loogiset piirit ovat aidosti modulaarisia, ja käytännössä niitä voi yhdistellä vapaasti kuten lego-palikoita. tietokoneen laskenta on 0:ien ja 1:sten käsittelyä, ja niinpä kaikki sen toiminnot (laskutoimitukset, muisti, ohjaus jne) pitäisi pystyä toteuttamaan loogisilla piireillä (jotka käsittelevät 0:ia ja 1:siä kukin omalla tavallaan) tietokone onkin yksi valtava looginen piiri transistorit ja diodit jäävät tässä alemmalle abstraktiotasolle (loogisten porttien sisään) tällä korkeammalla loogisella tasolla ainoastaan yhdistellään loogisia portteja

17 Loogisten piirien käyttö
Rakennussääntöjä: signaalin haaroitus on sallittua signaali kopioituu identtisenä jokaiseen haaraan kahta signaalia ei saa yhdistää muuten kuin portin avulla signaalien yhdisteleminen on siis aina looginen operaatio haaroituskohdat vahvennetaan umpinaisilla ympyröillä jos kaksi signaalilinjaa risteävät yhtymättä, jätetään risteyskohta vahventamatta

18 xor vähemmälläkin perusporttimäärällä tullaan toimeen, esimerkkinä XOR, joka toteutettavissa AND-, NOT-, ja OR-porteilla:

19 xor piirin toiminta selviää syöttämällä bitit syöttölinjoille kaikissa mahdollisissa yhdistelmissä ja kuljettamalla bitit piirin läpi jos syöttöbittejä on n, yhdistelmiä tunnetusti 2n XOR x Y z 0 0 0 0 1 1 1 0 1 1 1 0

20 Esimerkki piirisuunnittelusta Boolen algebraa hyödyntäen
Muodosta looginen piiri, joka toteuttaa funktion f(x,y,z): 3 syötebittiä 1 tulostebitti Funktio on tosi(1), kun: x=0 JA y=1 JA z=1 TAI x=1 JA y=0 JA z=1 TAI x=1 JA y=1 JA z=0 x y z f 1

21 Esimerkki piirisuunnittelusta Boolen algebraa hyödyntäen
x y z f 1 Tarkastellaan siis totuustaulun rivejä, joissa f=TOSI (1): (NOT x AND y AND z) OR (x AND NOT y AND z) OR (x AND y AND NOT z), ts. f(x,y,z)=!xyz + x!yz+ xy!z Tästä saadaan s. 115 piiri.

22 Piiri on aika monimutkainen. Voitaisiinko se sieventää?

23 !xyz+x!yz+xy!z = (osittelu1) = !xyz+x(!yz+y!z) = (XOR-piiri)
* AND ! NOT 0+0=0, 0+1=1, 1+0=1, 1+1=1; 0*0=0, 0*1=0, 1*0=0, 1*1=1; !0=1, !1=0. Liitäntälaki (assosiatiivisuus) x+(y+z) = (x+y)+z x(yz)=(xy)z % Vaihdantalaki (kommutatiivisuus) x+y = y+x xy = yx Osittelulaki (distributivisuus) x(y+z) = xy+xz x+yz = (x+y)(x+z) ! Nolla-, ykkös- ja vasta-alkiot x+0 = x, x+1 = 1 x+!x = 1, x*0=0, x*1=x x(!x) = 0 Absorptiolait x+xy = x, x(x+y) = x de Morganin lait !(x+y)=!x*!y !(xy)=!x+!y Modulo 2 -yhteenlasku 0  0 = 1  1 = 0 0  1 = 1  0 = 1

24 Piirien sieventämistä..
!xyz+x!yz+xy!z: 6 AND-, 3 NOT-, ja 2 OR-porttia 11 yhteensä-> !xyz+x(yz): 3 AND-, 1 NOT-, 1 OR-portti ja 1 XOR-portti 6 yhteensä: -> - sama toiminnallisuus!

25 x y z g 1 Nyt huomataan, että g=1, kun x=1 (riippumatta y:stä ja z:sta) ja toisaalta g=1, kun y=z=1 (riippumatta x:stä). Eli g=1, kun x=1 TAI y=1 JA z=1 g(x,y,z)=x OR (y AND z) = x + yz. Sama tulos saadaan soveltamalla Boolen lakeja (ks sivu 116)

26 4.3. Tietokoneen komponentteja
Tietokone on periaatteessa hyvin suuren määrän portteja sisältävä looginen piiri. Rakenne on modulaarinen ja hierarkinen Abstraktiotasoja Puolijohteet->np-liitos np-liitos->diodi, transistori elektroniset komponentit>loogiset portit AND, OR, NOT.. loogiset portit->loogiset piirit puolisummain, kiikku loogiset piirit->tietokonekomponentit kokosummain, rekisteri

27 Välttämättömiä komponentteja ovat: Aritmetiikkayksikkö:
huolehtii peruslaskutoimituksista (minimivaatimus) + ja – toteutetaan komponenteissa suoraan * ja / :ta varten kirjoitetaan matalan tason ohjelmia, joilla ohjataan komponentteja muut operaatiot (esim. SQRT, potenssilasku) toteutetaan korkeamman tason kielillä (ja näin olleen ne eivät liity aritmetikkayksikköön suoraan) Muisti: ohjelmakoodi ja –tilat on tallettettava käskyinä ja muuttujina muistiin Väylät - tiedonsiirtokanavia: tieto-, ja osoiteväyliä – tiedon siirtoa rekisterien ja keskusmuistin välillä ohjausväylä – tukee ohjelmoitavuutta: osa tiedosta on käsittelyä ohjaavaa tietoa Loogisten vertailujen yksikkö: mahdollistavat muiden ohjausrakenteiden käytön kun peräkk. minimissään vastaa: A=0? tai A<0? Kello: tahdistaa koneen toiminnot määrää koneen nopeuden elektr.komp. aiheuttavaat viiveen elektronien siirrolle, siksi nopeutta ei voi nostaa äärettömiin Syöttö ja tulostus: esim. näppäimistö ja näyttö.

28 4.3.1 Yhteenlasku Yhteenlasku toteutetaan samalla periaatteella kuin laskettaessa kynän ja paperin kanssa lukuja allekkain yhteen. Yhdellä kertaa vain kaksi lukua: Esim. 10-järjestelmä: 1 1 Yhdellä kerralla laskettavana on siis 2 tai 3 numeroa (muistinro). 4328

29 Merkitään kahden binäärinumeron x ja y yhteenlaskua seuraavasti x+y = ms, missä m on muistinumero ja s on summa. Totuustaulu on silloin: Sivun 114 taulukosta nähdään, että m= x AND y (x*y) ja s=x XOR y x y m s 1

30 Piiri, jossa on AND-portti ja XOR-portti, on nimeltään puolisummain, ja toteuttaa em. toiminnot:

31 Kokosummain algoritmi toteutettu loogisessa piirissä!
esim puolisummainten muistibiteistä vain toinen päällä, siksi OR riittää (tai XOR)

32 Vähennyslasku Koska a-b = a+ (-b), voidaan vähennyslasku toteuttaa kokosummaimen avulla, kunhan toinen yhteenlaskettava (b) muunnetaan vastaluvukseen. Vastaluku: muutetaan bitit komplementeikseen ja lisätään tulokseen luku 1.

33 Kahden komplementti

34 Puolivähennin x y l e 1 Puolivähennin toteuttaa kahden bitin erotuksen e=x-y, l=lainaus. kokelie rakentaa kokovähennin kotona

35 4.3.3 Kiikku Muisti = jokin tapahtuma riippuu paitsi syötteestä, myös aiemmin tapahtuneesta muistia toteuttavalla piirillä on oltava historia (voimassaoleva tila, joka riippuu aiemmasta toiminnosta) Pienin iformaation yksikkö on bitti Niinpä yksinkertaisimman muistipiirin tehtävä on säilyttää siihen jollain ajanhetkellä tallennettu tieto: luku 0 tai 1. Tällaista muistipiiriä kutsutaan nimellä kiikku (flip-flop).

36 totuustaulu C D x y Mt Mt+1
muistiosa toteuttaa historian: tietyllä syötteellä (x,y) palauttaa aikaisemmin tallennetun arvon ohjausosa (x,y) ohjaa muistiosaa syötteet C (control) ja D (data) tuloste M totuustaulu C D x y Mt Mt+1 ohjaus tulos (0,0) Mt (1,0) 1 (0,1)

37 4.3.4 Rekisteri Rekisterillä tarkoitetaan muistilaitetta, johon voidaan tallentaa määrätyn mittainen bittijono, tyypillisesti 16 bittiä tai 32 bittiä. Rekisterin koko = ns. tietokoneen sanan pituus. Seuraava kuva esittää 4-bittistä rekisteriä, joka on aika harvinainen (käytössä esim. HP:n graafisissa laskimissa) Neljän bitin tallentamiseen tarvitaan neljä kiikkua. 32 bitin tallentamiseen – 32 kiikkua

38 sama väylä tietojen lukemiseen ja kirjoittamiseen R ja W ohjausbittejä
kun W=1 (R=0), C=1 ja x3x2x1x0 kirjoittuu kiikkuihin kiikun tulos irrotetaan väylän linjasta (loogisesti *0) kun R=1 (W=0), C=0, AND antaa 1 tai 0 riippuen kiikun arvosta, tulokset kirjiotetaan väylän linjoille

39 4.3.5 Väylät Komponentit siirtävät dataa pitkin johtoja, jotka ovat loogisesti yhdistetty väyliksi Tietoväylä: tiedon ja ohjelmien siirtoon väylän leveys =johtojen lkm = tietokoneen sanakoko) Ohjausväylä: laitteistoa ohjaavan tiedon siirtoon esim. luku tai kirjoitus Osoiteväylä: määrää minne tai mistä tieto siirretään. esim. rekisteristä johonkin keskusmuistin muistipaikkaan rekisteri on prosessorin suoraan käyttämää nopea muistipaikka

40

41 4.3.6 Kello ohjaussignaaleilla määrätään aktiiviset komponentit ja tietyllä hetkellä sallitut toiminnot esim. milloin rekisteri voi tallentaa luvun mikä komponentti voi siirtää tietoaan väylään Ohjausväylän tarvitsema ohjaussignaali saadaan (periaatteessa) yksinkertaisesta laitteesta, joka tuottaa ns. sakara-aaltoa, vuoron perään lukuja 0 ja 1. Yhden kellosignaalin aikana tietokoneessa tapahtuu aina yksi alkeistapahtuma. Mitä suurempi kellon taajuus on, sen nopeammin tietokone toimii.

42 4.3.6 Kello… Esim. jos kellotaajuus on 1 MHz (megahertsiä), on kellotaajuus sykäystä/sek. Nykyisin tyypillinen mikrotietokoneen kellotaajuus on 1-2 GHz (gigahertsiä), 1GHz= 1000 MHz.

43


Lataa ppt "4.2. Tietotekniikan historiaa 1/3"

Samankaltaiset esitykset


Iklan oleh Google