165
第3第 第第第第第第第第

第 3 章 奔腾系列微处理器

  • Upload
    stesha

  • View
    176

  • Download
    3

Embed Size (px)

DESCRIPTION

第 3 章 奔腾系列微处理器. 第 3 章 奔腾系列微处理器. 3.1 Pentium 性能和结构特点 3.2 Pentium 的寄存器 3.3 Pentium 的虚拟存储器 3.4 Pentium 的超标量流水线 3.5 Pentium 的引脚信号 3.6 Pentium Pro ~Itanium 的技术概况. 教学目的和教学要求. 掌握 Pentium 微处理器的原理结构、基本寄存器组中各寄存器的组成和功能、 Pentium 工作的实模式、保护模式以及虚拟 8086 模式 掌握 Pentium 微处理器的超标量流水线技术 - PowerPoint PPT Presentation

Citation preview

  • 3

  • 3 3.1 Pentium3.2 Pentium3.3 Pentium3.4 Pentium3.5 Pentium3.6 Pentium Pro ~Itanium

  • PentiumPentium8086 Pentium Pentium Pentium ProItanium

  • Pentium8086 Pentium Pentium Pentium Pentium

  • 3.1 Pentium 3.1.1 Pentium1 19933IntelPentium Pentium Pentium0.8mBiCMOS310+5V15W60MHz66MHz

  • 3.1.1 Pentium2 19943PentiumP54C0.6mCMOS3.3V4W50MHz60MHz66MHzPentiumP54C3-1PentiumP54C

  • 3-1 Pentium

    MHz MHz Pentium90 601.5903.3V2.9V Pentium100 601.51003.3V Pentium120 6021203.3VPentium133 6021333.3VPentium150 602.51503.3VPentium166 662.51663.3VPentium200 6632003.3V

  • 3.1.1 Pentium3 Pentium64CPU32PentiumPentiumP54C3264D63-D0866MHz66MHzPentium528MB/S

  • 3.1.2 Pentium(1)Pentium CPUUVCacheCacheFPUBTBROMPentium3-1

  • Pentium CPU

  • 3.1.2 Pentium2 Pentium CPUCPU6432CPU

  • 3.1.2 Pentium31.CacheCache Pentium28KB CacheCacheCacheCPUCacheUV64CacheCacheCPU6432

  • 3.1.2 Pentium4 CacheCacheUVUV

    Pentium CPUCache

  • 3.1.2 Pentium5 2. PentiumUVPentium CPU80486Pentium

  • 3.1.2 Pentium6 UV5PFD1D2EXWB1

  • 3.1.2 Pentium7 3. Pentium CPU804863-180880IEEE75480

  • 3.1.2 Pentium8 PentiumADDMUL8048610

  • 3.1.2 Pentium94.BTB Pentiumbranch target buffer

  • 3-1100 MOV SI0200H SI MOV DI0500H DI MOV CX64H 100CXABCMOV AL[SI] MOV [DI]AL INC SI 1 INC DI 1 DEC CX CX=CX-1 JNZ ABC CX0ABC

  • 100%

  • 3.2 Pentium

    Pentium

  • PentiumPentium3-28086 CPU81688816AXBXCXDXSIDIBPSP32EAXEBXECXEDXESIEDIEBPESP816323.2 .1

  • Pentium

  • 3-3Pentium61664616CSSSDSESFSGS

  • Pentium

  • 86CPUCPUCPU3-41. 6

  • 3-4

  • 2616 3-516b1b0RPL0-3

  • Pentium CPU32EIP32EFLAGS3-6

  • EIPEIP16IPEFLAGS8086 16FLAGS16FLAGS b11~b08086 CPU63NTIOPL166

  • 3.2.2

    Pentium44GDTRIDTRLDTRTR45CR0CR1CR2CR3CR40

  • 4 43-7 1GDTRGlobal Descriptor Table Register48321664KB2IDTRInterrupt Descriptor Table Register4832IDT321664KB

  • 3-7 4

  • (3)LDTRLocal Descriptor Table Register16646432LDT2012 (4)TR1664322012

  • 5

    1CR0

  • 2CR2 32CR232 3CR3 201044B12PCDPWT10

  • 3-9 CR2CR3

  • 4CR4 32CR4923

  • 5 Pentium

  • 3.2.3 Pentium: 8 1 1 1 1

  • 1. 8 R7-R08080115642. 168283-11b1b0R0b3b2R1b15b14R7CPU

  • 3-11 Pentium

  • 16FPU1IEIE12DEDE13ZEZE=104PEPE=15SPIE=1SF=1C1=1C1=0

  • 6ESES=1CPU7C0C34SAHFFSTSW4FPUC0SF8TOP9BFPUB=1

  • FPU1PMIM6666IMIEDMDE22PC2PC0024105311640132RC

  • 3-13 FPU

  • 3.3 Pentium3.3.1 Pentium PentiumVivtual StorageCache

  • Pentium86 Pentium36CR4PAEPAE=03232A31-A38BE7BE04GBPentium CPU64CPU32Pentium32

  • 3.3.2 Pentium Protected Virtual Address Mode80386 CPUPentium CPUMMUSUPUPentium

  • 1GDTRLDTRGDTLDT 483216GDT64KBPentiumGDTGDTR32133GDT8

  • CSDSESFSGS643-7LDTLDT

  • TSSGDTGDT

  • LDTLDTR6432LDT133LDT83-143-4

  • 3-14 LDTRLDT

  • LDTR13GDTGDTLDTLDTLDTRLDT3-15

  • 3-15 GDTRGDT

  • LDT32323232GDT32LDT

  • 2 Pentium32Pentium32

  • 3-2 MOV AL [1888 7777H] MOV AX [EBX] MOV EAX[ESI] MOV ECX[EBX+EDI] MOV DX [EBP] SSDSDS32SS3232

  • Pentium3-16b2TILDTTI=1GDTTI=0LDT133LDT8B323232

  • TI=0GDT

    3-74832IDTPentiumCPUIDTIDT2568

  • 3-16

  • CPUPU323232SU32101012 CR4PSEPentiumPU80386/804864KBPSE=04MBPSE=1

  • 14KB 4KB4KB10244KB10243243-17

  • 3-17

  • P P=1/P=0PWT CachePWT=1CachePWT=0cachePCDCache PCD=1CPUCache

  • A A=10A

  • D DD11DD=1D=0D

  • PSPage SizePS=14MBPS=04KB U/S/ R/W/ U/SR/W3210

  • Pentium 4KB3-1832101012

  • 3-18 Pentium 4KB

  • 3-3 3C445566HCR3=11223000H 100011 1100 01B420011 1100 0100B=3C4H 1122 3000H+3C4H =1122 33C4H

  • 3-4 2012345H3C44 5566H 12345000H+566H=12345566H

  • CPUCR3 4KB10241020201201024204KB

  • 10242020120102410244B4KB

  • 101012210210212B=4GB

  • 32124KB202201M220212B=4GB4B4MB

  • 24MB 3221022101024324KBPentium80386/80486CR34MB3-19

  • 4MB10232CR3104KB2010222202232

  • 3-19 Pentium 4MB

  • 13-161632214214+32=64TBSU323232

  • 2 PentiumPUSU4KB4MB32324KB4MB32232=4GBWindows NTWindows 95

  • 324KB64TBUNIX System VOS/23.

  • 3-20

  • 1TI=164KBLDTR32+138232+32=321010123CR3324KB3-18

  • 3.3.3 Pentium 8088/8086 CPU161616161620CPU20A19-A0201MBMS-DOSPentium CPUWindowsDOS16

  • 80861642016201MB2020

  • 3-5 8086FFFFHFFFFHPA=FFFFH16+FFFFH=10FFEFH1PA=0FFEFH

  • 3-6 32DS=1002HFS=2000HBX=3000HMOV AXDS[BX]MOV EAXFS[BX] 1002H00003000H 2000H00003000H

  • 1632 MOV AXDS[EBX] MOV ECXFS[ESI]

  • 3280386/80486/Pentium3-21321MBMS-DOSWindows 3.XCPU32

  • DSFS32160321664K

  • 3-21

  • 3.3.4 Pentium8086808686V86321632EFLAGSb17=0VM=0VM=1V86

  • V86863-22V864GB80861MB

  • CPU0V863CR0PG1b31=1

  • 863-233-5320010FFEFH110b31~b2210010V8611024

  • 102b21b2008256FFFFH16+FFFFH=10FFEFHb201b20=1b19~b0000H~00FH1616256+16=272102486272

  • 3-22 86

  • V861MB808664KB

  • V861024V862012324GB

  • V864KB4KB1MB1MB4GB80861MB4GB8086

  • 3-23 86

  • 3.3.5 3-24CPUCR0b01PE1PEIRETDV86V86V86

  • 3-24

  • 3.3.6 Pentium 80386/80486/Pentium

  • 0OS0

  • Pentium3-250PLPL=3 Pentium2

  • 3-25 Pentium

  • 1CPLCurrent PLCPLCSb1b0b1b02DPLDiscriptor PLDPLDPLb6b53RPLRequested PLb1b0

  • 3-7PentiumDSESFSGSSSMOVLDSLESPentiumCPLRPLDPLDPLCPLRPL DPLMAXCPLRPL 3-1

  • 2CPL0123RPL31233-13-3

  • 3-3 CPLRPLDPL

  • 3.4 Pentium Pentium5CPUCISC

  • Pentium3-1UVUVUV

  • 3.4.1 Pentium 32CPUCache BTB ROM

  • UVPentiumCacheTLB 8KBCacheUV3264

  • 32ALUADD EAXEBX832EAXEBXECXEDXEBPESIEDIESP

  • 3.4.2 UVUVUV5UV3UV3-26PFCache

  • 1D1i1i2

  • 2D2

  • EXALUWB

  • 3-26 UV

  • D14 RAWWARWAW i1

  • 3-8 MOV AX BX MOV ECXESI 1NC AX ADD EBXEDI

  • 3-9RAW i1 ADD AXBX i2 MOV CXAX i2i1AXAXAXi2AX

  • 3-10WAR i1 MOV [EBX]AX i2 MOV AXBX i1AXAXi2BXAXWAR

  • 3-12 i1 MUL AXBX i2 ADD AXCX i2i1i2AXWAW

  • PentiumUV UVUVPentiumUV3-27

  • 3.27

  • i5i6i2i5i647i3i5i6Ui5EX9i6EX10i6i5i6Ui5VU

  • 3.5 Pentium Pentium103-28I/O

  • 3-28 Pentium

  • 1A20M*A202A1A31293ADS* 4AP5APCHK*

  • 1D63D0642BE7*BE0*83DP7DP04PCHK*5PEN*

  • 1CACHE*Cache2EADS*3HIT*CacheCache4 HITM*CacheCache51NVCache1NV CacheCache

  • 6PCDCache7PWTCPUCachePWT=1CachePWT=0Cache8FLUSH*Cache9KEN*Cache10WB/WT*CPUCache11AHOLD/

  • 1D/C*/2M/IO*/I/O3W/R*/CPU

  • 4LOCK*Pentium CPU5SCYS6NA*7BRDY*

  • 1INTR2NMR3RESET4CLK5INIT

  • 1BUSCHK* 2IERR* 3FERR*4FRCMC*CPU5IGNNE*

  • 1HOLD2HLDACPU

  • 3BREQCPU4BOFF*CPUCPU

  • 1SMI*CPU2SMLACT*CPU

  • 1PM1PM0BP3BP0PM1PM0BP3BP0DR3DR02BT3BT03IUUU

  • 4IVVV5IBT 6R/S*CPU 7PRDYR/S*CPU

  • 1TCK 2TDI 3TDO 4TMS5TRST*

  • 3.6 Pentium Pro~Itanium1993PentiumIntelPentium Pro(1995)Pentium 1997Pentium 1998Pentium 4200064Itanium

  • 80386PentiumPentium 4

  • 3.6.1 Pentium Pro Pentium Pro1Pentium ProL2 Cache 256KB512KB24CPU

  • 3CPU3664GB64TBCPU644Pentium ProRISC5387 Socket 8 Pentium Pro

  • 3.6.2 Pentium Pentium P

  • 12L1 Cache32KBL2 Cache512KBPentiumCPUL1L2 CacheCPU 2Pentium 300643664GB64TB

  • 3Pentium CPU64I/OCPUL2 Cache4MMXPentium 57MMXMMX

  • 3.6.3 Pentium Pentium P3400MHz733MHz100MHz133MHzCPU1.1V1.65VPC-PGA

  • 1P70SSE1250457MMX50MMXSSE8

  • 2P8128432SEE PSSE3D

  • 3.6.4 Pentium 4 Pentium 44200CPU1.4GHz2.2GHz55W12VCPU478Socket 423CPU

  • 3.6.4 Pentium 41CPU464P48503.2GB/S2Pentium 4ALUP42/

  • 3.6.4 Pentium 43P4PMMX70MMXPSSESSE144SSE24CacheL1CacheTrace Cache

  • 3.6.5 Itanium ItaniumIntel6464642.2Pentium10

  • 3.6.5 Itanium1Explicitly Parallel Instruction Computing, EPICEPICEPIC

  • 3.6.5 Itanium2Itanium2-3CacheItanium 2CacheL1 CacheCacheCache16KBL2 Cache96KB4MBCacheItanium L1L2L3CacheL3Cache3MB3Itanium4ALU4FNAC9Itanium120

  • 3.6.5 Itanium4Itanium5ItaniumItanium12812864

  • 3.1 3.2 3.4 3.5 3.8 3.9 3.10