L'8 giugno 1978, Intel ha rilasciato un nuovo microprocessore a 16 bit "8086", che ha anche aperto una nuova era: è nata l'architettura x86.
Infact,whenthe8086processorwasreleased,itdidnotreceivemuchattentionandwasnotwidelyadoptedatthebeginning,butitsstatusinthePCindustrycannotbeoverstated.ThisisbecauseitbringsHerecomesx86.IthasnotonlyachievedIntel'sthrivingstatus,butalsohasbecomeanindustrystandard,andx86canbeseenevenontoday'spowerfulmulti-coreprocessors.
Inthe30-yearhistoryofdevelopment,thex86familyhascontinuedtogrow,shiftingfromdesktopstonotebooks,servers,supercomputers,andportabledevices.Duringthisperiod,italsofrustratedorrestrictedthedevelopmentofmanycompetitors,andcausedmanyprocessors.Manufacturersandtheirarchitecturetechnologieshavebecomehistoricalnames,andevensomecloseddevelopmentsareunsustainable.Forexample,ApplehasgivenupPowerPC.
Ofcourse,wemustnotforgetthestrugglebetweenx86-64andEM64T.In2003,AMDlaunchedtheindustry'sfirst64-bitprocessor,Athlon64,andalsobroughtx86-64,whichisa64-bitextendedsupersetofthex86instructionset,whichisbackwardcompatible.Atthattime,Intelwasalsopromoting64-bittechnology,butitsIA64architecturewasnotcompatiblewithx86,andwasonlyusedontheserverprocessorItanium.InordertocompetewithAMD,Intelalsolauncheditsown64-bitversionofx86in2004,whichisEM64T.
Inthisregard,AMDandIntelblameeachother,butinanycaseatleastthedevelopmentandpopularizationof64-bittechnologyhasbeenpromoted,andx86technologycancontinuetobecarriedforward.DavidPatterson,aprofessorofcomputerscienceattheUniversityofCalifornia,BerkeleyandoneoftheinventorsofRISC,said:"Thisprovesthattheflexibilityofthex86instructionsetcanbeusedagainstIntel,soevenifInteldominatestheentiremarket,othercompaniescanstillchangethedirectionofx86development."
x86isastandardnumberabbreviationoftheintelgeneral-purposecomputerseries.Italsoidentifiesasetofgeneralcomputerinstructionsets.Xhasnothingtodowiththeprocessor.Itisasimpleforall*86systems.Wildcarddefinition,forexample:i386,586,Pentium(pentium).SincetheCPUnumbersofearlyintelarelike8086,80286,becausetheentireseriesofCPUsareinstruction-compatible,theyalluseX86toidentifytheinstructionsetused.Today'sPentium,P2,P4,andCeleronseriesareallnumbered.ItsupportstheX86instructionsystem,soallbelongtotheX86family.
TheX86instructionsetwasspeciallydevelopedbyIntelCorporationoftheUnitedStatesforitsfirst16-bitCPU(i8086).TheCPUintheworld'sfirstPCintroducedbyIBMCorporationin1981--i8088(i8086)Simplifiedversion)alsousesX86instructions.Atthesametime,theX87chipseriesmathcoprocessorsaddedtoimprovefloating-pointdataprocessingcapabilitiesincomputersadditionallyuseX87instructions.Inthefuture,theX86instructionsetandX87instructionsetwillbecollectivelyreferredtoastheX86instructionset..AlthoughwiththecontinuousdevelopmentofCPUtechnology,Intelhassuccessivelydevelopedupdatedi80386,i80486andtoday'sPentium4(hereinafterreferredtoasP4)series,butinordertoensurethatthecomputercancontinuetorunvariousapplicationsdevelopedinthepasttoprotectandinheritRichsoftwareresources,soallCPUsproducedbyIntelstillcontinuetousetheX86instructionset,soitsCPUsstillbelongtotheX86series.
InadditiontoIntel,manufacturerssuchasAMDandCyrixhavealsoproducedCPUsthatcanusetheX86instructionset.BecausetheseCPUscanrunallkindsofsoftwaredevelopedforIntelCPUs,computersIndustryinsiderslisttheseCPUsasIntel'sCPUcompatibleproducts.SinceboththeIntelX86seriesandcompatibleCPUsusetheX86instructionset,itformstoday'shugelineupofX86seriesandcompatibleCPUs.Ofcourse,notalldesktop(portable)computersuseX86seriesCPUs,andsomeserversandApple(Macintosh)machinesalsouseAlpha61164andPowerPC604eseriesCPUsfromDIGITAL(digital)oftheUnitedStates.
Satus a 8086, Intel, 286, 386, 486, 586, P1, P2, P3, P4allusethesame CPUarchitecture, collectively called X86.
Outlook
Ithasbeen40yearssinceIntellaunchedtheX86architecture.Comparedwiththe486,Pentiumhastakenabigstepforward,whilethepaceofPⅡ'sadvancementisnotsogreat.ThedevelopmentofX86CPUseemstohavecometoanend.IntelisveryclearthatitistheX86instructionsetthatlimitsthefurtherimprovementofCPUperformance.Therefore,theyareworkingwithHPtodevelopthenextgenerationofinstructionsetarchitecture(InstructionSetArchitecture,ISA):EPIC(ExplicitlyParallelInstructionComputing,ExplicitlyParallelInstructionComputing)).ForIntel,IA-64(Intel’s64-bitarchitecture)isthenext10to15yearsofarchitecture.ThenewISAwillallowInteltogetridofthelimitationsoftheX86architecture,therebydesigningnewprocessorsthatsurpassallexistingRISCCPUsandX86CPUs.
SowhatistheadvancedpointofEPIC?WhydidIntelabandontheX86architecturethatmadeitachipgiant?
1.TheproblemofIA-32.Weknowthatengineerscanimproveperformancebyincreasingthenumberofinstructionsexecutedperclock.TheprimarypurposeofIntel’snewinstructionsetistomakeinstructionseasiertodecodeandeasierParallelexecution.Inthisway,newprocessorscanbedevelopedwithoutrestrictions.However,forengineers,the8086-compatibleX86instructionsethasalwaysbeenataskthatmustbecompleted.Afterall,compatibilitywithprevious-generationproductsisakeyfactorinIntel’sgrowthandgrowth,anditcanalsoprotectusers’originalinvestmentsandusemillionsofapplicationsoftware.
Inthatcase,whygiveuptheentireX86instructionsetandstartagain?WhataretheshortcomingsofX86?
(1)VariableinstructionlengthThelengthofX86instructionsisvariable,andthereareseveraldifferentformats.Asaresult,thedecodingworkofX86CPUisverycomplicated.InordertoincreasetheoperatingfrequencyofCPU,wehavetoExtendthepipelineintheCPU,andanexcessivelylongpipelinewillbringthedisadvantageofalongerCPUstagnationtimewhenthebranchpredictioniswrong.
(2)PovertyofregistersTheX86instructionsetarchitecturehasonly8general-purposeregisters,andinfactonly6canbeused.ThissituationisextremelyincompatiblewithmodernsuperscalarCPUs.Althoughengineersusethetechniqueofregisterrenamingtocompensateforthisdefect,ithascausedtheCPUtobetoocomplexandthepipelinetobetoolong.
(3)MemoryaccessX86instructionscanaccessmemoryaddresses,whilemodernRISCCPUsuseLOAD/STOREmode.OnlyLOADandSTOREinstructionscanreaddatafrommemorytoregisters.AllotherinstructionsonlyTheoperandcalculationintheregister.WhentheCPUspeedis5timesormorethanthememoryspeed,thelatterworkingmodeistherightway.
(4)FloatingpointstackX87FPUistheslowestFPU.OneofthemainreasonsisthattheX87instructionusesanoperandstack.Iftherearenotenoughregistersforcalculation,youhavetousethestacktostorethedata,whichwillwastealotoftimeusingtheFXCHinstruction(thatis,putthecorrectdataonthetopofthestack).
(5)The4GBlimitdoesnotseemtobeaproblem.However,before2000,mainstreamPCshadonly4MBofmemory.MostPCswereequippedwith2Gormoreofmemory,whichwas512timesthepreviousamount.Therefore,PCItisabsolutelynotsurprisingthatthememorybreaksthrough16GB.Largeservershavealreadyusedmorethan32GBofmemory,andthesituationofbreakingthrough64GBofmemoryhasalreadyappeared.
(6)Thechipbecomesbigger.AllthemethodsusedtoimprovetheperformanceoftheX86CPU,suchasregisterrenaming,hugebuffers,out-of-orderexecution,branchprediction,X86instructionconversion,etc.,allmaketheCPUThechipareahasbecomelarger,whichalsolimitsthefurtherincreaseoftheoperatingfrequency,andtheseadditionalintegratedtransistorsareonlytosolvetheproblemofX86instructions.