procesor
DESCRIPTION
Procesor. Architektura. Procesor (ang. processor) nazywany często CPU (ang. Central Processing Unit) urządzenie cyfrowe sekwencyjne potrafiące pobierać dane z pamięci, interpretować je i wykonywać jako rozkazy. Wykonuje on bardzo szybko ciąg - PowerPoint PPT PresentationTRANSCRIPT
ProcesorProcesor
ArchitekturaArchitektura
Procesor (ang. processor) nazywany często CPU (ang. Central Processing Unit)
-urządzenie cyfrowe sekwencyjne potrafiące pobierać dane z pamięci,
interpretować je i wykonywać jako rozkazy. Wykonuje on bardzo szybko ciąg
prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych
określonych zazwyczaj przez producenta procesora jako lista rozkazów
procesora.
Budowa procesoraBudowa procesoraMikroprocesor jest to arytmetyczno-logiczna jednostka centralna komputera.
Termin mikroprocesor został użyty po raz pierwszy w 1972 r., jednakże "era"
mikroprocesorów rozpoczęła się w 1971 r. wraz z wprowadzeniem przez
firmę Intel układu 4004 -mikroprogramowalnego komputera jednoukładowego. W układzie tym umieszczono 4 bitowy sumator, 16 czterobitowych rejestrów,
akumulator i stos, czyli podstawowe podzespoły jednostki centralnej systemu
komputerowego. Układ 4004, składający się z 2300 tranzystorów, mógł
wykonywać 445 różnych instrukcji, przy czym architektura była zbliżona
do układów kalkulatorowych.
Współczesne procesory (zwane mikroprocesorami) wykonywane są zwykle
jako układy scalone zamknięte w hermetycznej obudowie, często posiadającej
złocone wyprowadzenia (stosowane ze względu na własności stykowe tego
metalu). Ich sercem jest monokryształ krzemu, na który naniesiono techniką
fotolitografii szereg warstw półprzewodnikowych, tworzących, w zależności
od zastosowania, sieć od kilku tysięcy do kilkuset milionów tranzystorów.
Połączenia wykonane są z metalu (aluminium, miedź). Ważnym parametrem
procesora jest rozmiar elementów budujących jego strukturę. Im są one
mniejsze tym niższe jest zużycie energii, napięcie pracy oraz wyższa
częstotliwość pracy.
Producenci procesorówProducenci procesorów
IBM/Cyrix/VIA
TEXAS Instruments
http://pl.wikipedia.org/wiki/Lista_procesor%C3%B3w_AMD
Proszę zapoznać się i wypisać kilka najpopularniejszych procesorów z firm:
AMD
Intelhttp://pl.wikipedia.org/wiki/Mikroprocesory_firmy_Intel
ALU?!ALU?!
Jednostka arytmetyczno-logiczna
(ang. Arithmetic and Logical Unit lub Arithmetic Logic Unit)
to jedna z głównych części procesora, prowadząca proste operacje na
liczbach całkowitych.
Typowy symbol ALU: A i B - operandy; R - wyjście; F - wejście z jednostki kontrolnej; D - status wyjścia
Typowe ALU ma dwa wejścia odpowiadające parze argumentów i jedno wyjście na wynik. Operacje jakie prowadzi to:
• operacje logiczne AND, OR, NOT, XOR
• dodawanie
• często też, odejmowanie, negacja liczby, dodawanie z przeniesieniem, zwiększanie/zmniejszanie o 1
• przesunięcia bitowe o stałą liczbę bitów, czasem też o zmienną liczbę
• dość często mnożenie i czasem dzielenie/modulo
Wiele innych układów może mieścić w sobie ALU:
- GPU (jednostka przetwarzania graficznego) – np. karty graficzne
- FPU (jednostka obliczeń zmienno-przecinkowych) – np. karty muzyczne
Zasada działaniaZasada działaniaZe względu na przepływ danych i rozkazów w procesorze, można wyróżnić w nim kilka zasadniczych modułów:
1. Blok wstępnego pobierania i dekodowania instrukcji. Odpowiada on za
dostarczenie kolejnych poleceń z pamięci operacyjnej i przekazanie
ich do odpowiedniej jednostki wykonawczej.
2. Główny blok wykonawczy to jednostka arytmetyczno-logiczna ALU.
Zapewnia ona prawidłowe przetworzenie wszystkich danych
stałoprzecinkowych. ALU wyposażony jest w niewielka zintegrowana
pamięć, nazywana zestawem rejestrów. Każdy rejestr to pojedyncza
komórka używana do chwilowego przechowywania danych i wyników.
3. FPU, czyli koprocesor wykonujacy wszystkie obliczenia
zmiennoprzecinkowe
4. Po zakończeniu "obliczeń" dane będące wynikiem przetwarzania trafiają
do modułu wyjściowego procesora. Jego zadaniem jest przekierowanie
nadchodzących informacji np. do odpowiedniego adresu w pamięci
operacyjnej lub urządzenia wejścia/wyjścia.
Cache procesorówCache procesorów
Listy rozkazów
Cache (pamięć podręczna) to mechanizm, w którym ostatnio
pobierane dane dostępne ze źródła o wysokiej latencji* i niższej
przepustowości są przechowywane w pamięci o lepszych parametrach.
* Latencja – okres utajenia, czas od wystąpienia przyczyny do zaistnienia skutku.
L3 wykorzystywana w procesorach 2 i 4 rdzeniowych
Pamięć cache przyspiesza dostęp do relatywnie wolnej pamięci RAM.
Charakteryzuje się bardzo krótkim czasem dostępu. Jest używana do
przechowywania danych, które będą w niedługim czasie przetwarzane.
Na współczesnych procesorach są 2 lub 3 poziomy pamięci cache:
• L1 (zintegrowana z procesorem),
• L2 i L3 (umieszczone w jednym chipie razem z procesorem, lub na płycie głównej).
L-1 – zlokalizowana we wnętrzu procesora pamięć podręczna pierwszego
poziomu. Przyspiesza dostęp do bloków pamięci wyższego poziomu, który
stanowi zależnie od konstrukcji pamięć operacyjną lub pamięć podręczną
drugiego poziomu (L2). Z uwagi na ograniczenia rozmiarów i mocy procesora
zawsze jest najmniejsza. Umieszczona jest najbliżej głównego jądra
procesora i umożliwia najszybszą komunikację procesora.
L2 – wykorzystywana w procesorze pamięć podręczna drugiego
poziomu, zbudowana z modułów pamięci typu SRAM, umieszczona często
bezpośrednio na jądrze procesora. Pamięć drugiego poziomu jest
wykorzystywana gdy pamięć zajęta jest pamięć pierwszego poziomu.
Na bardzo starych procesorach była tylko pamięć poziomu pierwszego
(pentium mmx i podobne). Pamięć drugiego poziomu pozwala na potężny
wzrost wydajności w wielu aplikacjach i programach. Kiedy zaczyna brakować
pamięci na drugim poziomie, komputer szuka "pomocy" w pamięci RAM,
jednak to znacząco spowalnia pracę komputera.
Podział gniazd procesorówPodział gniazd procesorów
slot – wyglądem przypomina sloty ISA, PCI i AGP
socket – poziomo położona prostokątna płytka, zawierająca dziurki na piny procesora lub piny, na które wkłada się procesor
Istnieje jeszcze wiele innych gniazd, które jednak są już nie stosowane.
Gniazda procesów INTELGniazda procesów INTEL
Socket 7 (Super Socket 7)Intel Pentium, Intel Pentium MMX, AMD K5, K6-2,2+,III, Cyrix M1, M2,
Winchip
Socket 8Intel Pentium Pro
Slot 1Intel Pentium II, III
Celeron 266-433Mhz
Socket 370Intel Pentium III, Intel Celeron,
Intel Celeron II, VIA Cyrix III
Socket 423Intel Pentium 4 (1300-2000 MHz)
Socket 478Intel Pentium 4 (1300-2000 MHz)Intel Pentium 4 (2000-2200 MHz)
Socket AAMD Athlon, AMD Athlon
XP, AMD Duron
Slot AAMD Athlon
Gniazda procesów AMDGniazda procesów AMD
Obecnie używane gniazda pod procesory na płytach głównych:
http://pl.wikipedia.org/wiki/Lista_gniazd_procesorowych
Sockety firmy AMD:
Socket 754 - Athlon 64, Sempron, Turion 64
Socket 939 - Athlon 64, Sempron
Socket 940 - Athlon 64, Opteron
Sockety firmy Intel:
Socket 478 - Intel Pentium 4, Celeron, Pentium 4 Extreme Edition, Pentium M Socket N
Socket 479 - Intel Pentium M i Celeron M
LGA 775 (Socket 775 lub Socket T) - Intel Pentium 4, Pentium D, Celeron D, Pentium Extreme Edition, Core 2 Duo, Core 2 Extreme, Celeron, Xeon 3000 series, Core 2 Quad; (LGA 775).
Dla ciekawskich
Architektura procesorówArchitektura procesorów
CISC (Complex Instruction Set Computers)
– nazwa architektury mikroprocesorów o następujących cechach:
• duża liczba rozkazów (instrukcji)
• mała optymalizacja – niektóre rozkazy potrzebują dużej liczby cykli procesora do wykonania
• występowanie złożonych, specjalistycznych rozkazów
• duża liczba trybów adresowania
• do pamięci może się odwoływać bezpośrednio duża liczba rozkazów
• mniejsza od RISC-ów częstotliwość taktowania procesora
• powolne działanie dekodera rozkazów
RISC (Reduced Instruction Set Computers)
- nazwa architektury mikroprocesorów która została przedstawiona pod
koniec lat 70. w teoretycznych pracach na uniwersytecie Berkeley oraz
w wynikach badań Johna Cocke z Thomas J. Watson Research Center.
1. Zredukowana liczba rozkazów do niezbędnego minimum. Ich liczba
wynosi kilkadziesiąt, podczas gdy w procesorach CISC sięga setek.
Upraszcza to znacznie dekoder rozkazów.
Podstawowe cechy
Bardziej wydajny od CISC
2. Redukcja trybów adresowania, dzięki czemu kody rozkazów są prostsze,
bardziej zunifikowane, co dodatkowo upraszcza wspomniany wcześniej
dekoder rozkazów. Ponadto wprowadzono tryb adresowania, który ogranicza
ilość przesłań - większość operacji wykonuje się wg schematu:
3. Ograniczenie komunikacji pomiędzy pamięcią, a procesorem.
Przede
wszystkim do przesyłania danych pomiędzy pamięcią, a rejestrami służą
dedykowane instrukcje, które zwykle nazywają się load (załaduj z pamięci),
oraz store (zapisz do pamięci); pozostałe instrukcje mogą operować
wyłącznie na rejestrach. Schemat działania na liczbach znajdujących się w
pamięci jest następujący: załaduj daną z pamięci do rejestru, na zawartości
rejestru wykonaj działanie, przepisz wynik z rejestru do pamięci.
4. Zwiększenie liczby rejestrów (np. 32, 192, 256, podczas gdy np. w
architekturze x86 jest zaledwie 8 rejestrów), co również ma wpływ na
zmniejszenie liczby odwołań do pamięci.
5. Dzięki przetwarzaniu potokowemu (ang. pipelining) wszystkie rozkazy
wykonują się w jednym cyklu maszynowym, co pozwala na znaczne
uproszczenie bloku wykonawczego, a zastosowanie superskalarności także
na umożliwienie równoległego wykonywania rozkazów. Dodatkowo czas
reakcji na przerwania jest krótszy.
Instrukcje procesorówInstrukcje procesorówProducenci nowoczesnych procesorów za podstawowy kierunek rozwoju
technologicznego obrali rozszerzenie multimedialnych możliwości układu.
Poszerzone listy rozkazów operujące na stało- i zmiennoprzecinkowych
macierzach znacząco przyspieszają obróbkę grafiki, dźwięku czy
generowanie obrazów 3D.
MMX
Pierwszym wprowadzonym rozszerzeniem multimedialnym, wbudowanym we wszystkie obecnie produkowane modele procesorów, jest zestaw 57 instrukcji arytmetyki stałoprzecinkowej typu SIMD, znany pod nazwą MMX.
Instrukcje IntelaInstrukcje Intela
SSERównież Intel wprowadził w swoich procesorach Pentium III, instrukcje
zmiennoprzecinkowe SIMD-FP. Instrukcje te są wykonywane przez
wyspecjalizowaną jednostkę operującą na ośmiu 128-bitowych dedykowanych
rejestrach - co sprzyja optymalizacji kodu programu.
SSE2Zestaw instrukcji SSE poszerzony o 144 nowe rozkazy umożliwiające operacje na 128-bitowych liczbach zmiennoprzecinkowych o pojedynczej i podwójnej
precyzji oraz 128-bitowych operandach stałopozycyjnych (Pentium 4)
Instrukcje AMDInstrukcje AMD
3DNow!
Firma AMD wprowadziła 21 nowych instrukcji zmiennoprzecinkowych typu
SIMD-FP zorientowanych na wspomaganie grafiki trójwymiarowej. Był to
pierwszy przypadek wprowadzenia tak istotnych zmian do architektury
procesora przez firmę inną niż Intel. SIMD-FP procesorów AMD wykorzystuje
do działania połączone w pary 64-bitowe rejestry MMX - co niestety, utrudnia
automatyczną optymalizację kodu programu, gdyż wymagany jest podział
danych na dwa segmenty
3DNow! Professional
W najnowszych procesorach Athlon XP i Duronach (z zegarem 1000MHz
i wyżej) wprowadzono instrukcje w 100% zgodne z intelowskim SSE.
3DNow! Enhanced
Do grupy poleceń 3DNow! dodano 24 nowe komendy wspomagające operacje
przetwarzania liczb stałoprzecinkowych, przesyłania danych pomiędzy pamięcią
cache a jednostką wykonawczą oraz przyspieszające cyfrowe przetwarzanie
sygnałów. (procesory Athlon XP i Duron)