Architektura komputerów

Slides:



Advertisements
Podobne prezentacje
Wykonał : Marcin Sparniuk
Advertisements

Moduł 2. Struktury Systemów Komputerowych
Architektura szynowa systemu mikroprocesorowego szyna danych szyna sterująca szyna adresowa µP szyna danych szyna adresowa D7,..., D1, D0 A15,..., A1,
Wykład 5 Przerwania w systemie SAB80C537 dr inż. Andrzej Przybył
Magistrale.
Podstawowe składniki funkcjonalne procesora i ich rola.
Alokacja pamięci struct Test {char c; int n; double x; } st1; st1 cnxcnx
ARCHITEKTURA KOMPUTERÓW definicja komputera PROCESOR PAMIĘĆ OPERACYJNA URZĄDZENIA ZEWNĘTRZNE.
Wykład nr 1: Wprowadzenie. Pojęcia podstawowe
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Systemy operacyjne.
Magistrala & mostki PN/PD
Schemat blokowy komputera
Systemy operacyjne Bibliografia:
Komputer, procesor, rozkaz.
Temat nr 10: System przerwań
Temat : Części komputera
ZARZĄDZANIE PROCESAMI
Wieloprocesowy system operacyjny dla komputerów ATARI XL/XE
Budowa Komputera.
Mikroprocesory i mikrokontrolery
ZESTAW KOMPUTEROWY.
Układy wejścia-wyjścia
ogólne pojęcia struktury
Komputer a system komputerowy
Programowalny układ we-wy szeregowego 8251
Architektura komputerów
przykładowy 8-bitowy mikroprocesor uniwersalny CISC
Układy sekwencyjne pojęcia podstawowe.
Architektura komputerów
Opracowanie: Maria W ą sik. Pierwsze komputery budowano w celu rozwi ą zywania konkretnych problemów. Gdy pojawiało si ę nowe zadanie, nale ż ało przebudowa.
Wykonał Piotr Jakubowski 1ET
ARCHTEKTURA KOMPUTERA
Płyta główna. Magistrale I/O
Systemy operacyjne.
Zasada działania komputera
Elementy składowe komputera
Budowa komputera.
MAGISTRALE: - ISA - EISA - PCI - SCSI GARSKI KAROL ŁOSIK PAWEŁ.
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Architektura komputerów
Architektura systemów komputerowych (jesień 2013)
Budowa i rodzaje procesorów.
Mikroprocesory.
Mikroprocesory mgr inż. Sylwia Glińska.
Przerwanie ang. interrupt.
Buforowanie D e f i n i c j a.
Koncepcja procesu Zadanie i proces. Definicja procesu Process – to program w trakcie wykonywania; wykonanie procesu musi przebiegać w sposób sekwencyjny.
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
PROCESORY (C) Wiesław Sornat.
Architektura PC.
Budowa komputera ProProgramer.
Elementy zestawu komputerowego
W ą t e k (lekki proces) thread.
T.10.Magistrala.
Procesor – charakterystyka elementów systemu. Parametry procesora.
i inne urządzenia elektroniczne
BUDOWA I ZASADA DZIAŁANIA
Procesor, pamięć, przerwania, WE/WY, …
Wyk. Tomasz Marciniuk ZASADA DZIAŁANIA KOMPUTERA Operacje I/O pod nadzorem procesora Urządzenia Techniki Komputerowej.
Struktura wewnętrzna mikrokontrolera zamkniętego
Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte.
Architektura systemów komputerowych (jesień 2015) Wykład 5 Budowa i działanie komputera dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki.
Tryby adresowania i formaty rozkazów mikroprocesora
POLITECHNIKA POZNAŃSKA
mysz drukarka Jednostka centralna monitor klawiatura.
Płyta główna. Magistrale I/O
Schemat blokowy komputera
POLITECHNIKA POZNAŃSKA
Mikrokontrolery System przerwań
Zapis prezentacji:

Architektura komputerów Wykład nr 2: Procesor, cykl programu, przerwania, magistrala systemowa Piotr Bilski

urządzenia wejścia-wyjścia Maszyna von Neumanna Jednostka centralna (CPU) urządzenia wejścia-wyjścia AC I/O AR ALU MBR I/O BR Magistrala wewn. MAR pamięć główna PC IR CU

Pojęcie programu Programem nazywamy zbiór instrukcji, których wykonanie w określonej kolejności zapewnia odpowiednie przetworzenie informacji. Instrukcja (rozkaz) jest słowem maszynowym zawierającym informację o wykonywanej operacji, miejscu w pamięci gdzie znajdują się operandy, rezultat i następny rozkaz.

Wymagania odnośnie systemu komputerowego przetwarzającego program (von Neumann) System komputerowy musi: Mieć skończoną i funkcjonalnie pełną listę rozkazów; Mieć możliwość wprowadzenia programu do systemu komputerowego poprzez urządzenia zewnętrzne i przechowywać instrukcje w pamięci w sposób identyczny jak danych; Dane i instrukcje powinny być jednakowo dostępne dla procesora (poprzez jednoznaczne adresy w pamięci); Informacja jest przetwarzana dzięki sekwencyjnemu odczytywaniu instrukcji z pamięci komputera i wykonywaniu tych instrukcji w procesorze.

Program vs. „program” sprzętowy X1 X2 X3 X4 Y1 Y2 X1 X2 X3 X4 Y1 Y2 Sterowanie Hard-wired program 0000: move 4 0001: add 5 0010: store 6 0011: stop

Działanie komputera Obsługa przerwań Pobranie rozkazu Cykl przerwania Obsługa przerwań Cykl pobierania Cykl wykonania TAK NIE Pobranie rozkazu Wykonanie rozkazu Dopuszcza przerwania? START STOP

Język przesłań rejestrowych Symbole złożone z wielkich liter oznaczają zawartość M – pamięć A, MAR itd. – rejestr  przepisanie ( ) – adres 0:7 – zakres bitów słowa pamięci lub rejestru, którego dotyczy operacja Np.: MAR  PC MBR  M(MAR)

Cykl pobrania rozkazu Licznik programu (PC) przechowuje adres następnej instrukcji do pobrania (na początku jest to tzw. punkt wejścia) Procesor pobiera instrukcję spod adresu wskazywanego przez PC Wartość PC zwiększana jest o 1 (chyba że trzeba inaczej – np. skok) Instrukcja ładowana jest to rejestru rozkazów (IR) Procesor dekoduje instrukcję i wykonuje operację z nią związaną

Ilustracja cyklu pobrania rozkazu Punkt wejścia AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU MAR  PC CU PC IR 100 MAR MAGISTRALA ADRESOWA

Ilustracja cyklu pobrania rozkazu MAGISTRALA DANYCH MBR  M(MAR) Move 104 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU CU ODCZYT PC IR MAGISTRALA STERUJĄCA MAR 100 MAGISTRALA ADRESOWA

Ilustracja cyklu pobrania rozkazu MAGISTRALA DANYCH Move 104 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU PC  PC + 1 CU ODCZYT PC IR MAGISTRALA STERUJĄCA 101 MAR 100 MAGISTRALA ADRESOWA

Ilustracja cyklu pobrania rozkazu MAGISTRALA DANYCH Move 104 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU IR  MBR Move 104 CU ODCZYT PC IR MAGISTRALA STERUJĄCA 101 MAR 100 MAGISTRALA ADRESOWA

Ilustracja cyklu pobrania rozkazu MAGISTRALA DANYCH Move 104 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU CU  IR Move 104 CU ODCZYT PC IR MAGISTRALA STERUJĄCA 101 MAR 100 MAGISTRALA ADRESOWA

Cykl wykonania rozkazu Procesor – pamięć transfer danych pomiędzy CPU a pamięcią Procesor – wejście/wyjście transfer danych pomiędzy CPU a modułem wejścia/wyjścia Przetwarzanie danych działania arytmetyczne lub logiczne na danych Sterowanie zmiana kolejności wykonania operacji (np. skok) Kombinacja powyższych

Ilustracja cyklu wykonania rozkazu MAGISTRALA DANYCH MBR  M(104) 3 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 AC  MBR ALU MAR  IR(104) Move 104 ODCZYT PC IR CU MAGISTRALA STERUJĄCA 101 MAR 104 104 MAGISTRALA ADRESOWA

Następny cykl pobrania rozkazu MAGISTRALA DANYCH MBR  M(101) Add 105 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU MAR  PC ODCZYT PC IR CU MAGISTRALA STERUJĄCA 101 MAR 101 MAGISTRALA ADRESOWA

Następny cykl pobrania rozkazu MAGISTRALA DANYCH Add 105 AC MBR Adres Zawartość Move 104 Add 105 Store 106 Stop 3 5 ALU IR  MBR CU  IR Add 105 ODCZYT PC IR CU MAGISTRALA STERUJĄCA 101 MAR 101 MAGISTRALA ADRESOWA

Format rozkazu rozkaz argument Np. Move 104 - 0101000001101000 0 3 4 15 Kod operacji Adres 0 1 15 Wielkość Znak rozkaz argument Np. Move 104 - 0101000001101000

Graf stanów cyklu rozkazu Pobranie argumentu Obliczenie adresu arg. Pobranie rozkazu Wiele argumentów Wiele wyników Dekodo-wanie rozkazu Operacja na danych Obliczenie adresu rozkazu Obliczenie adresu arg. Zapisanie argumentu Brak przerwań Powrót do danych Rozkaz wykonany, pobierz następny Sprawdzenie przerwań Obsługa przerwań

Przerwania Mechanizm pozwalający innym komponentom zakłócenie normalnego porządku przetwarzania Programowe np. przepełnienie, dzielenie przez zero Zegarowe Generowane przez wewnętrzny zegar procesora Używane przy wywłaszczaniu procesów Wejścia/wyjścia Z kontrolera wejścia/wyjścia Awaria sprzętu Błąd parzystości pamięci

Idea zastosowania przerwań Program użytkownika Program wejścia / wyjścia Program użytkownika Program wejścia / wyjścia 1 1 4 4 ZAPIS ZAPIS Rozkaz we-wy Rozkaz we-wy 2a @ 2b 2 Program obsługi przerwań 5 ZAPIS ZAPIS Stop 3a @ 3b 5 3 Stop

Cykl przerwania Procesor cyklicznie sprawdza, czy nie wystąpiło przerwanie Wskazane jest to przez sygnał przerwania Jeśli nie ma przerwania, pobierany jest następny rozkaz Jeśli jest przerwanie: Zawiesza się wykonanie wykonywanego programu Zapisywany jest jego kontekst Licznik programu ustawiany jest na adres pierwszej instrukcji programu obsługi przerwań Przerwanie jest przetwarzanie Następuje przywrócenie poprzedniego kontekstu i powraca się do wykonywania programu użytkownika

Przerwania wielokrotne Istnieją dwie metody obsługi przerwań wielokrotnych Przerwania zablokowane Procesor ignoruje inne przerwania podczas obsługi przerwania Przerwania czekają w kolejce, po zakończeniu obsługi przerwania sprawdza się, czy nie ma następnego Przerwania są obsługiwane w kolejności wystąpienia Priorytety Obsługa przerwania o niskim priorytecie może zostać zakłócona przez przerwanie o wyższym priorytecie Po zakończeniu obsługi przerwania o wyższym priorytecie następuje powrót do obsługi przerwania o niższym priorytecie

Ilustracja obsługi przerwań wielokrotnych Obsługa sekwencyjna Obsługa priorytetowa Program użytkowy Przerwanie nr 1 Program użytkowy Przerwanie nr 1 Przerwanie nr 2 Przerwanie nr 2

Przykład przypisania przerwań

Przepływ danych w modułach komputerowych odczyt zapis PAMIĘĆ ADRES N słów DANE DANE odczyt zapis MODUŁ WEJŚCIA / WYJŚCIA Dane wewn. ADRES Dane zewn. Dane wewn. M portów Przerwania Dane zewn. ROZKAZY ADRES PROCESOR DANE DANE Przerwania Przerwania

Magistrala Jest to droga zapewniająca komunikację z urządzeniami Składa się z wielu dróg komunikacyjnych (linii) trzech rodzajów: danych, adresowych i sterowania Szerokość magistrali to maksymalna liczba bitów, którą można przesłać jednocześnie (równa liczbie linii)

Najważniejsze magistrale ISA (1985) PCI (1993) AGP 1x/2x (1997-1998) AGP 4x (1999) AGP 8x (2002) PCI Express (2004) SCSI (1979) Magistrale przemysłowe (PROFIBUS, IEC-625)

Przepustowość magistral

Działanie magistrali Komunikacja między dwoma modułami Wysyłanie danych: Uzyskanie dostępu do magistrali Przekazanie danych Odbieranie danych Przekazanie informacji o potrzebie uzyskania danych (poprzez linie sterujące) Oczekiwanie na przesłanie danych

„Płaska” struktura magistrali (ISA)

Hierarchiczna struktura magistrali

Rodzaje magistral Przeznaczenie Specjalistyczna Multipleksowana Metoda arbitrażu Scentralizowana Rozproszona Koordynacja czasowa Synchroniczna Asynchroniczna

Koordynacja synchroniczna

Koordynacja asynchroniczna Odczyt

Koordynacja asynchroniczna Zapis

Magistrala PCI Zaproponowana przez Intela w 1990 r. Częstotliwość pracy: 66 MHz Pracuje w konfiguracji 32 lub 64-bitowej Komunikacja z procesorem i pamięcią przez mosty (bridge), możliwa struktura hierarchiczna Obowiązujące linie sygnałowe: systemowe (np. zegar, reset) adresowe i danych (32) sterowania interfejsu arbitrażowe (indywidualne!) informacja o błędach

Odczyt z magistrali PCI

Arbitraż magistrali PCI

Magistrala PCI Express Połączenia typu punkt-punkt Wprowadzenie przełączników (switch) Częstotliwość taktowania: 2,5 GHz Skalowalna przepustowość magistrali – od 1x do 32x (w zależności od liczby wykorzystywanych kanałów/slotów) Prędkość 250 MB/s dla pojedynczego slotu (dla karty graficznej 16x PCIe jest to 4 GB/s) Wsteczna zgodność z PCI

Architektura komputera z PCI Express