x86 | |
---|---|
Udvikler | Intel , AMD |
Lidt dybde | 16, 32 og/eller 64 bit |
Fremlagde | 1978 (16-bit), 1985 (32-bit), 2003 (64-bit) |
Arkitektur | CISC |
Type | Register-Hukommelse |
SK kodning | Variabel længde (1..15 bytes) |
Transition Implementering | tilstandsflag |
Byte rækkefølge | lille-endian |
Sidestørrelse |
8086 - i286 : Ingen MMU i386 , i486 : 4 KiB sider Pentium : 4 MiB sider tilføjet x86-64 : 1 GiB sider tilføjet. |
Udvidelser | x87 , IA-32 , MMX , SSE , SSE2 , x86-64 , SSE3 , SSSE3 , SSE4 , SSE5 , AVX , AVX2 , SGX |
åben? | Til dels. Nogle ekstra funktioner på x86-arkitekturen kræver muligvis en licens fra Intel, x86-64 kræver muligvis en ekstra licens fra AMD. 80486-processoren har været på markedet i over 20 år [1] og kan derfor ikke være genstand for patentkrav. Det er en delmængde af x86-arkitekturen og er derfor helt åben. |
Registre | |
generelle formål |
16-bit : 6 registre, delvist specialiserede + BP og SP; 32-bit : 6 RON + EBP og ESP; 64-bit : 14 RON + RBP og RSP. |
Ægte | 8 x 80 bit (kan stables) |
SIMD |
SSE : 8 x 128 bit, x86-64 : 16 x 128 bit, AVX : 16 x 256 bit, AVX-512 : 32 x 512 bit |
Mediefiler på Wikimedia Commons |
x86 ( eng. Intel 80x86 ) - processorarkitektur og instruktionssæt af samme navn , først implementeret i Intel - processorer .
Navnet er dannet af to tal, der sluttede med navnene på tidlige Intel-processorer - 8086 , 80186 , 80286 (i286), 80386 (i386), 80486 (i486). Under dets eksistens er sættet af kommandoer konstant blevet udvidet, samtidig med at kompatibiliteten med tidligere generationer er bevaret.
Udover Intel er x86-instruktionssættet også implementeret i processorer fra andre producenter: AMD , VIA , Transmeta , IDT , Zhaoxin [2] , MCST (i Elbrus - processorer ) osv. I øjeblikket er der et andet navn for 32- bitversion af arkitekturen - IA -32 ( Intel Architecture - 32).
x86 er en CISC- arkitektur. Hukommelsen tilgås ord for ord. "Ord" placeres efter little-endian- princippet , også kendt som Intel-formatet. Moderne processorer inkluderer x86-instruktionsdekodere til at konvertere dem til et forenklet internt format og derefter udføre dem.
Real mode er den klassiske adresseringstilstand, der bruges i de første modeller af familien. Adressen på en hukommelsescelle (til at arbejde med data eller til at indlæse en eksekverbar processorinstruktion) er dannet af et segment (indholdet af et segmentregister) og en offset offset (en konstant, et register, summen af et register med en konstant, eller summen af to registre med en konstant); dette skrives som SSSS:OOOO (Segment:Offset), hvor S og O er hexadecimale cifre. Selve adressen beregnes ved hjælp af formlen "Segment * 16 + Offset".
Den grænseadresse, der kan tilgås, er FFFF:FFFF, det vil sige FFFF0 + FFFF = 10FFEF eller med ordene: "en megabyte + 64 kilobytes - 16 bytes". På 8086, 8088 og 80186 processorerne var adressebussen dog kun 20 bit, og derfor endte alt, der gik ud over en megabyte, i begyndelsen af hukommelsen (i segment nul). Fra 80286-processoren var det muligt at vælge, om man ville arbejde i samme tilstand for kompatibilitet eller ved hjælp af HiMem-driveren at bruge et ekstra hukommelsessegment, hvori DOS og residente programmer kunne placeres. (Ud over DOS kan andre operativsystemer have kørt på computeren. Oplysninger om, hvordan de brugte den øvre hukommelse, er usandsynligt blevet bevaret.)
Samtidig viste RAM'en sig så at sige at være heterogen - små datablokke kunne behandles ved kun at manipulere offset-registrene, og for store datablokke skulle segmentregistre manipuleres. Følgende termer er blevet introduceret for at beskrive dette:
(alle blokke startede med en adresse, der er et multiplum af deres størrelse).
Fra 80386-processoren blev det ved hjælp af DOS4GW-driveren muligt at bruge real mode med 32-bit registre og adressere op til fire gigabyte hukommelse. Selve segmenterne var faktisk ikke nødvendige her.
Mikroprocessorer 8086/8088, 80186/80188 og 80286 havde fire segmentregistre, dvs. de kunne arbejde samtidigt med fire hukommelsessegmenter, der havde et specifikt formål:
I 80386 blev der tilføjet to mere, der ikke har et særligt formål:
På trods af at segmentregistre har særlige formål, giver arkitekturen mulighed for, at nogle dataadgange kan erstatte et segment med et hvilket som helst andet. Kode-, stak- og rækkedestinationssegmenterne bruger altid CS-, SS- og ES-registrene og kan ikke ændres.
Segmenttilgangen giver dig mulighed for at opdele hele hukommelsen i 16 segmenter, begyndende med adresser, der er multipla af 64 KB. Disse 16 segmenter kaldes hukommelsessider. Typisk bruges personsøgning til samarbejdsdrift af enheder, hvis grænseflader er afbildet til et hukommelsesadresserum; så bruger hver sådan enhed én hukommelsesside, og celleadressen i enhedens adresserum vil matche forskydningen i computerens hukommelsessegment. Så i IBM PC-computere blev adresserummet fordelt på denne måde:
I ægte tilstand er der ingen hukommelsesbeskyttelse og adgangsrettigheder, så den er næsten ude af brug. Real mode er dog standardtilstanden for alle x86-familieprocessormodeller - processoren starter sit arbejde i real mode, hvor BIOS, MBR, BR og den indledende del af OS-Loader udføres. Derfor inkluderer alle operativsystemer, der kører på x86-processorer, en vis mængde startkode for denne processortilstand.
Beskyttet tilstandEn mere avanceret tilstand, der først dukkede op i 80286-processoren og er blevet forbedret mange gange siden. Den har et stort antal undertilstande, som kan bruges til at spore udviklingen af CPU-familien. Denne tilstand understøtter hukommelsesbeskyttelse, opgavekontekster og værktøjer til organisering af virtuel hukommelse. I lighed med den rigtige tilstand bruges en segmenteret hukommelsesmodel også her, men allerede organiseret efter et andet princip: der er ingen opdeling i afsnit, og placeringen af segmenter er beskrevet af specielle strukturer ( deskriptortabeller ) placeret i RAM. Ud over segmentets basisadresse indeholder deskriptorerne segmentets størrelse (mere præcist den maksimalt tilgængelige offset) og forskellige segmentattributter, der bruges til at beskytte hukommelsen og bestemme adgangsrettigheder til segmentet for forskellige programmoduler. Der er to typer deskriptortabeller: globale og lokale. Den globale tabel beskriver segmenter af operativsystemet og delte datastrukturer. En lokal tabel kan defineres for hver specifik opgave (proces). Hukommelsessegmenter vælges også af de samme segmentregistre; i stedet for afsnitsnummeret indeholder segmentregistret dog en speciel struktur (selektor), der indeholder indekset for deskriptoren i tabellen. Selve deskriptoren indlæses fra hukommelsen til et internt, programmatisk utilgængeligt register (cache), bundet til hvert segmentregister og indlæses automatisk på tidspunktet for dets ændring.
Hvert programmodul, der udføres i beskyttet tilstand, er defineret af dets kodesegment, beskrevet af CS-registret, som bestemmer dets privilegier til at få adgang til data og andre moduler. Der er 4 privilegieniveauer (0, 1, 2 og 3) kaldet beskyttelsesringe. Ring 0 er den mest privilegerede. Det er beregnet til operativsystemets kernemoduler. Ring 3 er den mindst privilegerede og er reserveret til brugerprogrammer. Ring 1 og 2 bruges kun af nogle operativsystemer. Datasegmenter har også tilladelsesattributter, der kun tillader adgang til kode, der har samme eller højere privilegier. Ringesystemet giver dig mulighed for fleksibelt at distribuere adgang til kode og data.
80386-processoren, der dukkede op i 1985, blev i modsætning til sine forgængere 32-bit. Den har mulighed for at adressere op til 4 gigabyte hukommelse, hvilket gjorde det muligt at oprette hukommelsessegmenter på størrelse med hele adresserummet. Derfor brugte nye operativsystemer en degenereret hukommelsesorganisationsmodel, når alle segmenter starter ved adresse nul. En sådan model kaldes en flad hukommelsesmodel, og adressen er givet af et enkelt 32-bit heltal (selvom det faktisk er en offset inden for et degenereret segment), og selve segmenterne bruges udelukkende til at organisere beskyttelse langs privilegeringsringe.
Virtuel 8086-tilstand (V86)Det er en undertilstand af beskyttet, men bruger en adressemodel, der ligner rigtig tilstand. Bruges til at køre gamle 8086-programmer på moderne operativsystemer. I modsætning til real mode, hvor alle programmer har adgang til al hukommelse (ring 0), kører programmet i V86 mode i ring 3 (den mindst privilegerede), og undtagelser og afbrydelser håndteres af normale beskyttede mode rutiner.
Blandede tilstandeSegment- MMU af moderne processorer, på trods af de kardinale forskelle mellem de to hovedtilstande, fungerer på samme måde i begge. Dette giver dig mulighed for at organisere ikke-standardtilstande, der ikke er beskrevet i den officielle dokumentation, men nogle gange meget nyttige, når du skriver programmer. Da det er kendt, at interne deskriptor-caches bruges i alle tilstande, og de bruges til hukommelsesadressering, hvis du forstår logikken i deres arbejde, er det muligt at indlæse ikke-standardværdier for den aktuelle tilstand i dem. Især kan du oprette en deskriptor-tabel i reel tilstand, indstille PE-flaget, indlæse segmentregistrene, der allerede er i beskyttet tilstand, og derefter straks nulstille PE-flaget. Indtil næste genindlæsning af segmentregisteret vil dets deskriptorcache indeholde værdien svarende til den beskyttede tilstand, og hvis den blev indlæst korrekt, vil det være muligt at adressere op til 4 GiB hukommelse. Sådanne ikke-standardtilstande kaldes tilsammen Unreal mode og bruges aktivt af BIOS på personlige computere. 80286 havde også evnen til at indlæse ikke-standard deskriptor-cacheværdier ved hjælp af den udokumenterede LOADALL-kommando; hvilket især gjaldt, da 80286-processoren ikke tillod PE-flaget at blive nulstillet (den beskyttede tilstand blev afsluttet ved at nulstille processoren, hvilket påvirkede ydeevnen).
I processorer, startende med 80386, dukkede en kraftfuld MMU op , så du kan organisere visningen af hukommelsessider , hvilket var en anden grund til overgangen til en flad model med fremkomsten af 32-bit databehandling. Ved at bruge sideoversættelse kan operativsystemet oprette sit eget lineære adresserum for hver proces; også hver side har adgangsrettigheder attributter. I modsætning til segmenter er der kun 2 sådanne niveauer: bruger og supervisor. Men for de fleste moderne operativsystemer er dette ganske nok. Paging MMU er kun tilgængelig i beskyttet tilstand.
I senere 32-bit processorer (startende med Pentium Pro), dukkede PAE (Physical Address Extension) op - en udvidelse af fysiske hukommelsesadresser til 36 bit (evnen til at adressere 64 GB RAM). Denne ændring påvirkede ikke opgavernes bithed - de forblev 32-bit.
Yderligere "multimedia" ( engelsk Multi-Media eXtensions ) et sæt instruktioner, der udfører flere handlinger, der er typiske for processerne med kodning/afkodning af streaming af lyd/videodata i én maskininstruktion. Dukkede først op i Pentium MMX-processorer. Giver kun heltalsberegninger.
SSE ( Streaming SIMD Extensions - streaming SIMD extension) - SIMD ( Single Instruction , Multiple Data - "en instruktion - en masse data") et sæt instruktioner udviklet af Intel og først introduceret i Pentium III -seriens processorer . Understøtter flydende kommaberegninger. SSE består af otte 128-bit registre (xmm0 til xmm7). Hvert register definerer 4 på hinanden følgende enkelt præcisions flydende kommaværdier. SSE inkluderer instruktioner, der udfører operationer på skalære og indrammede datatyper.
Forbedret SSE-udvidelse. Dukkede op i Pentium 4-processorer . Udfører streaming-beregninger med reelle tal med dobbelt præcision (2 numre på 64 bit i ét SSE-register). Derudover er der tilføjet instruktioner svarende til MMX- udvidelsen , der arbejder med SSE-registre (16 bytes, 8 ord, 4 dobbeltord eller 2 quad-ord i ét register). SSE2 indeholder en række cachehåndteringsinstruktioner designet til at minimere cacheforurening ved håndtering af udefinerede informationsstrømme.
En fortsættelse af SSE og SSE2 dukkede op i Prescott -processorer . SSE3-sættet indeholder 13 instruktioner: FISTTP (x87), MOVSLDUP (SSE), MOVSHDUP (SSE), MOVDDUP (SSE2), LDDQU (SSE/SSE2), ADDSUBPD (SSE), ADDSUBPD (SSE2), HADDPS (SSE), HSUBPS ( SSE), HADDPD (SSE2), HSUBPD (SSE2), MONITOR (ingen analog i SSE3 for AMD), MWAIT (ingen analog i SSE3 for AMD). Den mest bemærkelsesværdige ændring er evnen til at arbejde horisontalt med registre. Mere specifikt er der tilføjet instruktioner til at tilføje og trække flere værdier gemt i det samme register. Disse kommandoer har forenklet en række DSP- og 3D-operationer. Der er også en ny kommando til at konvertere flydende kommaværdier til heltal uden at skulle foretage ændringer i den globale afrundingstilstand.
Tilføjelse til SSE3 for at arbejde med pakkede heltal. Nyt i SSSE3 sammenlignet med SSE3 er 16 unikke pakkede heltalskommandoer. Hver af dem kan arbejde med både 64-bit (MMX) og 128-bit (XMM) registre, så Intel henviser til 32 nye kommandoer i sine materialer.
Kategorier af nye instruktioner: fortegnsoperation, skift, shuffling af bytes, multiplikationer, horisontale additioner og subtraktioner af heltal.
Et nyt Intel-instruktionssæt først implementeret i Penryn -serien af processorer .
SSE4 består af 54 instruktioner, 47 af dem er klassificeret som SSE4.1 (de er kun i Penryn-processorer ). Det fulde instruktionssæt (SSE4.1 og SSE4.2, dvs. 47 + resterende 7 instruktioner) er tilgængeligt i Nehalem-processorer . Ingen af SSE4-instruktionerne virker med 64-bit mmx-registre, kun med 128-bit xmm0-15. 32-bit processorer med SSE4 blev ikke frigivet.
Instruktioner er blevet tilføjet for at fremskynde bevægelseskompensation i video-codecs , hurtig læsning fra USWC-hukommelse, en masse instruktioner til at forenkle vektoriseringen af programmer af compilere. Derudover er instruktioner til behandling af strenge på 8/16 bit tegn, CRC32 beregninger, popcnt tilføjet til SSE4.2. For første gang i SSE4 blev xmm0-registret brugt som et implicit argument for nogle instruktioner.
Nye SSE4.1-instruktioner inkluderer videoacceleration, vektorprimitiver, indsættelse/ekstraktion, vektorpunktmultiplikation, blanding, bitkontrol, afrunding og læsning af WC-hukommelse.
De nye SSE4.2-instruktioner inkluderer strengbehandling, CRC32- tælling, optælling af en population på 1 bit og arbejde med vektorprimitiver.
AMDs nye x86 instruktionsudvidelse kaldet SSE5. Det blev annonceret i 2007, men blev aldrig implementeret som oprindeligt tænkt. Senere erstattet af XOP , FMA , F16C .
Det næste sæt udvidelser fra Intel. Behandlingen af flydende kommatal pakket ind i 256-bit "ord" er understøttet. For dem introduceres understøttelse af de samme kommandoer som i SSE-familien. 128-bit SSE-registre XMM0 - XMM15 udvides til 256-bit YMM0-YMM15
Intel Post 32 nm processorudvidelser er et nyt Intel-instruktionssæt, der giver dig mulighed for at konvertere halvpræcisionstal til enkelt- og dobbeltpræcisionstal, få ægte tilfældige tal i hardware og få adgang til FS/GS-registrene.
Videreudvikling af AVX. SSE-heltalsinstruktioner begynder at arbejde med 256-bit AVX-registre.
AES-instruktionssætudvidelsen er en mikroprocessorimplementering af AES-kryptering .
Et sæt instruktioner til strømbehandling af reelle tal med enkelt præcision. Understøttet af AMD-processorer siden K6-2. Ikke understøttet af Intel-processorer.
3DNu! brug MMX-registre som operander (to enkelte præcisionsnumre placeres i ét register), og derfor er det, i modsætning til SSE, ikke nødvendigt at gemme 3DNow!-konteksten separat ved skift af opgaver.
I begyndelsen af 2000'erne blev det klart, at x86-arkitekturens 32-bit adresserum begrænsede ydeevnen af applikationer, der arbejder med store mængder data. Det 32-bit adresserum gør det muligt for processoren at adressere kun 4 GB data direkte. Dette er muligvis ikke tilstrækkeligt for nogle applikationer såsom videobehandling eller databasevedligeholdelse .
For at løse dette problem udviklede Intel den nye IA-64-arkitektur, grundlaget for Itanium -processorfamilien . For at sikre bagudkompatibilitet med ældre applikationer, der bruger 32-bit kode, introducerede IA-64 en emuleringstilstand. I praksis viste denne funktion sig imidlertid at være ekstremt langsom.
AMD har foreslået en alternativ løsning på problemet med at øge processorkapaciteten. I stedet for at opfinde et helt nyt instruktionssæt, blev det foreslået at introducere en 64-bit udvidelse til den allerede eksisterende 32-bit x86-arkitektur. Oprindeligt hed den nye arkitektur x86-64, senere blev den omdøbt til AMD64. Oprindeligt blev det nye instruktionssæt understøttet af AMD's Opteron , Athlon 64 og Turion 64 familier af processorer. Succesen med processorer, der bruger AMD64-teknologi, sammen med en træg interesse for IA-64-arkitekturen, fik Intel til at licensere AMD64-instruktionssættet. Samtidig blev der tilføjet en række specifikke instruktioner, som ikke fandtes i det originale AMD64 sæt. Den nye version af arkitekturen fik navnet EM64T.
I litteraturen og versionsnavnene på deres softwareprodukter bruger Microsoft og Sun den kombinerede AMD64/EM64T-navngivning, når de refererer til 64-bit versioner af deres henholdsvis Windows- og Solaris -operativsystemer . Samtidig bruger softwareleverandører til operativsystemer i Linux -familien , BSD etiketterne "x86-64" eller "amd64", og i Mac OS X bruges etiketten "x86_64", hvis det er nødvendigt at understrege, at dette software bruger 64-bit instruktioner.
16-bit Intel 8086-processoren blev skabt i juni 1978. Først virkede den ved en frekvens på 5 MHz, derefter ved 8 og 10 MHz. Den blev lavet ved hjælp af 3 mikron teknologi og havde 29.000 transistorer.
8088Lidt senere, i 1979, blev Intel 8088 udviklet, som fungerede på samme frekvenser som Intel 8086, men brugte en 8-bit databus (den interne processorbus forblev 16-bit) for at sikre større kompatibilitet med den daværende tilgængelige i bevægelse rundt i periferien. På grund af dens lavere pris blev den meget brugt i tidlige IBM PC-systemer i stedet for 8086.
80186 / 80188I 1982 blev 80186 og 80188 udgivet, som i starten ikke var meget brugt. Samtidig viste disse processorer sig at være yderst vellykkede til brug i indlejrede systemer og bliver stadig produceret i forskellige modifikationer. [3] Adskillige nye instruktioner blev oprindeligt tilføjet til disse processorer, og clockhastigheden blev øget. Efterfølgende dukkede ændringer op, der indeholdt yderligere hardware, såsom integrerede serielle portcontrollere.
80286Annonceret i 1982. Han arbejdede ved frekvenser på 6, og derefter 8, 10, 12, 16, 20 MHz. Den blev produceret i henhold til 1,5 mikron procesteknologi og indeholdt omkring 134 tusind transistorer. Med dets udseende dukkede et koncept som beskyttet tilstand (beskyttet tilstand) og virtuel hukommelse op. Processorens ydeevne sammenlignet med 8086 steg flere gange (0,99-2,6 millioner operationer pr. sekund).
80386 (i386)Den første 32-bit processor kørte ved 16-40 MHz. Dukkede op i 1985. Det markerede en revolution i verden af x86-processorer. De grundlæggende principper, der er fastlagt i denne chip, har overlevet uden grundlæggende ændringer til i dag (i al denne tid har ændringerne primært drejet sig om at øge ydeevnen, udvide instruktionssættet og øge bitdybden). De første 386 processorer indeholdt en alvorlig fejl, der gjorde det umuligt at fungere i beskyttet tilstand . Den reviderede version hed 386DX.
Billigere i386SX-processorer blev også produceret med en ekstern databus skåret til 16 bit og en 24-bit adressebus.
Til indlejrede applikationer er i386EX-processoren blevet produceret og produceres stadig. Den har on-chip serielle porte, programmerbare timere (Intel 8254-kompatible), prioritetsafbrydelsescontrollere (Intel 8259A-kompatible) og controllere til direkte hukommelsesadgang (Intel 8237A-kompatibel).
i386 var den første processor, der kunne bruge cache-hukommelse (placeret på en ekstern chip).
80486 (i486)i486-processoren (1989) er en forbedring af 386-processoren og den første Intel-skalære processor (en række operationer blev udført i én clock-cyklus). Den havde en indbygget FPU (Floating Point Unit - en floating point unit) og for første gang - en integreret cache-hukommelse (8 KB). 80486 er den første Intel-processor, der bruger FSB-frekvensmultiplikatorteknologien ( i modellerne DX 2-50, DX2-66, DX4-75 og DX4-100).
For bærbare computere og indlejrede systemer blev der i begyndelsen af 1990'erne frigivet en "letvægts" modifikation af i486SX uden en integreret FPU.
Der var også en modifikation til indlejrede applikationer - i486GX . Det var en lavspændings 486SX med databussen trimmet til 16 bit. i486GX-pakke - TQFP-176, frekvenser - fra 16 MHz ved Vcore = 2,0 V til 33 MHz ved 2,7 V.
Intel RapidCadIntel RapidCad - modifikation 486, et sæt med to chips. Den vigtigste blev installeret i 386DX-sokkelen og var en 486DX uden L1-cache, men med en coprocessor. En ekstra chip var et stik til 387DX-sokkelen og tjente til at behandle FERR-signalet.
Intel486 OverdriveIntel486 OverDrive (P23T) er en mikroprocessor designet til at opgradere systemer baseret på Intel 486 mikroprocessoren.
Pentium (i586)Pentium (1993. Intel forlod nummernavne som 8086, 80286 osv., fordi de ikke kunne patentere numrene) - Intels første superskalære og superpipelinede processor .
Superscalar betyder, at processoren kan udføre mere end én operation pr. clock-cyklus. Super-pipelining betyder, at processoren har flere beregningspipelines . Pentium har to af dem, hvilket gør, at den ideelt set kan være dobbelt så produktiv som 486'eren ved de samme frekvenser og udføre 2 instruktioner pr. ur på én gang.
Derudover havde Pentium-processoren en fuldstændig nydesignet og meget kraftfuld FPU på det tidspunkt , hvis ydeevne forblev uopnåelig for konkurrenter indtil slutningen af 1990'erne.
Pentium Over DrivePentium OverDrive er en mikroprocessor designet til at opgradere systemer baseret på Intel 486 mikroprocessorer. Den blev installeret i Socket 3 , havde en dobbelt L1 cache med Write-Thru organisation, en indbygget strømregulator, ×2,5 multiplikation og frekvenser på 63 og 83 MHz .
Pentium Pro (i686)Pentium Pro (1995) - den første processor i sjette generation. Idéerne og teknologierne indlejret i denne chip bestemte arkitekturerne for alle moderne x86-processorer: grenforudsigelsesenheder, registeromdøbning, RISC-kerne, L2-cachehukommelse integreret i én pakke med kernen . Imidlertid førte den teknologiske kompleksitet af kernen af denne processor til et relativt lavt udbytte af passende chips med datidens teknologier, hvilket påvirkede den høje pris på Pentium Pro. Samtidig havde processoren en ret lav ydeevne ved eksekvering af en 16-bit kode. Derfor blev denne processor kun brugt i high-end systemer og servere.
Pentium MMX (i586)Pentium MMX (januar 1997) er den femte generations processor, og faktisk blot en modifikation af Pentium-kernen. En ny blok med heltalsmatrixberegninger MMX blev tilføjet, og størrelsen af cachehukommelsen på det første niveau blev øget til 32 KB . Kerneforsyningsspændingen blev reduceret til 2,8 V, mens processorens periferiudstyr blev forsynet med den samme spænding på 3,3 V. Dette krævede at skifte bundkort ved at tilføje en ekstra 2,8 V (MMX-kompatibel) kilde.
Pentium II (i686)Pentium II (maj 1997) - modifikation af Pentium Pro -kernen for at gøre den mere tilgængelig. Den integrerede cache og cache-tagget blev flyttet for at adskille chips med en halveret frekvens. Dette gjorde processoren enklere og billigere, selvom den gjorde den langsommere end Pentium Pro.
De første Pentium II-processorer blev produceret med en 256 KB L2-cache, derefter blev dens volumen øget til 512 KB.
Det nye design af processoren krævede placering af elementer på printkortet, hvilket igen førte til en ændring i design af processoren. Disse CPU'er blev produceret i form af SECC-patroner installeret i en speciel slot på kortet ( Slot 1 ).
Derudover blev der tilføjet en MMX-blok til Pentium II-kernen.
CeleronCeleron er en forenklet modifikation af Pentium II / III / IV / Core / Core 2-processorer til at bygge billige computere. Den første Celeron (Covington-kerne, 266/300 MHz) var en Pentium II uden en cache på andet niveau og en plastikpatron. PCB er også blevet forenklet. Denne pakke kaldes SEPP (Single Edge Processor Package). Som et resultat viste disse processorer en deprimerende lav ydeevne, selvom de var meget billige og nemt tilføjede op til 50 % frekvens, når de blev overclocket. Alle efterfølgende varianter af denne processor havde en integreret fuldfrekvenscache på andet niveau. De væsentligste forskelle mellem Celeron-processorer er i mængden af denne cache og busfrekvensen, og også ofte i den øgede latenstid af adgang til cachehukommelsen i forhold til den originale processor.
Den anden Celeron-modifikation (Mendocino-kerne, frekvenser 300...533 MHz) demonstrerede højere ydeevne i mange opgaver end Pentium II med samme frekvens. Dette blev forklaret med, at den lille (128 KB) Mendocino-cache var placeret på samme chip som kernen og opererede på kernefrekvensen, mens den store (512 KB) Pentium II-cache lå langt nok fra kernen og opererede kl. halvdelen af frekvensen. Intel tillod ikke flere sådanne fejl, og alle efterfølgende Celerons er garanteret langsommere end fuldgyldige processorer af samme generation.
Pentium III (i686)Pentium III , der oprindeligt blev fremstillet på en 0,18 µm proces , adskiller sig fra P2 hovedsageligt ved tilføjelse af SSE instruktioner . De senere processorer i denne serie blev fremstillet i henhold til 0,13 mikron procesteknologi, modtog en fuldfrekvens cache-hukommelse integreret i kernechippen (først 256 KB, derefter 512 KB) og fungerede som en prototype for Pentium M -arkitekturprocessorerne . De blev produceret i både SECC/SECC2 (Slot 1) og FCPGA-370 (PGA-370) design.
Pentium MPentium M er en stærkt modificeret version af Pentium III-processoren baseret på Tualatin-kernen, designet til brug i mobile computere.
Pentium 4 (i786)Pentium 4 er en revolutionerende hyperpipelining - processor med en 20-trins pipeline. Ifølge Intel kan processorer baseret på denne teknologi opnå en frekvensstigning på omkring 40 % i forhold til P6-familien med den samme teknologiske proces (med den "korrekte" processorbelastning). I praksis arbejdede den første generation af processorer endnu langsommere end Pentium III.
Senere blev de suppleret med understøttelse af Hyper-threading og 64-bit kode.
Core/Core 2Efter svigt af den seneste generation af Pentium 4-processorer baseret på Tejas-kernen, blev det besluttet at henvende sig til en anden gren af mikroarkitekturen. Processorerne er baseret på en nydesignet Pentium M -kerne . Således fortsatte P6-kernen, der blev brugt i Pentium Pro-processorer , sin udvikling, øgede frekvensen fra 150 MHz til 3,2 GHz og erhvervede en ny systembus, understøttelse af multi-core, multimedie-instruktioner.
Core-processorer er en løsning til bærbare computere , single- og dual-core, der udfører 32-bit kode.
Core 2-processorer - tilgængelig i både desktop- og mobilversioner, inkluderer en række mikroarkitektoniske forbedringer og er i stand til at udføre 32/64-bit kode. Antallet af kerner varierer fra en til fire.
Core i7/Core i5/Core i3Videreudvikling af ideerne i Core 2-processorerne . Efter at have bevaret det grundlæggende design af processorkerner, fik den første Core i7 , der dukkede op , en modulær struktur, der gør det nemt at variere deres antal, en integreret hukommelsescontroller (tre-kanals DDR3 i high-end segmentet og dual-channel DDR3 i mainstream) og en ny bus, der forbinder processoren med chipsættet. Mikroarkitektoniske forbedringer gør det muligt for Core i7 at yde bedre end Core 2 ved lige frekvenser. Der blev lagt stor vægt på energieffektiviteten af den nye processor.
Senere dukkede billigere Core i5 / i7 op med en dual-channel memory controller og fire kerner, derefter Core i3 / i5 med to kerner og en integreret videokerne.
I sektoren for de mest produktive løsninger produceres også Core i7-processorer med en tre-kanals hukommelsescontroller og seks kerner. Takket være brugen af Hyper-threading-teknologi er disse processorer i stand til samtidigt at udføre op til 12 instruktionstråde.
Også i Intels sortiment er der særligt produktive processorer til hjemme-pc'er: Core i7 med en tre-kanals hukommelsescontroller og otte kerner. Antallet af tråde er steget til 16.
atomIntel Atom - lavpris ultra-effektive single- og dual-core processorer designet til brug i de såkaldte internetcomputere - netbooks og nettops (computere, hvori computerkraften ofres til fordel for effektivitet, støjfrihed og lille størrelse).
Den er baseret på en modificeret kerne fra de første Pentiums, som blev tilpasset til den nye procesteknologi, tilføjede muligheden for at udføre 64-bit kode og multimedieinstruktioner, samt en cache på andet niveau og understøttelse af multi-threaded eksekvering ( SMT , en analog af Hyper-threading ). For at forenkle designet blev det besluttet at opgive udførelse af kommandoer uden for orden, hvilket havde en dårlig effekt på ydeevnen.
Gennem indsatsen fra Intel blev de nye Atom-serieprocessorer udstyret med 4 fulde kerner og forbedret brancheforudsigelse, hvilket gjorde det muligt for nye tablet-pc'er baseret på dem at blive konkurrencedygtige i ydeevne med bærbare computere i mellemklassen, der blev udgivet i slutningen af 2000'erne.
xeonEn familie af processorer fokuseret på servere og multi -threaded computing .
Den første repræsentant for denne familie var baseret på Pentium II -arkitekturen , det var en patron med et printkort, hvorpå kernen, L2-cache og cache-tag var monteret. Monteret i slids Slot 2 .
Moderne Xeons er baseret på Core 2 / Core i7- arkitekturen .
Kloner af tilsvarende processorer fra Intel. Normalt produceret med en maksimal frekvens et hak højere end originalen. Op til 486DX2-66 var der ingen andre forskelle mellem processorerne. Det var næsten umuligt at skelne disse processorer programmæssigt, men ved at ændre programkoden i assembler var det muligt at måle størrelsen af mikroprocessorinstruktionsbufferen, som fandtes i intel-processorer op til pentium og havde en anden størrelse i bytes, med en tæller og skelne en type processor fra en anden. Også ved at analysere evnen til at udføre forskellige yderligere kommandoer, der blev tilføjet i forskellige modeller af mikroprocessorer, var det muligt at skelne alle disse mikrokredsløb.
5x86Klon i486. Mens Intel stoppede ved 100 MHz for i486, frigav AMD processorer med frekvenser op til 133 MHz. De adskilte sig også ved en øget volumen af cachen på første niveau (16 KB) og en multiplikator (×4).
K5 /SSA5Pentium analoger. De første processorer udviklet af AMD uafhængigt. På trods af overlegenheden i heltalsoperationer i forhold til analoger fra Intel (en række sjette generations teknologier blev brugt i kernen af denne processor), var ydeevnen af flydende komma-enheden betydeligt ringere end Pentium-processorer med en lignende klokfrekvens. Derudover var der dårlig kompatibilitet med software fra nogle producenter. Manglerne ved K5 blev stærkt overdrevet i forskellige online og andre uformelle diskussioner og bidrog til den (generelt uretfærdige) forringelse af AMD-produkternes omdømme hos brugerne i lang tid. [fire]
K6Splinterny AMD-processor (april 1997), baseret på en kerne købt hos NexGen . Denne processor havde en femte generations konstruktion, men tilhørte den sjette generation og var positioneret som en konkurrent til Pentium II . Inkluderet en MMX-blok og en noget redesignet FPU -blok . Disse blokke arbejdede dog stadig 15-20 % langsommere end Intel-processorer med tilsvarende frekvens. Processoren havde 64 KB L1-cache.
Samlet set gjorde Pentium II-lignende ydeevne, kompatibilitet med ældre bundkort og en tidligere lancering (AMD introducerede K6 en måned tidligere end Intel introducerede P-II) og lavere pris, der gjorde den ret populær, men AMD's produktionsproblemer spolerede markant omdømmet til denne processor.
K6-2Videreudvikling af K6-kernen. Disse processorer har tilføjet understøttelse af det specialiserede 3DNow! . Den reelle ydeevne viste sig dog at være væsentligt lavere end Pentium II'er med tilsvarende clocket (dette skyldtes det faktum, at ydelsesforstærkningen med stigende frekvens var højere for P-II på grund af den interne cache) og kun Celeron kunne konkurrere med K6-2. Processoren havde 64 KB L1-cache.
K6-IIIMere teknologisk succesfuld end K6-2, et forsøg på at skabe en analog af Pentium III . Det var dog ikke nogen marketingsucces. Det udmærker sig ved tilstedeværelsen af 64 KB af cache på første niveau og 256 KB af cache på andet niveau i kernen, hvilket gjorde det muligt for den at udkonkurrere Intel Celeron ved en lige clockfrekvens og ikke være væsentligt ringere end den tidlige Pentium III.
K6-III+Svarende til K6-III med PowerNow! og højere frekvens og udvidet instruktionssæt. Oprindeligt beregnet til bærbare computere . Det blev også installeret i desktop-systemer med en Super 7 -processor socket . Bruges til at opgradere desktop-systemer med et Socket 7 -processorstik (Kun på bundkort, der leverer to spændinger til processoren, den første til processor I/O-blokke og den anden til processorkernen. Ikke alle producenter leverede dobbelt strøm på de første modeller af deres bundkort med en socket socket 7).
K6-2+En analog af K6-III + med en cache på andet niveau skåret ned til 128 KB.
AthlonEn meget succesfuld processor, takket være hvilken AMD var i stand til at genvinde sin næsten tabte position på mikroprocessormarkedet. Cachen på det første niveau er 128 KB. Oprindeligt blev processoren produceret i en patron med en cache på andet niveau (512 KB) på kortet og installeret i Slot A (som er mekanisk, men ikke elektrisk kompatibel med Intels Slot 1 ). Så skiftede jeg til Socket A og havde 256 KB L2-cache i kernen. Med hensyn til hastighed er det en omtrentlig analog til Pentium III.
DuronEn strippet version af Athlon adskiller sig fra sin overordnede i størrelsen af det andet niveaus cache (kun 64 KB, men integreret i chippen og kører på kernefrekvensen).
Celeron-konkurrent fra generationerne Pentium III / Pentium 4. Ydeevnen er mærkbart højere end tilsvarende Celerons, og i mange opgaver matcher den Pentium III.
Athlon XPFortsat udvikling af Athlon-arkitekturen. Med hensyn til ydeevne er den analog med Pentium 4 . Sammenlignet med almindelig Athlon er der tilføjet understøttelse af SSE -instruktioner .
SempronEn billigere (på grund af den reducerede L2-cache) version af Athlon XP- og Athlon 64-processorerne.
De første Sempron-modeller blev ommærket til Thoroughbred og Thorton Athlon XP-chips med 256 KB L2-cache og kørte på en 166 (333 DDR) bus. Senere blev nedstrippede versioner af Athlon 64/Athlon II produceret (og bliver produceret) under Sempron-mærket, positioneret som konkurrenter til Intel Celeron. Alle Semprons har en trunkeret niveau 2-cache; yngre Socket 754-modeller havde Cool&quiet og x86-64 blokeret ; Socket 939-modeller havde en blokeret dual-channel memory mode.
OpteronFørste processor, der understøtter x86-64-arkitekturen .
Athlon 64Den første ikke-server-processor, der understøtter x86-64-arkitekturen.
Athlon 64X2Fortsættelse af Athlon 64-arkitekturen, har 2 kerner.
Athlon FXHavde et ry som "den hurtigste legetøjsprocessor". Det er i virkeligheden en Opteron 1xx-serverprocessor på desktop-sockets uden understøttelse af registreret hukommelse. Produceret i små partier. Det koster meget mere end dets "masse" modstykker.
FænomEn videreudvikling af Athlon 64-arkitekturen er tilgængelig i versioner med to (Athlon 64 X2 Kuma), tre ( Phenom X3 Toliman) og fire ( Phenom X4 Agena) kerner.
Fænom IIFænom modifikation . Små arkitektoniske ændringer, overgangen til en tyndere procesteknologi og tilføjelsen af L3-cache fra 4 til 6 MB tillod disse processorer at øge ydeevnen med 10-20% sammenlignet med deres forgængere. Tilgængelig i Socket AM2+ og Socket AM3 designs . Samtidig kan førstnævnte kun fungere med DDR2-hukommelse, mens sidstnævnte kan fungere med både DDR2 og DDR3. Det maksimale antal kerner er steget til seks.
Athlon IIPhenom II uden L3-cache og ikke mere end fire kerner.
TurionEn mobil version af Athlon 64 med reduceret strømforbrug og avanceret strømstyring. Fås i versioner med en og to kerner.
Athlon NeoDe mest strømoptimerede single- og dual-core processorer, nære slægtninge til den mobile Sempron og Turion 64 X2. Fås i BGA-design, designet til brug i lette og tynde bærbare computere. Positioneret som konkurrenter til Intel Atom.
GeodeEn integreret løsning ( SoC ), der inkluderer chipsættenes northbridge- funktionalitet. Modeller med navnet SCxxxx kombinerer processorkernen, hukommelsescontrolleren, grafikadapteren og I/O-controlleren i én pakke. Processorerne er designet til at bygge tynde klienter , brugerdefinerede set-top-bokse og indlejrede controllere . Hele serien har lavt strømforbrug og lave omkostninger.
De første modeller blev produceret af Cyrix under navnet MediaGX og havde en Cyrix 6x86 kerne . Efter National Semiconductors overtagelse af Cyrix og videresalget af varemærket til VIA , blev processoren omdøbt til Geode, og udviklingen af processoren blev fortsat af National Semiconductors ingeniører. Efterfølgende blev chippen og alle udviklinger solgt til AMD. Nu produceres Geode af AMD i tre versioner. Geode LX og Geode GX er baseret på den gamle Cyrix 6x86 kerne . Geode NX har en Athlon XP-kerne. Udviklingen af denne familie stoppede tilbage i 2006, men chipsene vil blive ved med at blive produceret, så længe der er efterspørgsel efter dem.
Harris Semiconductor producerede Intel 8086/8088 kloner [5] - Harris HS80C86/883 og HS80C88/883.
Harris 286Harris Semiconductor producerede de hurtigste kloner af 80286-processoren med hensyn til frekvens - den maksimale frekvens af HS80C286 var 25 MHz (hele linjen var 12, 16, 20 og 25 MHz). Processorkernen var en nøjagtig kopi af Intel 80286, ligesom de fleste andre kloner.
Processorer designet til at blive installeret i 386SX-sokkelen. De havde en cachehukommelse på første niveau på 1 KB og et sæt instruktioner til 486 processorer. De havde ikke en indbygget coprocessor. I fremtiden blev der også produceret modeller med frekvensfordobling (Cx486SRx²). De var primært beregnet til en billig opgradering af computere med en 386SX-processor.
Cx486-DLCProcessorer designet til at blive installeret i 386DX-sokkelen. De havde en cachehukommelse på første niveau på 1 KB og et sæt instruktioner til 486 processorer. De havde ikke en indbygget coprocessor. I fremtiden blev der også produceret modeller med frekvensfordobling (Cx486DRx²). De var primært beregnet til en billig opgradering af computere med en 386DX-processor.
Cx486-SEn analog af i486SX af Cyrix' eget design. Ydeevne ringere end analoger fra Intel og AMD.
Cx486-DXEn analog til i486DX af Cyrix' eget design. Lidt ringere i heltalsydeevne i forhold til analoger fra Intel og Amd, men overgik dem i flydende kommaberegninger (det var påvirket af, at de 386 matematiske coprocessorer udviklet af Cyrix var blandt de bedste).
Cx5x86 (M1sc)Et biprodukt af M1-udvikling er M1-skalaren, en forenklet version af den til socket 486. Den blev udgivet for at imødegå Intels Pentium. Cx5x86 brugte de arkitektoniske funktioner, der er iboende i den femte generation af processorer - en pipelinet ALU, en grenforudsigelsesenhed, afkodning og udførelse af instruktioner i én cyklus. Den tilbageskrivningscache, der var fælles for instruktioner og data, havde en størrelse på 16 KB. Processoren viste sig at være ganske vellykket, men formåede ikke at få meget distribution. Produceret med frekvenser på 100 og 120 MHz.
Cx6x86 (M1)På trods af antydningen af 6. generation af processorer i navnet, var Cx6x86 en 5. generations processor. Processorkernen er superskalær. Cachen på første niveau er generel, 16 KB. Mærkningen af disse processorer brugte den såkaldte Pentium Rating. For eksempel skulle en processor med en PR-200 matche ydeevnen af en Intel Pentium-processor med en frekvens på 200 MHz. I dette tilfælde kan den faktiske frekvens af processoren være meget lavere. Disse processorer blev produceret med en frekvens på 80 til 150 MHz og PR fra 90+ til 200+. Senere blev der også produceret en modifikation med reduceret strømforbrug og dobbelt effekt - Cx6x86L.
Cx6x86MX (MII)En forbedret version af Cx6x86 blev kaldt Cx6x86MX. De vigtigste forskelle er cachen på første niveau øget til 64 KB, understøttelse af MMX-instruktioner. Frekvenser - 133 ... 233 MHz, PR - 166 ... 266. Efterfølgende modtog processoren understøttelse af en systembusfrekvens på 100 MHz, og blev kendt som Cyrix MII (dette blev gjort for at positionere processoren som en konkurrent til Intel Pentium II). Frekvenser - 225 ... 300 MHz, PR - 300 ... 433.
MediaGXPraktisk talt, SoC . Et hus rummede processorkernen (først Cx5x86, derefter Cx6x86MX), RAM- og PCI-buscontrollere og UMA-videokernen. Processoren brugte sin egen socket, blev ikke understøttet af bundkortproducenter og modtog ikke distribution. Frekvenser - 120 ... 180 MHz, PR - 180 ... 233.
Kloner af Cyrix-processorer blev også produceret af IBM, Texas Instruments, SGS Thompson.
På basis af Cyrix-kerner, VIA, AMD, National Semiconductor-processorer er eller blev produceret.
Processoren er udviklet af Centaur Technology , en afdeling af IDT . Som en Socket 7- processor var den meget tættere i arkitekturen på 80486-processorerne . Én 4-trins heltalspipeline , coprocessoroperationer blev ikke pipelinet . Manglede også eksekvering i uorden, filialforudsigelse og registeromdøbning. Samtidig havde processoren en MMX-instruktionsudførelsesenhed, selvom den var dobbelt så langsom som Pentium MMX . På grund af dette var processorkernen meget enkel, lille i forhold til antal transistorer, dimensioner og strømforbrug. Processorerne blev produceret med frekvenser på 180, 200, 225 og 240 MHz og krævede ikke dobbelt strømforsyning.
WinChip-2En forbedret version af den tidligere processor. Coprocessoren blev pipelinet, ydeevnen af MMX-blokken blev fordoblet, understøttelse af 3DNow!-instruktioner dukkede op. Frekvenser - 200-250 MHz.
WinChip-2AAlt det samme, men på en mere subtil teknologi. Som et resultat, behovet for dobbelt strømforsyning (2,8 / 3,3 V).
WinChip-3Det var planlagt som en forbedret version af den tidligere model. Den vigtigste forbedring er dobbelt cachestørrelse . Den blev dog aldrig frigivet. Centaur Technology blev i sin helhed solgt til VIA , og på baggrund af denne udvikling blev VIA C3 lavet med Samuel-kernen.
Klon 8086. Produceret i DIP- og QFP-pakker.
OKI M80C88Klon 8088. Produceret i DIP- og QFP-pakker.
Processor til Socket 7 med understøttelse af MMX instruktioner. Forskellige i lavt strømforbrug og lav produktivitet. Den blev produceret med frekvenser på 150, 166, 190, 200, 250 MHz. Den modtog ikke meget distribution, og mP6-kernen blev solgt til SiS .
Første processor frigivet under VIA -mærket . Udgivet med forskellige kerner fra forskellige udviklingsteams. Socket 370 stik .
Den første udgivelse er baseret på Joshua-kernen, erhvervet af VIA sammen med Cyrix -udviklingsteamet .
Den anden udgivelse er med Samuel-kernen, udviklet på basis af den aldrig udgivne IDT WinChip -3. Det var kendetegnet ved fraværet af en cache-hukommelse på andet niveau og følgelig et ekstremt lavt ydeevne.
Den tredje udgivelse er med Samuel-2-kernen, en forbedret version af den tidligere kerne, udstyret med en cache på andet niveau. Processoren blev produceret ved hjælp af tyndere teknologi og havde reduceret strømforbrug. Efter udgivelsen af denne kerne gav VIA Cyrix III-mærket endelig plads til VIA C3.
Den fjerde udgivelse er med Ezra-kernen. Der var også en Ezra-T-variant tilpasset til at arbejde med en bus designet til Tualatin -kerne Intel-processorer . Videreudvikling i retning af energibesparelse.
Den femte udgivelse er med Nehemiah-kernen (C5P). Denne kerne fik endelig en fuldhastigheds-coprocessor, understøttelse af SSE -instruktioner , samt understøttelse af AES-kryptering og en hardwaregenerator til tilfældige tal. Samtidig mistede processoren understøttelse af 3DNow! .
VIA C7Videreudvikling af VIA C3. Esther-kerne (C5J), pakke - nano BGA 2 (21×21 mm), loddet direkte på kortet . Tilføjet hardwareunderstøttelse til Secure Hash SHA-1 og SHA-256 og RSA -kryptering , NX-bit- understøttelse, MMX , SSE , SSE2 og SSE3 understøttet . Yderligere reduktion af strømforbruget ved driftsfrekvenser op til 2 GHz. Egen systembus (VIA V4 800 MHz) til kommunikation med chipsættet. Den er også tilgængelig i mobil (VIA C7-M) og desktop (VIA C7-D) versioner.
VIA Eden ESPEn integreret løsning, der inkluderer en VIA C3-processor med en Nehemiah C5P-kerne og en nordbro med integreret UMA-grafik. Den har ekstremt lavt strømforbrug (op til 7 W ved 1 GHz). Fås med frekvenser fra 300 MHz (VIA Eden ESP 3000) til 1 GHz (VIA Eden ESP 10000). Kompatible sydbroer er VT8235M , VT8237R+ (med SATA-understøttelse), VT8251 (2×1 PCI-E) og VIA 686B.
VIA CoreFusionVidereudvikling af VIA Eden ESP ideer. Tilgængelig i to versioner - VIA Mark og VIA Luke , som adskiller sig i den integrerede videokerne, understøttet hukommelsestype og driftsfrekvenser. For VIA Mark er det S3 Graphics ProSavage4 / SDR PC133 / 533/800 MHz, og for VIA Luke er det VIA UniChrome Pro / DDR PC3200 / 533/800/1000 MHz. Kompatible sydbroer: VT8235M, VT8237R+ (SATA-kompatibel), VT8251 (2×1 PCI-E) og VIA 686B.
VIA NanoVIAs første x86-64 - processor, baseret på Isaiah -kernen . Pin kompatibel med VIA C7. Fås i frekvenser fra 1 GHz til 1,8 GHz. Strømforbruget for 1,6 GHz-modellen er op til 17 W ved fuld belastning. Blandt nyskabelserne er den ekstraordinære udførelse af instruktioner. Positioneret som en konkurrent til Intel Atom .
Det udgav en række processorer, hvoraf nogle (V20 / V30 kerne) var softwarekompatible med både 80186 og 8080 . Skift mellem driftstilstande blev udført ved hjælp af tre yderligere instruktioner. I hardware lignede de en stærkt accelereret version af 8088 eller 8086 .
Processorer baseret på V33-kernen havde ikke en 8080-emuleringstilstand, men understøttede, ved hjælp af to yderligere instruktioner, en udvidet adresseringstilstand.
I marts 1994 blev NexGen Nx586-processoren introduceret. Den var positioneret som en Pentium-konkurrent, men havde i starten ikke en integreret coprocessor. Brugen af en proprietær bus medførte behovet for at bruge proprietære chipsæt, NxVL (VESA Local Bus) og NxPCI 820C500 (PCI), og en inkompatibel processor socket. Chipsættene er udviklet sammen med VLSI og Fujitsu. Nx586 var en superskalær processor og kunne udføre to instruktioner pr. ur. L1-cachen var separat (16 KB for instruktioner + 16 KB for data). L2 cache-controlleren var integreret i processoren, mens selve cachen var placeret på bundkortet. Ligesom Pentium Pro var Nx586 en RISC-processor indeni. Manglen på understøttelse af CPUID-instruktioner i tidlige modifikationer af denne processor førte til, at den programmæssigt blev defineret som en hurtig 386-processor. Det var også forbundet med, at Windows 95 nægtede at blive installeret på computere med sådanne processorer. For at løse dette problem blev der brugt et særligt hjælpeprogram (IDON.COM), som repræsenterede Nx586 til Windows som en 586-klasse CPU. Nx586 blev produceret på IBMs faciliteter.
Der blev også udviklet en Nx587 FPU co-processor, som var monteret på fabrikken oven på processoren. Sådanne "samlinger" blev mærket Nx586Pf. Ved udpegelsen af ydeevnen af Nx586 blev der brugt P-rating - fra PR75 (70 MHz) til PR120 (111 MHz).
Nx686Den næste generation af NexGen-processorer, som aldrig blev udgivet, men tjente som grundlag for AMD K6.
SiS550 SoC-familien er baseret på den licenserede Rise mP6-kerne og er tilgængelig på frekvenser fra 166 til 266 MHz. Samtidig forbruger de hurtigste løsninger kun 1,8 watt. Kernen har tre heltals 8-trins pipelines. Cache L1 separat, 8+8 KB. Den indbyggede coprocessor er pipelinet. SiS550 inkluderer, udover standardsættet af porte, en 128-bit AGP 4x UMA videokerne, 5.1-kanals lyd, understøttelse af 2 DIMM'er (op til 1 GB RAM ), blød modemunderstøttelse og en UDMA100 IDE -controller .
SiS551 tilføjer også et integreret Smart Card og Memory Stick-controller, mens SiS552 tilføjer en MPEG2 - dekoder , DVD- og VCD - afspilningsacceleration .
SiS551-klonen er også produceret af Jan Yin Chan Electronics Co., LTD (DM&P) under varemærket Vortex86 (chippen er mærket som M6127D) og Xcore Corporation Ltd. mærket som Xcore86 .
Strengt taget er Crusoe ikke en x86-processor. For at udføre x86-kode bruges en softwareoversætter til interne 128-bit VLIW instruktioner kaldet Code Morphing Software. Dette gør det muligt for processoren at tilpasse sig ethvert sæt instruktioner og forbedrer energieffektiviteten, men ydeevnen af en sådan løsning er naturligvis lavere end for processorer med et indbygget x86-instruktionssystem.
EffektivitetUdvikling af ideen om at kombinere VLIW-processoren og Code Morphing Software. Den væsentligste forskel fra den tidligere løsning er, at VLIW-instruktioner er blevet 256-bit.
U5 er en familie af 80486 klasse mikroprocessorer . De havde flere mærkningsmuligheder: U5SB-40, U5S-Super33 osv. Hovedhøjdepunktet var en væsentligt optimeret mikrokode og et fuldstændig statisk design, som et resultat af hvilket disse processorer havde øget ydeevne (nogle skruppelløse sælgere solgte dem endda som frekvensfordobling processorer - U5S -33 som SX2-66 og U5S-40 som SX2-80). U5S-modellerne havde ikke en matematisk coprocessor , og coprocessor-varianterne skulle hedde U5D, men blev aldrig udgivet.
Intel fik et forbud mod salg af grønne CPU'er i USA med argumentet, at UMC brugte Intels mikrokode i sine processorer uden en licens.
Der var også nogle problemer med softwaren. For eksempel nægtede spillet Doom at køre på denne processor uden at ændre konfigurationen, og Windows 95 ville fryse fra tid til anden. Dette skyldtes det faktum, at programmer fandt en manglende coprocessor i U5S, og forsøg på at få adgang til den endte i fiasko.
Svarende til 8086 .
CJSC MCST har udgivet en serie af Elbrus -mikroprocessorer , der giver dig mulighed for at arbejde i binær kompatibilitetstilstand med x86-arkitekturen. Kompatibilitet sikres gennem software-dynamisk oversættelse af x86-koder ved hjælp af hardwareunderstøttelse indlejret i Elbrus -mikroprocessorens arkitektur .
BLX IC Design og China Institute of Computer Technology har siden 2001 udviklet MIPS-baserede processorer med hardwareoversættelse af x86-kommandoer. Disse processorer er produceret af STMicroelectronics. Et partnerskab med TSMC overvejes.
Godson (Longxin, Loongson , Dragon)Godson er en 32-bit MIPS-baseret RISC-processor. Teknologi - 180 nm. Introduceret i 2002. Frekvens - 266 MHz, et år senere - en version med en frekvens på 500 MHz.
Godson 2
I dette afsnit angiver bogstavet "h" efter tallet værdien i hexadecimal notation. Hvis der ikke er noget lignende ved siden af tallet, så er det en decimalværdi.
x86 bruger et relativt simpelt instruktionsnotationsformat, men på grund af nogle undtagelser kan det virke kompliceret. For en sikkerheds skyld kan du tage "Intel® 64 IA-32 Architectures Software Developer's Manual" (tilgængelig på Intel Corporations officielle hjemmeside i PDF-format) som hoveddokumentation. Der er detaljerede oplysninger om alle instruktioner.
Strukturen af en vilkårlig instruktion er som følger:
I listen ovenfor og nedenfor, for tekniske navne, accepteres navnet "kun latinske, arabiske tal" og minustegnet "-" med en understregning "_", og sagen er CamelCase (ethvert ord starter med store bogstaver og derefter kun små bogstaver, selvom det er en forkortelse: "UTF-8" → "Utf8" - alle ord samlet). Præfikserne AddressSize, Segment, BranchHint, Lock, OperandsSize og Repeat kan blandes. Resten af elementerne skal gå nøjagtigt i den angivne rækkefølge. Og du kan se, at byteværdierne for nogle præfikser er de samme. Deres formål og tilstedeværelse bestemmes af selve instruktionen. Segmenttilsidesættelsespræfikser kan bruges med de fleste instruktioner, mens BranchHint-præfikser kun kan bruges med betingede greninstruktioner. Situationen er den samme med de obligatoriske og gentagende præfikser - et eller andet sted angiver de instruktionen, og et eller andet sted angiver de gentagelse. OperandSize-præfikset sammen med de obligatoriske præfikser omtales også som SIMD-instruktionspræfikser. Separat skal det siges om Vex-præfikset. Det erstatter præfikserne Rex, Mandatory, Escape og OperandsSize og komprimerer dem ind i sig selv. Det er ikke tilladt at bruge Lock-præfikset sammen med det. Selve låsepræfikset kan tilføjes, når destinationen er en operand i hukommelsen.
En oversigtsliste over alle interessetyper med hensyn til instruktionskodning:
I parentes svarer de engelske navne på tilstandene til de officielle. Der er også syntetiske tilstande som unreal (Unreal x86 Mode), men de følger alle af disse tre (faktisk er de hybrider, der kun adskiller sig i adressestørrelse, operander osv.). Hver af dem bruger den "native" adresseringstilstand, men den kan ændres til en alternativ med OperandsSize-præfikset. I 16-bit-tilstand vil 32-bit-adressering være aktiveret, i 32-bit-tilstand, 16-bit-adressering, og i 64-bit-tilstand, 32-bit-adressering. Men hvis dette gøres, så er adressen nulpolstret (hvis den er mindre), eller dens højordens bit nulstilles (hvis den er større).
processorteknologier | Digitale|||||||||
---|---|---|---|---|---|---|---|---|---|
Arkitektur | |||||||||
Instruktionssæt arkitektur | |||||||||
maskinord | |||||||||
Parallelisme |
| ||||||||
Implementeringer | |||||||||
Komponenter | |||||||||
Strømstyring |