számítógépek felépítése 8. előadás sínrendszer, megszakítás
DESCRIPTION
Számítógépek felépítése 8. előadás sínrendszer, megszakítás. Dr. Istenes Zoltán ELTE-TTK. 8-9. előadás tartalma. Kapcsolatok, Input / Output Sínrendszer Megszakítási rendszer I/O Rendszerek Programozott I/O DMA I/O processzorok, csatornák. CPU, Memória, és még valami. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/1.jpg)
1
Számítógépek felépítése8. előadás
sínrendszer, megszakítás
Dr. Istenes ZoltánELTE-TTK
![Page 2: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/2.jpg)
2
8-9. előadás tartalma
• Kapcsolatok, Input / Output• Sínrendszer• Megszakítási rendszer• I/O Rendszerek
– Programozott I/O– DMA– I/O processzorok, csatornák
![Page 3: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/3.jpg)
3
CPU, Memória, és még valami...
• Számítógép fő számítási funkciója csak a CPU-t és a Memóriát érinti.
• CPU beolvassa az utasításokat és az adatokat a memóriából, feldolgozza majd az eredményt a memóriában tárolja...
Hogyan kerülnek az adatok a memóriába ?
DE...
![Page 4: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/4.jpg)
4
Kapcsolat a „külvilággal”A kimeneti és bemeneti egység feladata : információ csere a CPU vagy a központi memória és a külvilág között...
sín
CPU MEM
„külvilág”
![Page 5: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/5.jpg)
5
A ki/bemeneti egység feladata
ki/bemeneti eszköz input/output device
I/O eszközperiféria
• Kapcsolatok kezelése• Adatátvitel
processzor
memória I/O eszköz
![Page 6: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/6.jpg)
6
Célok és problémák...
Célok :• eszközök minél gyorsabb, „jobb” kiszolgálása...• a CPU minél kisebb leterhelése...
Problémák :• eszközök (CPU - perifériák) eltérő sebessége...• eszközök különbözősége (kezelési mód)...
![Page 7: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/7.jpg)
7
Eszközök...
Bemeneti Be/kimeneti Kimeneti
nyomtató
képernyő
billentyűzet
scanner
egér
háttértárolók(lemezmeghajtók)
hálózat(modem)
CDROM
és még sokan mások...
![Page 8: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/8.jpg)
8
Eszközökkel való kapcsolat (kezelése) port-okon keresztül
címsín
adatsín
s d
port-ok
eszközvezérlő
cparancs regiszter (c)
állapotjelző regiszter (s)
adat ki/bemenetiregiszter (d)
![Page 9: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/9.jpg)
9
I/O eszközök (portok) elérése
Memória I/O eszközCPU
címsínadatsín
Memória I/O eszközCPU
címsínadatsínMem/IO
IO eszközbizonyos címeket„felismer”
közvetlen I/O utasítások : közvetlenül az eszközvezérlő regiszterébe
tárolóhoz rendelt módon (memory mapped addressing) : a központi memórián keresztül
![Page 10: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/10.jpg)
10
Sínrendszer
![Page 11: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/11.jpg)
11
Sínrendszer feladata
A sínrendszer feladata :adatok, vezérlőjelek továbbítása
Átvitel létrehozásakor • eszközök kijelölése („cím” megadás...)• adatátvitel iránya• eszközök szinkronizálása
(működésének összehangolása)
![Page 12: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/12.jpg)
12
Sínrendszer struktúrája• Külső / belső sínrendszer (CPU-hoz képest)
– Belső : (pld. 3 sín, külön adatsín írásra, olvasásra...)– Külső:
• helyi sín (local bus) (pld. co-processzor)• rendszer sín (system bus) (pld. I/O)• memória sín (memory bus)
• Sínrendszer részei :– Címsín– Adatsín– Vezérlősín
![Page 13: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/13.jpg)
13
Sínrendszer(közös / külön IO sínrendszer)
rendszer sín (system bus)
CPU MEM
I/O-1 I/O-n...
egyszeres osztott sín
rendszer sín (system bus)
CPU MEM
I/O-processzor
ki/bemeneti sín (i/o bus)
I/O-1 I/O-n...
külön memória és ki/bemeneti sín
![Page 14: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/14.jpg)
14
Sínek...
CPU
ALU
co-processzor cache
MEM
IO processzor
MEM
vez
IO eszköz IO eszköz IO eszköz
belső sín
helyi sín
rendszer sín
IO sín
![Page 15: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/15.jpg)
15
Vezérlő jelek (a vezérlősínen)
• Adatátvitelt vezérlő jelek :– memória /periféria M/IO - cím a sínen – írás / olvasás R/W - adat a sínen– szó / byte átvitel WD/B - átvitel vége
• Megszakítást vezérlő jelek • Sínvezérlő jelek (kérés, foglalás, visszaigazolás)• Egyéb... (órajel, ütemezés, táp,...)
![Page 16: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/16.jpg)
16
Sínfoglalás (bus arbitration)
Soros kiszolgálás (daisy chain) Lekérdezéses kiszolgálás (polling)
Párhuzamos kiszolgálás (independent requesting)
![Page 17: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/17.jpg)
17
Soros kiszolgálás (daisy chain)
buszvezérlő
0.eszköz
1.eszköz
2.eszköz
sínkérés(BREQ - bus request)
sín engedélyezés(BG - bus grant)
sín
![Page 18: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/18.jpg)
18
Lekérdezéses kiszolgálás (polling)
buszvezérlő
0.eszköz
1.eszköz
2.eszköz
sínkérés(BREQ - bus request)
lekérdező szám(polling count)
sín
![Page 19: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/19.jpg)
19
Párhuzamos kiszolgálás
buszvezérlő
0.eszköz
1.eszköz
2.eszköz
sínkérés(BREQ - bus request)
sín engedélyezés(BG - bus grant)
sín
prioritás ?
![Page 20: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/20.jpg)
20
...még a sínekhez kapcsolódik...
• sínprotokoll (mechanikus, elektromos, logikai)• átlapolódó sínciklusok• blokk sínciklus (burst cycle)• sínfoglalás (bus arbitration)• Sínvezérlő (sínmeghajtó) egység (bus interface)• master / slave
![Page 21: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/21.jpg)
21
A „sínhasználók”
processzormemória
I/O eszközco-processzor
DMAI/Olebegőpontos
utasítás
adat, utasítás
adat
aktív eszköz(master)
sínhasználat kezdeményezés sínhasználat végrehajtás
passzív eszköz(slave)
![Page 22: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/22.jpg)
22
Megszakítási rendszer
Interrupt system
![Page 23: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/23.jpg)
23
Megszakítások
• „Váratlan események”...• megszakítás (interrupt)• megszakítási rendszer• megszakítási kérelem (IRQ - Interrupt Request)• megszakítási kérelem kiszolgálásaCél :• események gyors kezelése...• minél kevésbé zavarja a feldolgozást...
![Page 24: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/24.jpg)
24
Megszakítási események kiváltójaprogram hardver
végrehajtás közbeni hiba0-val osztástúlcsorduláslapváltás
szinkron események
végrehajtás felfüggesztése aperiféria működése közben
aszinkron események
várható váratlan„hiba”„kért működés”
![Page 25: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/25.jpg)
25
Megszakítás vs. kivétel
megszakítás (interrupt) kivétel (exception)
n. utasítás n+1. utasítás
megszakítás kiszolgálása
megszakítás
n. utasítás
kivétel kiszolgálása
kivétel
![Page 26: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/26.jpg)
26
Megszakítás kezelés folyamata
• megszakítás engedélyezés– maszkolás– prioritás– megszakítható pont
• megszakítás analízis (kiszolgáló rutin ?)– kód - tárcím - utasítás
• állapotmentés• kiszolgálás• állapot visszaállítás
![Page 27: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/27.jpg)
27
Maszkolás
Maszkolható / nem maszkolható kérelmek
Maszkolás : bizonyos megszakítások „figyelmen kívül hagyása”megszakítási kérelmek engedélyezése / tiltása
![Page 28: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/28.jpg)
28
Megszakítás-engedélyezés
• megszakítás kérés „maszkolása”...• prioritások kezelése :
ha több megszakítás egyidőben ?• többszörös megszakításkezelés :
ha újabb megszakítás a megszakításkezelés közben ? • a megszakítást okozó eszköz megállapítása :
ki kérte a megszakítást ?
![Page 29: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/29.jpg)
29
Többszörös megszakításEgyszintű megszakítási rendszer : kiszolgáló rutin
nem megszakíthatóTöbbszintű megszakítási rendszer :
rutin-2
rutin-5
rutin-4
rutin-2
megszakítás kérelmek2 5 4
idő
prioritásszint
„normál” „normál”
prioritások
![Page 30: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/30.jpg)
30
Megszakítás analízisA megszakítást kezdeményező eszköz megállapítása
Szoftver módszer
Hardver módszer
• operációs rendszer időnként megvizsgálja az eszközöket „lekérdezéses megszakításkezelés” (polling interrupt)
• 1 megszakítási vonal...• több megszakítási vonal...• vektoros módszer : kiszolgáló rutin kezdőcíme...
![Page 31: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/31.jpg)
31
Vektoros módszer(a megszakítást kezdeményező eszköz
megállapítása)
• kiszolgáló rutint elindító utasítás átadása (pld.: CALL INT_RUT)
• kiszolgáló rutint elindító utasítás címének az átadása (pld.: ADR, ahol [ADR]=CALL INT_RUT)
• kiszolgáló rutint címének az átadása (pld.: INT_RUT)
• sorszám átadása :megszakítási vektortáblában rutinok kezdőcímei,sorszám mint index a táblázatban
![Page 32: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/32.jpg)
32
Megszakítás vektor tábla
CALL 4 01234
100
200
CALL 100CALL 200CALL ...A eszköz
beviteli rutin
A eszközkiviteli rutin
B eszközkiviteli rutin
CPU
IO port 0 IO port 1 IO port 2
A eszköz B eszköz
INT REQ 2
memória
adatsín
![Page 33: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/33.jpg)
33
Megszakítás kiszolgálásának lépései (hardver által 1.)
eszköz
vezérlőmegszakítás
kezelő
processzor
adatsín
INT (1)
IACK (2)
megszakításivektor
sorszám (3)sorszám tárolás (4)
PC
PWSverem
IT vektortábla
PC és PWSelmentése (5)
rutin kezdőcíma táblázatból (6)
kezdőcím a PC-be (7)
![Page 34: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/34.jpg)
34
Megszakítás kiszolgálásának lépései (2.)
Szoftver által :• regiszterek -> verem / memória• kiszolgáláshoz szükséges adatok összegyűjtése• megszakítás kiszolgálása, kezelése (kiszolgáló
rutin lefutása...)• verem / memória -> regiszterekHardver által :• PC és PSW visszaállítása
állapotmentés
állapot visszaállítás
kiszolgálás
![Page 35: Számítógépek felépítése 8. előadás sínrendszer, megszakítás](https://reader035.vdocuments.net/reader035/viewer/2022062521/5681558b550346895dc360e0/html5/thumbnails/35.jpg)
35
I/O