x86

Procesor Intel 8086 z 1978
Procesor Intel 80486 DX z 1989 od spodu
© Raimond Spekking / CC BY-SA 4.0 (via Wikimedia Commons)
Procesor Intel Core 2 z 2006

x86 – rodzina architektur (modeli programowych) procesorów firmy Intel, typu CISC. Zapoczątkowana przez i wstecznie zgodna z 16-bitowym procesorem 8086, który z kolei wywodził się z 8-bitowego układu 8085. Nazwa architektury pochodzi od nazw pierwszych modeli z tego typu, których numery kończyły się liczbą 86. Obecnie architektury x86 dominują na rynku komputerów PC i serwerów[1]. Najszybsze superkomputery korzystają z architektur typu RISC[2].

Rozwój architektury Intel x86

x86

Nazwa x86 w odniesieniu do modelu programowego procesorów dotyczy pierwszych procesorów tego typu – od 8086 do 286, które były układami o architekturze 16-bitowej. Obecnie systemy i oprogramowanie 32-bitowe, często przyjmują oznaczenie x86 (procesory 16-bitowe wyszły z użycia).

x86-32 (IA-32)

Drugie stadium rozwoju typu zapoczątkował w 1985 procesor 80386, w którym dokonano rozszerzenia słowa do 32 bitów, unikając jednak konieczności natychmiastowej wymiany wszystkich komputerów poprzez zachowanie trybów zgodności z poprzednimi rozwiązaniami. Tak zmodyfikowaną architekturę (model programowy) x86 oznacza się zazwyczaj symbolem IA-32 (od Intel Architecture 32 bit) lub x86-32 (często skracając do x86).

Model ten z czasem został rozszerzony o nowe technologie, głównie wspierające zastosowania multimedialne, takie jak MMX czy SSE. Procesory oparte na tym modelu do dziś stanowią większość procesorów używanych w komputerach na świecie.

x86-64 (x64 lub AMD64)

Trzecim stadium rozwoju procesorów wywodzących się z architektury x86 są procesory 64-bitowe. Architekturę (model programowy) takich procesorów, ze względu na wciąż zachowywaną wsteczną kompatybilność z pierwowzorami o architekturze x86, oznacza się symbolem x86-64. Rozwiązanie to zostało wprowadzone przez firmę Advanced Micro Devices (AMD), a dopiero później zaadaptowane przez Intela jako Intel 64 (wcześniej EM64T). Procesory o architekturze IA-64 nie należą do rodziny x86.

Najważniejsze zmiany w kolejnych generacjach procesorów

Nazwa procesoraRokMaks. częstotliwość taktowania (w momencie wprowadzenia, MHz)Maks liczba rdzeniLiczba tranzys
torów (mln.)
Proces technologiczny (nm)Uwagi
Intel 80861978810,0293000układ 16-bitowy; pracował jedynie w trybie rzeczywistym; współpracował z koprocesorem 8087; miał 16-bitową szynę danych (ośmiobitową w wersji „SX”, czyli 8088); nie miał MMU; składał się z dwóch jednostek – współpracy z pamięcią, czyli kolejki oraz wykonawczej; zegar od 4,77 MHz do około 20 MHz (obecnie spotyka się wersje do 300 MHz)
Intel 8018619821210,0553000poprawiona wersja 8086, o podobnych cechach jak poprzednik; posiadał nieco większą wydajność, kilkanaście nowych rozkazów i szybszy zegar
Intel 80286198212,510,1341500druga generacja układów; procesor wciąż 16-bitowy, o zwiększonej do 24-bitów szynie adresowej; istotnie usprawniona wydajność; nowe rozkazy, nowy tryb pracy – chroniony (wspierający wielozadaniowość); adresowanie 16 MB RAM i 1 GB pamięci wirtualnej; zegar do 25 MHz
Intel 8038619852010,2751500 i 1000trzecia generacja układów i równocześnie największa rewolucja w zakresie architektury x86, procesor 32-bitowy, o poszerzonych rejestrach wewnętrznych, szynie danych i adresowej (do 32 bitów); istotnie usprawniona wydajność; wiele nowych rozkazów; wbudowany MMU; zmieniony tryb chroniony; wprowadzony tryb wirtualny pozwalający obsłużyć do 4 GB pamięci RAM
Intel i48619892511,180 235, 900000 do 16000001000, 800 i 600dodano kilka nowych instrukcji; zwiększono wydajność jednostki stałoprzecinkowej oraz wbudowano i przeprojektowano koprocesor (FPU); dodatkowo wbudowano kontroler i pamięć cache poziomu L1; w modelach X2 i X4 wprowadzono taktowanie wewnętrzne procesora szybsze niż szyn zewnętrznych
Pentium19936613,1 do 3,3800, 600 i 350powiększono cache L1; zmodernizowano FPU; dodano jednostkę przewidywania skoków; dodano kilka nowych instrukcji; zwiększono zewnętrzną magistralę danych do 64 bitów (procesor pozostał 32-bitowy) oraz szynę adresową do 36 bitów; procesor składa się z dwóch jednostek wykonawczych dość podobnych do 486 i jeżeli 2 kolejne rozkazy nie kolidują ze sobą, to są wykonywane jednocześnie
Pentium Pro199520015,5500 i 350nowa generacja architektury, nieformalnie oznaczana jako i686; procesor ten był dedykowany pierwotnie do serwerów i wydajnych stacji roboczych, w procesorze tym wprowadzono usprawnienia typu PAE czy VME, z dużą zmianą wewnętrznej struktury układu, pod względem mikroarchitektury układ ma wiele cech procesora RISC (choć zewnętrznie pozostaje zgodny z architekturą CISC); posiada 6 potoków; architektura Pentium Pro jest podstawą procesorów Pentium II i Pentium III; kompletnie zmieniona realizacja wewnętrzna – procesor wewnętrznie działa zupełnie inaczej niż wszystkie poprzednie, stanowiąc pod tym względem pierwszą największą zmianę od czasu 8086; cache L2 wbudowano w procesor jako osobny płatek krzemu zamknięty wraz z procesorem w jednej obudowie; 36 bitów szyny adresowej; 64 bity szyny danych; istotnie zmieniony sposób pracy szyny danych
Pentium MMX199523314,5350, 280 i 250nieco ulepszony Pentium, dodane rozkazy MMX
Pentium II199726617,5 do 27,4350, 250 i 180połączenie Pentium Pro z Pentium MMX
Pentium III199950018,2 do 44250, 180 i 130wprowadzone rozkazy SSE
Pentium 420001500242 do 188180, 130 i 90kompletnie przeprojektowany procesor maksymalizujący technikę potokowości, dzięki czemu możliwe stało się osiąganie bardzo dużych częstotliwości zegara
EM64T200322001zmiana architektury x86 o znaczeniu prawie tak wielkim jak pojawienie się 80386; poszerzenie rejestrów do 64 bitów, nowe rejestry, nowe rozkazy, poszerzenie przestrzeni adresowej, nowe tryby pracy; pierwsza istotna zmiana architektury niebędąca autorstwa Intela
Pentium D200432002230 i 37690 i 65dwurdzeniowy procesor całkowicie oparty na Pentium 4, po którym odziedziczył wiele wad
Intel Core Duo20063000232195 i 65układ dwurdzeniowy
Intel Core 2 Duo200636002228 do 41065 i 45układy dwurdzeniowe wydajniejsze od Core Duo
Intel Core 2 Quad200730004410 (wersja Extreme) do 82065 i 45układy czterordzeniowe (2 układy C2D w jednej obudowie)
Pierwsza generacja Intel Core i7200832004 do 673145układy czterordzeniowe oraz sześciordzeniowe; dzięki technologii Hyper-Threading mają podwojoną ilość wątków; technologia Turbo boost oraz zintegrowany kontroler pamięci[3].

Technologie

  • MMX – rozszerzenie architektury 80386 wykorzystujące rejestry koprocesora dla instrukcji SIMD, pierwsza istotna zmiana z punktu widzenia software od pojawienia się 80386, stosowany w układach Pentium MMX i późniejszych
  • SSE, SSE2, SSE3 – rozszerzenie MMX, nowe rejestry dla instrukcji SIMD, wprowadzane sukcesywnie wraz z rozwojem linii Pentium II i III
  • 3DNow! – zaproponowane przez AMD rozszerzenie MMX, stosowane i rozwijane konsekwentnie w procesorach od K6 w górę
  • HT – technologia wielowątkowości współbieżnej
  • AMD-V, Intel VT-x - technologie pozwalające na wirtualizację

Przedstawiciele

Procesory produkowane przez firmę Intel

  • 8086 i 8088 (wersje do 20 MHz, pierwotnie 4,77 MHz w PC XT, obecnie do 300 MHz)
  • 80186 i 80188 (wersje do 25 MHz, wykorzystywane głównie w urządzeniach automatyki ze względu na zintegrowane: kontroler przerwań, kontroler DMA, liczniki (redukcja liczby układów na płycie głównej), rzadko stosowane w komputerach osobistych, kilka nowych instrukcji, generalnie brak większych różnic programowych w stosunku do 8086)
  • 80286 (wersje do 25 MHz, pierwotnie 8 MHz w PC AT)
  • 80386 (później nazwany 80386DX) i 80386SX (Intel 33 MHz, konkurenci do 40 MHz), obecnie także wersje przemysłowe 80386ZX (do 300 MHz jako kontrolery jednoukładowe)
  • i486 (później nazywany i486DX) i 486SX oraz układy i486DX2 i iDX4 (Intel i486DX – 50 MHz, i486DX2 – 33/66 MHz, iDX4 – 33/100, konkurenci do 160 MHz)
  • i586:
    • Pentium OverDrive (do płyt 486)
    • Pentium (układy S5 60, 66 i 60/90 MHz, układy S7 do 200 MHz)
    • Pentium MMX (do 233 MHz i 266 MHz w wersji Mobile)
  • i686:
    • Pentium Pro (200 MHz, wersje z 256, 512 i 1024 L2 cache)
    • Pentium II
    • Celeron (tańsze wersje procesorów Intela)
    • Xeon (serwerowe wersje procesorów)
    • Pentium III
  • Pentium 4
    • Pentium 4 EE – Extreme Edition (wersje z cache L3, ze zwiększonym cache L2 lub innymi usprawnieniami – dla najbardziej wymagających użytkowników)
    • Układy Pentium 4 D, Pentium 4 EE i Xeon wyposażone w x86-64
    • Xeon (wersje serwerowe)
    • Układy Pentium D 4 Dual Core wyposażone w x86-64

Procesory produkowane przez firmę AMD

Inni producenci

Obecnie

  • Procesory Elbrus
    • x86 – np. Эльбрус-8С[4]
    • mogący emulować x86, ogólnego przeznaczenia – Эльбрус-4С[5]
  • Procesory VIA
    • specjalizowane do zastosowań bez użycia chłodzenia aktywnego np. VIA QuadCore E-Series[6]
    • KX-7000 ze zintegrowanym GPU zapewniającym rozdzielczość do 4096 × 2304 pikseli przy 60 Hz (przez DisplayPort lub HDMI). Wszystkie chipy VIA Zhaoxin mają być wolne od Meltdown i Spectre[7].
  • Zhaoxin

Zhaoxin (Shanghai Zhaoxin Semiconductor Co., Ltd.(兆芯, Zhào xīn)) to chiński producent procesorów, produkujący procesory na podstawie licencji spółki utworzonej przez przedsiębiorstwo VIA i administracji Szanghaju. Procesory są wspierane w Linuxie od jądra w wersji 5.3[8].

Historyczne

  • Firmy Cyrix:
    • Układy zgodne z 386 i 486, w tym wersja 486DLC dla komputerów 386
    • Cyrix 5x86
    • Cyrix 6x86
    • Cyrix MII
    • Media GX
  • Firmy VIA:
  • Firmy Rise Technology:
    • mP6
  • Firmy NEC
  • Firmy IBM
    • Procesory typu 386 i 486 (w tym wersje SLV dla notebooków) oraz na licencji Cyrixa – odpowiedniki Cyrix 6x86
  • Firmy NexGen
    • Procesory piątej generacji, programowo zgodne z i386, sprzedawane jako Nx 5x86
  • Firmy UMC
    • Seria układów UMC U5 (szybsze klony 486SX)
  • Firmy IDT
    • IDT WinChip
  • Siemens i Harris
    • 80286 (wersje do 25 MHz)

Porównanie z różnymi architekturami

68000

Wg Volkera Werticha, autora między innymi słynnej gry The Settlers, procesory x86 były dużo słabsze niż seria 68K. Zamiast 16 rejestrów było ich zaledwie kilka. Było bardzo mało rozkazów, co sprawiało, że kodowanie na x86 w porównaniu do Amigi było koszmarem (autor przeniósł m.in. grę z Amigi na zgodne z IBM PC). Wersja na Amigę bez problemu wówczas obsługiwała 8000 osadników bez zwolnień w prędkości gry, mimo wymagania zaledwie 68000, jako procesora[9].

Zobacz też

Przypisy

Media użyte na tej stronie

I8086.jpg
Autor: unknown, Licencja: CC-BY-SA-3.0
Intel 80486DX2 bottom.jpg
Autor: unknown, Licencja: CC BY-SA 2.0
ASRock 945GCM-S - Intel Core 2 Duo E6300 Conroe (SL9SA)-0322.jpg
© Raimond Spekking / CC BY-SA 4.0 (via Wikimedia Commons)
ASRock 945GCM-S - Intel Core 2 Duo E6300 Conroe (SL9SA)