Architektura komputerów
Tydzień 11
Wejście - wyjście
Urządzenia zewnętrzne
●
Wyjściowe
–
monitor
–
drukarka
●
Wejściowe
–
klawiatura, mysz
–
dyski, skanery
●
Komunikacyjne
–
karta sieciowa, modem
Urządzenie zewnętrzne
Układy
logiczne
sterowania
Bufor
Przetwornik
Sygnały
sterowania z
układu wejścia-
wyjścia
Sygnały stanu
do układu
wejścia-
wyjścia
Dane do i z
układu
wejścia-
wyjścia
Dane (specyficzne dla
urządzenia) kierowane
do i z otoczenia
Funkcje układu
wejścia-wyjścia
●
sterowanie i taktowanie
●
komunikacja z procesorem
●
komunikacja z urządzeniem
●
buforowanie danych
●
wykrywanie błędów
Sterowanie i taktowanie
●
Układ wejścia–wyjścia musi koordyować
przepływ informacji między zasobami
wewnętrznymi a urządzeniami
zewnętrznymi.
●
Może być potrzebny oddzielny zegar
taktujący przesyłanie danych do/z
urządzenia zewnętrznego.
●
Sygnały sterujące sprawdzają i
ustawiają odpowiedni stan urządzenia.
Komunikacja z procesorem
●
Dekodowanie rozkazów od procesora.
●
Przesyłanie danych (poprzez magistralę
systemową).
●
Przesyłanie informacji o stanie
urządzenia.
●
Rozpoznawanie adresu. Każde
urządzenie wejścia-wyjścia ma swój
unikalny adres, który go identyfikuje.
Komunikacja z urządzeniem
●
Buforowanie danych. Urządzenia
wyjściowe z reguły są dużo wolniejsze
niż pamięć/magistrala systemowa, w
związku z czym dane muszą być
przechowane w buforze do momentu,
kiedy urządzenie będzie w stanie je
wykorzystać.
●
Wykrywanie błędów. Różne sytuacje
wyjątkowe muszą być wykryte i
zasygnalizowane.
Schemat blokowy układu I/O
Rejestry danych
Rejestry stanu/sterowania
Układy
logiczne
interfejsu z
urządzeniem
zewnętrznym
Układy
logiczne
interfejsu z
urządzeniem
zewnętrznym
Układy
logiczne
we-wy
Linie
danych
Linie
adresowe
Linie
sterowania
Dane
Stan
Sterowanie
Dane
Stan
Sterowanie
Interfejs z
magistralą
systemową
Interfejs z
urzędzeniem
zewnętrznym
{
{
Realizacja operacji we-wy
●
Programowane wejście-wyjście:
wszystkim steruje procesor
●
Wejście-wyjście sterowane
przerwaniamu: procesor zajmuje się
obsługą urządzeń, które zgłaszają stan
przerwaniami.
●
Bezpośredni dostęp do pamięci (DMA):
dene wymieniane między pamięcią i
urządzeniem bez pośrednictwa
procesora.
Programowane
wejście-
wyjście
Wydaj układowi
we-wy rozkaz
odczytu
Odczytaj stan
układu we-wy
Odczytaj słowo w
układzie we-wy
Zapisz słowo
w pamięci
Sprawdź
stan
Wykonane?
Nie
gotowy
Nie
Tak
Gotowy
CPU
we-wy
CPU
we-wy
CPU
we-wy
CPU
we-wy
CPU
we-wy
Warunek
błędu
Wejście-
wyjście
sterowane
przerwaniami
Wydaj układowi
we-wy rozkaz
odczytu
Odczytaj stan
układu we-wy
Odczytaj słowo w
układzie we-wy
Zapisz słowo
w pamięci
Sprawdź
stan
Wykonane?
Warunek
błędu
Nie
Tak
Gotowy
CPU
we-wy
CPU
we-wy
CPU
we-wy
CPU
we-wy
CPU
we-wy
Wykonaj inną
czynność
Przerwanie
Bezpośredni
dostęp do
pamięci
Wydaj układowi
DMA rozkaz
odczytu
Odczytaj stan
układu DMA
CPU
DMA
CPU
DMA
Wykonaj inną
czynność
Przerwanie
Przetwarzanie przerwań
1.Urządzenie wysyła sygnał przerwania.
2.Procesor kończy wykonywanie bieżącego
rozkazu.
3.Procesor sprawdza, czy wystąpiło
przerwanie. Wysyła do urządzenia sygnał
potwierdzenia.
4.Procesor przygotowuje się do obsłużenia
przerwania:
a)zachowuje stan procesora na stosie;
b)ładuje do licznika rozkazów adres programu
obsługi przerwania.
Przetwarzanie przerwań cd.
5.Procesor przechodzi do fazy pobierania
następnej instrukcji i ładuje pierwszą
instrukcję programu obsługi przerwania.
6.Programu obsługi przerwania zachowuje
zawartość rejestrów procesora.
7.Przetwarzanie przerwania:
a)zbadanie stanu operacji wejścia-wyjścia
b)wysłanie dodatkowych rozkazów lub
potwierdzeń
8.Odtworzenie stanu zachowanych rejestrów.
9.Powrót do głównego programu: procecsor
odtwarza zachowany wcześniej stan.
Wady
Wady programowanego i sterowanego
przerwaniami wejścia-wyjścia:
●
Szybkość transferu ograniczona
szybkością, z jaką procesor może
testować i obsługiwać urządzenie.
●
Procesor jest zajęty przesyłaniem
danych, co zajmuje jego czas, który
mógłby być przeznaczony na obliczenia
i przetwarzanie danych.
Działanie DMA
●
Dodatkowy układ DMA przejmuje od
procesora sterowanie urządzeniami
wejścia-wyjścia i ma bezpośredni
dostęp do pamięci.
●
Procesor wydaje rozkazy układowi
DMA, podając informacje:
–
rodzaj operacji: odczyt lub zapis
–
adres urządzenia wejścia-wyjścia
–
adres pamięci przeznaczonej dla operacji
–
liczbę bajtów (słów) do
odczytania/zapisania
Pojedyncza magistrala,
odłączalne DMA
Procesor
Układ
DMA
we-wy
we-wy
Pamięć
Wszystkie układy używają wspólnej magistrali
systemowej.
Pojedyncza magistrala,
zintegrowane DMA z
wejściem-wyjściem
Procesor
Układ
DMA
we-wy
we-wy
Pamięć
we-wy
Układ
DMA
Magistrala wejścia-wyjścia
Procesor
Układ
DMA
we-wy
we-wy
Pamięć
we-wy
Interfejs zewnętrzny
Bufor
Układ we-wy
D
o
m
ag
is
tr
al
i
sy
st
em
o
w
ej
D
o
u
rz
ąd
z
en
ia
z
ew
n
ęt
rz
n
eg
o
Bufor
Układ we-wy
D
o
m
ag
is
tr
al
i
sy
st
em
o
w
ej
D
o
u
rz
ąd
z
en
ia
z
ew
n
ęt
rz
n
eg
o
Interfejs szeregowy
Interfejs równoległy
Interfejsy równoległe
●
Port równoległy PC (drukarki)
●
Interfejs IDE (dyski, napędy CD i DVD)
●
Interfejs SCSI (dyski, napędy CD,
streamery, skanery)
Zalety: duża szybkość transferu przy
niewielkiej częstotliwości magistrali.
Wady: wiele kabli do przesyłania danych
zwiększa koszt kabli. Interferencja
między przewodami ogranicza długość.
Interfejsy szeregowe
●
Port szeregowy RS-232, PS/2 i inne
(klawiatura, myszka, drobne urządzenia
wejściowe i wyjściowe)
●
USB (jw. oraz skanery, drukarki i inne)
●
IEEE 1394 firewire (dyski, kamery)
Zalety: niski koszt kabli dzięki małej
ilości przewodów danych oraz
zwiększona maksymalna długość.
Wady: w celu uzyskania dużego transferu
wymagana jest wysoka częstotliwość.