43
Prezentacja multimedialna wspólfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Spolecznego w projekcie „Innowacyjna dydaktyka bez ograniczeń – zintegrowany rozwój Politechniki Lódzkiej – zarządzanie Uczelnią, Dr inż. Małgorzata Langer Wyklad jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja. Studia I stopnia Wyklad jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja. Studia I stopnia zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepelnosprawnych” 90-924 Łódź, ul. Żeromskiego 116, tel. 042 631 28 83 www.kapitalludzki.p.lodz.pl Zadanie nr 30 – Dostosowanie kierunku Elektronika i Telekomunikacja do potrzeb rynku pracy i gospodarki opartej na wiedzy Architektura komputerów Architektura komputerów

(prez7 [tryb zgodności])

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie

„Innowacyjna dydaktyka bez ograniczeń – zintegrowany rozwój Politechniki Łódzkiej –zarządzanie Uczelnią,

Dr inż. Małgorzata Langer

Wykład jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja.

Studia I stopnia

Wykład jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja.

Studia I stopnia

zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych”

90-924 Łódź, ul. Żeromskiego 116,tel. 042 631 28 83 www.kapitalludzki.p.lodz.pl

Zadanie nr 30 – Dostosowanie kierunku Elektronika i Telekomunikacja

do potrzeb rynku pracy i gospodarki opartej na wiedzy

Architektura komputerówArchitektura komputerów

Page 2: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Standardy magistraliStandardy magistrali

• Najważniejsze atrybuty magistrali, to: mechanizm transferu, obsługa przerwań oraz arbitraż

• Procesor jest zawsze szybszy od magistrali

• MULTIBUS I. (IEEE Standard 796) – istnieje od 1976 roku, wciąż bywa stosowany( od Intel 8080 do 80386; Z80, Motorola 68030), obsługuje systemy jedno- i wieloprocesorowe, 8 i 16 bitowe;

Architektura komputerów, część 6

2

obsługuje systemy jedno- i wieloprocesorowe, 8 i 16 bitowe; maksymalnie do 24 linii adresowych (ADR0 – ADR23); 16 linii danych (DAT0 – DAT15), (przy 8-bitowym procesorze wykorzystywane tylko pierwsze 8; DAT0 jest najmniej znaczącym bitem), 8 linii przerwań (również wektorowych); przesył danych asynchroniczny (zegar 10 MHz tylko do funkcji sterowania przydziałem, inicjalizacji, itd.); możliwa obsługa DMA, kilku uprawnień master; maksymalnie 19 MB/s

Page 3: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Przesył danych w Multibus IPrzesył danych w Multibus I

1. Master magistrali umieszcza adres pamięci lub I/O na liniach adresowych

2. Master magistrali generuje odpowiedni sygnał rozkazu3. Slave albo akceptuje dane do zapisu, albo umieszcza dane na

liniach danych do odczytu4. Slave wysyła sygnał potwierdzenia transferu (XACK) do master

Architektura komputerów, część 6

3

4. Slave wysyła sygnał potwierdzenia transferu (XACK) do master5. Master magistrali usuwa sygnał z linii rozkazów i czyści linie adresu

i danych

Ponieważ przesył jest asynchroniczny i występuje ryzyko „zawieszenia”, wprowadza się czas czekania (bus timeout), umożliwiający przerwanie cyklu w przypadku błędu (zawsze większy niż 1 ms)

Page 4: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Multibus IIMultibus II

• Standard powstał na zamówienie konsorcjum, adoptując standard IEEE 1101, licencje Simensa format Eurocard; wdrożony przez Intel w pojedynczym układzie VLSI jako MPC – message passing coprocessor; specyfikacja znajduje się w IEEE/ANSI 1296

• 32 bitowy, z kontrolą parzystości, 40 Mb/s; adresowanie „geograficzne” – z lokalizacją wejść i urządzeń przy rozruchu, co eliminuje potrzebę rekonfiguracji; praca niezależna i równoległa

Architektura komputerów, część 6

4

eliminuje potrzebę rekonfiguracji; praca niezależna i równoległa (dziewięć 32 bitowych buforów pracujących na zasadzie FIFO i zintegrowanych z MPC)

• Specyfikacja Multibus II stosuje PAKIETY danych; kolejny pakiet wyrusza z kolejną krawędzią taktu zegarowego (10 MHz) – każdy może przebywać w magistrali nie dłużej niż 1 µs

• Dwa mechanizmy arbitrażu: równy – fairness, lub z priorytetem; po każdym pakiecie obsługiwany jest następny czekający adres

Page 5: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Multibus IIMultibus II

• Standardowe powtarzanie w przypadku błędu parzystości – 16 razy, później następuje przerwanie do głównego CPU komputera

• Ponieważ istnieją dokładne specyfikacje, wielu producentów produkuje kompatybilne magistrale w standardzie Multibus II

Architektura komputerów, część 6

5

produkuje kompatybilne magistrale w standardzie Multibus II

• Poszczególne wersje wzbogacane są o dodatkowe funkcje i algorytmy; obowiązuje poszerzona norma IEE/ANSI 1296.2

Page 6: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

VMEbusVMEbus

• Założenia projektowe magistrali i interfejsu

- zezwolenie na komunikację pomiędzy urządzeniami bez przeszkadzania innym wewnętrznym czynnościom urządzeń podłączonych do magistrali- elektryczne i mechaniczne parametry systemów dopuszczonych do podłączenia do magistrali

Architektura komputerów, część 6

6

do podłączenia do magistrali- dokładnie podane protokoły definiujące współpracę urządzeń- dokładne zdefiniowanie wszystkich nazw, parametrów i wymagań opisujących protokół systemu- łatwość zaprojektowania kompatybilnych urządzeń- interfejs nie powinien stanowić ograniczenia dla możliwości urządzeń

Page 7: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

VMEbusVMEbus

• Magistrala danych posiada 32 linie danych, 32 linie adresu 9 podstawowych cykli transferu (read, block read, write, block write, read-modify-write, address-only, unaligned write, interupt, acknowledge); blok jest ograniczony do 256 bajtów

• Przeznaczona do systemów wieloprocesorowych• Zegar 16 MHz

Architektura komputerów, część 6

7

• Zegar 16 MHz• Obsługa również sygnałów z otwartą pętlą (open-loop) – czyli

transmisji – nie ma wtedy sygnałów potwierdzających

Page 8: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

USB – Universal Serial Bus – wersje 1.0 ;2.0; 3,0USB – Universal Serial Bus – wersje 1.0 ;2.0; 3,0

• ZALETY- Łatwość dołączenia do PC urządzeń peryferyjnych;- Umożliwienie dołączania nowych klas urządzeń, które zwiększają

możliwości komputera- Niski koszt uzyskania szybkości transmisji do 12Mb/s (USB1.1) ;

480Mb/s (USB2.0); ~5 GB/s (3.0)

Architektura komputerów, część 6

8

480Mb/s (USB2.0); ~5 GB/s (3.0)- Pełne dostosowanie do przesyłania danych w czasie rzeczywistym

dla głosu, dźwięku i skompresowanych sekwencji wideo;- Elastyczny protokół z mieszaniem transmisji danych (w czasie

rzeczywistym) i komunikatów (asynchronicznej);- Standardowy interfejs, nadającego się do szybkiego

zaimplementowania w istniejących i nowych produktach;- Niski pobór energii, możliwe ładowanie akumulatorów urządzenia

Page 9: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

USB – Tryby transmisjiUSB – Tryby transmisji

• Isochronous Transfer – transfer zapewniający prawidłową synchronizację multimediów, przy ściśle gwarantowanym, jednakowym czasie opóźnień. Nie ma retransmisji w przypadku błędów, nie ma mechanizmów handshakingu

• Bulk Transfer – wielkie bloki danych; transmisja nie ma priorytetu, automatyczna retransmisja w przypadku błędów, mechanizmy

Architektura komputerów, część 6

9

handshakingu• Interrupt Transfer – podobnie, jak ‘bulk’ plus okresowe

sprawdzanie gotowości podłączonego urządzenia (polling)• Control Transfer – do sterowania, kontroli, konfiguracji,

WYSYŁANIE KOMEND DO URZĄDZENIA INTERFEJSOWEGO• (od wersji 3.0) – przesył „SuperSpeed ” – do 5,0 Gbit/s

Page 10: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Ogólne specyfikacje USBOgólne specyfikacje USB

• Wersje 1.0 (od roku 1996) i 2.0 – 4 przewody (2 – zasilanie „+ 5V” (1) i masa (4); 2 – dane (3 i 4))

• Wersja USB 3.0 (specyfikacja w 2008 roku) – 4 przewody dodatkowe dla technologii szybkiego przesyłu (razem 8); dodatkowy tryb transmisji

• Trzy rozmiary wtyczka – gniazdo (standardowy, mini i mikro) o dwóch wrsjach – „A” (płaski); „B” – styki po obu stronach wtyczki

• USB obsługuje do 16 wyjść i 16 wejść (Standard USB przewiduje • USB obsługuje do 16 wyjść i 16 wejść (Standard USB przewiduje jednoczesne obsługiwanie do 30 końcówek, dwie są zarezerwowane), co pozwala na jednoczesne niezależne transfery (np. obraz z kamery i niezależnie nagrywanie, lub odczytywanie dźwięku).

• Urządzenia różnych producentów mieszczą się w znormalizowanych klasach funkcjonalności (od 00 do FF) – np. klasa 03Hex – to tzw HumanInterface Device – (mysz, klawiatura); 07Hex – drukarka; 08Hex – USB flashdrive, itd.

Architektura komputerów, część 7

10

Page 11: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Urządzenie podłączone do interfejsu USB musiUrządzenie podłączone do interfejsu USB musi

• Rozumieć protokół USB• Odpowiadać na standardowe komendy i wykonywać operacje, takie, jak

konfiguracja, zerowanie;• Zawierać standardowe informacje opisujące swoje możliwości.

W opisie muszą być przynajmniej:- dane na temat urządzenia (Device Descriptor) umożliwiające załadowanie odpowiedniego sterownika- konfiguracji (jeżeli urządzenie może pracować w kiklu konfiguracjach –

Architektura komputerów, część 6

11

załadowanie odpowiedniego sterownika- konfiguracji (jeżeli urządzenie może pracować w kiklu konfiguracjach –to informacja o każdej z nich); np. możliwość pracy ze zmniejszonym poborem mocy i pełnym poborem- interfejsu w tym samym czasie mogą być czynne więcej niż 1 interfejs (w czasie gry z CD-ROM, jednocześnie sterownik do muzyki, grafiki i danych)- punktów końcowych USB jest szeregowe, więc punkty końcowe czekają w FIFO)oraz ewentualnie STRING DESCRIPTOR – urządzenie podaje nazwę własną

Page 12: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Zasilanie urządzeń USBZasilanie urządzeń USB

• Urządzenia USB mogą być zasilane z portu, bądź z własnego zasilacza.• O źródle zasilania urządzenia informują podczas procedury konfiguracyjnej • Napięcie zasilania dostarczane z magistrali ma ograniczoną wydajność.• Urządzenia wymuszające większy pobór prądu, niż jest określony w

specyfikacji, nie zostaną skonfigurowane przez hosta.• Bezpośrednio po podłączeniu (przed konfiguracją), urządzenia nie mogą

pobierać prądu większego niż 100 mA.

Architektura komputerów, część 6

12

pobierać prądu większego niż 100 mA.• Po zakończeniu procedur konfiguracyjnych urządzenie może pobierać

maksymalny prąd o wartości 500 mA.• W stanie uśpienia (opcję przechodzenia w ten stan muszą posiadać

wszystkie urządzenia) pobór prądu nie może przekroczyć 0,5 mA (2,5mA).• Powrót ze stanu uśpienia następuje poprzez wprowadzenie linii magistrali w

stan aktywny na czas 10 ms, ale nie dłuższy niż 15 ms, a następnie powrót do stanu jałowego

Page 13: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

FireWire (IEEE 1394)FireWire (IEEE 1394)

Magistrala szeregowa, zastrzeżona przez Apple Inc. – używana „w zbliżonej formie” pod różnymi nazwami dla uniknięcia kosztów

i.Link (Sony)

Lynx (Texas Instruments)

Architektura komputerów, część 7

13

DV link

Złącze posiada zasilanie w wersji 6-przewodowej (masę i +30V), lub tylko 4 przewody do transmisji

FireWire zarządza magistralą – można łączyć urządzenia bez pośrednictwa komputera (np. aparat z drukarką)

Page 14: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Procesory I/OProcesory I/O

• FEP – front-end processor; najczęściej programowalny, co pozwala dostosować interfejs do konfiguracji i możliwości systemu

• Sprzężenie CPU i FEP następuje albo poprzez system dysków:- FEP zapisuje dane na dysku, skąd pobierane są do przetwarzania przez CPU; lub CPU zapisuje dane na dysku i powiadamia FEP o pozwoleniu na pobranie – „OBCHODZI SIĘ” PROBLEM RÓŻNYCH

Architektura komputerów, część 6

14

CZĘSTOTLIWOŚCI,

albo dzieloną pamięć (shared memory) – każdy FEP jest urządzeniem DMA; wymaga skomplikowanej obsługi handshaking; generalnie szybsze; wydziela się obszar pamięci do komunikacji

Page 15: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Schematy połączeń CPU - FEPSchematy połączeń CPU - FEP

System dzielonej pamięci

System dzielonej pamięci

Architektura komputerów, część 6

15

System sprzężony przez dysk

System sprzężony przez dysk

Page 16: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Komunikacja szeregowaKomunikacja szeregowa

• Najczęściej asynchroniczna (tzn. następny bajt zaczyna się w dowolnym momencie, ale po bicie startu kolejne bity muszą być przesyłane z określoną częstotliwością i po nich następują przynajmniej dwa bity stopu); dla uniknięcia błędów, można używać kodów samosynchronizujących się (kolejne bity są jednoznacznie rozróżniane)

Architektura komputerów, część 6

16

• Standard RS-232• Modemy; kodowanie na fali nośnej (amplitudą, częstotliwością,

fazą)• Kilka znanych protokołów komunikacji szeregowej, np.:

- BSC – binary synchronous control- SDLA – synchronous data-link control- HDLC – high-level data-link control

Page 17: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Typowe urządzenia I/OTypowe urządzenia I/O

• Urządzenia zawsze aktywne (online), jak wyświetlacz (monitor), klawiatura, myszka, mikrofon, głośniki

• Urządzenia uaktywniane wywołaniem (off-line), np. drukarki, skanery

Architektura komputerów, część 6

17

skanery• Urządzenia przechowujące (zapisujące i czytające) dane, jak taśmy,

dyski, pamięci typu DRAM• Urządzenia zbierające dane w czasie rzeczywistym – najczęściej do

komputera podłączany jest konwerter A/C (wejście), C/A (wyjście)

Page 18: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Prawo Amdahl’aPrawo Amdahl’a

• Całkowite przyśpieszenie (zwiększenie wydajności) systemu komputerowego przy zainstalowaniu nowego urządzenia wynosi:

kffS /)1(1+−=

Architektura komputerów, część 6

18

kffS /)1( +−=S – zwiększenie wydajności całego systemuf – ułamek pracy wykonywanej przez szybszy, nowy elementk – współczynnik przyśpieszenia nowego elementu

S – zwiększenie wydajności całego systemuf – ułamek pracy wykonywanej przez szybszy, nowy elementk – współczynnik przyśpieszenia nowego elementu

Page 19: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

ProcesorProcesor

• Rodzaje procesorów i systemów komputerowych• Zestawy instrukcji• Tryby adresowania

Architektura komputerów, część 7

19

• Tryby adresowania• Rejestry i pamięć• Procesor RISC versus CISC• Przykłady

Page 20: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Ogólny podział systemów komputerowychOgólny podział systemów komputerowych

• Superkomputer (raczej nieprzenośny, cena ok. 1000 razy większa niż mikrokomputera, zastosowania naukowe i specyficzne, wymagające dużej mocy przetwarzania)

• Komputer wielkiej skali (mainframe) (raczej nieprzenośny, współczynnik ceny – ok. 100, szybkość przetwarzania znacznie mniejsza, zastosowania ogólne)

• Minikomputer (współczynnik ceny – ok. 10, szybszy od mainframe,

Architektura komputerów, część 7

20

• Minikomputer (współczynnik ceny – ok. 10, szybszy od mainframe, do zastosowań ogólnych lub dedykowanych)

• Mikrokomputer (inaczej mikrokontroler, najczęściej jeden układ scalony, do zastosowań dedykowanych, chociaż może być również do zastosowań ogólnych)

• Typowa długość słowa – 64 bity; choć wciąż stosowane są 32 i 16 a nawet 8 i 4 bitowe

Page 21: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Format danychFormat danych

• Liczby stałoprzecinkowe - Fixed point - dla liczby całkowitej (przecinek jest ustalony po skrajnej, prawej stronie – stąd nazwa)

bit znaku (0 dla plusa, 1 dla liczby ujemnej)(n-1) bitów wartości (n – liczba bitów w słowie)liczby ujemne zapisywane są najczęściej w postaci uzupełnienia do dwóch

Architektura komputerów, część 7

21

dwóch

• Zapis dziesi ętny (decimal mode) – BCD; 4 bity na cyfrę (czyli 2 cyfry w bajcie); najczęściej zostają konwertowane do postaci binarnej i przetwarzane (liczone) w arytmetyce dwójkowej a potem ponownie przeliczane na notację dziesiętną; czasem stosowana jest oddzielna arytmetyka dla liczb dziesiętnych

Page 22: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Format danychFormat danych

• Łańcuchy literowe (character string) – typowo 1 bajt na literę (znak), najczęściej w kodzie ASCII, czasem EBCDIC

• Liczby zmiennoprzecinkowe (floating-point numbers), zapisywane w różnych kodach, ale przy zachowaniu formatu:

bit znaku

Architektura komputerów, część 7

22

pole wykładnikapole ułamka:

24 bity – pojedyncza precyzja56 bitów – podwójna precyzja

• Przykład konwersji: (23,5)10 = (10111.1)2 = (0.101111) x (2)5

Page 23: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

EndienEndien

• Istnieją dwa sposoby na przedstawienie wielobajtowej danej w architekturze o adresowanych bajtach.

• Tryb little Endien – najmniej znaczący bajt danych jest zapisywany w bajcie o najniższym adresie i kolejne pod lokalizacjami o wyższych adresach

• Tryb big Endien – odwrotnie, od najwyższego, do najniższego

Architektura komputerów, część 7

23

• Tryb big Endien – odwrotnie, od najwyższego, do najniższego adresu

• Przykład: liczba (56789ABC)16 wymaga 4 bajtów do zapisu, o adresach np. 0, 1, 2, 3Zapis dla obu formatów: 0 1 2 3litle Endien BC 9A 78 56big Endien 56 78 9A BC

Page 24: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

EndienEndien

• Oczywiście istotne jest uwzględnienie formatu przy przetwarzaniu wielobajtowych liczb, zapisywaniu czy odczycie z pliku

• Serie Intel stosują little Endien (ale nowsze procesory mają funkcję odwracania do swojego formatu za pośrednictwem rejestru, jeżeli jakaś aplikacja zapisuje inaczej)

• Serie Motorola stosują big Endien

Architektura komputerów, część 7

24

• Serie Motorola stosują big Endien• Aplikacje takie, jak JPEG, Adobe Photoshop – big Endien• Wszystkie aplikacje typowe dla Windows (BMP, GIF) – little Endien• Microsoft WAV, TIF – oba formaty

Page 25: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Zapisywanie w rejestrach i pamięciZapisywanie w rejestrach i pamięci

• Stosowanie akumulatora do każdej procedury staje się wąskim gardłem, jeżeli jest to tylko jeden rejestr, chociaż dostęp do zapisu w akumulatorze jest znacznie szybszy niż do pamięci

• Do procesora włącza się więc wiele rejestrów, o ogólnym przeznaczeniu – GPR (general purpose register), nie tylko jako akumulatory; najczęściej zorganizowanych w stosy

Architektura komputerów, część 7

25

• GPR może być wykorzystany dowolnie, również jako PSR (processor status register), rejestr indeksowy, itd.

• Dostęp do zapisu w GPR jest znacznie szybszy niż do pamięci

Page 26: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Zestaw instrukcjiZestaw instrukcji

• Zależy od przeznaczenia maszyny; w systemach ogólnego przeznaczenia zawsze są zaimplementowane:- podstawowe działania arytmetyczne (dla notacji binarnej, dziesiętnej, lub oddzielne dla obu) – ADD, SUBTRACT, MULTIPLY, DIVIDE, NEGATE, INCREMENT, DECREMENT- funkcje logiczne AND, OR, NOT, EXCLUSIVE-OR, COMPARE, TEST

Architektura komputerów, część 7

26

TEST - SHIFT i CIRCULATION (z bitem przeniesienia lub bez niego) umożliwiające dostęp do poszczególnych bitów i bajtów danych- instrukcje sterujące: warunkowy i bezwarunkowy stop, wywoływanie podprogramów i procedur, obsługa I/O we właściwym trybie

• - makroinstrukcje (np. przenoszenie bloku danych)

Page 27: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Ogólny podział procesorówOgólny podział procesorów

• Ze względu na to, gdzie znajduje się operand:

• Memory-to-Memory: Wszystkie operandy znajdują się w pamięci i na nich wykonywane są operacje a wyniki pozostają również w pamięci – NIE MA POTRZEBY NA UŻYCIE REJESTRÓW

• Register-to-Memory: Przynajmniej jeden operand jest w rejestrze a

Architektura komputerów, część 7

27

• Register-to-Memory: Przynajmniej jeden operand jest w rejestrze a reszta w pamięci

• Load/Store: Operand musi zostać załadowany do rejestru przed wykonaniem operacji, jeżeli potrzeba – wynik zostaje przechowywany w pamięci

Page 28: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Długość i szybkość wykonywania instrukcjiDługość i szybkość wykonywania instrukcji

• Jest funkcją ilości operandów• Odwołania do pamięci spowalniają wykonywanie instrukcji (ilość

adresów, a także instrukcje memory-to-memory)• Indeksowanie i pośrednie adresowanie spowalnia wykonywanie

instrukcji• Jeżeli instrukcja jest dłuższa niż słowo – wielokrotnie powtarzana

Architektura komputerów, część 7

28

• Jeżeli instrukcja jest dłuższa niż słowo – wielokrotnie powtarzana musi być faza „pobierz”

• Ze względu na ilość adresów (operandów) organizacje dzielimy na- trójadresowe- dwuadresowe- jednoadresowe- zeroadresowe

Page 29: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

PorównaniePorównanie

• A,B,C – lokalizacje w pamięci• Maszyna trójadresowa:

ADD A,B,C M[C] �M[A] + M[B]SUB A,B,C M[C] �M[A] - M[B] MPY A,B,C M[C] �M[A] . M[B] DIV A,B,C M[C] �M[A] / M[B] zawsze trzy dostępy do pamięci (przy każdej instrukcji)

Architektura komputerów, część 7

29

zawsze trzy dostępy do pamięci (przy każdej instrukcji)• Maszyna dwuadresowa:

ADD A,B M[A] �M[A] + M[B]SUB A,B M[A] �M[A] - M[B] MPY A,B M[A] �M[A] . M[B] DIV A,B M[A] �M[A] / M[B] pierwszy operand jest tracony, ale przy każdej instrukcji tylko 2 odwołania

Page 30: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

PorównaniePorównanie

• Maszyna jednoadresowa:ADD A ACC � ACC + M[A]SUB A ACC � ACC - M[A] MPY A ACC � ACC. M[A] DIV A ACC � ACC / M[A]LOAD A ACC � M[A] STORE A M[A] � ACC

Architektura komputerów, część 7

30

STORE A M[A] � ACC• Maszyna zeroadresowa:

ADD SL � SL + TL,POPSUB SL � SL - TL,POP MPY SL � SL . TL,POPDIV SL � SL / TL,POPLOAD A PUSH,TL � M[A] STORE A M[A] � TL,POP

SL (second level) – drugi poziom a TL (top level) – górny poziom stosu LIFO (last-in, first-out)

SL (second level) – drugi poziom a TL (top level) – górny poziom stosu LIFO (last-in, first-out)

Page 31: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Program do obliczenia F=A.B+C.D (dla Intel 8080)Program do obliczenia F=A.B+C.D (dla Intel 8080)

• Trzyadresowy:MPY A,B,AMPY C,D,CADD A,C,F 3 pobrania (fetch), 9 wykonań (execute)

• Dwuadresowy:MPY A,BMPY C,DADD A,C

Architektura komputerów, część 7

31

ADD A,CSUB F,FADD F,A 5 pobrań, 15 wykonań

• JednoadresowyLOAD A MPY B STORE F LOAD C MPY D ADD F STORE F

7 pobrań, 7 wykonań• Zeroadresowy (z założeniem, że istnieje sprzętowy stos)

LOAD A LOAD B MPY LOAD C LOAD D MPY ADD STORE F8 pobrań, 5 wykonań

Page 32: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Format instrukcjiFormat instrukcji

• Proste procesory stosują format instrukcji z ustalonymi polami, inne dostosowują długość instrukcji do zmiennych długości pól adresowych, jeszcze inne różnicują nawet pola wewnątrz instrukcji

Architektura komputerów, część 7

32

• Przykład: 32 bitowy MC68020 (również magistrala 32 bitowa) posiada 16 bitowe (1 słowo) instrukcje w trybie rejestrów a instrukcje z odwołaniem do pamięci zajmują nawet 5 słów

Page 33: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Tryby adresowaniaTryby adresowania

• Wcześniej omawialiśmy: bezpośredni, pośredni, indeksowany (pre-indeksowany, post-indeksowany, lub oba tryby)

• W praktyce, poszczególne procesory, wraz z różnorodną architekturą, stosują różne odmiany i wersje trybów podstawowych, z których najpopularniejsze, to:

Architektura komputerów, część 7

33

- Adresowanie natychmiastowe (Immediate Addressing) –operand jest częścią instrukcji; pole adresowe podaje raczej już sam operand a nie jego adres (zbliżone do pierwszych historycznie tzw. ‘literal adressing’ – czyli „rozwiązywania” adresów przez asembler i wpisywania treści komórki)

Page 34: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Adresowanie stronicowe (Paged Addressing)Adresowanie stronicowe (Paged Addressing)

• Zakłada się, że pamięć składa się z wielu bloków o jednakowej wielkości, tzw. STRON

• Adres pamięci składa się z numeru strony i przesunięcia (offset), czyli lokalnego adresu na stronie

• Jeżeli strona jest wystarczająco długa, w danym programie wszystkie odwołania mieszczą się na jednej stronie i wystarczy podawać tylko bity offsetu.

Architektura komputerów, część 7

34

offsetu.• Nawet, jeżeli używa się wielu stron, to dopóki jest ważna, w rejestrze

przechowuje się numer danej strony, w instrukcji podaje się odwołanie do rejestru i offset

• Strona pierwsza (czyli z numerem 0) wykorzystywana jest przeważnie do przechowywania najczęściej wykorzystywanych danych i wskaźników

• SCHEMAT STRONICOWANIA WYKORZYSTYWANY JEST RÓWNIEŻW WIRTUALNYCH PAMIĘCIACH

Page 35: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Adresowanie w oparciu o rejestr bazowy (Base – Register)Adresowanie w oparciu o rejestr bazowy (Base – Register)

• Jeden z rejestrów CPU (dowolny GPR) używany jest jako rejestr bazowy

• Początkowy adres programu zostaje do niego wpisany w pierwszym kroku wykonywania programu

• Każdy adres, do którego w programie następuje odwołanie jest przesunięciem – offsetem od zawartości rejestru bazowego

Architektura komputerów, część 7

35

przesunięciem – offsetem od zawartości rejestru bazowego• Instrukcja podaje więc identyfikację rejestru bazowego i offset• Nie ma problemu z alokacją programu, bo załadowanie adresu jest

częścią programu, czyli nic się nie zmienia• Schemat stosowany we wielu seriach IBM (np. 370) i INTEL (tu

nazywane trybem segmentowym)

Page 36: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Adresowanie względne (Relative Addressing)Adresowanie względne (Relative Addressing)

• Offset (dodatni, lub ujemny) jest częścią instrukcji• Dodaje się go (czyli czasem odejmuje) do aktualnej wartości licznika

programu (PC), aby znaleźć efektywny adres• Tryb jest szczególnie przydatny przy zastosowaniu przy instrukcjach

wyboru (rozgałęzionych)• Ponieważ offset jest zazwyczaj małą wartością, zmniejsza się ilość

Architektura komputerów, część 7

36

• Ponieważ offset jest zazwyczaj małą wartością, zmniejsza się ilość bitów w porównaniu z pełnym adresem pamięci

• Tryb implementowany np. w Mostek 6502, DEC PDP-11

Page 37: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Adresowanie domyślne (Implicit, Implied)Adresowanie domyślne (Implicit, Implied)

• W zależności od rodzaju instrukcji, miejsce przechowywania operandów jest domyślne:- w instrukcjach zeroadresowych – operandy znajdują się na dwóch górnych poziomach stosu- w jednoadresowych – jeden z operandów znajduje się w rejestrze, pełniącym funkcję akumulatora

Architektura komputerów, część 7

37

• Dokładne aplikacje różnią się w poszczególnych procesorach

• WIĘKSZOŚĆ PROCESORÓW POZWALA NA ZASTOSOWANIE RÓŻNYCH TRYBÓW ADRESOWANIA

Page 38: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Zestaw instrukcji – warunek ortogonalnościZestaw instrukcji – warunek ortogonalności

• Ortogonalność zestawu instrukcji dowolnego procesora oznacza, że zestaw instrukcji jest jednocześnie:

- niezale żny – czyli nie zawiera żadnych zbytecznych instrukcji; każda instrukcja dokonuje unikalnej czynności (opisuje unikalną funkcję) i nie powiela innej instrukcji

Architektura komputerów, część 7

38

- spójny – każdy dowolny operand może zostać użyty z każdym dowolnym kodem operacji (opcode); każdy dopuszczony w zestawie tryb adresowania może zostać spójnie użyty do wszystkich operandów

Page 39: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

RISC a CISCRISC a CISC

• ROZWINIĘCIE AKRONIMU RISC: Reduced Instruction Set Computer

• Historycznie, na przełomie lat 70-80, w początkach technologii scalonych układów, procesor zajmował w chipie około 60% powierzchni i niewiele zostawało na dodatkowe funkcje w hardwareRozwiązaniem był procesor z prostszymi jednostkami sterującymi

Architektura komputerów, część 7

39

• CISC: Complex Instruction Set Computer• CISC posiada relatywnie wielką liczbę instrukcji, skomplikowanych i

czasochłonnych, wiele zaimplementowanych trybów adresowych itd. a to z kolei wymusza skomplikowaną jednostkę sterującą do zdekodowania i wykonania tych instrukcji i powoduje, że wcale nie musi być szybszy od RISC a na pewno zwiększa prawdopodobieństwo błędów

Page 40: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Atrybuty systemów RISCAtrybuty systemów RISC

• Ponieważ nie istnieje formalna definicja a termin „skomplikowany”, czy „liczny” zmienia znaczenie wraz z rozwojem technologii, jako nieformalną definicję przyjęto atrybuty, którymi charakteryzuje się system ze zredukowanym zestawem instrukcji:- relatywnie mała liczba instrukcji- mała ilość zaimplementowanych trybów adresowania- mała ilość formatów instrukcji

Architektura komputerów, część 7

40

- mała ilość formatów instrukcji- pojedynczy cykl wykonywania każdej instrukcji- dostęp do pamięci wyłącznie poprzez instrukcje load/store- duży zestaw rejestrów w CPU; najlepiej, żeby większość operacji była wykonywana w trybie register-to-register- ułatwiona i optymalizowana kompilacja dla operacji programowanych w HLL

• Jednostka sterująca może być wykonana sprzętowo, lub jako zaprogramowany mikrokontroler

Page 41: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Systemy RISCSystemy RISC

• Stosowane we wielu zastosowaniach o specyficznych funkcjach, tzw. high-performance applications (zastosowania o wysokiej sprawności); jako bloki w systemach wieloprocesorowych, wbudowane sterowniki (embedded controllers); są szybkie

• W chipie RISC powierzchnia zajmowana przez jednostkę sterującą wynosi kilka lub kilkanaście procent (i jest miejsce np. na wiele

Architektura komputerów, część 7

41

rejestrów); w CISC zawsze powyżej 50 • Wadą RISC jest konieczność dłuższych programów (wszystkie

funkcje trzeba rozpisać na proste instrukcje), które zajmują więcej pamięci, a wcześniej wydłużają czas kompilacji

Page 42: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Niektóre dodatkowe rozwiązaniaNiektóre dodatkowe rozwiązania

• SIMD – simple instruction, multiple data – wprowadzone dla obsługi multimediów – instrukcje w technologii MMX (od PENTIUM II)

• MESI (modified, exclusive, shared, invalid) – protokół do obsługi pamięci podręcznej

• SEC (single edge connect) – obudowa zawierająca rdzeń procesora i pamięć podręczną, montowane powierzchniowo bezpośrednio do

Architektura komputerów, część 7

42

i pamięć podręczną, montowane powierzchniowo bezpośrednio do wnętrza obudowy, która potem jest łączona pojedynczym taśmowym interfejsem z płytą główną (mother board)

• RRF (retirement register file) – przy równoległym, wielo-potokowym przetwarzaniu – czyli wykonywaniu równoległym instrukcji, niektóre cząstkowe wyniki muszą czekać, aby później wstawić je w odpowiedniej kolejności

Page 43: (prez7 [tryb zgodności])

Prezentacja multimedialna współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie

„Innowacyjna dydaktyka bez ograniczeń – zintegrowany rozwój Politechniki Łódzkiej –zarządzanie Uczelnią,

Dr inż. Małgorzata Langer

KONIEC CZĘŚCI SIÓDMEJKONIEC CZĘŚCI SIÓDMEJ

zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych”

90-924 Łódź, ul. Żeromskiego 116,tel. 042 631 28 83 www.kapitalludzki.p.lodz.pl

Zadanie nr 30 – Dostosowanie kierunku Elektronika i Telekomunikacja

do potrzeb rynku pracy i gospodarki opartej na wiedzy

Architektura komputerówArchitektura komputerów