SzA13. A közvetlen memória-hozzáférés (DMA) Flashcards

1
Q

Fogalma

A

Használata nagy tömegű adat esetén célszerű, ahol gyors perifériákat alkalmazunk. DMA használatával az átvitelt a processzor használata nélkül valósítjuk meg.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

DMA feltétele, előnye

A

Feltétele:

  • a vezérlő képes legyen memóriacímek generálására
  • képes legyen adatátvitelre
  • képes legyen buszfoglalásra (igénylés), vezérlésre (ez a busz arbitrálás tulajdonképpen) Az adatátvitelt itt is a CPU kezdeményezi.

Előnye: megszakítások száma nagyságrendekkel csökken.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

DMA megvalósítása

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

DMA működése (előkészítés)

A

Előkészítés (felparaméterezés), programozott I/O-val történik, átvitelhez szükséges információk átvitele pld.:

  • átvitel iránya,
  • I/O egység címe,
  • memória blokk kezdőcím értéke,
  • memóriablokk kezdő cím értéke IOAR
  • olvasandó/ írandó egységek száma DC
  • átviendő adatok jellege (bájt, félszó, szó)
  • busz használatának módja (ciklus lopásos, blokkos)
  • részt vevő egységek I/O – memória, memória – memória, I/O – I/O
  • A DMA vezérlő csatornáihoz prioritási érték adható
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

DMA működése (Adatátvitel)

A

Blokkos (burst cycle mode)

  • DMA vezérlő az átvitel idejére lefoglalja a rendszerbuszt
  • (6) a DMA vezérlő betölti a perifériáról az adatot IODR-be
  • DC dekrementálás I/O, IOAR inkrementálás
  • DC vizsgálat DC = 0 Ha DC = 0 => busz használat megszüntetése
  • DMA megszakítás jelet küld a CPU-nak
  • a CPU ellenőrzi az átvitelt
  • buszhasználatot megszünteti

Cikluslopásos átvitel (cycle stealing)

egy-egy adat átvitele esetén (karakteres nyomtatók) DMA vezérlő és CPU időosztásosan közösen használja a rendszerbuszt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly