Mikroprocesor Operacje wejścia / wyjścia

Podobne dokumenty
Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Architektura systemów komputerowych. dr Artur Bartoszewski

Wykład IV. Układy we/wy. Studia Podyplomowe INFORMATYKA Architektura komputerów

LEKCJA TEMAT: Zasada działania komputera.

Architektura komputerów

Układy wejścia/wyjścia

Przerwania, polling, timery - wykład 9

Metody obsługi zdarzeń

PRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Logiczny model komputera i działanie procesora. Część 1.

Architektura komputerów. Układy wejścia-wyjścia komputera

Organizacja typowego mikroprocesora

Architektura komputera

Działanie systemu operacyjnego

Działanie systemu operacyjnego

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Standard transmisji równoległej LPT Centronics

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Działanie systemu operacyjnego

PRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego.

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia

Struktura systemów komputerowych

Mikroinformatyka. Koprocesory arytmetyczne 8087, 80187, 80287, i387

Podstawy Informatyki Układ przerwań

Budowa systemów komputerowych

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

Działanie systemu operacyjnego

Urządzenia zewnętrzne

Systemy Operacyjne sprzęt

Budowa i zasada działania komputera. dr Artur Bartoszewski

Urządzenia wejścia-wyjścia

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Programowanie w językach asemblera i C

ARCHITEKTURA PROCESORA,

Architektura komputerów

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut

Hardware mikrokontrolera X51

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

Systemy operacyjne. Struktura i zasady budowy. Rozdział 1 Wprowadzenie do systemów komputerowych

MIKROKONTROLERY I MIKROPROCESORY

Sygnały DRQ i DACK jednego kanału zostały użyte do połączenia kaskadowego obydwu sterowników.

dr inż. Jarosław Forenc

Architektura systemów komputerowych

Architektura systemu komputerowego

Technika mikroprocesorowa I Wykład 2

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

LEKCJA TEMAT: Współczesne procesory.

Układy sterowania robotów przemysłowych. Warstwa programowania trajektorii ruchu. Warstwa wyznaczania trajektorii ruchu.

Część I - Sterownik przerwań 8259A i zegar/licznik 8253

Struktura i działanie jednostki centralnej

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Magistrala systemowa (System Bus)

Architektura Systemów Komputerowych

Architektura komputerów

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Podstawowe zadanie komputera to wykonywanie programu Program składa się z rozkazów przechowywanych w pamięci Rozkazy są przetwarzane w dwu krokach:

Architektura i administracja systemów operacyjnych

Zarządzanie pamięcią operacyjną

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Wstęp do informatyki. Interfejsy, urządzenia we/wy i komunikacja. Linie magistrali

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

dr inż. Jarosław Forenc

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

URZĄDZENIA WEJŚCIA-WYJŚCIA

ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna

Architektura komputerów

4. Procesy pojęcia podstawowe

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Strona WWW przedmiotu: Program ćwiczeń projektowych

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

Zarządzanie procesorem

Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci

System mikroprocesorowy i peryferia. Dariusz Chaberski

Wykład Mikroprocesory i kontrolery

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

drklaus 1 Model funkcjonalny komputera struktura, funkcje, komputer dr inż. Rafał KLAUS STRUKTURA I DZIAŁANIE KOMPUTERA

Budowa karty sieciowej; Sterowniki kart sieciowych; Specyfikacja interfejsu sterownika sieciowego; Open data link interface (ODI); Packet driver

Zarządzanie pamięcią w systemie operacyjnym

Podstawy Informatyki Układ sterujący

1.1 Definicja procesu

CompactPCI. PCI Industrial Computers Manufacturers Group (PICMG)

Technika Mikroprocesorowa

Architektura komputerów

Architektura systemów komputerowych. dr Artur Bartoszewski

Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Transkrypt:

Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych do realizacji wymiany informacji pomiędzy mikroprocesorem i pamięcią z jednej strony a układem wejścia/wyjścia z drugiej. Z bezpośrednim sterowaniem przez mikroprocesor Bezwarunkową operacją wejścia/wyjścia nazywamy taką operację, przy której mikroprocesor nie sprawdza gotowości układu wejścia/wyjścia do tej wymiany.

Z testowaniem stanu układu wejścia/wyjścia Przy realizacji operacji wejścia/wyjścia z testowaniem stanu układu wejścia/wyjścia, mikroprocesor sprawdza sygnał (np.. może to być określony bit) gotowości układu wejścia/wyjścia do tej wymiany. W przypadku potwierdzenia gotowości do wymiany przez układ jest ona realizowana.

Z przerwaniem programu Realizowane są przez 1. Sterownik przerwań Zadania sterownika przerwań pośredniczenie w przyjmowaniu zgłoszeń przerwań pomiędzy mikroprocesorem a innymi układami wejścia / wyjścia przyjmowanie zgłoszeń przerwań od wielu układów wejścia / wyjścia wybór spośród kilku jednocześnie zgłoszonych przerwań tego, które zostanie obsłużone zasygnalizowanie dokonanego wyboru przez podanie numeru (adresu) układu wejścia / wyjścia, z którym zostanie wykonana wymiana, a dokładniej, adresu programu obsługi przerwania realizującego tą wymianę po przyjęciu sygnałów zgłoszeń przerwań od układów wejścia / wyjścia i wyborze układu, który będzie obsłużony, wygenerowanie sygnału zgłoszenia przerwania bezpośrednio do mikroprocesora Schemat blokowy sterownika przerwań W celu umożliwienia przyjmowania kilku przerwań jednocześnie sterownik przerwań dysponuje określoną ilością wejść sygnałów zgłoszeń przerwań od układów wejścia / wyjścia. Sygnały te trafiają do rejestru zgłoszeń przerwań IRR (ang. Interrupt Request Register).

Zgłoszone przerwania mogą być maskowane, co oznacza, że mimo ich zgłoszenia nie będą przyjmowane. Operacja maskowania jest prosta i polega na podaniu sygnałów zgłoszeń przerwań na dwuwejściowe bramki AND. Na drugie wejście każdej z bramek podawany jest tak zwany bit maski. Jeżeli wartość tego bitu wynosi 1, przerwanie jest przyjmowane, w przypadku wartości 0 następuje zablokowanie przyjmowania przerwania. Bity maski umieszczane są w rejestrze maski IMR (ang. Interrupt Mask Register patrz schemat blokowy sterownika przerwań). Następnie przyjmowane przerwania poddawane są arbitrażowi. Arbitraż Operacja maskowania sygnałów przerwań Polega na wyborze spośród kilku zgłoszonych jednocześnie przerwań jednego, które zostanie w danym momencie obsłużone. Wymaga to ustalenia kryterium, według którego zostanie dokonany wybór. Priorytet Kryterium określające pewien stopień ważności, który przydzielamy każdemu sygnałowi zgłoszenia przerwania. Z wszystkich zgłoszonych i niezamaskowanych przerwań wybierane jest to, które posiada najwyższy priorytet. Priorytety przyporządkowywane są poszczególnym wejściom sterownika przerwań. W zależności od jego wersji mogą one być przyporządkowywane w sposób sztywny (na stałe, jak w komputerach typu IBM PC) lub mogą być programowane.

Programy obsługi przerwań Podobnie jak inne programy umieszczone są w pamięci operacyjnej i zaczynają się od określonego adresu. Wybór obsługi określonego przerwania polega na podaniu adresu pamięci, pod którym znajduje się początek programu obsługującego dane przerwanie. W komputerach typu IBM PC sterownik przerwań nie podaje bezpośrednio tego adresu, lecz numer pozycji w specjalnej tablicy umieszczonej w pamięci, zwanej tablicą wektorów przerwań. Dopiero elementy tej tablicy zawierają właściwe adresy początków programów obsługi przerwań. 2. Tablica wektorów przerwań Jest to strukturą umieszczoną w pamięci operacyjnej komputera. W komputerach typu IBM PC zaczyna się ona od adresu 0 i kończy na adresie 3FFh. Każda pozycja tej tablicy związana jest z dokładnie jednym przerwaniem i zawiera adres komórki pamięci, w której znajduje się początek (kod pierwszej instrukcji) programu obsługującego przerwanie. Po dokonaniu arbitrażu sterownik przerwań podaje na swoim wyjściu dany numer przerwania, które ma być obsłużone. Mikroprocesor pobiera ten numer i następnie przy jego pomocy odczytuje adres początku programu obsługi przerwania, który ma zostać wykonany. Adres ten, po zapamiętaniu informacji niezbędnych do powrotu do przerwanego programu głównego, jest ładowany do określonych rejestrów procesora, w tym licznika rozkazów. Powoduje to wykonanie skoku do programu obsługi przerwania umieszczonego pod adresem odczytanym z tablicy wektorów przerwań. Generowanie adresu POP przy użyciu tablicy wektorów przerwań

3. Metody zapamiętywania stanu mikroprocesora przy przejściu do obsługi przerwania Jednym z założeń przy obsłudze układów wejścia / wyjścia za pomocą przerwań jest kontynuowanie, po zakończeniu programu obsługi przerwania, programu głównego. Wymaga to przy przejściu do realizacji programu obsługi przerwania zapamiętania wszelkich informacji o programie głównym, potrzebnych do jego kontynuowania (od miejsca, w którym został on przerwany). Zwykle tylko część potrzebnej informacji zapamiętywana jest automatycznie. W przypadku procesorów Intel automatycznie zachowywana jest jedynie zawartość rejestru flagowego i adresu komórki zawierającej kod instrukcji, od której należy kontynuować program główny (jest to zawartość dwóch rejestrów: rejestru segmentu kodu i wskaźnika instrukcji). Informacje te są odkładane na stos. Pozostałe informacje muszą zostać zachowane w wyniku wykonania określonych instrukcji programu obsługi przerwania.

Z pośrednim sterowaniem przez mikroprocesor (DMA) W dotychczas opisanych operacjach wejścia / wyjścia ich realizacja przebiegała od początku do końca pod nadzorem mikroprocesora. Oznacza to, że wszystkie informacje, takie jak sygnały sterujące czy adresy są generowane przez mikroprocesor oraz że w wymianę informacji zaangażowane są pewne jego rejestry. Powoduje to, że w trakcie tej wymiany, a dokładniej w trakcie wykonywania programu realizującego daną operację wejścia / wyjścia, mikroprocesor nie może wykonywać żadnych innych czynności. Ten rodzaj operacji nazywany jest trybem PIO. Definicja Bezpośrednim dostępem do pamięci nazywamy operację wejścia / wyjścia inicjowaną jedynie przez mikroprocesor, który przekazuje sterowanie jej realizacją specjalnemu układowi zwanemu sterownikiem DMA. DMA (ang. Direct Memory Access) /bezpośredni dostęp do pamięci/. Przy operacji DMA, transmisja informacji przebiega pomiędzy układem wejścia / wyjścia a wydzielonym obszarem buforowym w pamięci. Przebieg operacji nadzoruje sterownik DMA, co oznacza, że generuje on wszystkie sygnały sterujące i adresy potrzebne do realizacji wymiany. W tym celu sterownik DMA przejmuje na czas wymiany informacji kontrolę nad magistralami, stając się zarządcą magistral (ang. bus master). Koncepcja operacji DMA

Etapy realizacji operacji DMA 1. Inicjacja operacji DMA Inicjacja operacji DMA polega na przekazaniu do sterownika DMA (w wyniku wykonania określonych instrukcji) następujących informacji: wielkość bloku do przetransmitowania (ilość bajtów lub słów) adres pierwszej komórki bufora w pamięci rodzaj operacji (zapis lub odczyt) sposób realizacji operacji DMA adres urządzenia wejścia / wyjścia 2. Realizacja operacji DMA W każdym przypadku przesyłany jest blok informacji o wielkości określonej jako jeden z parametrów operacji. Sposób realizacji jest jednak różny. Operację DMA możemy realizować w jednym z trzech trybów: transmisja pojedynczymi słowami o - sterownik DMA po sygnale gotowości od układu wejścia / wyjścia przejmuje sterowanie magistralami na czas jednego cyklu, realizuje operację wymiany, po czym oddaje kontrolę nad magistralami mikroprocesorowi, oczekując na kolejny sygnał gotowości od układu wejścia / wyjścia. Postępowanie takie jest kontynuowane aż do momentu przesłania całego bloku. transmisja blokowa o - jest realizowana w sposób ciągły aż do momentu przesłania całego bloku. Podczas jej realizacji mikroprocesor pozostaje cały czas w stanie zawieszenia, a kontrolę nad magistralami sprawuje sterownik DMA transmisja na żądanie o - przesyłanie kolejnych słów trwa w sposób nieprzerwany dopóty, dopóki jest aktywny sygnał DRQn z obsługiwanego układu wejścia / wyjścia. W przypadku, gdy przechodzi on w stan nieaktywny, transmisja jest zawieszana. 3. Zakończenie operacji Zakończenie operacji DMA sygnalizowane jest przez sterownik DMA aktywnym poziomem sygnału EOP (ang. End Of Proces). Sygnał ten jest przekazywany do obsługiwanego urządzenia, dzięki czemu urządzenie zgłasza przerwanie do procesora. Przerwanie to oznacza możliwość wykorzystania danych przez mikroprocesor w przypadku transmisji DMA do pamięci i przesłanie wszystkich danych z pamięci do urządzenia zewnętrznego w przypadku transmisji DMA do urządzenia.