Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

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

Podobne prezentacje


Prezentacja na temat: "Architektura komputerów Wykład nr 2: Procesor, cykl programu, przerwania, magistrala systemowa Piotr Bilski."— Zapis prezentacji:

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

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

3 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.

4 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.

5 Program vs. program sprzętowy X1X2X3X4X1X2X3X4 Y1Y2Y1Y2 X1X2X3X4X1X2X3X4 Y1Y2Y1Y2 0000: move : add : store : stop Sterowanie Hard-wired program

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

7 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)

8 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ą

9 Ilustracja cyklu pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA ADRESOWA Punkt wejścia MAR PC 100

10 Ilustracja cyklu pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA ODCZYT 100 MAGISTRALA DANYCH MAGISTRALA ADRESOWA MBR M(MAR) Move 104

11 Ilustracja cyklu pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA PC PC + 1 ODCZYT 100 MAGISTRALA DANYCH MAGISTRALA ADRESOWA Move

12 Ilustracja cyklu pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA ODCZYT 100 MAGISTRALA DANYCH MAGISTRALA ADRESOWA Move Move 104 IR MBR

13 Ilustracja cyklu pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA ODCZYT 100 MAGISTRALA DANYCH MAGISTRALA ADRESOWA Move Move 104 CU IR

14 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

15 Ilustracja cyklu wykonania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA 104 MAGISTRALA DANYCH MAGISTRALA ADRESOWA Move 104 ODCZYT MAR IR(104) 104 MBR M(104) AC MBR

16 Następny cykl pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA 101 MAGISTRALA DANYCH MAGISTRALA ADRESOWA 101 ODCZYT Add 105 MAR PC MBR M(101)

17 Następny cykl pobrania rozkazu MBRAC MAR PCIR CU ALU Adres Zawartość 100 Move Add Store Stop MAGISTRALA STERUJĄCA 101 MAGISTRALA DANYCH MAGISTRALA ADRESOWA 101 ODCZYT Add 105 IR MBR CU IR Add 105

18 Format rozkazu Kod operacji Adres Wielkość Znak Np. Move rozkaz argument

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

20 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

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

22 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

23 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

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

25 Przykład przypisania przerwań

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

27 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)

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

29 Przepustowość magistral

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

31 Płaska struktura magistrali (ISA)

32 Hierarchiczna struktura magistrali

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

34 Koordynacja synchroniczna

35 Koordynacja asynchroniczna Odczyt

36 Koordynacja asynchroniczna Zapis

37 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

38 Odczyt z magistrali PCI

39 Arbitraż magistrali PCI

40 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

41 Architektura komputera z PCI Express


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

Podobne prezentacje


Reklamy Google