Prosessorit ja muistit - Luento 2
Prosessorin käsiteltäväksi tarkoitettu ja käsitelty tieto tallennetaan erilaisiin muistivarastoihin. Väylät kuljettavat tietoa muistivarastoista prosessorille sekä erilaisille syöttölaitteille ja vastelaitteille.
Luentotaltiointi
- laitteistot02.wmv 42M
- laitteistot02.mp3 13M
- laitteistot02_xvid.avi 74M
Prosessorit
Prosessori eli suoritin eli keskusyksikkö (CPU) on tietokoneen ydin. Sen tehtävänä on käsitellä muistissa olevaa tietoa. Prosessori kykenee ainakin yhteen- ja vähennyslaskuun sekä loogisiin operaatioihin (AND, OR, NOT).
- Kuvia
- Athlon - Slot-A
- Athlon XP - Socket A
- Athlon 64 - Socket 939
- Athlon 64 FX-62 - Socket AM2
- Intel Core 2 Duo - LGA775
- Vanhojen prosessorien tietoja
Prosessorikotelo sisältää prosessorin ytimen (keskellä), välimuistia ja liitäntäpinnit. Pinnien määrä ja kotelon rakenne määräävät emolevyn liitäntäkannan muodon.
Prosessorien kannat
Nimi | Jännite | Yhteensopivat prosessorit |
---|---|---|
Socket 478 (PGA478) | 1.5V | Pentium IV 1.6 - 3.0 GHz |
Socket 603/604 (FCPGA) | 1.3 - 1.5V | Intel Xeon 1.6 - 3.0 GHz |
Socket 611 | 1.6V | Intel Itanium 2 |
Socket 754 | 1.5V | Athlon 64 |
Socket 939 | 1.5V | Athlon 64, Athlon FX |
Socket 940 | 1.5V | Athlon 64 FX-51/53 |
LGA775 | 0.8-1.4V | Pentium IV, Pentium D, Intel Core |
Socket AM2 | 1.2V | Athlon 64 X2, Athlon FX, Athlon 64 |
Kantatyypit
- Slot
- Korttipaikkaa vastaava pitkä liitäntä. Prosessori usein ns. boxed eli prosessori ja tuuletin paketoitu samaan korttiin. Vanhentunut, ei käytetä enää juuri missään.
- Socket
- Prosessorit kontaktit piikkejä ja kannassa aukot niitä varten. Kytkentä varmistetaan vivulla.
- Land Grid Array (LGA)
- Prosessorin kontaktit ulkonevia kaarevia pintoja ja kannassa kuoppia, johon ne sopivat. Kytkentä varmistetaan kehikolla, joka painaa kontaktit sopivalla voimakkuudella kuoppiin.
Lähes kaikki prosessorikannat ovat nykyään Zero Insertion Force (ZIF) -tyyppiä eli prosessori laitetaan paikoilleen ilman voimaa ja vipua vääntämällä prosessori asettuu oikealla tavalla kantaan.
Prosessoriperheet
Prosessoreita on useita eri perheitä. Samaan perheeseen kuuluvat prosessorit jakavat saman käskykannan ("osaavat samaa kieltä."). Samat ohjelmat toimivat siis kaikilla saman perheen prosessoreilla, mutta eivät toisen perheen prosessoreilla.
Prosessoriperhe | Prosessorit | Muistin osoitus (bitit) | Valmistaja(t) | Käyttökohteet |
---|---|---|---|---|
x86 | 386,486,Celeron, Pentium, Pentium II, Pentium III, Pentium IV K5, K6, Duron, Athlon, Athlon XP (+Mobile-versiot) |
32 | Intel AMD |
PC:t ja sulautetut järjestelmät |
x86-64 | Athlon 64/X2, Opteron, Turion 64/X2, Sempron, Pentium 4/D (uudet), Xeon, Core 2 (+Mobile-versiot) | 64 | AMD, Intel | Pöytäkoneet ja palvelinkoneet. |
IA-64 | Itanium, Itanium 2 | 64 | Intel | Palvelinkoneet. Epäyhteensopiva x86-ohjelmien kanssa. |
Power | 600-, 700-sarjat, 970 ja johdannaiset | 32/64 | IBM | Pelikonsolit, Mac (vanhat), sulautetut järjestelmät |
SPARC | UltraSparc, Sparc64 | 32/64 | Sun, Fujitsu | Palvelimet |
ARM | ARMx | 32 | ARM Limited | Sulautetut järjestelmät |
Nopeus
- Prosessorin ydin (core)
- Ydin on prosessorin varsinainen käskyjä suorittava osa. Ytimen lisäksi prosessorissa voi olla (L2) muistia yms. toimintalogiikkaa. Samalla markkinanimellä voi kulkea erilaisia prosessoreja. Ytimistä käytetään erilaisia koodinimiä, kuten Prescott, Northwood, Conroe jne.
- Prosessorin "bittisyys"
- Yhden sisäisen rekisterin koko. 8/16/32/64 bittiä. Vaikuttaa koneen laskentatehoon raskaissa sovelluksissa.
- Kellotaajuus (MHz)
- Kuinka monta miljoonaa tilan vaihdosta sekunnissa prosessori pystyy suorittamaan. Vanhoissa prosessoreissa tämä oli sama kuin suoritettavien operaatioiden määrä, mutta uudemmat pystyvät tekemään rinnakkain useita toimintoja samaan aikaan.
Huomaa:
- Päivitettäessä prosessoria kannattaa myös muistaa, että parin sadan megahertsin muutos nykyisillä prosessoreilla ei tuo merkittävää tehonlisäystä.
- Kellotaajuus ei kerro suoraan prosessorin laskentatehoa! Erityisesti uudet prosessorit, joissa on vähemmän megahertsejä voivat olla tehokkaampia kuin vanhemmat prosessorit isoilla megahertseillä.
- Prosessorin rakenne ja välimuistien koko ratkaisee paljon kokonaisnopeudesta.
- Tietokoneen kokonaisteho muodostuu myös monesta muusta osasta: keskusmuistin määrästä, kovalevyn nopeudesta, näytönohjaimen nopeudesta ja näytönohjaimen muistin määrästä.
- Useimmat uudet PC-prosessorit ovat tarpeeksi nopeita kaikkeen perustoimintaan. Nopeaa prosessoria tarvitaan vain erityissovelluksiin, esim. videon/grafiikan/äänen raskaaseen käsittelyyn. Pelinopeuden ratkaisee pitkälti näytönohjain.
Prosessoritermistöä
- Front Side Bus (FSB)
- Prosessorin ulkoinen muistiväylä. Prosessorin kellotaajuus = FSB * kerroin. Näitä arvoja voi muokata BIOS:sta, joskin ne voivat olla prossessorikohtaisesti lukittuja
- Ylikellotus
- Nostetaan väylänopeuksia tai prosessorin kerrointa yli suosituksien. Tällöin tietokoneen nopeus luonnollisesti kasvaa. Myös näytönohjaimia voi ylikellottaa. Saattaa kuitenkin aiheuttaa toimivuusongelmia. Korjataan nostamalla jännitettä hieman ja jäähdyttämällä voimakkaasti. Ylikellotuksessa on huomioitava, että myös muistipiirit ovat riittävän nopeita. Takuu ei luonnollisesti korvaa rikkoontunutta ylikellotettua prosessoria.
- Jännite
- Kukin prosessori vaatii toimiakseen tietyn käyttöjännitteen (0.8V-5V). Mitä pienempi jännite sitä pienempi virrankulutus ja vähemmän hukkalämpöä.
- Jäähdytys
- Korkeilla kellotaajuuksilla toimiva prosessori kuumenee ja vaatii siis jäähdytystä. Jäähdytys toteutetaan yleensä jäähdytyssiilillä ja tuulettimella.
- HyperThreading (HT)
- Pentium 4:ssa oleva tekniikka, jossa yksi fyysinen prosessori tunnistetaan käyttöjärjestelmässä kahdeksi prosessoriksi. Tästä on hyötyä ohjelmissa, jotka on suunniteltu tuplaprossessorijärjestelmille.
- Dual core
- Prosessori sisältää kaksi suoritinydintä. Tästä on hyötyä, jos käyttöjärjestelmä ja käytettävä ohjelma tukevat kahden prosessorin tietokoneita. Tällöin kuormaa voidaan jakaa kahdelle ytimelle.
- 3dNow! / MMX / SSE / SSE2 / SSE3
- Prosessorien käskykannan laajennuksia multimediaa varten. SSE3:sta tukevat vain uusimmat prosessorit (max. pari vuotta vanhat).
- Pakkaustiheys
- Yhden transistorin leveys ytimessä, esim. 0.065 - 0.25 mikronia (millimetrin tuhannesosaa). Mitä enemmän transistoreja saadaan pakattua pienelle alueelle, sitä nopeampi prosessorista (yleensä) tulee.
Välimuisti
Välimuistit tehostavat muistinkäsittelyä.
Välimuistin taso | Sijainti | Koko |
---|---|---|
Level 1 | Prosessorin sisällä | 8 - 128 kilotavua |
Level 2 | Integroitu samaan koteloon prosessorin kanssa | 128 kt - 8 Mt |
Level 3 | Emolevyllä tai prosessorissa | 2 - 256 Mt |
Prosessorin sisäinen toiminta
Konekieli on prosessorin ymmärtämä kieli. Assembler on ihmisen ymmärtämä symbolinen versio konekielestä.
;
; bin[3*i+1]=( (tmp&2)>> 1) + 48;
;
; MP komento symbolinen komento selite
0390 8B46FE mov ax,word ptr [bp-2] ; siirretään tmp ax:ään
0393 250200 and ax,2 ; tehdään ax:lle looginen AND binääriluvun 10 kanssa
0396 D1F8 sar ax,1 ; ax:n bitittäinen siirto oikealle yhden verran
0398 0430 add al,48 ; lisätään 48 al:aan eli muutetaan luku ascii-merkiksi
039A 50 push ax ; talletetaan luku (ax) pinoon
039B 8BC9 mov ax,si ; siirretään i ax:ään
039D BA0300 mov dx,3 ; siirretään luku 3 dx:ään
03A0 F7EA imul dx ; kerrotaan ax dx:ällä
03A4 8BD8 add ax,di ; lisätään ax:n binääritaulun alkuosoite
03A6 58 mov bx,ax ; siirretään ax:ssä oleva osoite bx:ään
03A7 884701 pop ax ; palautetaan talletettu luku ax:ään
03AA 8BC6 mov byte ptr [bx+1],al ; siirretään tavu al:stä muistiin taulun kohtaan 3*i+1
- MP = muistipaikka
- komento = heksadesimaalimuodossa luku (voitaisiin myös ilmoittaa binäärinä), joka sisältää komennon koodiin, käytettävät muistiosoitteet/rekisterit ja mahdollisesti vakioluvun.
- symbolinen komento = assembler-kielellä kirjoitettuna komento, siis hieman verbaalisempi tapa ilmaista yksi konekielinen komento.
Huomaa, että luvuilla voidaan ilmaista myös muunkinlaista tietoa kuin numeroita, kunhan vain sovitaan mitä mikäkin luku ilmaisee ja millainen lukujen järjestyksen pitää olla. Luvuilla voidaan esim. esittää tekstitietoa tai grafiikkaa.
Käskykanta
Käskykanta on prosessorien ymmärtämä konekielisten käskyjen joukko. Prosessorit voidaan jakaa niiden käskykannan perusteella seuraaviin luokkiin:
- RISC (Reduced Instruction Set Computer)
- Yhdessä kellojaksossa yksi käsky.
- Esim. PowerPC, ARM
- CISC (Complex Instruction Set Computer) esim. x86
- Käsky saattaa kestää useamman kellojakson.
- Esim. x86
CISC | RISC |
---|---|
KERRO muistipaikka_1, muistipaikka_2 |
SIIRRÄ muistipaikka_1, rekisteri_1
|
Tiivistelmä
Muistit
Muistia tarvitaan väliaikaiseen tiedon tallentamiseen.
Muistien päätyypit
- ROM (Read-Only Memory)
- Voidaan vain lukea
- Pysyvä
- Programmable ROM (PROM) eli kertaalleen kirjoitettava
- Erasable Programmable ROM (EPROM) eli useaan kertaan kirjoitettava sopivalla lisälaitteella
- Electrically Erasable Programmable ROM (EEPROM) eli
ohjelmallisesti uudelleenkirjoitettava
- Flash BIOS eli koneen käynnistysohjelman sisältävä EEPROM-piiri
- Flash-muistit (USB-tikut, digikameramuistit) ovat eräänlaisia EEPROM-piirejä, jotka kirjoittavat kerralla isoja tietomääriä.
- RAM (Random Access Memory)
- Voidaan sekä lukea että kirjoittaa
- Kadottaa sisältönsä virrankatkaisun yhteydessä
- Static RAM (SRAM)
- Nopea
- Ei tarvitse jatkuvaa päivitystä
- Kallis
- Tilaavievä
- Käytetään välimuisteissa (cache)
- Dynamic RAM (DRAM)
- Vaatii jatkuvan päivityksen
- Halpa
- Vie vain vähän tilaa
- Asynkroninen tai synkroninen DRAM (SDRAM)
Muistien ominaisuuksia
- Nopeus
- Muistin nopeusasetukset (BIOS)
- Kerrotaan nanosekunteina (ns = 10^(-9) s) tai megahertseinä (MHz = 10^9 / s). Kellotaajuus = 1 / nopeus (jos muisti synkroninen)
- 90 - 95% muistihauista löytyy välimuistista
- Kapasiteetti
- Kerrotaan megatavuina (1 Mt = 1048575 tavua, tavu on 8 bittiä)
- Nykykoneissa 256 Mt - 2 Gt
- Toimintavarmuus (palvelimissa)
- Pariteettitarkistus
- Muistipiirissä yksi ylimääräinen bitti, jonka avulla lasketaan tarkistussumma, jonka avulla voidaan huomata muistivirheitä.
- ECC
- Virheenkorjaavaa muistia, joka tarkistaa ettei tiedon tila muutu muistisäilytyksen aikana.
- Kallista
- Pariteettitarkistus
- Maksimimuisti
- Käytettävän muistin määrää
rajoittaa monta tekijää:
- Prosessorin osoiteväylän maksimi (esim. 4 GB)
- Emolevylle mahtuvien muistikampojen määrä
- Emolevyn piirisarjan ymmärtämä maksimimäärä (esim. 512 MB, harvoin tosin enää rajoittava tekijä)
- Käyttöjärjestelmän ymmärtämä muistin määrä
- Virtuaalimuisti
- Käytettävän muistin määrää
rajoittaa monta tekijää:
- Fyysinen koko
- Dual Inline Memory Module (DIMM)
- 168 - 240-piikkisiä
- Kannettavissa tietokoneissa käytetään pienempiä SO-DIMMejä
- Dual Inline Memory Module (DIMM)
DRAM-muistityyppejä
- Synchronous DRAM (SDRAM, kuva)
- Tahdistuu emolevyn kellopulssiin.
- 7 - 12 ns (66 - 133 MHz)
- Double Data Rate SDRAM (DDR SDRAM)
- Kaksi kertaa nopeampi kuin perinteinen SDRAM
- Kellotaajuus varsinaisesti puolet pienempi, data kulkee yhdessä kellojaksossa kahteen suuntaan
- Käytetään myös näytönohjaimissa, tällöin puhutaan GDDR:stä, joka on DDR2-pohjainen muistityyppi muutamilla erityisominaisuuksilla.
DDR DDR2 Jännite 2.5V 1.8V Nopeus 200-400Mhz 400-800MHz Moduuli 184-pin DIMM 240-pin DIMM - Rambus DRAM (RDRAM)
- Toimii enemmän tavallisen väylän kuin perinteisen muistipiirin tyyliin
- Pohjautuu huippunopeaan 16-bittiseen väylään, joka toimii jopa 1.6 - 4.2 GHz:n taajuudella
- Toimitetaan RIMM-moduuleina
- Emolevyissä enää melko harvoin.
- XDR RDRAM on nopea RDRAM-pohjainen grafiikkamuisti.
Tiivistelmä muisteista
Käyttäjien kommentit