x86-arkitekturudvidelser (x86-udvidede funktioner) er tekniske løsninger udviklet af forskellige x86- mikroprocessorproducenter til deres egne processorer, som ofte findes i nogle modeller og ikke i andre. Softwareudviklere skal, før de bruger dem i deres egne programmer, udføre en speciel CPUID-kommando , der rapporterer tilstedeværelsen af visse udvidelser. Hvis udvidelsen ikke understøttes, skal programmet enten afslutte eller bruge andre algoritmer, der ikke bruger udvidelser.
Nogle gange bliver udvidelser ofte brugt i populære programmer, så begynder næsten alle producenter at inkludere dem i deres processorer.
De mest berømte udvidelser er MMX , SSE , 3DNow! , Hyper-threading . Grundlæggende er nye udvidelser udviklet af Intel og derefter afhentet af andre producenter. Men nogle gange sker det, at Intel selv inkluderer udvidelser skabt af andre virksomheder i sine processorer. For eksempel var dette tilfældet med x86-64-arkitekturen , først udviklet af AMD , og senere implementeret af Intel som Intel64/EM64T.
Udvidelse | CPUID- flag | Beskrivelse |
---|---|---|
FPU | EDX[0] | Indlejret flydende komma-enhed |
VME | EDX[1] | V86 tilstand forlængelse |
DE | EDX[2] | Forbedrede fejlfindingsværktøjer |
PSE | EDX[3] | Store sider (4MiB/2MiB) |
TSC | EDX[4] | Indbygget tidstæller (maskincyklusser) |
MSR | EDX[5] | Modelafhængige registre |
PAE | EDX[6] | Fysisk adresseudvidelse |
MCE | EDX[7] | Generering af en undtagelse for maskinkontrol |
CX8 | EDX[8] | CMPXCHG8B instruktion understøttet |
APIC | EDX[9] | Indbygget lokal interrupt controller |
SEP | EDX[11] | SYSENTER og SYSEXIT instruktioner er understøttet |
MTRR | EDX[12] | Det er muligt at indstille typen af cache for bestemte områder af hukommelsen i specielle registre |
PGE | EDX[13] | Globalt sideflag understøttet (ikke tømt til TLB ved kontekstskift) |
MCA | EDX[14] | Maskinstyring understøttet |
CMOV | EDX[15] | Betingede dataoverførselsinstruktioner understøttes |
P.A.T. | EDX[16] | Understøtter udvidede caching-attributter for individuelle sider |
PSE36 | EDX[17] | Store sider (4MiB) på fysiske adresser over 4GiB |
PSN | EDX[18] | Det er muligt at aflæse processorens serienummer |
CLFL | EDX[19] | CLFLUSH instruktion understøttet |
DTES | EDX[21] | Debug Trace og EMON Store MSR'er |
ACPI | EDX[22] | Der er midler til at måle temperaturen på processorkernen |
MMX | EDX[23] | Intel MMX teknologi instruktionssæt understøttet |
FXSR | EDX[24] | Det er muligt at gemme/gendanne den udvidede kontekst |
SSE | EDX[25] | SSE-instruktionssæt understøttes |
SSE2 | EDX[26] | SSE2 instruktionssæt understøttet |
SS | EDX[27] | selvsnoop |
HTT | EDX[28] | HyperThreading- teknologi er understøttet . |
TM1 | EDX[29] | Understøtter avanceret temperaturkontrol med afbrydelsesgenerering |
IA-64 | EDX[30] | Programmet kører i emuleringstilstand på en Itanium-processor |
PBE | EDX[31] | afventende pausebegivenhed |
SSE3 | ECX[0] | SSE3 instruktionssæt understøttet |
PCLMUL | ECX[1] | PCLMUL instruktion understøttet |
DTES64 | ECX[2] | 64-bit Debug Trace og EMON Store MSR'er |
MAN | ECX[3] | MONITOR/MWAIT-instruktioner understøttes |
DSCPL | ECX[4] | CPL-kvalificeret Debug Store |
VMX | ECX[5] | Understøtter Intel VT Virtualization Technology (Vanderpool) |
SMX | ECX[6] | Understøtter Intel TXT Trust Management Technology (LaGrande) |
EST | ECX[7] | Understøttet af Enhanced SpeedStep-teknologi |
TM2 | EDX[8] | Understøtter avanceret temperaturkontrol med afbrydelsesgenerering og THERM2_CONTROL register |
SSSE3 | ECX[9] | Understøtter SSSE3 instruktionssæt |
CID | ECX[10] | kontekst-id: L1-datacachen kan indstilles til adaptiv eller delt tilstand |
FMA | ECX[12] | FMA instruktionssæt understøttet |
CX16 | EDX[13] | CMPXCHG16B instruktion understøttet |
ETPRD | ECX[14] | MISC_ENABLE.ETPRD |
PDCM | ECX[15] | Performance Debug Capability MSR |
DCA | ECX[18] | Direkte cacheadgang (det vil sige evnen til at forhåndshente data fra MMIO) |
SSE4.1 | ECX[19] | SSE4.1 teknologi instruktionssæt understøttet |
SSE4.2 | ECX[20] | SSE4.2 teknologi instruktionssæt understøttet |
x2APIC | ECX[21] | Lokal APIC -udvidelse , 32-bit ID, APIC-registre tilgængelige som MSR |
MOVBE | ECX[22] | MOVBE instruktion understøttet |
POPCNT | ECX[23] | POPCNT instruktion understøttet |
AES | ECX[25] | Understøtter hardwareacceleration til AES- krypteringsalgoritme |
XSAVE | ECX[26] | Udvidet support til hel eller delvis lagring/gendannelse af udvidede kontekster |
OSXSAVE | ECX[27] | Flag, der angiver for applikationen, at operativsystemet er i stand til at gemme/gendanne udvidede kontekster (XMM-registre osv.) |
AVX | ECX[28] | Understøtter AVX vektor instruktionssæt og kodning med VEX præfiks |
Udvidelse | CPUID- flag [1] | Beskrivelse |
---|---|---|
SYSCALL | EDX[11] | SYSCALL- og SYSRET-instruktioner understøttes |
FCMOV | EDX[16] | Instruktioner til flydende punkt betinget dataoverførsel (FPU) understøttes [2] . |
MP | EDX[19] | Multiprocessor-konfigurationer understøttet |
NX | EDX[20] | En sideattribut er understøttet, der forbyder udførelse af programkode. |
MMX+ | EDX[22] | AMD MMX-teknologiudvidelser understøttet |
MMX+ [3] | EDX[24] | MMX-teknologiudvidelser fra Cyrix [4] understøttes . |
FFXSR | EDX[25] | Hurtig lagring/gendannelse af udvidede kontekster understøttes |
PG1G | EDX[26] | Kæmpesider (1GiB) |
TSCP | EDX[27] | Forbedret understøttelse af indbygget tidstæller |
LM | EDX[29] | Lang tilstand |
3DNOW+ | EDX[30] | Understøtter 3DNow! |
3DNOW | EDX[31] | Understøtter 3DNow! |
AHF64 | ECX[0] | LAHF/SAHF instruktioner tilgængelige fra 64-bit tilstand |
CMP | ECX[1] | HTT=1 angiver HTT(0) eller CMP(1) |
SVM | ECX[2] | Understøtter AMD-V (Pacifica) virtualiseringsteknologi |
EAS | ECX[3] | APIC-udvidelse understøttet (APIC_VER.EAS, EXT_APIC_FEAT osv.) |
CR8D | ECX[4] | Registrer CR8 tilgængelig fra ældre tilstand |
LZCNT | ECX[5] | LZCNT instruktion understøttet |
SSE4A | ECX[6] | SSE4A instruktionssæt understøttet |
MSSE | ECX[7] | Manglende tilpasning i SSE er acceptabel |
3DNu! | ECX[8] | PREFETCH/PREFETCHHW instruktion understøttet |
OSVW | ECX[9] | OS-synlig løsning |
IBS | ECX[10] | instruktionsbaseret prøveudtagning |
SKINIT | ECX[12] | AMD-V tillidsstyringsteknologi understøttet |
WDT | ECX[13] | Indbygget vagthund understøttet |
SHA | Understøtter hardwareacceleration til SHA-krypteringsalgoritme |
x86 processor instruktionssæt | |
---|---|
Intel | |
AMD | |
Cyrix |