BEVEZETÉS AZ INFORMATIKÁBA SZÁMÍTÓGÉP ARCHITEKTÚRÁK Háber István
[email protected]
MAI SZÁMÍTÓGÉPEK FELÉPÍTÉSE A mai digitális számítógépek többségének felépítése a Neumann-elvet követi. 1. Soros utasításvégrehajtás 2. Kettes (bináris) számrendszer használata Három fő funkcionális egység:
bemeneti egységek feldolgozás, központi egység kimeneti egységek
Bementi egységek
Feldolgozás Központi egység
3. Belső memória (operatív tár) használata a program és az adatok tárolására 4. Teljesen elektronikus működés 5. Széles körű felhasználhatóság 6. Központi vezérlőegység alkalmazása
Kimeneti egységek
MAI SZÁMÍTÓGÉPEK FELÉPÍTÉSE Jellemzően részegységekből épül fel, ezáltal könnyen bővíthető Az egységek a sínrendszeren (buszon) kommunikálnak Buszok
Adatbusz Címbusz vezérlőbusz
MAI SZÁMÍTÓGÉPEK FELÉPÍTÉSE
Részegységek Táp Alaplap CPU Memória Háttértár Billentyűzet Videókártya
Monitor hangkártya Hálózati kártya Modem Nyomtató …
ÁLTALÁNOS FELÉPÍTÉS
A PROCESSZOR Elvégzendő
számításokat és feladatokat utasítások sorozataként adjuk meg, ez a program A CPU (Central Processing Unit) az utasításokat Kiolvassa a memóriából Értelmezi Végrehajtja
A
CPU két fő egysége:
aritmetikai-logikai egység (ALU) központi vezérlő (CU)
Közös lapkán – hatékonyabb működés
CPU ÁLTALÁNOS FELÉPÍTÉSE CPU
ALU
Dekódoló, vezérlő egység
Regiszterek
Belső sín Busz vezérlő
Cím generáló
CPU ÁLTALÁNOS FELÉPÍTÉSE - ALU ALU
CPU
Műveletvégrehajtó
Aritmetikai (+,-,*,/) Regiszterek Dekódoló, Logikai (ÉS,vezérlő VAGY, egységNEM)
ALU
Eredetileg egy regisztere volt ACC („accumulator”) Kimenet és bemenet is Belső Egyik operandus mindig ezsínvolt, eredmény is ide került Cím generáló Újabb regiszterek Szorzás miatt mégegy regiszter ACE, sőt, több általános célú is megjelent
Busz vezérlő
CPU ÁLTALÁNOS FELÉPÍTÉSE - ALU
+,-,*,/ ÉS, VAGY, NEM
KÖZPONTI VEZÉRLŐ Minden
rendszerbeli történés innen CPU fut ki, vagy ide érkezik be, mint ALU Regiszterek jelzés.
Pl. ALU-t is vezérli (mit csináljon)
Dekódoló, vezérlő egység
Lehet:
Huzalozott (Hardveres megoldás) Gyors Drága
Busz vezérlő Mikroprogramozott (Szoftveres megoldás)
Belső sín Cím generáló
Kis utasításokra bontja a komplex utasításokat Lassabb
CPU A GYAKORLATBAN
MEMÓRIA
Regiszterek Műveleteknél használt tárak Gyorsak, kicsik
Központi memória (RAM, Random Access Memory)
Adatokat, programokat tárol Lassabb mint a regiszter Nagyságrendekkel nagyobb kapacitású
Memória
Kapacitás
Ár
Sebesség
MEMÓRIÁK - TÁRAK
(felejtő)
Háttértár (nem felejtő)
MEMÓRIA
Központi memória Programok Adatok Ez nélkül nem létezhetne tárolt programú digitális gép
Vezérlő egység
Aritmetikai Logikai Egység (ALU)
Regiszterek
I/O eszközök Központi memória
Lemez
Nyomtató
MEMÓRIA Alapegység:
0 v. 1
BCD
bit (binary unit)
(Binary Coded Decimal)
Decimális szám 4 biten 4 bit: 16 lehetőség 6 „kombináció” kihasználatlan 2006: 0010 0000 0000 0110BCD 2006: 0000 1111 1101 0110B
Egyszerű konverzió miatt CPU nélküli vagy beágyazott rendszerekben használják
CÍMZÉSI MÓDOK
Operatív tár
Rekeszekből áll (cellák, pl. keskeny, hosszú papírcsík) Rekesz cím (address) - sorszám (memória elejétől) egyértelműen azonosítja az adott cellát Rekeszek száma cím bitszélessége (hány biten lehet minden rekeszt megcímezni?) k-bites rekeszek (címtől független) 10 db 8 bites rekesz – 210 db cím 10 db 128 bites rekesz – 210 db cím
CÍMZÉSI MÓDOK
(Címek a: 4 bit, b: 3 bit, c: 3 bit) Tanenbaum
CÍMZÉSI MÓDOK Rekesz – legkisebb címezhető egység IBM PC
8 bit (1 byte) Mára szinte szabványos a 8 bites rekesz
Szó Rekeszekből (byte-okból) áll 32 bites szó esetén a szó 4 byte-os Utasítások zöme szavakkal dolgozik (32 bites gép – 32 bites szavak, 64 bites gép – 64 bites szavak)
MEMÓRIÁK – CACHE CPU
gyorsabb mint a memória Fejlesztés
CPU gyorsabb legyen Memória több legyen
CPU és memória sebesség egyre távolabb
Lehetőség CPU várakozik
parancsokkal)
a memóriára (pl. NOP –
Lehet gyors memóriát is építeni Nagyon drága CPU mellé korlátos méretben lehet integrálni Méret – sebesség kompromisszum:
Gyorsítótár (cache)
MEMÓRIÁK – CACHE
Cache logikai elhelyezkedése
MEMÓRIÁK – CACHE Méret
A
A
Nagyságrendileg KB-MB
lassabb elérésű tár egy részét egyben tárolja „Lokalitás-elv” Több „szó”-t olvasunk cache-be egyszerre gyorsabb
sok írás – olvasás ide – innen történik CPU-ban a központi memóriát „cache”-eljük, de más táraknál is használatos (pl. merevlemez) Közp. CPU cache Mem. Gyors, de költséges
MEMÓRIÁK - REGISZTEREK CPU
ALU
Regiszterek
A processzor belső, átmeneti tárolói
Dekódoló, vezérlő egység
Belső sín
Általában a CPU bitszélességével megegyező nagyságúak (pl. Cím generáló 32 bit-es) Busz vezérlő
Az utasítások mindig regiszterből vesznek be paramétert és ide is teszik az eredményt
MEMÓRIÁK - REGISZTEREK CPU
ALU
Regiszterek
Dekódoló, vezérlő egység
Regisztereket különösen gyorsan kell tudni kezelni – Belső sín CPU sebességét befolyásolják Busz vezérlő Cím generáló adatok, utasítások, állapotjelzők Felejtő memória
MEMÓRIÁK – KÖZPONTI MEMÓRIA Elsődleges
v. operatív memória RAM (Random Access Memory) Méret: 128Mb – 4Gb+ I/O csatornák használata nélkül elérhető Felejtő Modulokkal bővíthető
Eleinte „lapkánként” lehetett bővíteni Manapság 8-16 lapka van egy nyomtatott áramkörön – SIMM (Single Inline Memory, egyérintkezős) és DIMM (Dual Inline Memory, kétérintkezős)
Hibajavítás
lehetséges, de SIMM DIMM-eknél ritka a hiba, el szokták hagyni
MEMÓRIÁK – KÖZPONTI MEMÓRIA
DIP (Dual Inline Package)
Pl. 8086, 286
SIPP (Single Inline Package) Pár 286-osban Sérülékeny (lábak letörnek)
MEMÓRIÁK – KÖZPONTI MEMÓRIA 32 bites adatút 30 és 72 érintkezős SIMM-ek (Single Inline Memory Module)
Mindkét oldali érintkező-pár „redundáns”, ugyanaz a láb 30 érintkezős 8 v. 9 bites 72 érintkezős 32 v. 36 bites
MEMÓRIÁK – KÖZPONTI MEMÓRIA 64 bites adatút 168 és 184 érintkezős DIMM-ek (Dual Inline Memory Module)
Mindkét oldali érintkező-pár más-más láb 168 érintkezős (SDRAM) 184 érintkezős (DDR RAM)
MEMÓRIÁK – KÖZPONTI MEMÓRIA 32 v. 64 bites adatút SO-DIMM (Small Outline DIMM)
Noteszgépekben Routerek Nyomtatók mini-alaplapok
MEMÓRIÁK – OPERATÍV MEMÓRIA Feladat: programok adatok tárolása Írható – olvasható (RAM, pedig nem azt jelenti, minden memória véletlen elérésű manapság, de így használjuk már) Fajták
Statikus Dinamikus
MEMÓRIÁK – STATIKUS RAM Static RAM (SRAM) Amíg tápellátás – megjegyzi, nem kell frissíteni Bitcellákból épül fel
Pl. RS-tároló NOR kapukkal
MEMÓRIÁK – STATIKUS RAM Kis sűrűség – nagy kapacitáshoz nem ideális Fogyasztás a sebesség függvénye, gyors SRAM-ok (CPU cache pl.) esetén nagy Egyszerű implementálás és tervezés (nincsenek frissítések)
MEMÓRIÁK – DINAMIKUS RAM Dynamic
RAM (DRAM) Bitcella-tömb, minden cella egy tranzisztor és egy kapacitás
Töltés / kisütés ~ 1 / 0 Töltések „szivárognak” – frissítés! (200-500 / sec)
Nagy
sűrűség érhető el (kevés alkatrész) Operatív memória általában DRAM-ból épül (SRAM inkább cache)
MEMÓRIÁK – DINAMIKUS RAM FPM
(Fast Page Mode) DRAM
Mátrix szervezésű tömb BE: Sor-, oszlopcím KI: adott cella értéke Aszinkron (cím és adatvonal nem u.a. órajelű)
EDO
(Extended Data Output) DRAM
Második memóriahivatkozás a kimenet előtt engedélyezett (folyamatos írás-olvasás esetén nő a sávszélesség – pipeline) Aszinkron
MEMÓRIÁK – DINAMIKUS RAM
SDRAM (Synchronous DRAM)
SRAM és DRAM hibrid Szinkron órajel Lekérés, kiolvasás egy órajelre ütemezve Fix órajel után jön válasz (latency)
2000-re minden PC ilyen memóriával jött ki
MEMÓRIÁK – DINAMIKUS RAM RDRAM
(Rambus DRAM)
3x gyorsabb órajel mint SDRAM (400 MHz) Memóriavezérlő minden modulon (2x-3x drágább) Késleltetés (latency) nagyobb (45ns, 7.5ns helyett) Hőtermelés nagyobb Párban lehet betenni (CRIMM modul) 2002-ben a kétcsatornás DDR-ek kiszorították
MEMÓRIÁK – DDR SDRAM
DDR (Double Data Rate) SDRAM
2x-es adatátvitel – órajel felmenő és lemenő élén is adatátvitel Kisebb feszültség (SDRAM: 3.3V, DDR: 2.5V)
MEMÓRIÁK – DDR2 SDRAM
DDR (Double Data Rate 2) SDRAM
Nagyobb órajel Kisebb feszültség (1.8 V)
MEMÓRIÁK – DDR3 SDRAM
DDR (Double Data Rate 3) SDRAM
Kisebb feszültség (1.5 V) Több csatorna (akár 8) párhuzamosan
FEJLŐDÉSTÖRTÉNET - ÖSSZEFOGLALÁS
MEMÓRIÁK – ROM
ROM (Read Only Memory)
Csak olvasható memória Tartalma nem vész el Felhasználás
Gépek alapprogramjainak tárolása, bekapcsoláskor futnak le
MEMÓRIÁK – (E)(E)PROM PROM
(Programable Read Only Memory)
1x írható, csak olvasható Felhasználó készíthet saját ROM-ot
EPROM
(Erasable PROM)
Törölhető (erős UV sugárzással) EPROM-íróval programozható
EEPROM
(Electrically EPROM)
Impulzusokkal törölhető Helyben programozható ~100.000 írást/törlést bír ki 10-ed olyan gyors és 100-ad olyan kapacitású mint az S- és DRAM-ok
MEMÓRIÁK – FLASH ROM
EEPROM-hoz hasonló, de
Kisebb elérési idő Sokkal olcsóbb Blokkokban írható/olvasható Nagyon ellenálló (forróság, nyomás)
SOLID STATE STORAGE
FLASH ESZKÖZÖK Memória kártyák For Digital cameras, mobile phones, MP3 players... Típusok: Compact flash, Smart Media, Memory Stick, Secure Digital card... USB pendrive A floppy/CD-ROM helyttesítésére Solid State Drives A hagyományos merevlemezek helyett használjuk
SOLID STATE STORAGE - TECHNOLÓGIA
Flash memória:
EEPROM
Electrically erasable programmable read only memory
Grid of cells (1 cell = 1 bit) Write/erase cells by blocks
Cell=two transistors Bit 1: elektronhiány Bit 0: elektrontelítettség
SSD ADATOK
Teljesítmény
Hozzáférési idő: 10X faster than hard drive Átviteli sebesség 1x=150 kb/sec, up to 100X for memory cards similar to normal hard drive for SSD ( 100-150 MB/sec)
Korlátozott írás/olvasás: 100k to 1,000k cycles
Many SSD devices combine flash (non-volatile) memory with DRAM (volatile) memory to improve performance DRAM cache May have energy storage (capacitor) built in to allow flushing DRAM cache to flash memory in case of power loss.
SOLID STATE STORAGE
Reliability Ütésálló Csendes! Nagyobb hőmérséklettartomány Korlátozott írás/olvasás
SOLID STATE STORAGE
Challenges
Increasing size Improving writing limits
Ár
~1$ / GB