Procesor

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Procesor Intel Pentium (widok od dołu)
Procesor Intel Core i7-940 (widok od dołu), widoczne 1366 pól stykowych złącza LGA1366
Pomieszczenie wysokiej czystości (Clean room) w fabryce procesorów

Procesor, CPU (ang. central processing unit), GPU (ang. graphics processing unit) – sekwencyjne urządzenie cyfrowe, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.

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 odporność na utlenianie). 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 kilku miliardów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedzi).

Jedną z podstawowych cech procesora jest długość (liczba bitów) słowa, na którym wykonywane są podstawowe operacje obliczeniowe. Jeśli słowo ma 64 bity, mówimy, że procesor jest 64-bitowy. Innym ważnym parametrem określającym procesor jest szybkość, z jaką wykonuje on rozkazy. Przy danej architekturze procesora, szybkość ta w znacznym stopniu zależy od czasu trwania pojedynczego taktu[1].

Budowa[edytuj]

W funkcjonalnej strukturze procesora można wyróżnić:

  • zespół rejestrów do przechowywania danych i wyników. Rejestry mogą być ogólnego przeznaczenia lub mają specjalne przeznaczenie.
  • jednostkę arytmetyczną (arytmometr) do wykonywania operacji obliczeniowych na danych
  • układ sterujący przebiegiem wykonywania programu
  • inne układy, w które producent wyposaża procesor w celu usprawnienia jego pracy.

Rozmiary elementów[edytuj]

Jednym z parametrów 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 możliwa do osiągnięcia częstotliwość pracy. Intel w 2012 roku wprowadził procesory wykonane w procesie technologicznym (fotolitografii) 22 nm (Ivy Bridge), a w czwartym kwartale 2014 r. (Core M) – 14 nm[2].

Aby ograniczyć straty związane z powstawaniem defektów w tak małych strukturach, fabryki procesorów muszą posiadać pomieszczenia o niezwykłej czystości, co jest bardzo kosztownym przedsięwzięciem.

Wielordzeniowość i procesory pomocnicze[edytuj]

Współcześnie większość procesorów ma wielordzeniową budowę. Pierwszym procesorem wielordzeniowym ogólnego przeznaczenia był procesor Power 4 firmy IBM wprowadzony na rynek w roku 2001. Pierwszymi procesorami wielordzeniowymi architektury x86 były wersje procesorów Opteron firmy AMD i Pentium Extreme Edition firmy Intel wprowadzone w kwietniu 2005 roku.

Popularnym modelem firmy Intel, który kontynuował ten trend był Intel Pentium D. Dużą popularność zyskał dopiero Intel Core 2 Duo zbudowany na bazie architektury Conroe (65 nm).

CPU mają rdzenie taktowane zegarem nawet 4,4 GHz (np. AMD A10-6800K i i7-4790k), lecz nie występuje już wyraźny wzrost taktowania w kolejnych generacjach procesorów. Szybkość obliczeń jednak wzrasta dzięki zwiększaniu ilości tranzystorów i rdzeni w procesorach.

Największy konkurent Intela, czyli AMD, wprowadził do sprzedaży popularny model procesora dwurdzeniowego o nazwie Athlon 64 X2. Obie firmy mają dziś w ofercie także modele czterordzeniowe (niektóre Core i5 oraz Core i7 Intela i AMD Athlon II X4 oraz Phenom II X4 AMD) oraz sześciordzeniowe (Phenom II X6 oraz Core i7 serii 9x0) przeznaczone do komputerów klasy desktop. AMD jako pierwsze wprowadziło na rynek procesory ośmiordzeniowe. Od niedawna Intel również posiada taką konstrukcję w ofercie. Jest to procesor i7 5960X o bazowym taktowaniu wynoszącym 3 GHz. Jednostka ta została wykonana w 22 nm procesie technologicznym, powstała na bazie architektury Haswell (znanej z modeli o oznaczeniach serii 4xxx) i została wydana w trzecim kwartale 2014 r. Procesory do zastosowań serwerowych mają nawet 16 (AMD Opteron) – 24 rdzenie (Intel Xeon Processor E7 v4 w 2016 roku)[3].

Projektanci procesorów próbują także innych metod zwiększania wydajności procesorów, na przykład hyper-threading, gdzie każdy rdzeń może się zachowywać jak dwa procesory logiczne, dzielące między siebie zasoby pamięci podręcznej i jednostek wykonawczych. Gdy jeden z konkurujących ze sobą procesów pozostawia niewykorzystane zasoby, proces przypisany do drugiego procesora logicznego może ich użyć, co w sprzyjających okolicznościach może prowadzić do sumarycznego wzrostu wydajności od kilku do kilkunastu procent.

W roku 2007 Intel zaprezentował testy układu scalonego Intel Polaris wyposażonego w 80 rdzeni ogólnego przeznaczenia, który osiągnął wydajność 1,01 TFLOPS.

Komputer (w szczególności komputer osobisty) oprócz procesora głównego (CPU) ma zwykle procesory pomocnicze: obrazu (GPU, najnowsze konstrukcje pozwalają na integrację CPU z GPU w APU), dźwięku, koprocesory arytmetyczne (od lat 90. na ogół są zintegrowane z CPU).

Jednostka centralna[edytuj]

Procesor bywa też nazywany jednostką centralną lub centralną jednostką obliczeniową (poprzez tłumaczenie angielskiego wyrażenia central processing unit w sposób niemal dosłowny). Część użytkowników „jednostkę centralną” kojarzy jednak z handlowym terminem określającym jednostkę systemową komputera złożoną z procesora, płyty głównej, kart rozszerzeń, pamięci operacyjnej, dysków twardych i innych elementów zamkniętych we wspólnej obudowie, zazwyczaj nieobejmującą urządzeń peryferyjnych (monitor, klawiatura, drukarka).

Rozkazy procesora[edytuj]

Do typowych rozkazów wykonywanych przez procesor należą:

  • kopiowanie danych
    • z pamięci do rejestru
    • z rejestru do pamięci
    • z pamięci do pamięci (niektóre procesory)
    • (podział ze względu na sposób adresowania danych)
  • działania arytmetyczne
    • dodawanie
    • odejmowanie
    • porównywanie dwóch liczb
    • dodawanie i odejmowanie jedności
    • zmiana znaku liczby
  • działania na bitach
    • iloczyn logiczny – AND
    • suma logiczna – OR
    • suma modulo 2 (różnica symetryczna) – XOR
    • negacja – NOT
    • przesunięcie lub rotacja bitów w lewo lub w prawo
  • skoki
    • bezwarunkowe
    • warunkowe

Instrukcje procesora identyfikowane są na podstawie binarnego kodu maszynowego, jednak dany kod nie musi oznaczać wykonywania tych samych operacji przez procesor do tego samego (lub innego) zadania. W tym celu, w procesorach niedostępnych masowo, można spotkać możliwość programowania rozkazów CPU, czyli mikroprogramowania. Rozwiązanie takie daje pełniejszą kontrolę nad procesorem oraz możliwość np. zwiększenia wydajności procesora w pewnych zastosowaniach, w znacznie większym stopniu niż w przypadku np. dostępnych powszechnie procesorów, w których kody maszynowe są na stałe przypisane do odpowiednich ciągów mikroinstrukcji.

Zobacz też[edytuj]

Przypisy

  1. Składamy komputer - jak działa procesor, „Poradnik komputerowy”, mamkomputer.info, 2 grudnia 2015 [dostęp 2016-10-28] (pol.).
  2. Intel: Intel Discloses Newest Microarchitecture and 14 Nanometer Manufacturing Process Technical Details (ang.). [dostęp 2014-08-11].
  3. Turn Real-Time Analytics into Real Business Advantage. [dostęp 2016-06-18].

Linki zewnętrzne[edytuj]