2.4 KiB
2.4 KiB
Připojení periferních zařízení
Koncepce připojení IO zařízení
- IO zařízení jsou připojena na sběrnici pomocí řadičů
- řadiče
- specializované (např. řadič disku, grafická karta, ...) - lze k nim připojit jen zařízení určitého typu
- univerzální (např. sériové rozhraní USB, ...) - lze k nim připojit zařízení různých typů
Rozhraní IO řadiče
- rozhraní pro připojení na sběrnici
- obvykle navrženo univerzálně pro snadné připojení na různé systémové sběrnice
- zahrnuje datové a adresní vodiče i řídicí signály (/CS, /RD, /WR, ...)
- rozhraní pro připojení IO zařízení
- u specializovaných řadičů přizpůsobeno připojenému IO zařízení
- u univerzálních je programovatelné nebo přímo odpovídá standardu (USB, SCSI, ...)
IO řadič z pohledu programátora
- reprezentován sadou registrů
- datové registry - vstup a výstup dat
- řídicí registry - nastavení parametrů řadiče
- stavové registry - stav řadiče, připojeného zařízení
IO řadič v paměťovém adresním prostoru
- např. u procesoru H8S
- pro přístup k registrům řadiče se používají stejné instrukce jako pro práci s pamětí
- často se používá neúplné dekódování adres
IO řadič v IO adresním prostoru
- např. u IA-32
- procesor rozlišuje adresní prostor paměti a adresní prostor IO zařízení
- pro práci se zařízením se používají zvláštní instrukce (IO, OUT)
- na sběrnici kromě cyklů čtení z paměti a zápis do paměti také čtení z IO zařízení a zápis do IO zařízení
- obvykle menší než adresní prostor paměti
Řízení IO operací
- komunikace s IO zařízením může být řízena podle některé ze základních koncepcí
- programové řízení IO operací procesorem
- řízení IO operací s využitím přerušení
- řízení IO operací DMA řadičem
- použité specializovaného IO procesoru
Programové řízení IO zařízení procesorem
- procesor čte stavové registry řadiče a testuje připravenost zařízení
- není-li zařízení připraveno, opakuje čtení a test
- je-li zařízení připraveno, čte nebo zapisuje data z/do datových registrů
- vlastnosti
- procesor je trvale zatížen čtením a testováním stavu
- maximální rychlost je omezena rychlostí provedení instrukcí pro čtení stavu, test a zápis/čtení dat
- jednoduchý hardware