Periferní operace využívající přímý přístup do paměti

Podobné dokumenty
Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

Principy komunikace s adaptéry periferních zařízení (PZ)

Koncepce DMA POT POT. Při vstupu nebo výstupu dat se opakují jednoduché činnosti. Jednotlivé kroky lze realizovat pomocí speciálního HW.

Řízení IO přenosů DMA řadičem

Systémová sběrnice, souvislost architektury počítače a systémové

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. 25

Pozice sběrnice v počítači

frekvence 8 Mhz, přestože spolupracuje s procesori různe rychlými. 16 bitová ISA sběrnice je

Systém řízení sběrnice

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. L322

Cíl přednášky: Obsah přednášky:

Registrový model HDD

Periferní operace využívající přerušení

Periferní operace využívající přerušení

Periferní operace využívající přerušení

Obsluha periferních operací, přerušení a jeho obsluha, vybavení systémových sběrnic

Principy činnosti sběrnic

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. L336

Přednášející: Zdeněk Kotásek. Ústav počítačových systémů, místnost č. L322

Komunikace procesoru s okolím

Vstupně - výstupní moduly

Sběrnicová architektura POT POT. Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry.

Obvody a architektura počítačů. Jednoprocesorové počítače

Vrstvy periferních rozhraní

Přerušení na PC. Fakulta informačních technologií VUT v Brně Ústav informatiky a výpočetní techniky. Personální počítače, technická péče cvičení

Obecné principy konstrukce systémové sběrnice

SDRAM (synchronní DRAM) Cíl přednášky:

3. Principy komunikace s perifériemi: V/V brány, programové řízení, přerušení, řešení priorit. Řadiče, DMA kanály. Popis činnosti DMA kanálu.

Paměti SDRAM (synchronní DRAM)

zení Koncepce připojení V/V zařízení POT POT ... V/V zařízení jsou připojena na sběrnici pomocí řadičů. Řadiče Připojení periferních zařízení

Paměti SDRAM (synchronní DRAM)

Fakulta informačních technologií, VUT v Brně Ústav počítačových systémů Personální počítače, technická péče, cvičení. Sběrnice ISA

KONSTRUKCE SBĚRNICE PCI

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Metody připojování periferií BI-MPP Přednáška 1

Přerušovací systém 12.přednáška

Paralelní rozhraní. Přehled standardů paralelního rozhraní Centronics

Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:

Vstupně výstupní moduly. 13.přednáška

Metody připojování periferií

PCKIT LPT MODUL SBĚRNICE IOBUS PRO PC LPT. Příručka uživatele. Střešovická 49, Praha 6, s o f c o s o f c o n.

Jak studovat systémovou sběrnici

Přerušovací systém s prioritním řetězem

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Dělení pamětí Volatilní paměti Nevolatilní paměti. Miroslav Flídr Počítačové systémy LS /11- Západočeská univerzita v Plzni

Struktura a architektura počítačů (BI-SAP) 10

KONSTRUKCE SBĚRNICE PCI

Sběrnice, připojování periferních zařízení a RAID. INP 2008 FIT VUT v Brně

Architektury počítačů a procesorů

Dekódování adres a návrh paměťového systému

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta informačních technologií

Vrstvy periferních rozhraní

Mikrokontroléry. Doplňující text pro POS K. D. 2001

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Cíl přednášky: Obsah přednášky:

AGP - Accelerated Graphics Port

Komunikace s perifériemi

Operační paměti počítačů PC

A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL. Rozhraní mikrořadiče, SPI, IIC bus,.. A438NVS, kat. měření, ČVUT - FEL, Praha. J.

Rozhraní diskových pamětí

sběrnic a jejich komunikace s periferními zařízeními. Někdy se jedná o sběrnice, kdy celkovou

O čem bude předmět X36PZ A?

Princip funkce počítače

Rozhraní ATA a ATAPI. Rozhraní ATA a ATAPI. Koncepce ATA. Řadič je součástí diskové jednotky. Původní fyzické rozhraní odvozeno od sběrnice ISA.

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Sběrnice SCSI a její využití

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Profilová část maturitní zkoušky 2014/2015

BI-JPO. (Jednotky počítače) M. Sběrnice

Z čeho se sběrnice skládá?

Sběrnice SCSI a její využití

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Rozhraní diskových pamětí

Použití programovatelného čítače 8253

Rychlá vyrovnávací paměť v architektuře PC

Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 11 (12)

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

Periferní zařízení. Laboratorní úloha F. Měření na PCI sběrnici. Vypracovali: Josef Hajas Přemysl Jiřík Ota Korbel

Sběrnice SCSI a její využití

Paměti Rambus DRAM (RDRAM) Paměti Flash Paměti SGRAM

2 Sběrnice Adresová sběrnice Kanálová architektura Struktura a funkce kanálů... 25

Grafické adaptéry a monitory

Sběrnice PCI, PCI-X, PCI Express

Další koncepce realizace diskových rozhraní

Technické prostředky počítačové techniky

A0M38SPP - Signálové procesory v praxi - přednáška 10 2

Pokročilé architektury počítačů

Činnost počítače po zapnutí

Systémy pro sběr a přenos dat

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Principy počítačů a operačních systémů

Miroslav Flídr Počítačové systémy LS /21- Západočeská univerzita v Plzni

Grafické adaptéry a monitory

FASTPort. Nová sběrnice pro připojení inteligentních karet* k osmibitovým počítačům. aneb. Jak připojit koprocesor

Grafické adaptéry a monitory

Sběrnice. Parametry sběrnic: a. Přenosová rychlost - určuje max. počet bitů přenesených za 1 sekundu [b/s]

Paměti EEPROM (1) 25/07/2006 1

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

TECHNICKÝ POPIS MODULU GRAFIK =============================

Transkript:

Periferní operace využívající přímý přístup do paměti Základní pojmy Programová obsluha periferní operace řízení této činnosti procesorem. Periferní operace využívající přerušení řízení řadičem přerušení, procesor je rovněž ve hře. Přímý přístup do paměti (DMA - Direct Memory Access) tato činnost je řízena prvkem řadičem přímého přístupu do paměti (řadič DMA) schopným řídit přenos dat mezi periferním zařízením a pamětí, přičemž přenášená data neprochází přes mikroprocesor ani přes řadič DMA. Přenos se odehrává mezi datovým registrem řadiče PZ a pamětí. Řadiče DMA bývají konstruovány tak, že: - Sestávají z více nezávislých DMA kanálů, je možné rozšíření na libovolný větší počet kanálů pomocí kaskádního zapojení. 1

- Takto je konstruován řadič DMA Intel 8237A, který byl konstruován pro počítač se sběrnicí ISA. Vstupní periferní operace na bázi DMA sestává z těchto fází: - přenos dat z PZ do adaptéru (řadiče), - oznámení procesoru, že přenos dat skončil, - přenos dat z adaptéru do paměti bez pozornosti procesoru (možnost využití DMA přenosů, příp. PIO). Těmto činnostem musí předcházet komunikace mezi řadičem DMA a procesorem, jejímž výsledkem je zablokování přístupu procesoru na sběrnice a uvolnění sběrnic pro řadič DMA (procesor uvede své výstupy do stavu vysoké impedance, někdy též označovaného jako třetí stav ). V tomto stavu nezatěžují výstupy procesoru tyto signály. 2

Funkce řadiče DMA: - soustřeďuje požadavky na přímý přístup do paměti od jednotlivých PZ, - pokud je žádajících zařízení více, uplatní se vestavěný prioritní systém, - na základě dohody s mikroprocesorem přebírá řízení sběrnice, - řídí přenos dat mezi adaptérem a pamětí (generování řídicích signálů, generování adres), - redukuje počet vývodů procesoru potřebných pro obsluhu přenosů DMA (možnost realizovat komunikaci mezi řadičem DMA a procesorem na dvou signálech). 3

P R O C HLDA HOLD 8 2 3 7 A DACK0-DACK3 DACK5-DACK7 DRQ0 DRQ3 DRQ5 DRQ7 I S A DACKx DRQx A D A P T É R PAMĚŤ DATA Obr. 1 Struktura podílející se na vzniku a obsluze DMA požadavku (sběrnice ISA, řadič DMA 8237A) 4

Komentář k obr. 1: - Signály HOLD/HLDA jsou na straně 8237A přivedeny na vývody (piny) HRQ/HLDA, na straně mikroprocesoru na vývody HOLD/HLDA. - To platí v situaci, kdy mikroprocesor a řadič DMA 8237A jsou samostatnými prvky. - Na sběrnici ISA jsou signály DRQ/DREQ (žádost o DMA) a signály DACK (potvrzení žádosti). - Procesor, řadič DMA a paměť jsou umístěny na systémové desce. 5

Obr. 2 Rozhraní prvku 8237A 6

Komentář k obr. 2 - Prvek 8237A je napojen na datovou sběrnici, přes ni je možné jej programovat, přes ni jsou realizovány DMA přenosy. - Prvek 8237A je napojen na adresovou sběrnici, přes ni je možné adresovat vnitřní prvky (první 4 bity jsou obousměrné, tyto 4 bity stačí na adresování vnitřních prvků řadiče DMA), ty jsou ale také při DMA přenosech použity pro adresaci paměti. - Musí být schopen realizovat všechny typy datových přenosů, tzn. musí být schopen generovat signály -IOR, -IOW, -MEMW, -MEMR a jejich kombinace. - Pozor: signály -IOR/-IOW jsou obousměrné, protože registry řadiče DMA musí být možné programovat (tzn. zapsat/číst jejich z/do datové sběrnice), signály -MEMW/-MEMR jsou jednosměrné. 7

Průběh přenosu DMA ve sběrnici ISA 1. Některý z adaptérů zašle prostřednictvím signálu DRQi do systémové sběrnice žádost o přenos dat. Na sběrnici ISA je k předání žádosti celkem sedm možností (DRQ0 3, DRQ5 7). 2. Řadič DMA rozhodne o prioritě žádosti vzhledem k ostatním a do procesoru vyšle signál HRQ. 8

Obr. 4 Komunikace mezi komponentami PC při DMA přenosu 9

- Blok BŘS zesynchronizuje žádost HRQ s hodinami mikroprocesoru a jako signál HOLD ji pošle do mikroprocesoru. 3. Procesor odešle do řadiče DMA signál HLDA, který indikuje, že sběrnice bude počínaje příštím taktem volná a přenos DMA může začít. Podobné signály vyšle i směrem k budičům adresové, datové a řídicí sběrnice mikroprocesoru a ty odpojí mikroprocesor od systémových sběrnic. 4. Řadič DMA zareaguje na signál HLDA vysláním odpovídajícího signálu DACKi na sběrnici (tzn. do adaptéru, který vyslal signál DRQi). 5. Řízení přenosu se ujme řadič DMA a uskuteční přenos jedné položky údajů. 10

Ukončení DMA přenosu Řadič DMA po skončení sběrnicového cyklu shodí žádost HRQ (tzn. HOLD na straně mikroprocesoru a mikroprocesor přestane vysílat aktivní HLDA => budiče všech částí systémové sběrnice jsou opět připojeny na mikroprocesor a začne probíhat normální procesorový sběrnicový cyklus. Poznámka: o ukončení DMA přenosu je rozhodnuto na základě přenosu požadovaného počtu slov. Logika řadiče DMA Blok řízení řadiče DMA - Řadič DMA je složitým automatem, který musí být řízen. - Generuje vnitřní a externí řídicí signály. 11

Blok programového řízení - Řadič DMA je řízen příkazy. - Dekóduje tyto příkazy, které byly do řadiče vloženy procesorem před zahájením přímého přístupu do paměti. Blok řízení priorit - Stanovuje prioritu obsluhy současně generovaných požadavků. Důležité registry Registr aktuální adresy - 16 bitový registr, v němž je uložena aktuální adresa paměťového místa, do/z něhož je realizován přenos. - Obsah registru se každým přenosem inkrementuje nebo dekrementuje a při každém přenosu se vkládá na adresovou sběrnici. 12

- Obsah registru je možné zapisovat/číst ze strany procesoru (využitím instrukce IN/OUT). - Musí být možné uvést registr aktuální adresy do původního (počátečního stavu) - pro případ opakování operace Registr - čítač slov - Registr, v němž je uložen počet požadovaných přenosů. - Stav registru slov se po každém přenosu snižuje o 1. - Musí být možné uvést registr - čítač slov do původního (počátečního stavu). Registr bázové adresy - Registr, v němž je uložena počáteční hodnota registru aktuální adresy (tzn. první adresa oblasti operační paměti, kam se ukládají přenášená data). 13

- Využívá se v situacích, kdy je nutno do registru aktuální adresy vložit počáteční adresu (původní hodnotu). - Obsah registru není možné číst ze strany procesoru. Záložní registr - čítač slov - Registr, v němž je uložena počáteční hodnota registru - čítače slov. - Využívá se v situacích, kdy je nutno stav registru - čítače slov aktualizovat na počáteční hodnotu. - Obsah registru není možné číst ze strany procesoru. Registr příkazu - Registr příkazu, jímž je řízena činnost řadiče DMA. - Je možné jej programově nulovat pomocí instrukcí Reset a Master Clear. 14

Registr požadavků - Registr požadavků o přenos DMA, každý kanál DMA má k dispozici 1 bit. - Tyto bity jsou na sběrnici ISA iniciovány buď na základě signálu DREQ nebo softwarově ze strany mikroprocesoru. - Všechny tyto žádosti jsou analyzovány blokem "výběr požadavků podle priority". Registr masky - Každý kanál má přidělen 1 bit, jímž je maskován odpovídající signál žádosti o DMA (ve sběrnici ISA signál DREQ). - Je programovatelný ze strany procesoru. 15

Stavový registr - Je v něm uložena informace o stavu přenosu přes jednotlivé kanály řadiče. - Možnosti: kanál dokončil přenos (byl dosažen stav TC), probíhá obsluha požadavku DMA. - Obsah stavového registru je možné číst do některého registru mikroprocesoru. Dočasný registr - Jsou v něm uložena data při přenosech paměť - paměť. - Obsahuje vždy slabiku přenášenou během posledního realizovaného přenosu paměť - paměť. - Je možné jeho obsah číst do některého registru mikroprocesoru. 16

Principy činnosti řadiče DMA Přenos dat z periferního zařízení do paměti signály -IOR, - MEMW, oba signály jsou aktivní současně. Přenos dat z paměti do periferního zařízení signály -IOW, - MEMR, oba signály jsou aktivní současně. Přenosy paměť - paměť vyžadují nejprve realizaci čtecí fáze, pak následuje fáze zápisu. DMA přenosy paměť - paměť vyžadují generování signálů -MEMW, -MEMR. Důležité: při žádném z těchto přenosů neprocházejí data přes řadič DMA. 17

Obr. 5 DMA sběrnicový cyklus čtení z V/V 18

Obr. 6 DMA sběrnicový cyklus zápisu do V/V 19

Na přenosu DMA se podílejí tyto komponenty: - adaptér PZ, - V/V sběrnice (např. ISA), - řadič DMA, - blok řízení sběrnice - BŘS (řadič sběrnice), - procesor. Prioritní systém Existují 2 možnosti, jak rozhodovat o prioritě: - Fixed priority (pevně přidělené priority) nejnižší prioritu má kanál 3, nejvyšší kanál 0. - Rotating priority kanál obsluhovaný jako poslední má pak přidělenu nejnižší prioritu => každý DMA požadavek je v nějaké rozumné době obsloužen. 20

Rozhraní 8237A CLK - synchronizace logiky řadiče DMA, - pro prvek 8237A-5 byl kmitočet CLK roven 5 Mhz (!!!!!!). - CS (Chip Select) - je aktivní v úrovni L, - vybírá 8237A, je možné realizovat zápis do registrů přes datovou sběrnici (v režimu IDLE tzn. při operacích manipulujících s obsahy registrů 8237A). RESET - tímto signálem se nulují tyto registry: Command (příkaz), Status (stav), Request (požadavek), Temporary (dočasný), 21

READY - signál Ready je vstupem řadiče 8237A, - na základě tohoto signálu se prodlouží pulsy pro zápis/čtení do/z paměti, - řadič DMA se tak přizpůsobuje pomalejším paměťovým prvkům. A0 A3 - nejnižší adresové bity (obousměrné signály) třístavový výstup, - v režimu IDLE je na těchto vodičích adresa registru, jehož obsah je čten/zapisován, příp. kód příkazu. A4 A7 - vyšší adresové bity (výstupní signál) - třístavový výstup, - jsou aktivní pouze při přímém přístupu do paměti. 22

AEN (Address Enable) - Generováním tohoto pulsu se na adresovou sběrnici vloží 8 bitů adresy na adresovou sběrnici (horní bity). - Signál AEN může být použit také pro zablokování přístupu jiných komponent na systémové sběrnice. DB0 DB7-8 bitů datové sběrnice (obousměrné signály). - Přes tuto sběrnici se čtou/zapisují data z/do vnitřních registrů řadiče (při jeho programování). - Při realizaci DMA přenosu se přes tuto sběrnici vkládá do externího registru 8 bitů adresy (signálem ADSTB). 23

-IOR (I/O Read) - Obousměrný signál s třístavovým výstupem (generován buď procesorem čtení vnitřních registrů řadiče DMA procesorem nebo generován řadičem DMA přenos dat mezi registrem externího adaptéru a pamětí). -IOW (I/O Write) - Obousměrný signál s třístavovým výstupem (generován buď procesorem programování vnitřních registrů řadiče DMA procesorem nebo generován řadičem DMA přenos dat mezi pamětí a registrem externího adaptéru). DREQ0 DREQ3 (DMA Request) - Požadavek o přímý přístup do paměti generovaný adaptérem a přenášený přes V/V sběrnici do řadiče DMA. 24

- Nejvyšší prioritu má DREQ0, nejnižší DREQ3. - Signál DREQ musí zůstat aktivní tak dlouho, dokud není řadičem DMA generován DACK. - Polarita signálu DREQ je programovatelná - po RESETu je aktivní úroveň H. DACK0 DACK3 (DMA Request) - Signály směrem z řadiče DMA do adaptéru (přes V/V sběrnici), jímž je indikováno, že řízení sběrnic bylo převzato řadičem DMA (přístup mikroprocesoru na systémové sběrnice je zablokován). HRQ (Hold Request) - Signál generovaný řadičem DMA (na základě signálu DREQ z adaptéru) směrem do mikroprocesoru. 25

- V řadiči DMA se signál DREQ uplatní pouze tehdy, pokud není v řadiči zamaskována. HLDA (Hold Acknowledge) - Signál z mikroprocesoru, jímž mikroprocesor indikuje, že pustil řízení sběrnice. - MEMR (Memory Read) - Generovaný řadičem DMA při čtení z paměti (z adresy, která je vystavena na V/V sběrnici). - Signál má třístavový výstup. - MEMW - Generovaný řadičem DMA při zápisu do paměti (na adresu, která je vystavena na V/V sběrnici). 26

- Signál má třístavový výstup. ADSTB (Address Strobe) Přenos 8 bitů adresy do externího registru. - EOP (End of Process) - Obousměrný signál, který je generován buď uvnitř řadiče nebo může přijít z vnějšku a způsobí ukončení přenosu DMA. - Uvnitř řadiče je odvozen od signálu TC, který indikuje přetečení stavu čítače přenesených slov. 27

Implementace principů DMA v počítači se sběrnicí ISA V počítači jsou dva prvky, které jsou schopny řídit sběrnici - řadič sběrnice a řadič DMA. Funkci arbitra plní řadič DMA - přijímá od řadičů PZ přes systémovou sběrnici žádosti o přerušení - signály DREQx, zpětně odpovídá signály DMACKx. Řadič DMA komunikuje s procesorem dvěma signály - omezení počtu vývodů procesoru. 28

datová sběrnice ARBITR řadič Z1 řadič Z2 řadič Zn Řadič DMA DREQ 1 DMACK 1 DREQ 2 DMACK 2 DREQ n DMACK n 29

Implementace principů DMA v počítači se sběrnicí PCI V počítači neexistuje řadič DMA. Byla přijata koncepce tzv. bus mastering, tzn. řadiče PZ jsou vybaveny možností řídit sběrnici. Ve sběrnici PCI jsou neexistují signály, které by byly obdobou DREQ, DMACK ve sběrnici ISA. Prvky typu bus master jsou schopny: - Požádat o přidělení sběrnice centrálního arbitra. - Po přidělení sběrnice tuto sběrnici řídit, tzn. realizovat to, co doposud uměl pouze řadič sběrnice a řadič DMA (vkládat na sběrnici adresu operační paměti, generovat potřebné řídicí signály - IOR, IOW, MEMR, MEMW). Sběrnice PCI je pro tyto účely vybavena signály REQ (request) a GNT (grant), každý bus master má své vlastní signály. 30

datová sběrnice ARBITR řadič Z1 řadič Z2 řadič Zn REQ 1 GNT 1 Bus master REQ 2 GNT 2 REQ n GNT n 31