számítógépek felépítése 9. előadás i/o rendszerek

21
1 Számítógépek felépítése 9. előadás I/O rendszerek Dr. Istenes Zoltán ELTE-TTK

Upload: faunus

Post on 20-Mar-2016

68 views

Category:

Documents


4 download

DESCRIPTION

Számítógépek felépítése 9. előadás I/O rendszerek. Dr. Istenes Zoltán ELTE-TTK. I/O rendszerek. Programozott I/O. teljesen a CPU irányítja az I/O műveleteket. Közvetlen memória hozzáférés. Megszakítás. +. (DMA - Direct Memory Access) CPU csak „elindítja”, aztán az I/O eszköz - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Számítógépek felépítése 9. előadás I/O rendszerek

1

Számítógépek felépítése9. előadás

I/O rendszerek

Dr. Istenes ZoltánELTE-TTK

Page 2: Számítógépek felépítése 9. előadás I/O rendszerek

2

I/O rendszerek

teljesen a CPU irányítja az I/O műveleteket

(DMA - Direct Memory Access) CPU csak „elindítja”, aztán az I/O eszköza CPU „nélkül” végzi az átvitelt

Megszakítás

memóriához hozzáférés, CPU felfüggesztése, I/O program végrehajtása

Programozott I/O

Közvetlen memória hozzáférés

I/O processzor

(interrupt)+

Page 3: Számítógépek felépítése 9. előadás I/O rendszerek

3

Programozott I/O

CPU

I/O eszköz

port

• IO eszköz kiválasztása a címsínnel• IO port : egy adott (memória)cím memóriára leképzett IO (memory mapped IO)

Memória

adatátvitel a CPU-n keresztül

Page 4: Számítógépek felépítése 9. előadás I/O rendszerek

4

Programozott IO utasítások

• alapvető IO utasítások :– IN X : szó átvitele az X port-ról az akkumulátorba– OUT X : szó átvitele az akkumulátorból az X port-ra

• A beolvasott vagy kiírt szó lehet vezérlő, állapotjelző, stb. információ (a CPU nem értelmezi)

• egyéb IO utasítások (teszt, blokk átvitel, ...)

Page 5: Számítógépek felépítése 9. előadás I/O rendszerek

5

Szó beolvasása programozott I/O-val(Intel 8080 példa)

WAIT:IN 1

CPI ready

JNZ WAITIN 2...

státuszinformáció az 1-es port-on, az adat, ha kész az eszköz, a 2-es port-on

1-es port-ról státuszinformáció beolvasása az akkumulátorba...összehasonlítása a „ready” konstanssal,ha egyenlő Z flag = 1ha Z flag <> 1 ugrás WAIT-readat beolvasása a 2-es port-ról...

Page 6: Számítógépek felépítése 9. előadás I/O rendszerek

6

A programozott IO hátrányai

a CPU (feleslegesen) sok időt „veszít” az az eszköz állapotának a vizsgálatával és az adatátvitellel...

ha több (vizsgálandó) eszköz van...

az IO átvitel sebességét attól függ, hogy a CPU milyen gyorsan tudja az IO eszközt vizsgálni és kiszolgálni...

az adat a CPU-n halad keresztül, ahelyett hogy közvetlenül a memóriába jutna...

Page 7: Számítógépek felépítése 9. előadás I/O rendszerek

7

Megszakításos I/O

• az eszköz megszakítás kérelemmel jelez ha készen van... (CPU-nak nem kell várnia...)

• sok nagysebességű eszköznél (+blokkátvitel) használhatatlan...

Page 8: Számítógépek felépítése 9. előadás I/O rendszerek

8

Közvetlen memória hozzáférés(DMA - direct memory access)

nagysebességű eszközöknél...

CPU elindítja az átvitelt

DMA vezérlő önállóan irányítja az átvitelt(a tároló és az I/O eszköz között)

CPU - DMA közötti kapcsolat : megszakítások...

DMA : címsín, adatsín vezérlése...

Page 9: Számítógépek felépítése 9. előadás I/O rendszerek

9

Közvetlen memória hozzáférés

AR IODRIOARDCAC

adatsín

címsín

központi memória

vezérlő vezérlő

CPU IO egység

DMAkérelem

DMAengedélyezés

(1)

(2)

(3)

(5)

(6)

(4)

Page 10: Számítógépek felépítése 9. előadás I/O rendszerek

10

Közvetlen memória hozzáférés

Adatátviteli módok :• Tömb átvitel (DMA block transfer)• Cikluslopás (cycle stealing)

Page 11: Számítógépek felépítése 9. előadás I/O rendszerek

11

I/O processzor(IOP)

+ IO utasítások végrehajtásaIO műveletek végzése

programozott I/O

közvetlen memória hozzáférés

CPU idő pazarlás...

kevésbé rugalmas...

Page 12: Számítógépek felépítése 9. előadás I/O rendszerek

12

I/O processzor(IOP)

IOP = kommunikációs kapcsolat („csatorna - channel”)a központi memória és az IO eszközök között

PPU - Peripherial processing unit

IOP : korlátozott (speciális IO) utasításkészletű feldolgozó egység

Page 13: Számítógépek felépítése 9. előadás I/O rendszerek

13

I/O processzor elvi működés

CPU által elindítottIO művelet CPU MEM

IOP

I/O-1 I/O-2 I/O-3

IOP által végrehajtottutasítások (CCW)

IOP-n keresztüliadatátvitel

START_IOSTOP_IOTEST_IO

Page 14: Számítógépek felépítése 9. előadás I/O rendszerek

14

CPU és IOP utasítások a memóriábanközponti memóriaCPU

IOP

start_io...

test_io

...

...07000400h

...

CPU által végrehajtottutasítások

IOP általvégrehajtott CCW utasítások

a CPU „elindítja” az IOP-t

Page 15: Számítógépek felépítése 9. előadás I/O rendszerek

15

Blokk írása I/O processzor-ral (IBM System 360-370 IO program példa)

CCW - Channel Command Wordopcode abs. memory address flag - data count0 8 32 37 48 63

07h. .40h.37h. .40h.01h.buffer .40h.1001Fh. .40h.07h. .00h.

szalag visszatekeréselső rekord átugrása„buffer” címről 100 byte írásamarker írásaszalag visszatekerés, stop

CCW utasítások az IOP-nak

Page 16: Számítógépek felépítése 9. előadás I/O rendszerek

16

I/O processzorok szervezése

IOPIO IO IO

IOPIO IO IO

IO sín

IOP

IOP

IO IO IO

kapcsoló hálózat(crossbar switch)

egy IOP - több lassú IO eszköz : multiplexer channel

egy IOP - egy gyors IO eszköz : selector channel

...

Page 17: Számítógépek felépítése 9. előadás I/O rendszerek

17

egyég lehetőség(ek)...(periféria cache/puffer tároló)

MEM

MEM

CPU

periféria

cache / puffer tároló

Page 18: Számítógépek felépítése 9. előadás I/O rendszerek

18

egyég lehetőség(ek)...(„periféria processzor”)

MEM

MEM

I/O eszköz memóriájaCPU

I/O eszköz processzora

periféria

PU

Page 19: Számítógépek felépítése 9. előadás I/O rendszerek

19

egyég lehetőség(ek)...(„memória lefedés”)

központi memória I/O eszköz memóriája

eszköza központi memória egy részétaz eszköz memóriája„lefedi”

Page 20: Számítógépek felépítése 9. előadás I/O rendszerek

20

Összefoglalás

• „megszakítás”...• CPU idő - gyorsaság - bonyolultság...• hardver / szoftver...

Page 21: Számítógépek felépítése 9. előadás I/O rendszerek

21