Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

7. Fejezet A processzor és a memória

Hasonló előadás


Az előadások a következő témára: "7. Fejezet A processzor és a memória"— Előadás másolata:

1 7. Fejezet A processzor és a memória
Hardver és Szoftver rendszerek architektúrája: Egy Információ Technológiai Szemlélet 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College Linda Senne, Bentley College

2 A CPU 3 fő összetevője ALU (Arithmetic Logic Unit=Aritmetikai Logikai Egység) Számolást és összehasonlítás hajtja végre (adatok megváltoznak) CU (Control Unit=Vezérlő Egység): elvégzi a fetch/execute folyamatokat Funkciók: A CPU regisztereiben az adatokkal végez műveleteket (nem változnak meg az adatok) Program utasításokkal és parancsokkal látja el az ALU-t Részei: Memory management unit (Memória Vezérlő Egység): ellenőrzi a „fetch”-elő, és adat műveleteket I/O Interfész: néha egybeépítik a memória vezérlővel, melyet Bust Interface Unit-nak nevezünk Regiszterek Példa: Program counter (PC – program számláló) vagy instruction pointer (utasítás mutató) meghatározza a következő utasítást a futtatáshoz

3 Felépítés

4 Little Man Computer=LMC

5 A regiszterek tulajdonságai
Kicsi, örök tárolóhelyek a CPU-n belül, amiket részeredményekhez használ A Vezérlő egység (CU) vezérli őket Speciális használatra vannak tervezve Méret bit-ben, vagy byte-ban Tárolni tud adatot, címzést és utasítást Hány regisztere van az LMC-nek?

6 Regiszterek Regiszterek használata A regiszterek általában
„Scratchpad” a valós időben futott programokért A fontosabb, vagy a gyakran használt adatokat tárolja A CPU és a futó program állapotát tárolja A következő program utasítás címe Külső eszközökből érkező jelek A regiszterek általában Felhasználó számára láthatóak Megszakítási és adat értékeket tartalmaz Megegyezik az LMC számológépével Minden processzorban van néhány tucat

7 Speciális regiszterek
Program Count Register=Program számláló regiszter (PC) Instruction pointernek (utasítás mutató) is hívjuk Instruction Register=Utasítás regiszter (IR) Memóriából származó utasításokat tartalmaz Memory Address Register=Memória Cím Regiszter (MAR) Memory Data Register=Memória Adat Regiszter (MDR) Status Registers=Állapot Regiszterek A processzor és a futó program állapotát tartalmazza Flag-eket (Zászlókat) (egy bites logikai változókat) tartalmaznak, hogy nyomon kövessék a túlcsordulási, elektromos és belső hibákat

8 Regiszter műveletek Más helyekről származó értékeket tárol (regiszterek és memóriák) Összeadás és kivonás Adatok mozgatása (Shift, Rotate – Eltolás, Felcserélés) Ellenőrzi a tartalmat, pl.: nulla vagy pozitív

9 A memória működése Minden memóriatartomány egyedi címmel rendelkezik
Az utasítás címe a Memória Cím Regiszterbe kerül, amely megtalálja a helyét a memóriában A processzor határozza meg, hogy tároljon vagy olvasson adatot A Memória Adat Regiszter és a memória közötti szállítási helyet igényel A Memória Adat Regiszter kétirányú regiszter

10 Kapcsolatok a MAR, a MDR és a Memory között
Cím adatok

11 MAR-MDR példa

12 A memória vizuális ábrázolása

13 Egyes memória cella

14 Memória-kapacitás Két tényező határozza meg
1. A MAR-ban lévő bitek száma LMC = 100 ( ) 2K, ahol K = a regiszter szélessége bitekben 2. Az utasítások címeinek mérete 4 bit enged 16 helyet meg 8 bit enged 256 helyet meg 32 bit 4,294,967,296 vagy 4 GB-ot enged meg Fontos megjegyzés a teljesítményhez A kevés memória arra kényszerítheti a processzort, hogy 50%-alatt dolgozzon

15 RAM: Random Access Memory (Véletlen elérésű memória)
DRAM (Dynamic RAM=Dinamikus memória) Legáltalánosabb, olcsó Tartalmát hamar elveszti: másodpercenként 1000-szer kell frissülnie SRAM (Statikus RAM) Gyorsabb és drágább, mint a DRAM Tartalmát hamar elveszti Keveset használnak belőle a Cache memóriában, a gyors eléréshez

16 ROM - Read Only Memory (Csak olvasható memória)
Stabil memória a program tárolásához, amely nem várt eseménykor is megóvja a tartalmát!! Mágneses magmemória EEPROM Electrically Erasable Programmable ROM (Elektromosan törölhető és programozható ROM) Lassabb és kevésbé stabil, mint a FLASH ROM Flash ROM Gyorsabb, mint a meghajtók, de sokkal drágább is Felhasználási területek: BIOS: kezdeti BOOT parancsok és ellenőrzések Digitális kamerák

17 Fetch-Execute ciklus Két ciklusú művelet, mert mind a utasítás, mind az adat a memóriában van Fetch Megtalálja vagy dekódolja az utasításokat, a memóriából a regiszterekbe és az ALU-ba tölti Execute Műveleteket futtat, amire az utasításoknak szükségük van Adatok mozgatása/szállítása

18 LMC vs. CPU Fetch és Execute ciklus

19 Betöltés Fetch/Execute ciklus
PC -> MAR Az adatokat a PC-ből a MAR-ba szállítja MDR -> IR Az adatokat az IR-be szállítja IR(address) -> MAR Az utasítások cím részletei betöltődnek a MAR-ba MDR -> A Az aktuális adatokat a tárolóba másolja PC + 1 -> PC A programszámláló növelése

20 Tárolás Fetch/Execute ciklus
PC -> MAR Az adatokat a PC-ből a MAR-ba szállítja MDR -> IR Az adatokat az IR-be szállítja IR(address) -> MAR Az utasítások cím részletei betöltődnek a MAR-ba A -> MDR* A tárból az MDR-be másolja az adatokat PC + 1 -> PC A programszámláló növelése *figyelem a 4-es pont megváltozott a betöltéshez képest

21 ADD Fetch/Execute Cycle
PC -> MAR Az adatokat a PC-ből a MAR-ba szállítja MDR -> IR Az adatokat az IR-be szállítja IR(address) -> MAR Az utasítások cím részletei betöltődnek a MAR-ba A + MDR -> A Az MDR tartalma a tár tartalmához adódik PC + 1 -> PC A programszámláló növelése

22 LMC Fetch/Execute Kivonás PC  MAR MDR  IR IR[addr]  MAR A – MDR  A
PC + 1  PC Bemenet PC  MAR MDR  IR IOR  A PC + 1  PC Kimenet PC  MAR MDR  IR A  IOR PC + 1  PC Szünet PC  MAR MDR  IR Elosztás PC  MAR MDR  IR IR[addr]  PC Feltételes felosztás PC  MAR MDR  IR Ha a feltétel hamis: PC + 1  PC Ha a feltétel igaz: IR[addr]  PC

23 Busz Fizikai kapcsolat, ami lehetővé teszi az adatátvitelt a számítógép rendszer két pontja között Elektromos ellenőrző csoportok a két pontok közötti jel átvitelekhez Line: minden ellenőrzési pont egy buszon 4 fajta jel Adat (alfa-numerikus, numerikus, utasítások) Címek Vezérlő jelek Táp (néha)

24 Busz Processzort és a memóriát köti össze
I/O perifériák: egy buszon, mint a CPU/memória vagy külön busz Fizikai csomagolás, általában backplane-nek hívják Rendszerbusznak és külső busznak is hívják Példák broadcast busz A kör alakú tábla lenyomatának egy részét motherboard-nak (alaplap) hívják irányítja a CPU-t és összekapcsolja az összetevőket

25 Busz karakterisztikák
Protokoll Megegyezések dokumentálása a kommunikációhoz Világosan megmagyarázza az összes vonal és a vonalakon lévő minden jel jelentését Eredmény, az adat átvitel mértékegysége bit/másodperc Az adat sávszélességet bitekben szállítja párhuzamosan

26 Pontról pontra vs. Több pontos
Plug-in eszköz Broadcast bus példa: Ethernet Megosztott, összetett eszközök között

27 Az alaplap Nyomtatott áramkör, melyen a processzor és egyéb fő elemek találhatók

28 Tipikus PC kapcsolások
Busz interface bridge-ek (Buszokat összekötő hidak) különböző busz típusokat kapcsolnak össze

29 PCI Busz kapcsolatok

30 Utasítások Utasítás Utasítás beállítás
Az irányítás átadása a számítógépnek Elektromos jeleket küld különböző specifikus áramkörön keresztül a feldolgozásnak Utasítás beállítás A funkciót a processzor határozza meg Elkülönült számítógép architektúrák Utasítások száma Az adatok összetettsége végrehajtása egyedi utasítások szerint Támogatott adattípusok Formázás (layout, fixed vs. variable length – kinézet, Fix vs. Változó hossz) Regiszterek használata Címzés (méret, módok)

31 Utasítások elemei OP kód: feladat Műveletek forráskódja
Művelet eredménye Adat helye (regiszter, memória) Explicit: tartalmazza az utasítást Implicit: alapértelmezés Címek OP kód Forráskód Művelet Eredmény

32 Utasítás formátumok Számítógép-specifikus: OP kód hossza
Műveletek száma Műveletek hossza Egyszerű 32-bites utasítás

33 Utasítás formátumok: CISC

34 Utasítás formátumok: RISC

35 Utasítás típusok Adatműveletek (betöltés, tárolás) Aritmetikai
Legismertebb, leghatékonyabb A memória és a regiszterek közötti kapcsolat Mekkora a word adattípus? 16? 32? 64 bit? Aritmetikai Operátorok: + - / * ^ Egészek és lebegőpontosak Relációs vagy logikai Relációs operátorok: > < = Logikai operátorok: AND, OR, XOR, NOR, és NOT Egyszerű operandusokat kezelő utasítások Negáció, dekrementálás, inkrementálás

36 Egyéb utasítástípusok
Bitmanipuláló utasítások Flag-ek (Zászlók) a feltételek tesztelésére Eltolás és felcserélés Program irányítás Verem utasítások Összetett adat utasítások I/O és számítógép utasítás

37 Regiszter eltolás és felcserélés

38 Program irányító utasítások
Program irányítás Ugrás és elágazás Szubrutin hívása és visszatérés

39 Verem utasítások Verem utasítások
LIFO (utolsó be, első ki) eljárás, információ rendezésére A törölt elemeket a a visszavonáskor ugyanoda teszi vissza Elhelyezés Kivétel

40 Állandó hellyel rendelkező szubrutin címet visszaadó tárolás: Oops!

41 Verem szubrutin címet visszaadó tárolás

42 Összetett adat utasítások
Az adatok összetett részein párhuzamosan hajt végre egyszerű műveleteket SIMD: Single Instruction, Multiple Data (egyszerű utasítás, összetett adat) Intel MMX: 57 multimédiás utasítás Általában vektoriális és soros feldolgozó alkalmazásoknál használják

43 Copyright 2003 John Wiley & Sons
All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without express permission of the copyright owner is unlawful. Request for further information should be addressed to the permissions Department, John Wiley & Songs, Inc. The purchaser may make back-up copies for his/her own use only and not for distribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages caused by the use of these programs or from the use of the information contained herein.”


Letölteni ppt "7. Fejezet A processzor és a memória"

Hasonló előadás


Google Hirdetések