X86
Z Wikipedii
- Właściwy tytuł tego artykułu to x86. Z powodu ograniczeń technicznych tytuł tego artykułu jest nieprawidłowy.
x86 to rodzina architektur (modelów programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, 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 wywodzi się od nazw pierwszych modeli z tej rodziny, których numery kończyły się liczbą 86.
Spis treści |
[edytuj] Rozwój architektury Intel x86
Nazwa x86 w odniesieniu do modelu programowego procesorów dotyczy pierwszych procesorów tej rodziny - od 8086 do 286, które były układami o architekturze 16-bitowej.
[edytuj] x86-32 (IA-32)
Drugie stadium rozwoju rodziny 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.
Model ten z czasem został rozszerzony o nowe technologie, głównie wspierające zastosowania multimedialne, takie jak MMX czy SSE. Procesory oparte o ten model do dnia dzisiejszego stanowią większość procesorów używanych w komputerach na świecie.
[edytuj] x86-64 (EM64T)
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.
Zaznaczyć należy, że procesory o architekturze IA-64 nie należą do rodziny x86.
[edytuj] Najważniejsze zmiany w kolejnych generacjach procesorów
Nazwa procesora | Rok | Maks. częstotliwość taktowania (w momencie wprowadzenia, MHz) | Liczba tranzystorów (mln.) | Inne uwagi |
---|---|---|---|---|
Intel 8086 | 1978 | 8 | 0,029 | układ 16-bitowy; posiadał jedynie tryb rzeczywisty; współpracował z koprocesorem 8087; posiadał 16-bitową szynę danych (lub ośmiobitową w tańszej wersji "SX" czyli 8088); nie posiadał MMU; składał się z dwóch jednostek - współpracy z pamięcią czyli kolejki oraz wykonawczą; zegar od 4,77 MHz do około 20 MHz (obecnie spotyka się wersje do 300MHz) |
Intel 80186 | 1982 | 12 | poprawiona wersja 8086, o podobnych cechach jak poprzednik; posiadał nieco większą wydajność, kilkanaście nowych rozkazów i szybszy zegar | |
Intel 80286 | 1982 | 12,5 | 0,134 | druga 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 80386 | 1985 | 20 | 0,275 | trzecia 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 i486 | 1989 | 25 | 1,2 | dodano kilka nowych instrukcji; zwiększono wydajność jednostki stałoprzecinkowej oraz wbudowano i przeprojektowano koprocesor (FPU); dodatkowo wbudowano kontroler i pamięć cache poziomu L1 |
Pentium | 1993 | 60 | 3,1 | kolejna wersja procesora w architekturze x86, w procesorze tym powię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 - większość czasów wykonania instrukcji pozostała bez zmian, procesor w określonych sytuacjach może jednak wykonywać dwa rozkazy równolegle |
Pentium MMX | 1995 | 233 | 4,5 | nieco ulepszony Pentium, dodane rozkazy MMX |
Pentium Pro | 1995 | 200 | 5,5 | była to nowa generacja architektury, nieformalnie oznaczana jako i686; procesor ten był dedykowany w szczególności do serwerów i wydajnych stacji roboczych, w procesorze tym wprowadzono usprawnienia typu PAE czy VME, z punktu widzenia wewnętrznej struktury układu największa zmiana w koncepcji 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; L2 cache wbudowany 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 II | 1997 | 266 | 7 | połączenie Pentium Pro z Pentium MMX |
Pentium III | 1999 | 500 | 8,2 | wprowadzone rozkazy SSE |
Pentium 4 | 2000 | 1500 | 42 | kompletnie przeprojektowany procesor maksymalizujący technikę potokowości, dzięki czemu możliwe stało się osiąganie bardzo dużych częstotliwości zegara |
AMD64 | 2003 | 2200 | zmiana 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 nie będąca autorstwa Intela | |
Pentium D | 2004 | 2550 | 230 | dwurdzeniowy procesor całkowicie oparty o Pentium 4 po którym odziedziczył wiele wad. |
Intel Core 2 | 2005 | 3000 | 321 | układ wielordzeniowy |
[edytuj] 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 hiperwątkowości
[edytuj] Przedstawiciele
[edytuj] Procesory produkowane przez firmę Intel
- 8086 i 8088 (wersje do 20MHz, pierwotnie 4,77MHz w PC XT, obecnie do 300MHz)
- 80186 i 80188 (wersje do 25MHz, wykorzystywany 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 25MHz, pierwotnie 8MHz w PC AT)
- 80386 (później nazwany 80386DX) i 80386SX (Intel 33MHz, konkurenci do 40MHz), obecnie także wersje przemysłowe 80386ZX (do 300MHz jako kontrolery jednoukładowe)
- i486 (później nazywany i486DX) i i486SX oraz układy i486DX2 i iDX4 (Intel i486DX - 50MHz, i486DX2 - 33/66MHz, iDX4 - 33/100, konkurenci do 160MHz)
- i586:
- Pentium OverDrive (do płyt 486)
- Pentium (układy S5 60, 66 i 60/90 MHz, układy S7 do 200MHz)
- Pentium MMX (do 233MHz i 266MHz w wersji Mobile)
- i686:
- Pentium Pro (200MHz, wersje z 256, 512 i 1024 L2 cache)
- Pentium II
- Celeron
- Xeon
- Pentium III
- Pentium 4
- Itanium i Itanium 2 (procesory IA-64, posiadają tryb zgodności z x86)
[edytuj] Procesory produkowane przez firmę AMD
- Idealnie wierne kopie układów x86, aż do i486 włącznie
- AMD 80386 SX/DX (w tym wersje 40MHz)
- AMD 80486 SX/DX/DX2/DX4 (w tym wersje pracujące do 50/150MHz i 40/160MHz)
- AMD Am5x86
- AMD K5
- K6
- K7
- K8
[edytuj] Inni producenci
- 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 NEC
- V20
- V30
- Firmy IBM
- Procesory rodziny 386 i 486 (w tym wersje SLV dla notebooków)
- 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 25MHz)