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 Sygnały sterowania z układu wejściawyjścia Sygnały stanu do układu wejściawyjścia Dane do i z układu wejściawyjścia Układy logiczne sterowania Bufor Przetwornik 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 Interfejs z magistralą systemową Interfejs z urzędzeniem zewnętrznym Linie danych Rejestry danych Rejestry stanu/sterowania Układy logiczne interfejsu z urządzeniem zewnętrznym Dane Stan Sterowanie Linie adresowe Linie sterowania Układy logiczne Układy logiczne interfejsu z urządzeniem zewnętrznym Dane Stan Sterowanie
Realizacja operacji 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.
Wydaj układowi rozkaz odczytu Programowane Odczytaj stan układu Nie gotowy Warunek Sprawdź błędu stan Gotowy Odczytaj słowo w układzie wejściewyjście Zapisz słowo w pamięci Nie Wykonane? Tak
Wydaj układowi rozkaz odczytu Wykonaj inną czynność Wejściewyjście Odczytaj stan układu Warunek Sprawdź błędu stan Gotowy Odczytaj słowo w układzie Przerwanie sterowane przerwaniami Zapisz słowo w pamięci Nie Wykonane? Tak
Bezpośredni dostęp do pamięci Wydaj układowi DMA rozkaz odczytu Odczytaj stan układu DMA DMA 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
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
Pojedyncza magistrala, odłączalne DMA Procesor Układ DMA Pamięć Wszystkie układy używają wspólnej magistrali systemowej.
Pojedyncza magistrala, zintegrowane DMA z wejściem-wyjściem Procesor Układ DMA Układ DMA Pamięć
Magistrala wejścia-wyjścia Procesor Układ DMA Pamięć
Interfejs zewnętrzny Do magistrali systemowej Układ Bufor Do urządzenia zewnętrznego Do magistrali systemowej Układ Bufor Do urządzenia zewnętrznego 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ść.