Studia Podyplomowe INFORMATYKA Architektura komputerów Wykład III • Procesor 1 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA, 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat blokowy mikroprocesora (I) Rejestry ogólnego przeznaczenia Dekoder rozkazów Jednostka arytmetyczno logiczna Układ serujący jednostką ALU IR - Rejestr rozkazów 7 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA I. ALU; Cykl rozkazowy; Schemat blokowy CPU Rejestry procesora dostępne programowo A B D H PC SP F C E L IR 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 11 Argument Argument 1 Argument 2 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA I. ALU; Cykl rozkazowy; Schemat blokowy CPU Cykl rozkazowy procesora Cykl rozkazowy procesora obejmuje dwie powtarzające się czynności: 12 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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) 1 4 2 3. Zwiększenie zawartości licznika rozkazów 3 Faza wykonania: 4. Zdekodowanie kodu rozkazu i wytworzenie sygnałów sterujących realizujących rozkaz 13 Cykl von Neumana dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA I. ALU; Cykl rozkazowy; Schemat blokowy CPU Współpraca procesora z pamięcią 16 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA I. ALU; Cykl rozkazowy; Schemat blokowy CPU Schemat procesora (II) 17 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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: prosta (a więc tania) jednostka sterująca; możliwość zwiększania taktowania procesora; przetwarzanie potokowe; Wady: trudnością w tworzeniu oprogramowania duże obciążenie magistral pamięciowych 27 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA II. RISC i CISC CISC vs.RISC CISC 28 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA II. RISC i CISC CISC vs.RISC RISC 29 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 32 5 4 3 2 1 5; 4; 3; 2; 1 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA III. Tryby pracy procesora Wykorzystanie stosu – skoki do 34 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA IV. Pamięć CACHE Organizacja pamięci CHAHE CPU 42 CACHE L1 CACHE L2 CACHE L3 RAM dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA IV. Pamięć CACHE Organizacja pamięci CHAHE 44 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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) Magistrala systemowa Hyper-Treading (HT) – procesor posiada dwa zestawy rejestrów dzięki czemu emuluje obecność dwóch układów nazywanych procesorami logicznymi Pamiętajmy: program „widzi” procesor jako zestaw rejestrów. Pamięć operacyjna (RAM) 46 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA IV. Wieloprocesorowość Procesory fizyczne - rdzenie Rejestry Rejestry Rejestry Rejestry Aparat wykonawczy Aparat wykonawczy Aparat wykonawczy Aparat wykonawczy CACHE CACHE Pamięć podręczna (CACHE) Magistrala systemowa Pamięć operacyjna (RAM) 47 Magistrala systemowa Pamięć operacyjna (RAM) dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA IV. Wieloprocesorowość Procesory fizyczne - rdzenie Rejestry Rejestry Rejestry Rejestry Aparat wykonawczy Aparat wykonawczy CACHE L2 CACHE L2 CACHE L3 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 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA IV. Wieloprocesorowość Rozwój procesorów 50 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA IV. Wieloprocesorowość Rozwój procesorów 51 dr Artur Bartoszewski - WYKŁAD: Architektura komputerów; Studia Podyplomowe INFORMATYKA 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