x86-arkitektur

(Omdirigert fra «X86»)

x86-arkitekturen er en instruksjonssettarkitektur som ble introdusert i 8086-prosessoren fra Intel i 1978. Den har siden blitt benyttet i en mengde andre mikroprosessorer, og denne arkitekturen brukes fortsatt i de fleste PC-er. Navnet kommer av at hovedprosessoren i hver av de første prosessorgenerasjonene hadde navn som sluttet på 86. Arkitekturen har vært i stadig utvikling siden starten, noe som leder til mange undervarianter. IA-32/x86-32 er en videreutvikling av x86-arkitekturen, og x86-64 en videreutvikling av x86-32. Begge er bortimot fullt ut bakoverkompatible med den opprinnelige x86-arkitekturen.

486-prosessor fra Intel

Suksessen til denne arkitekturen kom egentlig ikke av dens oppbygning. Arkitekturen presterte ikke noe bedre enn andre typer, og Intel hadde planer om å lansere en nyere prosessor med ny arkitektur tidlig på 80-tallet. IBMs suksess med PC-en, som brukte en 8088-prosessor, gjorde det mest lønnsomt å fortsette med x86-arkitekturen. De kansellerte fremtidsplanene, og fortsatte med å videreutvikle arkitekturen. Dette har ført til både positive og negative sider om den. Den største ulempen er kanskje at arkitekturen har mye gammel tankegang helt tilbake fra 70-tallet, men fordelen er at programmer for x86-prosessorer kan kjøres på utrolig mange PC-er fra 80-tallet og frem til i dag.

x86-prosessorer produseres av Intel og AMD. Også NEC, Harris, Cyrix (senere VIA), IBM m.fl. har produsert X86-prosessorer.

Arkitekturen

x86 er en CISC-arkitektur, noe som gjenspeiles i at instuksjonssettet inneholder mange og til dels kompliserte instruksjoner. Den opprinnelige x86-arkitekturen hadde en standard ordlengde på 16 biter, men dette ble økt til 32 biter i IA-32 og 64 biter i x86-64. Lenge hadde arkitekturen relativt få prosessorregistre, men dette endret seg med tiden, spesielt med introduksjonen av x86-64-arkitekturen.

Som de fleste datamaskinarkitekturer benytter x86-arkitekturen toerkomplement for å representere negative heltall. Dette gjør at man for addisjon og subtraksjon kan bruke de samme instruksjonene for å regne på tallverdier som kan være negative og tallverdier som kun er positive, siden logikken er den samme.

En underarkitektur av x86-arkitekturen er x87. De første x86-prosessorene støttet bare heltallsoperasjoner, så hvis man hadde behov for å regne med flyttall måtte man enten gjøre det i programvaren eller koble til en x87-prosessor. Navnet gjenspeiler som for x86 det faktum at disse prosessorene hadde navn som sluttet på 87. Med Intel 80486 prosessoren begynte man å inkludere FPUen i x86-prosessorene. Etter at SSE ble introdusert har man faset ut x87-instruksjonene som hovedmåten å utføre flyttallsoperasjoner på, men de forblir tilgjengelig av hensyn til bakoverkompatibiliteten. x86/x87 følger hovedsakelig IEEE 754-standarden. Flyttall kan representeres i enkel presisjon (32 bit), dobbel presesjon (64 bit) eller i det interne 80-bit formatet (kun x87-operasjoner).

Støtte for SIMD ble introdusert av Intel med MMX i 1997 og har siden blitt utvidet av AMDs 3DNow! og Intels SSE.

Intels prosessorer

Forgjengere til x86-serien (4-bit og 8-bit)

NavnLansertRegister-
bredde
Data-
buss
Adresse-
buss
Maksimal
RAM
Merknad
4004197144101 KbFørste mikroprosessor på en brikke
4040197444138 Kb
80081972881416 KbFørste 8-bit mikroprosessor
80801974881664 KbFørste mikroprosessor til generelt bruk på en brikke
80851977881664 Kb
Annen produsent
Zilog Z801976881664 KbForbedret utgave av 8080 / 8085

x86-serien (16-bit)

NavnLansertRegister-
bredde
Data-
buss
Adresse-
buss
Maksimal
RAM
Merknad
808619781616201 MbFørste 16-bit mikroprosessor på en brikke
80881979168201 MbMikroprosessoren brukt i IBM PC
8018619821616201 Mb8086 med input/output støtte på en brikke
801881982168201 Mb8088 med input/output støtte på en brikke
80286198216162416 MbFørste mikroprosessor med integrert MMU
Andre produsenter
AMD 808619791616201 Mb
Harris 80861616201 Mb
OKI 80861616201 Mb
MHS 80861616201 Mb
NEC 80861616201 Mb
Siemens 80861616201 Mb
Mitsubishi 80861616201 Mb
Fujitsu 80861616201 Mb
USSR 80861616201 MbKlone av 8086 produsert i Sovjetunionen
AMD 808819791616201 Mb

x86-serien (32-bit)

NavnLansertRegister-
bredde
Data-
buss
Adresse-
buss
Maksimal
RAM
Merknad
8038619853232324 GbFørste 32-bit x86-prosessor
80386 SX19883216324 Gb80386 med 16-bit databuss
8048619893232324 GbIntegrert flyttallsenhet
+ 8 Kb nivå 1 Cache for data
og instruksjoner
80486 SX19913232324 Gb80486 uten flyttallsenhet
80486 DX219923232324 Gb80486 med klokkedobling
80486 DX419923232324 Gb80486 med 3 x klokkefrekvens
Pentium19933232324 GbHyperskalær prosessor: 2 heltallsenheter og 1 flyttallsenhet + 8 Kb nivå-1
Cache for data og 8 Kb Nivå-1 Cache for instruksjoner
Pentium MMX19953232324 GbEkstra multimediaenhet (MMX)
+ 16 Kb nivå-1 Cache for data og
16 Kb Nivå-1 Cache for instruksjoner
Pentium Pro199532323636 GbHyperskaler prosessor (3 instruksjoner samtidig), RISC-
kjerne, register renaming, 40 nye generelle registre, out-of-order
execution, spekulativ utførelse,
ikke-blokkerende Nivå-2 Cache-RAM
Pentium II199732323636 GbPentium Pro med innebygd MMX
Pentium III199732323636 GbPentium II med forbedret MMX +
innebygd støtte for AMDs SSE
Pentium 4200032323636 GbYtterligere forbedret MMX og SSE +
SSE2 og SSE3

Andre produsenter av x86-prosessorer

  • AMD
    • Athlon
    • Duron
    • Thunderbird
  • Cyrix