architektura komputerów w. 9 Wejście/wyjście

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

Hardware mikrokontrolera X51

Architektura komputerów

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

Działanie systemu operacyjnego

Działanie systemu operacyjnego

Mikroprocesor Operacje wejścia / wyjścia

CompactPCI. PCI Industrial Computers Manufacturers Group (PICMG)

Układy wejścia/wyjścia

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

Architektura komputera

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

LEKCJA TEMAT: Zasada działania komputera.

Działanie systemu operacyjnego

Standard transmisji równoległej LPT Centronics

Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

Działanie systemu operacyjnego

Architektura systemów komputerowych. dr Artur Bartoszewski

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Architektura komputerów

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

Architektura mikrokontrolera MCS51

Architektura mikrokontrolera MCS51

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

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

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

MIKROPROCESORY architektura i programowanie

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Organizacja typowego mikroprocesora

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Urządzenia wejścia-wyjścia

IEEE Centronics

Architektura komputerów

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

Mikroprocesory i Mikrosterowniki Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

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

Struktura i działanie jednostki centralnej

Architektura Systemów Komputerowych

Przerwania, polling, timery - wykład 9

URZĄDZENIA WEJŚCIA-WYJŚCIA

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

XMEGA. Warsztaty CHIP Rok akademicki 2014/2015

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

Mikroprocesor Intel 8088 (8086)

architektura komputerów w 1 1

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

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Struktura systemów komputerowych

MIKROKONTROLERY I MIKROPROCESORY

Architektura komputerów

Technika Mikroprocesorowa

Metody obsługi zdarzeń

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]

Wykład Mikrosystemy Elektroniczne 1

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

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

(Rysunek z książki T.Starecki. Mikokontrolery jednoukładowe rodziny 51. NOZOMI W-wa 1996)

ARCHITEKTURA PROCESORA,

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

2. Architektura mikrokontrolerów PIC16F8x... 13

Programowanie Mikrokontrolerów

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych

Architektura komputerów

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

Budowa systemów komputerowych

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

Technika mikroprocesorowa I Wykład 2

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

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN

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

Prezentacja systemu RTLinux

Architektura systemu komputerowego

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Wbudowane układy komunikacyjne cz. 1 Wykład 10

MIKROPROCESORY architektura i programowanie

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

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

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)

Budowa i zasada działania komputera. dr Artur Bartoszewski

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

Przerwania w systemie mikroprocesorowym. Obsługa urządzeo wejścia/wyjścia

Zerowanie mikroprocesora

Instytut Teleinformatyki

Komunikacja z urzadzeniami zewnętrznymi

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

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

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

Magistrala systemowa (System Bus)

Systemy wbudowane - wykład 8. Dla zabicia czasu Notes. I 2 C aka IIC aka TWI. Notes. Notes. Notes. Przemek Błaśkiewicz.

MIKROKONTROLERY - MAGISTRALE SZEREGOWE

Urządzenia zewnętrzne

Przykładowe pytania DSP 1

Wykład 2. Struktury systemów komputerowych. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Transkrypt:

architektura komputerów w. 9 Wejście/wyjście Model komputera John von Neumann (1903-1957) CPU ALU Jednostka sterująca wejście wyjście Pamięć 4 podstawowe funkcje: przetwarzanie, przechowywanie, przekazywanie informacji oraz automatyczne sterowanie swego działania architektura komputerów w 9 1

Urządzenia zewnętrzne Różne typy klasyfikacji urządzenia we/wy pamięci urządzenia komunikacyjne urządzenia pomiarowe, wykonawcze i konwertery urządzenia znakowe - komunikacja poprzez instrukcje (rozkazy) we/wy urządzenia blokowe - komunikacja przez komendy kanałowe urządzenia jednokierunkowe urządzenia dwukierunkowe Urządzenia zewnętrzne. Współpraca i sterowanie Tworzenie dowolnych konfiguracji użytkowych wymaga standaryzacji sposobu komunikowania się urządzeń i JC. Zespół ustalonych reguł łączenia, wymagań logicznych, elektrycznych, konstrukcyjnych i proceduralnych nazywany jest (zależnie od sposobu przyłączenia) standardem magistrali danego typu lub standardowym interfejsem. Standard logiczny - liczba sygnałów w magistrali, ich funkcji i harmonogramu czynności Standard elektryczny- poziomy napięć, czasy narastania i opadania sygnałów, tolerancje, obciążalność. Standard konstrukcyjny - typ złączy, rozmieszczenie gniazd i sygnałów, typ kabli. Standard proceduralny (protokół) - harmonogram, zależności czasowe i funkcjonalne sygnałów i operacji magistrali. architektura komputerów w 9 2

Interface magistrali 12/27/2017 Magistrale Klasyfikacja: architektura: równoległe multipleksowane szeregowe lokalizacja: lokalne systemowe we/wy funkcje ogólnego przeznaczenia specjalizowane struktura połączeń zorientowane na zasoby zorientowane na funkcje Magistrale Klasyfikacja: architektura: równoległe multipleksowane szeregowe lokalizacja: lokalne systemowe we/wy funkcje ogólnego przeznaczenia specjalizowane struktura połączeń zorientowane na zasoby zorientowane na funkcje MAGISTRALA dane adresy funkcje zgłoszenie zezwolenie architektura komputerów w 9 3

Magistrale. Zarządzanie magistralą. Magistralą zarządza w jednej chwili jeden zarządca (bus master). Dla magistral dzielonych takich busmasterów może być wielu. W takiej sytuacji wymagany jest arbitraż według ustalonych reguł Żądanie dostępu arbitraż Oczekiwanie na przydział magistrali transfer Zakończenie i zwolnienie magistrali Standard Interface Odra 1300 Magistrale. Przykłady. Liczba linii Linii danych Typ Linii adreso wych Typ 34 8+p Jednokierunkowa 8+p Przełączana z szyną danych Unibus (PDP11) 56 16 Dwukierunkowa 18 Intel 8085 33 8 Dwukierunkowa, trójstanowa 8+8 Przełączana, trójstanowa Z80 38 8 Dwukierunkowa, 16 Trójstanowa trójstanowa ISA 75 16 Dwukierunkowa, 24+4 Trójstanowa (PC) trójstanowa PCI 45 32 Dwukierunkowa, trójstanowa 32 Przełączana z szyną danych M68000 60 16 Dwukierunkowa, 23 Trójstanowa trójstanowa VME BUS 110 32 31 (Motorola) I 2 C 2 (dane i zegar) 1 Szeregowa OC 1 Ta sama co danych architektura komputerów w 9 4

Protokół magistrali Definicja Zespół reguł, wg których realizowane są transakcje na magistrali nazywany jest protokołem magistrali Protokół definiuje zarówno sposób przesyłania (poziomy, aktywne zbocza, zależności) jak i relacje czasowe pomiędzy poszczególnymi sygnałami (a właściwie ich zboczami), których zachowanie jest niezbędne dla prawidłowego przebiegu transferu. Protokół magistrali Protokół synchroniczny. DR - Data Ready DA - Data Acknowledgement architektura komputerów w 9 5

Protokół magistrali Protokół asynchroniczny - przesłanie niepowiązane. DR - Data Ready DA - Data Acknowledgement DE - Data Error Protokół magistrali Protokół asynchroniczny - przesłanie częściowo powiązane. DR - Data Ready DA - Data Acknowledgement DE - Data Error architektura komputerów w 9 6

Protokół magistrali Protokół asynchroniczny - przesłanie z potwierdzeniem (handshaking) powiązanie czterozboczowe. DR - Data Ready DA - Data Acknowledgement DE - Data Error Urządzenia zewnętrzne. Interfejsy i magistrale zewnętrzne CENTRONICS 5 trybów pracy: Compatibility Mode (200kB/s, jednokierunkowy) Nibble Mode (4 bity, 100kB/s, dwukierunkowy,) Byte Mode (200kB/s, dwukierunkowy) Enhanced Parallel Port (2,3MB/s, dwukierunkowy) Extendet Capabilities Port ( dwukierunkowy) architektura komputerów w 9 7

Urządzenia zewnętrzne. Interfejsy i magistrale zewnętrzne CENTRONICS Compatibility Mode (200kB/s, jednokierunkowy) ~STR Strobe (min. 0,5µs) ~ACK Acknowledge (ok. 5µs) BSY Busy (drukarka zajęta, off-line, w stanie inicjacji, błąd) PAP Paper Out (brak papieru) SEL Select (drukarka w stanie on-line) ~ERR Error (brak papieru,stan off-line, inny) Urządzenia zewnętrzne. Interfejsy i magistrale zewnętrzne out in in out CENTRONICS Compatibility Mode Typowa transmisja znaku architektura komputerów w 9 8

Urządzenia zewnętrzne. Interfejsy i magistrale zewnętrzne out out in out CENTRONICS EPP Mode Typowa transmisja znaku lub adresu ISA. Magistrala ISA Max. częst.pracy 8,33Mhz architektura komputerów w 9 9

ISA. BCLK: Bus Clock, 33% Duty Cycle. Frequency Varies. 4.77 to 8 MHz typical. 8.3 MHz is specified as the maximum, but many systems allow this clock to be set to 12 MHz and higher. RESDRV: This signal goes low when the machine is powered up. Driving it low will force a system reset. SBHE#: System Bus High Enable, tristate. Indicates a 16-bit data transfer. This may also indicate an 8-bit transfer using the upper half of the data bus (if an odd address is present). BALE: Bus Address Latch Enable. The address bus is latched on the rising edge of this signal. The address on the SA bus is valid from the falling edge of BALE to the end of the bus cycle. AEN: Address Enable. This is asserted when a DMAC has control of the bus. This prevents an I/O device from responding to the I/O command lines during a DMA transfer. ISA. SA0-SA19: System Address Lines, tri-state. SD0-SD15: System Data lines, or Standard Data Lines. They are bidirectional and tri-state. On most systems, the data lines float high when not driven. IORC#: I/O Read Command line. IOWC#: I/O Write Command line. MRDC#: Memory Read Command line. MWTC#: Memory Write Command line. IO16#: I/O size 16. Asserted by a slave when it can transfer data using all 16 bits. Otherwise only the lower 8 bits will be used for both odd and even addresses. M16#: Memory size 16 bit. Same function as IO16#. architektura komputerów w 9 10

ISA. CHRDY: Channel Ready. Setting this low prevents the default ready timer from timing may then set it high again when it is ready to end the bus cycle. Holding this line low for too long (15 microseconds, typically) can prevent RAM refresh cycles on some systems. NOWS#: No Wait State. Used to shorten the number of wait states generated by the default ready timer. This causes the bus cycle to end more quickly, since wait states will not be inserted. Most systems will ignore NOWS# if CHRDY is active (low). However, this may cause problems with some bus controllers, and both signals should not be active simultaneously. ISA I/O Read. architektura komputerów w 9 11

ISA I/O Write. ISA. A default number of wait states are normally inserted (eg. 4 for I/O) Number of wait states can be increased using CHRDY Number of wait states can be decreased using NOWS# Only 16-bit memory devices can complete a bus cycle at zero wait states architektura komputerów w 9 12

Magistrale. Przykłady. Magistrala PCI Max. częst.pracy 66Mhz Magistrale. Przykłady. Magistrala PCI architektura komputerów w 9 13

Magistrale. Przykłady. Protokół magistrali. Przykład - PCI architektura komputerów w 9 14

Protokół magistrali. Przykład I 2 C Protokół magistrali. Przykład I 2 C architektura komputerów w 9 15

Protokół magistrali. Przykład I 2 C Bit transfer START & STOP Transmisja z potwierdzeniem Protokół magistrali. Przykład I 2 C architektura komputerów w 9 16

Protokół magistrali. Przykład I 2 C Potwierdzenie na I 2 C Protokół magistrali. Przykład I 2 C procedura arbitrażu architektura komputerów w 9 17

Protokół magistrali. Przykład I 2 C Transfer master slave Protokół magistrali. Przykład I 2 C Master czyta z modułu slave architektura komputerów w 9 18

Urządzenia zewnętrzne. Współpraca i sterowanie adresowanie i wybranie urządzenia wejście wyjście odwzorowane w przestrzeni adresowej pamięci (np. Motorola6809) osobna przestrzeń adresowa we/wy Przesyłanie danych poprzez rejestry procesora programowe z wykorzystaniem systemu przerwań bezpośrednia komunikacja z pamięcią (DMA) Urządzenia zewnętrzne. Współpraca i sterowanie Przesyłanie danych poprzez rejestry procesora programowe Czytaj stan urządzenia Urządzenie gotowe? T Prześlij znak architektura komputerów w 9 19

Urządzenia zewnętrzne. Współpraca i sterowanie Przesyłanie danych poprzez rejestry procesora z wykorzystaniem systemu przerwań Urządzenie gotowe Zgłoszenie przerwania Procesor Przerwanie wykonywanego programu zeskładowanie rejestrów i PC wyliczenie adresu do załadowania do PC załadowanie PC Procedura obsługi przerwania Kontynuacja Odtworzenie stanu procesora i powrót System przerwań. Przerwania zgłaszane jest poprzez wysterowanie odpowiedniego wejścia procesora. Przerwania generowane sa poza procesorem (z wyjątkiem przerwania programowego) Zgłoszenie przerwania jest asynchroniczne względem wykonywanego strumienia instrukcji Służą do sygnalizacji zdarzeń istotnych dla systemu operacyjnego (zakończenie operacji wejscia-wyjścia, zakończenie odmierzanego okresu czasu itp..) architektura komputerów w 9 20

System przerwań. Obsługa. Przerwania zgłaszane jest poprzez wysterowanie odpowiedniego wejścia procesora. Przyjęcie i obsługa przerwania : stwierdzenie czy możliwe jest przerwanie aktualnie wykonywanych czynności (hardware) zablokowanie przejmowania przerwań (lub tylko przerwań o wyższym priorytecie) (hardware) dokończenie wykonywania bieżącego rozkazu (hardware) sygnalizacja przyjęcia przerwania (hardware) zachowanie (na stosie ) PSW i PC (hardware) załadowanie do PC adresu procedury obsługi przerwania (hardware) zachowanie informacji o stanie przerwanego procesu (software) wykonanie programu obsługi przerwania (software) odtworzenie stanu przerwanego procesu (software) odblokowanie przyjmowania przerwań (software) (teraz lub wewnątrz procedury obsługi przerwania) pobranie ze stosu i odtworzenie zawartości PSW i PC System przerwań. Obsługa. architektura komputerów w 9 21

System przerwań Przerwania: programowe instrukcja przerwania programowanego (niemaskowalnego) sprzętowe zgłaszane przez ustawienie poziomu na odpowiednich wyprowadzeniach procesora lub kontrolera przerwań System przerwań Przerwania: maskowalne niemaskowalne architektura komputerów w 9 22

Przerwania - organizacja systemu. Wiele linii przerwań odpytywanie programowe wektorowe System przerwań Priorytety: przypisane do linii przerwań wynikające z kolejności w łańcuchu (daisy chain) Linie danych magistarli procesor Sterownik 1 IEO Sterownik 2 IEO Sterownik n INT INTA IEI arbitraż przez sterownik przerwań IEI IEI Przerwania: niemaskowalne -wejście NMI System przerwań. Przykład - Z80 maskowalne. Procesor posiada programowo ustawianą maski IFF1 warunkującą przyjęcie przerwania Przyjęcie przerwania - przesłanie PC na stos, cd zależny od trybu. Tryby przerwań (ustawiane programowo): Mode 0: JS wystawia na szynę danych kod instrukcji, jaka ma być wykonana w wyniku przerwania Mode 1: JC wykonuje restart od adresu 38H Mode 2: adres procedury do uruchomienia: architektura komputerów w 9 23

System przerwań. Przykład - Z80 System przerwań. Przykład - I8086 I8086 posiada jedną linię żądania przerwania (INTR) i jedną potwierdzenia przyjęcia przerwania. używa tablicy wektorów przerwań (256 adresów 4 bajtowych - rejestr CS i IC umieszczanej w pamięci od adresu 0000:0000 Przerwania obsługiwane są przez sterownik 8259A Przyjęcie przerwania: umieszczenie na stosie rejestru FLAGS, IC, CS zerowanie bitów w rejestrze stanu : TF (praca krokowa) i IF (zezwolenie na przerwanie wystawienie INTA do sterownika, sterownik podaje w odpowiedzi na linię danych wektor zgłoszonego przerwania wykonanie CALL według dostarczonego przez sterownik numeru wektora architektura komputerów w 9 24

System przerwań. Przykład - sterownik 8259A Sterownik posiada 8 linii, na które mogą być zgłaszane przerwania System może obsłużyć do 64 przerwań poprzez połączenie kaskadowe sterowników przerwania przyjmowane są wg jednego z trzech schematów priorytetów priorytet przypisany do linii zgłoszeń (linia 0 ma najwyższy priorytet) rotacyjny - przerwanie, którego obsługa została właśnie zakończona uzyskuje najniższy priorytet ustawiany software owo - Sterownik posiada 8 linii, na które mogą być zgłaszane przerwania System może obsłużyć do 64 przerwań poprzez połączenie kaskadowe sterowników System przerwań. Przykład - sterownik 8259A architektura komputerów w 9 25

System przerwań. Przykład - sterownik 8259A Sterownik posiada 8 linii, na które mogą być zgłaszane przerwania System może obsłużyć do 64 przerwań poprzez połączenie kaskadowe sterowników System przerwań. 8051 architektura komputerów w 9 26

System przerwań. 8051 Źródło przerwania wskaźnik Adres wektora Zewnętrzne 0 IE0 03H TIMER T0 TF0 0BH Zewnętrzne 1 IE1 13H TIMER T1 TF1 1BH Port szeregowy RI+TI 23H IE0, IE1, TF0, TF1 - rejestr TCON RI, TI rejestr SCON System przerwań. 8051 Rejestr TCON Rejestr IE Struktura i sposób funkcjonowania wskaźników przerwań i bitów zezwolenia na przerwanie architektura komputerów w 9 27

System przerwań. 8051 Rejestr TCON TFx ustawiany gdy przepełnia się licznik odpowiedniego bloku; zerowany programowo lub automatycznie przy wejście do procedury obsługi przerwania TRx ustawiany na 1 włącza pracę timera; stan 0 zatrzymuje timer ale nie zeruje liczników IEx ustawiany hardware owo po zgłoszeniu przerwania od INTx\; zerowany sprzętowo w momencie przejścia do obsługi przerwania ITx programowe ustawienie/wyzerowanie powoduje wybór sposobu zgłaszania przerwań zewnętrznych - opadającym zboczem lub niskim poziomem sygnału INTx\ System przerwań. 8051 Rejestr IE w SFR o adresie 0A8H maskuje przerwania 0 blokuje przerwanie, 1 zezwala na przyjęcie 1 architektura komputerów w 9 28

System przerwań. 8051 Słowo IP w SFR o adresie 0B8H przypisuje priorytet do przerwań Odpowiedni bit ustawiony na 0 ustawia priorytet niski, bit równy 1 ustawia priorytet wysoki W przypadku jednoczesnego zgłoszenia przerwania o niskim i wysokim priorytecie najpierw obsługiwane jest to o priorytecie wysokim, a później o niższym Obsługa przerwania o niskim priorytecie może zostać przerwana przez przerwanie o wyższym priorytecie Jeżeli jednocześnie zgłoszone są przerwania o identycznym priorytecie to kolejność przyjęcia zgłoszeń jest następująca: X0,T0, X1, T1, S Pułapki Generowane przez procesor Jako efekt żądania usługi SO ze strony programu użytkowego wywoływanej przez przerwanie programowe (np.. Instrukcja SYSCALL w MIPS) Jako efekt stwierdzonego błędu niektórych instrukcji programu użytkowego ADD, SUB procesora MIPS w przypadku nadmiaru DIV, IDIV, AAM procesora x86 w przypadku nadmiaru W przypadku ustawionego trybu śledzenia generowana po wykonaniu każdej instrukcji architektura komputerów w 9 29

Błedy Generowane przeważnie przez procesor (CPU lub MMU) Służą do sygnalizacji niepoprawnego funkcjonowania oprogramowania lub sprzętu. Próba wykonania instrukcji o nieokreślonym kodzie Naruszenie zasad ochrony procesora lub pamięci Przekroczenie wartożci granicznej segmentu stosu Itd.. Wykorzystywane do realizacji pamięci wirtualnej Bład segmentu brak wymaganego segmentu w pamieci. Błedy architektura komputerów w 9 30

Błedy Wyjątki (Pentium) Pojawienie się większej ilości wyjątków wymaga rozstrzygnięcia, który zostanie obsłużony w pierwszej kolejności. Priorytety (na poziomie procesora) są następujące: Klasa1: Pułapka w poprzednim rozkazie (wektor nr1) Klasa2: Przerwania zewnętrzne (2, 32-255) Klasa3: Błędy pobierania następnego rozkazu (3,14) Klasa 4: Błędy dekodowania następnego rozkazu (6,7) Klasa 5: Błędy wykonania rozkazu (0,4,5,8,10-14,16,17) Na poziomie SO o priorytecie danego wyjątku określa pilność jego obsługi. architektura komputerów w 9 31

Wyjątki Na poziomie SO o priorytecie danego wyjątku decyduje pilność jego obsługi. Wyjątki Obsługa wyjątku rozpoczyna się od identyfikacji Jeżeli źródłem wyjątku jest procesor (błąd, pułapka), przyczyna jest znana i identyfikacja jest niepotrzebna Obsługa wyjątku wymaga zapamiętania kontekstu w celu powrotu do przerwanego programu lub wyświetlenia komunikatu o błędzie Zapamiętywana jest wartość nextpc w przypadku przerwania lub pułapki śledzenia currentpc w przypadku błędu wykonania instrukcji lub pułapki sygnalizującej błąd wykonania. Powrót, jeżeli nastąpi, to ponownie do tej samej instrukcji. Obsługa wyjątku realizowana jest zawsze na poziomie systemowym. Wymagane jest zapamiętanie poziomu zaufania z chwili pojawienia się wyjątku (poziom systemowy lub użytkownika) architektura komputerów w 9 32

Wyjątki Powrót z procedury obsługi wyjątku nie zawsze jest możliwy Błąd ochrony wymaga zamknięcia procesu Powrót polega na odtworzeniu stanu zapamiętanego podczas inicjowania obsługi wyjątku W praktyce SO obsługę wyjątku kończy przełączeniem procesu. Powrót następuje do innego strumienia instrukcji niż ten, który został przerwany Urządzenia zewnętrzne. Współpraca i sterowanie Funkcje magistrali (interfejsu) adresowanie i wybranie urządzenia przesyłanie danych przesyłanie informacji o stanie zespołów, z jakich składa się urządzenie sterowanie czynnościami zespołów, z jakich składa się urządzenie przenoszenie do JC reakcji urządzenia na polecenia synchronizacja przesłań architektura komputerów w 9 33

Interface magistrali 12/27/2017 Urządzenia zewnętrzne. Współpraca i sterowanie Ze względu na różnorodność sposobów funkcjonowania urządzeń zewnętrznych, sposobów i szybkości transmisji stosuje się urządzenia pośredniczące adoptujące interface urządzenia do magistrali (interfejsu) komputera Interface urządzenia zgłoszenie Dekoder adresu Rejestry danych Rejestry stanu urządzenie MAGISTRALA dane adresy funkcje zezwolenie Sterowanie przerwań JS sterowanie urządzeniem Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji procesor pamięć magistrala DMA Układ we/wy urządzenie sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) architektura komputerów w 9 34

Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji procesor A pamięć magistrala DMA Układ we/wy urządzenie sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji procesor A pamięć magistrala DMA Układ we/wy urządzenie B sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) architektura komputerów w 9 35

Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji procesor C A pamięć magistrala DMA Układ we/wy urządzenie B sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji procesor C A pamięć magistrala DMA Układ we/wy urządzenie D B sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) architektura komputerów w 9 36

Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji procesor pamięć magistrala A C E DMA Układ we/wy urządzenie D B sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) Urządzenia zewnętrzne. Współpraca i sterowanie Bezpośrednia komunikacja z pamięcią - kanał DMA. Tryby pracy: tryb przesyłania porcjowego (burst transfer mode) magistrala zajmowana jest na czas całego transferu tryb przechwyconych cykli (cycle stealing mode) magistrala zajmowana jest na czas transmisji 1 porcji (bajtu lub słowa) informacji pamięć magistrala procesor Fa Fd A C E DMA Układ we/wy urządzenie D B sterowanie: A - przygotowanie DMA, B - żądanie dostępu, C - żądanie dostępu do magistrali, D- zwolnienie magistrali, E - potwierdzenie dostępu, F - dostęp do pamięci ( a - adres, d - dane) architektura komputerów w 9 37

Sterownik dysku z układem DMA Kanał DMA. Układ kontrolera I8237 HRQ HLDA architektura komputerów w 9 38

Kanał DMA. Układ kontrolera I8237 Kanał DMA. Układ kontrolera I8237 architektura komputerów w 9 39