Szmtgpek felptse 3 elads CPU utasts ciklus cmzs
- Slides: 57
Számítógépek felépítése 3. előadás CPU, utasítás ciklus, címzés Dr. Istenes Zoltán ELTE-TTK 1
3. előadás tartalma • • • utasítás típusok, utasítás készlet a központi feldolgozó egység működése utasítás ciklus utasítás szerkezet címzési módok 2
Utasítás típusok 3
Utasítás típusok • adat-töltő, adat átvitel a számítógép funkcionális részei között • aritmetikai, logikai műveletek végzése adatokkal • program vezérlő, vezérlésátadás a program egyik részéről egy másik részére • speciális, rendszer vezérlő, hatékony működést segítő • I/O, adat átvitel a számítógép és a környezete között 4
Adat-töltő • • Regiszter -> Memória -> Regiszter Memória -> Memória 5
Aritmetikai, Logikai • aritmetikai műveletek: + - * / (különféle adattípusokon) • logikai függvények: AND, OR, NOT, XOR • összehasonlítások, vizsgálatok • léptetések 6
Program vezérlő • feltétlen elágazás (ugró) • feltételes elágazás • szubrutin hívás 7
Rendszer vezérlő • HALT, WAIT • megszakítás kezelés • kölcsönös kizárás megvalósítása (Test And Set) 8
I/O • adatátvitel a periféria és a gép között • periféria vezérlése 9
A központi feldolgozó egység • • feladata, kapcsolata a többi egységgel részei, felépítése működése megvalósítása 10
központi feldolgozó egység (CPU) memória (MEM) vezérlő egység (CU) művelet végző egység (ALU) 11
címsín központi feldolgozó egység (CPU) memória (MEM) vezérlő sín vezérlő egység (CU) művelet végző egység (ALU) adatsín 12
címsín központi feldolgozó egység (CPU) memória (MEM) vezérlő sín CU ALU regiszterek adatsín 13
A központi feldolgozó egység részei A központi feldolgozó egység (Central Processing Unit - CPU) részei : • műveleti egység (aritmetikai logikai egység) (Arithmetic Logical Unit - ALU) • vezérlő egység (Control Unit - CU) • regiszterek (registers) • sínek (bus) 14
A CPU működése A processzor utasításciklusa 15
Utasítás ciklus Fetch („elérés”) : • Utasítás kód beolvasása • Utasítás kód értelmezése (dekódolás) • Operandusok beolvasása Execute („végrehajtás”) : • Műveletvégzés (ALU) • Eredmény tárolása • Következő utasítás címének kiszámítása 16
címsín memória (MEM) vezérlő sín központi feldolgozó egység utasítás számláló ALU regiszter CU utasítás tároló regiszter adat regiszterek adatsín 17
vezérlő jelek címsín ütemező utasítás dekodoló utasítás regiszter címképzés adat regiszterek adatsín utasítás számláló Utasítás végrehajtás funkcionális vázlata aritmetikai logikai egység tár pufferregiszter operatív tár címregiszter 18
Utasítás végrehajtás lépései 1. • meghatározni a következő utasítás címét és a tár címregiszterébe tölteni • az utasítást a tárból az utasításregiszterbe tölteni 19
vezérlő jelek címsín ütemező utasítás dekodoló utasítás regiszter címképzés adat regiszterek adatsín utasítás számláló Utasítás végrehajtás 1. aritmetikai logikai egység tár pufferregiszter operatív tár címregiszter 20
Utasítás végrehajtás lépései 2. • meghatározni (címképzés) a tár címregiszterébe tölteni az 1. adat címét • adat a tárból az egyik adatregiszterbe 21
vezérlő jelek címsín ütemező utasítás dekodoló utasítás regiszter címképzés adat regiszterek adatsín utasítás számláló Utasítás végrehajtás lépései 2. aritmetikai logikai egység tár pufferregiszter operatív tár címregiszter 22
Utasítás végrehajtás lépései 3. • meghatározni (címképzés) a tár címregiszterébe tölteni az 2. adat címét • adat a tárból egy másik adatregiszterbe 23
vezérlő jelek címsín ütemező utasítás dekodoló utasítás regiszter címképzés adat regiszterek adatsín utasítás számláló Utasítás végrehajtás lépései 3. aritmetikai logikai egység tár pufferregiszter operatív tár címregiszter 24
Utasítás végrehajtás lépései 4. • utasítani az aritmetikai logikai egységet a művelet elvégzésére • eredmény tárolása egy adatregiszterben 25
vezérlő jelek címsín ütemező utasítás dekodoló utasítás regiszter címképzés adat regiszterek adatsín utasítás számláló Utasítás végrehajtás 4. aritmetikai logikai egység tár pufferregiszter operatív tár címregiszter 26
Utasítás végrehajtás lépései 5. • meghatározni (címképzés) a tár címregiszterébe tölteni az eredmény címét • az eredmény az adatregiszterből a tárba 27
vezérlő jelek címsín ütemező utasítás dekodoló utasítás regiszter címképzés adat regiszterek adatsín utasítás számláló Utasítás végrehajtás 5. aritmetikai logikai egység tár pufferregiszter operatív tár címregiszter 28
Utasítás végrehajtás lépések összefoglalása • következő utasítás címe, elérése, előkészítése • 1. adat címe, elérése, előkészítése • 2. adat címe, elérése, előkészítése • művelet elvégzése • eredmény címe, eltárolása 29
Utasítás végrehajtáshoz szükséges „információk” • vezérlőegységnek információ <- utasítás – elvégzendő művelet – 1. adat címe (helye) – 2. adat címe (helye) – erdmény címe (helye) – következő utasítás címe • nem lehetne máshogy ? ! 30
Utasítások tárolási formái utasítás szerkezet címzési módok utasítás típusok, utasítás készlet 31
Egy utasítás felépítése, részei műveleti kód módósításra utaló rész címrész 32
Utasítás formák 4, 3, 2, 1, 0 címes utasítás formák (a megadott címek száma szerint) 33
4 címes utasítás forma műveleti 1. adat 2. adat eredmény következő utasítás kód címe 34
3 címes utasítás forma műveleti 1. adat 2. adat eredmény következő utasítás kód címe program számláló utasítás számláló regiszter , Program Counter (PC) PC : = PC + utasítás hossz 35
2 címes utasítás forma műveleti 1. adat 2. adat eredmény kód címe az eredmény a 2. adat címére kerül 36
1 címes utasítás forma műveleti 1. adat 2. adat eredmény kód címe akkumulátor regiszter a 2. adat címe helyett akkumulátor regiszter, az eredmény az akkumulátor regiszterbe kerül 37
0 címes utasítás forma műveleti 1. adat kód címe eredmény címe akkumulátor regiszter a művelet az akkumulátor regiszteren hajtódik végre 38
Utasítás formák a címrész tartalma szerint 39
jelölések • S : tárcím • R : regisztercím • A : akkumulátor regiszter • I : közvetlen adat az utasításban • (S) : adat a tárban • (R) : adat a regiszterben • (A) : adat az akkumulátor regiszterben • MK : műveleti kód • @ : tetszőleges művelet • LI(n) : az n. utasítás hossza • SI(n) : az n. utasítás címe 40
4 címes : MK S 1 S 2 S 3 S 4 (S 1) @ (S 2) -> (S 3), SI(n+1) = S 4 3 címes : MK S 1 S 2 S 3 (S 1) @ (S 2) -> (S 3), SI(n+1) = SI(n) + LI(n) 2 címes : MK S 1 S 2 (S 1) @ (S 2) -> (S 2) ” 1 címes : MK S 1 (S 1) @ (A) -> (A) ” 0 címes : MK @ (A) -> (A) ” 41
1 R címes : MK R: @ (R) -> (R) 1 + R címes : MK R S : (R) @ (S) -> (R) vagy (R) @ (S) -> (S) 2 R címes : MK R 1 R 2 : (R 1) @ (R 2) -> (R 1) 3 R címes : MK R 1 R 2 R 3: (R 1) @ (R 2) -> (R 3) közvetlen operandusú : MK I S vagy MK I I @ (S) -> (S) vagy @ I -> (A) 42
Címzési módok címértelmezés címmegadás 43
Címértelmezés műv. kód adat közvetlen (immediat) adatmegadás regiszter adat műv. kód adat rejtett (inheritent), implicit címzés műv. kód 0 cím közvetlen (direkt) címzés műv. kód 1 cím közvetett (indirekt) címzés tár cím adat 44
Címmegadás műv. kód cím adat abszolút címmegadás bázis D + műv. kód cím (D) rövidített címmegadás adat D = displacement (eltolás) vagy „offset” 45
Rövidített címmegadás Mihez képest számítjuk a címet : • lapcímes : az adott lap kezdetétől • bázisregiszteres : bázisregiszter értékétől (általában a bázisregiszter tartalma rögzített) • mutatós (pointeres) : a meghatározott regiszter értékétől (a regiszter tartalma a program végrehajtása során változik, pld. PC) 46
Kombinált címzési módok • . . . • Címmódósítás : indexelés (vektor feldolgozása : első elem megadása, index automatikus növelése) • fix utasításhossz • változó utasításhossz 47
48
Utasítások kódolása Példa : 8 bites utasításhossz, 3 bites címhossz • 3 címes címzés lehetetlen • 2 címes címzés : marad 2 bites műveleti kód : 4 féle utasítás • 1 címes címzés : marad 5 bites műveleti kód : 32 féle utasítás • 0 címes címzés : 8 bites műveleti kód : 256 féle utasítás 50
Utasítások kódolása műveleti kód 1. cím 2 bit 3 bit 00 01 10 11 xxx xxx 2. cím 3 bit yyy yyy 51
Utasítások kódolása („expanding”) 2 bit 3 bit 2 bites műveleti kód 00 01 10 xxx yyy 3 db 2 címes utasítás 5 bites műveleti kód 11 11 000 001 010 011 100 101 110 111 8 db 1 címes utasítás yyy yyy 52
Eltérő címzésí módú gépek programozása példa (1) Adott 4 különféle típusú gép : • 0 címes gép (verem), pld. : ADD, PUSH (M), POP (M) • 1 címes gép, pld. : ADD M = ACC <- (ACC) + (M) • 2 címes gép, pld. : ADD X, Y = X <- (X) + (Y) • 3 címes gép, pld. : ADD X, Y, Z = Z <- (X) + (Y) műveletek : MOV, ADD, SUB, DIV, MUL, (LDA, STA) Kiszámolandó : • Z: = ((A+B)*C)/((D-E)*F) 53
Eltérő címzésí módú gépek programozása példa (2) Adatok : • M - 20 bites memóriacím • X, Y, Z - 20 bites memória cím, vagy 3 bites regisztercím (R 0 -R 7) • a műveleti kód rész hossza 8 bit Kérdés mindegyik géptípusra (programra) : • az utasítások száma • a program mérete (bit-ben) 54 • a felhasznált regiszterek száma
• • REG ALU FLAG AC CU IR PC 55
Logikai struktura • • • adattípusok programozható regiszterek utasítás típusok (utasítás lista) utasítás formák címzési módok 56
Fizikai struktura • • • operatív tár műveleti (aritmetikai logikai) egység vezérlőegység megszakítási rendszer I/O rendszer 57
Összefoglalás 58
- Public candy companies
- Elads
- Elads crm
- Előltesztelős ciklus
- Ciklus trikarbonskih kiselina
- Kolbov ciklus učenja
- Demingov ciklus
- Ciklus u prirodi
- Ciklus limunske kiseline
- Gotovinski ciklus
- ćelijski ciklus
- Nadh koencim
- Kalvinov ciklus
- Gjekaj
- Gospoda glembajevi pravac
- Pentóz foszfát ciklus
- Kalvinov ciklus
- Krebsov ciklus
- Koeficijent obrta gotovine
- Felhők ciklus
- Motivacijski ciklus
- Gospoda glembajevi analiza likova
- Visual basic feladatok megoldással
- So limunske kiseline
- Metabolizam prezentacija
- Glioksilatni ciklus
- Motivacijski ciklus
- Kelvinov ciklus
- Gotovinski ciklus
- Biogeokemijski ciklusi
- Ornitin ciklus
- Stijenski ciklus
- Obrnut karnoov ciklus
- Psihologija marketinga
- Gotovinski ciklus
- Motivacijski ciklus
- 8086 architecture
- Motherboard mit cpu und ram
- Internal bus cpu
- Srtf and sjf
- Processor history
- In this scheme cpu execution waits while i/o proceeds.
- Cpu design
- Windows 10 priority
- Cpu functions
- Cpu consists of
- Mrtg cpu
- Single issue processor
- What is virtualization cpu
- Ece243 labs
- Cpu benchmarks 2017
- Cpu uc
- Cpu is the heart of computer
- Ps -e --format uid,pid,ppid,%cpu,cmd
- Single cycle cpu design
- Bottleneck cpu
- Executable memory
- Disk scheduling algorithms