Moduł wejśda/ wyjścia
Funkcje modułu wejścia/wyjśda:
a) sterowanie i taktowanie:
- koordynowanie przepływu pomiędzy urządzeniem zewnętrznym a zasobami wewnętrznymi
b) komunikacja z procesorem:
- dekodowanie i anabza rozkazu wysyłanego z procesora
- przesyłanie danych z procesorem
- przesyłanie sygnałów stanu
- rozpoznawanie adresów urządzeń peryferyjnych
c) komunikaqa z urządzeniem:
- rozkazy z urządzenia i do urządzenia
- wymiana z nim danych
- wymiana rifbrmacji o stanie
d) buforowanie danych:
* musi pracować z szybkością urządzenia po jednej stronie i szybkością danych po drugiej
e) wykrywanie błędów:
- wykrywanie mechanicznych błędów w urządzeniach
- informowanie o błędach procesora
Struktura modułu wejśda/wyjścia:
- moduł połączony jest z resztą systemu za pomocą linii programowych (np. magistrali systemowej)
- jeden lub wiele rejestrów stanu
- jeden lub wiele rejestrów danych
- jeden lub wiele rejestrów sterowania
- układy logiczne dostosowane do konkretnych urządzeń
- zespół adresów urządzeń, które obsługuje
Moduł wejścia/wyjścia może:
• ukrywać przed procesorem skomplikowane rzeczy i pozostawić mu tylko proste rozkazy (sterownik we/wy, urządzenia), zastosowanie w mikrokomputerach
- zostawić procesorowi wykonywanie wielu rzeczy (procesor, kanał we/wy), zastosowanie w dużych komputerach
Programowane wejście/wyjśae:
- procesor wykonuje program, który umożliwia mu bezpośrednie sterowanie operacjami wejścia/wyjśaa
• gdy procesor jest szybszy od modułu we/wy to musi poczekać az on zakończy swoje dziabnie, strata czasu
Wejście/wyjścte sterowane przerwaniami:
- procesor wydaje rozkaz we/wy, po czym wykonuje inne rozkazy
- jak moduł we/wy wykona pracę to prosi o przerwanie i procesor wraca do niego
W obu przypadkach to ftocesor jest odpowiedzialny za pobrane danych z pamięci i zapisanie ich tam z powrotem. DMA - bezpośredni dostęp do pamięci
• w tym trybie pamięć i moduł we/wy same wymieniają dane me używając procesora Programowane wejście/wyjście
• procesor jak napotka rozkaz we/wy wydaje rozkaz modułowi we/wy
- ten realizuje zadane i jak skończy ustawia bity stanu odpowiednio, aie nie musi sam informować o tym procesora
- procesor musi sam sprawdzać co jakiś czas bity stanu modułu, by zobaczyć czy nie skończył pracy
Rozkazy wełśaa/wyiścB:
Rodzaje rozkazów we/wy (jakie od procesora może dostać moduł we/wy):
a) rozkaz sterowania - w celu uruchomienia urządzenia zewnętrznego i powiedzenia mu co ma robić
b) rozkaz testowania - w celu sprawdzenia stanu urządzenia peryferyjnego
c) rozkaz odczytu - w celu pobrania danych z urządzenia peryferyjnego
d) rozkaz zapisu - w celu zapisania danych na urządzeniu peryferyjnym