Wykład III. Procesor. Studia Podyplomowe INFORMATYKA Architektura komputerów

Podobne dokumenty
Architektura systemów komputerowych

Budowa i zasada działania komputera. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski

LEKCJA TEMAT: Współczesne procesory.

Procesory. Schemat budowy procesora

Budowa komputera Komputer computer computare

Architektura systemów komputerowych. dr Artur Bartoszewski

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

Budowa Mikrokomputera

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

Organizacja typowego mikroprocesora

LEKCJA TEMAT: Zasada działania komputera.

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

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

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

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

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Architektura systemów komputerowych. dr Artur Bartoszewski

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

Magistrala systemowa (System Bus)

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Architektura komputerów

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

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

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

MIKROKONTROLERY I MIKROPROCESORY

Architektura komputerów

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

Architektura komputerów

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Architektura komputerów

Architektura mikroprocesorów TEO 2009/2010

ARCHITEKTURA PROCESORA,

Projektowanie. Projektowanie mikroprocesorów

architektura komputerów w. 7 Cache

architektura komputerów w. 4 Realizacja sterowania

Struktura i działanie jednostki centralnej

Wykład 2. Mikrokontrolery z rdzeniami ARM

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

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

Mikroprocesor Operacje wejścia / wyjścia

Architektura komputera

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Architektura mikroprocesorów z rdzeniem ColdFire

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Programowanie Niskopoziomowe

Podstawy Techniki Mikroprocesorowej

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

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

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

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

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Architektura komputerów

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Mikrokontrolery 8 bit - wprowadzenie

PRZEWODNIK PO PRZEDMIOCIE

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

Architektura komputerów

Architektura systemów komputerowych. dr Artur Bartoszewski

Stronicowanie w systemie pamięci wirtualnej

Architektura Systemów Komputerowych

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

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

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

Wykład II. Pamięci półprzewodnikowe. Studia Podyplomowe INFORMATYKA Architektura komputerów

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

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

Mikroprocesory rodziny INTEL 80x86

Architektura potokowa RISC

Jednostka centralna. dr hab. inż. Krzysztof Patan, prof. PWSZ

Przykładowe pytania DSP 1

Wykład I. Podstawowe pojęcia. Studia stacjonarne Pedagogika Budowa i zasada działania komputera

PROGRAMOWALNE STEROWNIKI LOGICZNE

dr inż. Jarosław Forenc

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

Przetwarzanie potokowe pipelining

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

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

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Maszyny liczace - rys historyczny

Zarządzanie pamięcią w systemie operacyjnym

Architektura komputerów egzamin końcowy

System mikroprocesorowy i peryferia. Dariusz Chaberski

Język programowania: Lista instrukcji (IL Instruction List)

Wykład I. Podstawowe pojęcia. Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych

Opracował: Jan Front

dr inż. Jarosław Forenc

Wykład Mikroprocesory i kontrolery

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

UTK jednostki wykonawczej EU (Ex ecution Unit), jednostki steruj c ej CU,

Urządzenia zewnętrzne

Architektura systemów komputerowych. Przetwarzanie potokowe I

Architektura komputerów wer. 7

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

Krótka wycieczka do wnętrza komputera

Technologie Informacyjne Wykład 3

Transkrypt:

Studia Podyplomowe INFORMATYKA Architektura komputerów Wykład III Procesor 1,

Część 1 1. ALU 2. Cykl rozkazowy 3. Schemat blokowy CPU 2 dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Jednostka arytmetyczno-logiczna Jednostka arytmetyczno-logiczna (ALU, ang Algebraic-Logic Unit) to uniwersalny układ cyfrowy przeznaczony do wykonywania operacji arytmetycznych i logicznych na dostarczonych do niej danych. 3

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Jednostka arytmetyczno-logiczna Zestaw operacji ALU powinien być funkcjonalnie pełny, tzn. taki za pomocą którego jesteśmy w stanie zrealizować dowolny algorytm przetwarzania informacji. Każda lista rozkazów zawiera kilka grup działań występujących w różnych wersjach niemal w każdym komputerze są to: przesłania, działania arytmetyczne, działania logiczne, przesunięcia, sterowanie przebiegiem programu, przesłania wejścia-wyjścia, działania zmiennopozycyjne, działania na argumentach upakowanych. ALU nie posiada pamięci ani urządzeń umożliwiających współpracę z pamięcią RAM. Współpracuje z zestawem rejestrów. 4

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat blokowy mikroprocesora (I) EU - (execution unit) Blok wykonawczy CU - (contro unit) Blok sterujący W procesorze są dwie części różniące się pełnionymi funkcjami blok sterujący (CU, control unit) blok wykonawczy (EU execution unit) 5

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat blokowy mikroprocesora (I) Zadaniem części sterującej jest pobieranie rozkazów z pamięci, dekodowanie ich, przygotowanie argumentów i generowanie sygnałów sterujących mikrooperacjami w fazie wykonania. Układ sterujący może być zrealizowany na dwa sposoby - jako sterowanie układowe (hardwired control) lub sterowanie mikroprogramowane (micropwgrammed control). 6

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat blokowy mikroprocesora (I) Rejestry ogólnego przeznaczenia Jednostka arytmetyczno logiczna Dekoder rozkazów Układ serujący jednostką ALU IR - Rejestr rozkazów 7

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Rejestry procesora dostępne programowo A B D H PC SP IR F C E L A Akumulator Zawiera jeden z operandów działania i do niego przekazywany jest wynik B,C,D,E,H,L rejestry robocze (uniwersalne) F - rejestr znaczników SP - wskaźnik stosu PC - licznik rozkazów IR rejestr rozkazów 8

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Rejestry procesora dostępne programowo Licznikiem rozkazów (PC) nazywamy rejestr mikroprocesora zawierający adres komórki pamięci, w której przechowywany jest rozkaz przeznaczony do wykonywania jako następny Rejestrem rozkazów (IR) nazywamy rejestr mikroprocesora zawierający kod aktualnie wykonywanego rozkazu (lub kody rozkazów w przypadku przetwarzania potokowego) 9

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Lista rozkazów Rozkazem nazywamy najprostszą operację w programowaniu - taką której wykonania program może zażądać od procesora Lista rozkazów to pełny zestaw instrukcji maszynowych jakie może wykonać procesor 10

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Lista rozkazów Rozkaz może składać się z kilku pól. Jedno z nich występuje zawsze i nosi nawę pola kodu operacji. Kod ten definiuje funkcję rozkazu, czyli czynności jakie należy wykonać. Pozostałe pola zawierają argumenty operacji. Liczba tych pól zależy od rodzaju operacji, jakiej odpowiada rozkaz. W rozkazach bez argumentów pola dodatkowe nie występują. Kod operacji Kod operacji Kod operacji Argument Argument 1 Argument 2 11

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Cykl rozkazowy procesora Cykl rozkazowy procesora obejmuje dwie powtarzające się czynności: 12

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Cykl rozkazowy procesora - Cykl von Neumana Faza pobrania: 1. Podanie zawartości licznika rozkazów PC na magistralę adresową AB 2. Wczytanie zawartości zaadresowanej komórki do rejestru rozkazów (IR) 3. Zwiększenie zawartości licznika rozkazów Faza wykonania: 4 1 3 2 4. Zdekodowanie kodu rozkazu i wytworzenie sygnałów sterujących realizujących rozkaz Cykl von Neumana 13

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Cykl rozkazowy procesora - Cykl von Neumana Współpraca procesora z pamięcią Faza pobrania: 1. Podanie zawartości licznika rozkazów PC na magistralę adresową AB 2. Wczytanie zawartości zaadresowanej komórki do rejestru rozkazów (IR) 3. Zwiększenie zawartości licznika rozkazów Faza wykonania: 4. Zdekodowanie kodu rozkazu i wytworzenie sygnałów sterujących realizujących rozkaz 14

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Cykl rozkazowy procesora - Cykl von Neumana Rozkaz jest odczytywany z pamięci na podstawie adresu w liczniku rozkazów (PC) Rozkaz wpisywany do rejestru rozkazów, w którym przebywa aż do zakończenia cyklu rozkazowego. Poszczególne części rejestru rozkazów, odpowiadające polom słowa rozkazowego, są dekodowane określając dalszy przebieg cyklu. Wykrywana jest długość pobranego rozkazu i o te wielkość zwiększa się licznik rozkazów, wskazując od tej pory adres kolejnego rozkazu. Ten mechanizm zapewnia sekwencyjne działanie komputera - rozkazy są pobierane i wykonywane w takiej kolejności, w jakiej są umieszczone w pamięci, czyli tak jak były zapisane w programie. Jedynie rozkazy sterujące (skoki) mogą w czasie wykonania, a więc przed pobraniem następnego rozkazu, zmienić zawartość PC. 15

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Współpraca procesora z pamięcią 16

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) 17

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) BU (Bus Unit) - wyizolowany blok komunikacyjny odpowiadający za współpracę z pamięcią Prefeth kolejka oczekujących na wykonanie danych IU (instruction Unit) blok dekodera korzysta on z pamięci ROM w której znajduje się słownik tłumaczący przyjmowane kody rozkazów na sekwencje instrukcji wewnętrznych mikroprocesora EU (Execution Unit) układ wykonawczy realizujący operacje określone przez kod rozkazu. Znaczna część programu podlega obróbce w module ALU (Arithmetic-Logic Unit) sterowanym z bloku CU (Control Unit). Dla przyspieszenia pracy procesora operacje zmiennoprzecinkowe przekazywane są do wyspecjalizowanej jednostki FPU (Floating Point Unit) 18

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) Konieczność zapewnienia płynnego funkcjonowania procesora wymaga, by dane do wykonania (kod programowy) pobierane były w większych porcjach i gromadzone w kolejce Prefetch, gdzie oczekują na wykonanie. 19

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) Ich odtwarzania odbywa się w bloku dekodera (IU - Instruction Unit). Praca tego układu wspomagana jest często przez obszerną podręczną pamięć stałą (ROM), w której zawarty jest słownik tłumaczący przyjmowane kody rozkazowe na sekwencje ukrywających się pod nimi operacji. 20

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) Rozkodowane instrukcje przekazywane są do właściwego układu wykonawczego (EU - Execution Unit), gdzie realizowana jest operacja określona danym kodem rozkazowym. Znaczna część powszechnie używanego kodu pracuje na liczbach stałoprzecinkowych (Integer) i podlega obróbce w module ALU (Arithmetic-Logic Unii) sterowanego z bloku CU (Control Unit). 21

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) Jeśli jednak rozkaz dotyczył obiektów zmiennoprzecinkowych przekazuje się go do wyspecjalizowanej jednostki zmiennoprzecinkowej (FPU - Floating Point Unit). 22

I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) Rozkazy posługują się zwykle pewnymi argumentami (parametry funkcji, na przykład składniki przy dodawaniu), które również trzeba pobrać z pamięci operacyjnej. Często wymaga się, by wynik operacji przesłać pod określony adres. Obsługę przesyłania bierze na siebie jednostka adresowania (AU Addressing Unit). Względy natury technicznej (omówione na poprzednim wykładzie) powodują, iż dostęp do pamięci operacyjnej wymaga pewnych dodatkowych nakładów, których realizacji poświęca się jednostkę zarządzania pamięcią (MMU - Memory Management Unit). 23

Część 2 RISCi CISC 24 dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11

II. RISC i CISC Architektura CISC Początkowo listy rozkazów były niewielkie i zawierały operacje niezbędne do wykonywania działań arytmetycznych i do tworzenia elementarnych struktur progra mowych (skoki, pętle, rozgałęzienia warunkowe, podprogramy). Później dołączono rozkazy działające na znakach, a ostatnio rozkazy ukierunkowane na zastosowania w obsłudze operacji multimedialnych. Po wprowadzeniu języków symbolicznych (asemblerów), które stały się głównym narzędziem programowania systemowego (systemy operacyjne, kompilatory), nowe listy rozkazów wyposażano w coraz bardziej złożone instrukcje ułatwiające programowanie. Celem stało się zniwelowanie luki semantycznej między asemblerami, a więc i językami maszynowymi, a językami algorytmicznymi wysokiego poziomu. 25

II. RISC i CISC Architektura CISC Procesory ze złożoną listą instrukcji są określane jako CISC (ang. Complex Instruction Set Computer). Charakteryzują się: dużą liczbą rozkazów o różnych długościach; dużą liczbą trybów adresowania; Zalety: łatwością tworzenia oprogramowania Wady: rozkazy były długie i różnej długości, co komplikowało strukturę i działanie układu sterującego 26

II. RISC i CISC Architektura RISC Procesory ze zredukowaną (uproszczoną) listą rozkazów RISC (ang. Reduced Instruction Set Computer) charakteryzują się: niewielką liczbą rozkazów małą liczbą trybów adresowania prostą i szybką jednostką sterującą Zalety: Wady: prosta (a więc tania) jednostka sterująca; możliwość zwiększania taktowania procesora; przetwarzanie potokowe; trudnością w tworzeniu oprogramowania duże obciążenie magistral pamięciowych 27

II. RISC i CISC CISC vs.risc CISC 28

II. RISC i CISC CISC vs.risc RISC 29

II. RISC i CISC Intel x86 RISC czy CISC? Obecnie popularne procesory Intela z punktu widzenia programisty są widziane jako CISC, ale ich rdzeń jest RISC-owy. Rozkazy CISC są rozbijane na mikrorozkazy (ang. microops), które są następnie wykonywane przez RISC-owy blok wykonawczy. W praktyce okazuje się że rozwiązanie takie (pomimo wielu znaczących wad) jest podejściem znacznie bardziej wydajnym (szczególnie że RISC-owy blok wykonawczy jest znacznie bardziej nowoczesny od architektury CISC widocznej dla programisty). 30

Część 3 1. Stos mechanizm skoków 2. Przetwarzanie potokowe 31 dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11

III. Tryby pracy procesora Stos Stosem nazywany wyróżniony obszar pamięci używany według następujących reguł: 1. Informacja zapisywana jest do kolejnych komórek, żadnego adresu nie wolno pominąć, 2. Odczyt informacji następuje w kolejności odwrotnej do zapisu, 3. Informuje odczytujemy z ostatnio zapisanej komórki, natomiast zapisujemy do pierwszej wolnej. 1; 2; 3; 4; 5 5 4 3 2 5; 4; 3; 2; 1 1 32

III. Tryby pracy procesora Stos Stos jest rodzajem pamięci (buforem) typu LIFO (ang. Last In First Out). Stos ma stały wymiar i położenie w pamięci. Konieczna jest więc tylko znajomość adresu pierwszej wolnej komórki stosu (wierzchołka stosu). Do tego służy rejestr SP - wskaźnik stosu. Wskaźnik stosu 5 4 3 2 1 Wskaźnikiem stosu nazywamy rejestr zawierający adres ostatnio zapisanej komórki (wierzchołka) stosu 33

III. Tryby pracy procesora Wykorzystanie stosu skoki do 34

III. Tryby pracy procesora Zasada przetwarzania potokowego Jeżeli w procesorze wydzielić dwa stanowiska obsługi" - jedno dla pobierania rozkazów, a drugie dla ich wykonywania (rys), wówczas można równocześnie realizować obie fazy cyklu rozkazowego: pobieranie następnego rozkazu odbywa się w czasie, gdy jest wykonywany rozkaz poprzedni. Takie działanie, analogiczne do obróbki na taśmie produkcyjnej, nazywa się potokowym (pipeline). 35

III. Tryby pracy procesora Zasada przetwarzania potokowego Zakładając, że czas trwania każdej fazy cyklu jest taki sam, uzyskujemy dwukrotne skrócenie czasu kończenia kolejnych rozkazów (uzyskiwania wyników), mimo że sumaryczny czas cyklu pozostaje niezmieniony. 36

III. Tryby pracy procesora Zasada przetwarzania potokowego Powyższy przykład opisywał potok dwustopniowy, w praktyce mamy więcej stopni (więcej instrukcji przetwarzanych jednocześnie). W procesorach Pentium jest 5 potoków. Przetwarzanie potokowe działa w oparciu o założenie, że instrukcje wykonywane są kolejno, tak jak zapisano je w pamięci operacyjnej 37

III. Tryby pracy procesora Konflikty przetwarzania potokowego Problemem jest wystąpienie w programie rozgałęzień zależnych od efektów poprzedzającej operacji (skoków warunkowych) - w takim przypadku kolejny pobrany rozkaz może okazać się nieprzydatny i trzeba pobierać inny, wskazany przez wykonywany rozkaz skoku. Następuje wówczas opróżnienie potoku (flush) powodujące chwilowy przestój jednostki wykonawczej, Z kolei przestoje jednostki pobierającej rozkazy pojawiają się wtedy, gdy samo wykonanie rozkazu wymaga kontaktu z pamięcią dla odczytania lub zapisania argumentów. 38

III. Tryby pracy procesora Konflikty przetwarzania potokowego Ponad 95% - kodu programu to instrukcje wykonywane potokowo. Tylko mniej niż 5% kodu powoduje konflikty. Konflikt nie jest problemem procesor posiada mechanizmy rozwiązywania różnych typów konfliktów. Najprostszymi są przestoje oraz opróżnienie potoku i ponowne załadowanie rozkazów. 39

Część 4 Pamięć CACHE 40 dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11

IV. Pamięć CACHE CHAHE Działanie pamięci buforowej cache, (zwanej pamięcią podręczną): prawie zawsze, kiedy procesor poszukuje jakiegoś miejsca w pamięci, jego kopia jest w cache - przypadek taki nazywa się trafieniem (hit); jeżeli odczytywany adres nie jest odwzorowany w cache, czyli próba odczytu jest chybiona (miss); wówczas następuje odczyt z pamięci głównej, ale równocześnie do cache jest przepisywany blok (zwany linią) kilku lub kilkunastu sąsiednich bajtów wraz z ich adresem. W ten sposób chybienia powodują uzupełnianie pamięci buforowej aż do momentu, kiedy nie będzie w niej miejsca i wtedy usuwa się jedną linię - np. tę, która była najdawniej używana. 41

IV. Pamięć CACHE Organizacja pamięci CHAHE CPU CACHE L1 CACHE L2 CACHE L3 RAM 42

IV. Pamięć CACHE Organizacja pamięci CHAHE System pamięci podręcznej CACHE składa się z dwóch zasadniczych elementów: banku danych pamięci CACHE (pamięci danych) przeznaczonego do przechowywania zapisywanej i odczytywanej informacji, katalogu pamięci CACHE (tzw. TAG-RAM) przechowującego adresy i służącego do szybkiego sprawdzania, czy poszukiwana informacja znajduje się w pamięci danych 43

IV. Pamięć CACHE Organizacja pamięci CHAHE 44

Część 5 Wieloprocesorowość 45 dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11

IV. Wieloprocesorowość Procesory logiczne Rejestry Rejestry Aparat wykonawczy (ALU) Pamięć podręczna (CACHE) Hyper-Treading (HT) procesor posiada dwa zestawy rejestrów dzięki czemu emuluje obecność dwóch układów nazywanych procesorami logicznymi Magistrala systemowa Pamięć operacyjna (RAM) Pamiętajmy: program widzi procesor jako zestaw rejestrów. 46

IV. Wieloprocesorowość Procesory fizyczne - rdzenie Rejestry Rejestry Rejestry Rejestry Aparat wykonawczy Aparat wykonawczy Aparat wykonawczy Aparat wykonawczy Pamięć podręczna (CACHE) CACHE CACHE Magistrala systemowa Magistrala systemowa Pamięć operacyjna (RAM) Pamięć operacyjna (RAM) 47

IV. Wieloprocesorowość Procesory fizyczne - rdzenie W praktyce spotykam też hybrydę dwu powyższych schematów. W procesorze Intel Core i7 każdy z rdzeni posiada własną pamięć podręczną poziomów L1 i L2, natomiast pamięć poziomu L3 jest wspólna. L2 L2 L2 L2 Źródło: http://nvision.pl/img/art/procesory/intel_core_i7/intel_core_i7-2.jpg 48

IV. Wieloprocesorowość Procesory fizyczne - rdzenie Rejestry Aparat wykonawczy CACHE L2 Rejestry Rejestry Rejestry CACHE L3 Aparat wykonawczy CACHE L2 Magistrala systemowa W najnowszych procesorach (Core i7) dla każdego z fizycznych rdzeni zastosowano technologię Hyper-Treading. Oznacza to, że każdy rdzeń widziany jest jako dwa procesory logiczne i może robić dwie rzeczy naraz, np. czterordzeniowy procesor Core i7 może wykonywać 8 wątków jednocześnie. Pamięć operacyjna (RAM) Źródło: http://nvision.pl/img/art/procesory/intel_core_i7/intel_core_i7-2.jpg 49

IV. Wieloprocesorowość Rozwój procesorów 50

IV. Wieloprocesorowość Rozwój procesorów 51

Literatura: Metzger Piotr - Anatomia PC, wydanie XI, Helion 2007 Wojtuszkiewicz Krzysztof - Urządzenia techniki komputerowej, część I: Jak działa komputer, MIKOM, Warszawa 2000 Wojtuszkiewicz Krzysztof - Urządzenia techniki komputerowej, część II: Urządzenia peryferyjne i interfejsy, MIKOM, Warszawa 2000 Komorowski Witold - Krótki kurs architektury i organizacji komputerów, MIKOM Warszawa 2004 Gook Michael - Interfejsy sprzętowe komputerów PC, Helion, 2005 52 dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11