《微机原理与接口》第13章先进微处理器介绍_第1页
《微机原理与接口》第13章先进微处理器介绍_第2页
《微机原理与接口》第13章先进微处理器介绍_第3页
《微机原理与接口》第13章先进微处理器介绍_第4页
《微机原理与接口》第13章先进微处理器介绍_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《微机原理与接口技术》

主讲易凡

wdyifan@163.com

武汉大学物理学院电子科学与技术系第十三章

先进微处理器介绍

x86前x86架构4位处理器

4004、40408位处理器

8008、8080、8085IA-16

8086、8088、80286IA-32Pentium前

80386、80486Pentium早期架构

Pentium、PentiumMMXP6架构

PentiumPro、PentiumII、PentiumIII、PentiumII/IIIXeon/CeleronNetBurst架构

Pentium4、PentiumD、PentiumExtremeEdition、Xeon其中PentiumD和PentiumExtremeEdition支持Dual-Core技术、ExtendedMemory64Technology(EM64T),PentiumExtremeEdition还支持Hyper-Threading(HT)技术13.1Intel微处理器家族发展概述13.1Intel微处理器家族发展概述(续)提高芯片内部时钟频率使操作速度加快,这将受到微电子工艺及芯片功耗的限制。增加数据总线宽度,提高数据路径的流量,这将要求芯片集成度提高、封装引脚增多。微体系结构中采用新技术,使更多的指令在同一时刻并行执行(提高指令执行并行性ILP),这是最重要的一点,这将要求芯片有更高的集成度以及新的设计思想。提高微处理器性能有三个途径:13.1Intel微处理器家族发展概述(续)采用超级流水线(Super-pipeline):

将指令的执行分解成小的步骤(级),不同指令中不同步骤可并行操作。级数分的多,并行执行的指令也多。超级流水线指的是多级数的流水线(如8级以上)。采用超标量(Super-Scalar):片内设置多重功能相同的部件,为指令并行执行提供硬件基础。提高处理器指令执行并行性(ILP)有两种方法:13.2奔腾Pentium微处理器第一代奔腾微处理器采用0.8微米工艺,集成度310万晶体管,工作频率66MHz,指令与486兼容,性能比486大大提高,是Inter芯片技术发展中的里程碑。哈佛结构,有分开的指令Cache与数据Cache,各8KB容量。与80x86系列微处理器兼容;有64位数据总线、32位地址总线,寻址空间4GB;RISC型超标量结构

-两个5级整数指令流水线,一个8级浮点流水线。具有超级流水线技术的高性能浮点运算器;独立的两条整数执行流水线,U与V,在一时钟周期内可以发射两条整数指令去执行。Pentium微处理器的结构特点数据-代码分离式高速缓存,符合MESI协议;增强的错误检测和报告功能;利用片上分支目标缓冲器提高分支指令预测准确性。常用的指令不采用微程序设计,而改用硬件实现。支持64位外部数据总线突发传输方式通过APIC总线支持多处理器系统Pentium微处理器的结构特点(续)Pentium微处理器内部结构分支目标缓冲器

代码Cache8KBTLB指令指针预取缓冲存储器指令译码部件256位总线接口部件分页部件64位数据总线预取地址32位地址总线控制控制部件地址生成(U流水线)地址生成(V流水线)控制ROMALU(U流水线)ALU(V流水线)整数寄存器组桶形移位器数据Cache8KBTLB浮点部件控制寄存器组加法器除法器乘法器80位80位分支检测和目标地址64位数据总线32位地址总线32位32位32位32位32位32位①②③④⑤①=指令预取(PF)②=首次译码(D1)③=二次译码(D2)④=指令执行(EX)⑤=写回R(WB)I1I3I5I7I2I4I6I8PFI1I3I5I7I2I4I6I8I1I3I5I7I2I4I6I8I1I3I5I7I2I4I6I8I1I3I5I7I2I4I6I8D1D2EXWB流水线和指令执行顺序:流水线和指令执行顺序:奔腾为超标量结构,两条五级流水线(U、V),可同时发射两条配对指令。U可执行X86任何指令,V执行“简单”指令。5级流水线分为:指令预取(PF)首次译码(D1)二次译码(D2)指令执行(EX)写回R(WB)流水线和指令执行顺序:预取指令级PF:从片内I-Cache取指令,有两个预取缓冲器,与分支目标缓冲器BTB协作,一个预取缓冲按顺序取指,另一个按转移指令目标预取,分支预测有结果后不管执行哪个指令流,均已预取好了。指令译码级D1:两个并行的指令译码器,依“指令配对法则”决定发射一条指令还是二条指令。译码级D2:进行操作数地址计算,有专门地址生成部件。执行级EX:做AUL及访问数据Cache的操作,复杂指令执行高效微码操作,比486快。操作结果回写级WB:回写操作结果,修改状态,完成执行。指令配对法则:两条流水线可以同时执行两条指令,但指令要满足一定配对规则。两条指令必须是“简单”指令,硬线逻辑而不是微码实现,单周期执行,“简单”指令有规定。指令要在I-Cache中。成对指令无寄存器数据相关:

如:MOVeax,8与MOVeax,ebx为输出相关;

MOVeax,8与MOVebx,eax为指令流相关。指令中不能同时包含偏移量与立即数,等等。转移(分支)预测:设两个预测缓冲器,一个按顺序预取,一个按转移目标预取,不管转移与否,取指工作均准备好。设一个“分支目标缓冲器”(BTB),有256项。记录过去已执行过的转移指令的目标地址,还有2位标记,记录历史转移情况。2位历史记录标记表示4种情况:

“强转移”、“弱转移”、“弱不转移”、“强不转移”流水线执行过程中,条件转移指令的条件形成前,下条是执行转移目标指令还是顺序执行是个问题。Pentium的工作模式实地址模式与8086/8088兼容,但可以处理32位数据1MB内存空间,分段管理,所有程序全在0(核心)级MS-DOS运行在此模式下,PC机开机首先进入的也是该模式对内存和程序甚至操作系统没有任何保护能力保护模式支持多任务操作,并保护每个任务的数据和程序存储器采用虚拟地址空间、线性地址空间和物理地址空间三种方式来描述,具有存储保护功能虚拟地址空间64TB(246)4级管理,可以使用分页或分段技术管理内存Windows、Linux操作系统均运行在该模式下虚拟8086模式(V86模式)系统管理(SMM)模式为操作系统和正在运行的应用程序提供透明的电源管理和系统安全平台功能进入本模式系统将转到一个独立的地址空间运行,并保存当前程序或任务的基本环境在保护模式下可以同时模拟多个8086处理器的工作比较项目实地址模式虚拟8086模式内存管理分段管理既分段又分页存储空间1MB每个8086程序任务寻址1MB,总寻址空间4GB多任务不支持支持,虚拟8086模式是Pentium保护模式中多任务的一个任务工作模式的转换实地址模式CPU复位SMM模式保护模式虚拟8086模式CR0.PE=1CR0.PE=0RSM指令中断SMI#RSM指令SMI#是外部系统管理中断引脚来的信号RSM指令是从系统管理中断服务程序中返回的指令中断返回任务切换(修改EFLAG中的VM位)SMI#SMI#RSM指令Pentium~Pentium4的寄存器基本寄存器系统级寄存器调试与测试寄存器浮点寄存器通用寄存器指令指针寄存器标志寄存器段寄存器控制寄存器系统地址寄存器数据寄存器地址指针寄存器变址寄存器AHALBHBLCHCL

DHDLSPBPDISI32位通用寄存器16位AX、BX、CX、DX、SP、BP、DI、SI分别是EAX、EBX、ECX、EDX、ESP、EBP、EDI、ESI的低16位AL、BL、CL、DL分别是AX、BX、CX、DX的低八位AH、BH、CH、DH分别是AX、BX、CX、DX的高八位高16位扩展16位名称32位名称AXEAX累加器BXEBX基址指针CXECX计数DXEDX数据BPEBP堆栈指针DIEDI目的变址SIESI源变址通用寄存器(续)EAX累加器存放操作数和结果,乘除运算、I/O指令中特指EBX基址寄存器查表转换和间接寻址时存放基址ECX计数寄存器串操作和循环中做计数EDX数据寄存器乘除运算、I/O指令中特指可以32位、16位或8位形式访问,例如,EAX可使用16位的AX,也可以使用8位的AH、AL通用寄存器(续)ESP堆栈指针寄存器,存放栈顶地址EBP基址指针寄存器,存放栈段基地址ESI源变址寄存器EDI目的变址寄存器存放地址的偏移量,也可存放操作数;只能以32位或16位为单位访问如:ESI可以使用16位的SI段寄存器CS代码段寄存器DS数据段寄存器SS堆栈段寄存器ES附加段寄存器FS、GS附加段寄存器段寄存器均为16位的寄存器用于存储器寻址,存放段的开始地址FS、GS是80386以后添加的,CS、DS、SS、ES是从8088继承的……堆栈段数据段附加段代码段……指令指针寄存器EIP指令指针寄存器:即程序计数器,指向下一条指令在代码段中的偏移量16位的IP高16位扩展32位指令指针寄存器EIPEFLAGS标志寄存器(程序状态字寄存器PSW):记录系统运行中的各种状态和信息。由各种标志位构成,反映运算后的结果特征,将影响某些指令(如条件转移指令)的执行。标志寄存器8086/8088程序状态寄存器(标志寄存器)b15b14b13b12b11b10b9b8b7b6b5b4b3b2b1b0OFDFIFTFSFZFAFPFCF符号名称值为“1”的条件CF进位标志加/减法时产生进位/借位OF溢出标志运算结果超出有符号整数能表示的范围ZF零标志运算结果为0时SF符号标志运算结果的最高位为“1”时AF辅助进位标志运算时半字节(b3)产生进位/借位PF奇偶标志操作结果低8位为“1”的位数为偶数时DF

方向标志串操作中地址指针向低地址方向移动IF中断允许标志允许CPU响应可屏蔽中断请求时TF跟踪标志CPU处于单步执行的工作方式这部分同8088OF31……222120191817161514131211109876543210DFIFTFSFZFAFCFPFIOPLNTRFVMACVIFVIPID保留Pentium4标志寄存器符号名称值为“1”的条件IOPLI/O特权位其值表示该任务使用的I/O操作的特权级00为最高的核心级,11是最低的用户级NT嵌套标志当前任务嵌套在另一个任务中时RF恢复标志DBUG调试时忽略下一条指令遇到的断点VM虚拟8086模式保护模式进入到虚拟8086模式AC对齐检查当有数据访问出现对其故障的时候VIF虚拟中断位允许V86扩展或允许保护模式虚拟中断VIP

虚拟中断挂起位虚拟中断被挂起ID标识位对它的读写表明处理器支持CPUID控制寄存器311211430PWTPCD页目录基地址寄存器CR3页故障线性地址寄存器CR2310保留CR1WP313029181716543210NEETPEMPNWCDPGCR0310EMTSAMPGEPCE83176543210MCEPAEPSEDETSDVMEPVI保留,缺省为全0CR4写保护定位屏蔽允许分页禁止Cache不写贯穿保护模式允许浮点协处理器监控模拟浮点协处理器任务切换处理器扩展类型数值异常WP313029181716543210NEETPEMPNWCDPGCR0EMTSAMCR0是在以前286MSW(机器状态字)基础上扩展来的,可在核心级中用”MOVEAX,CR0/MOVCR0,EAX”指令来读取和写入。CR0禁止Cache页面写贯穿311211430PWTPCD页目录基地址寄存器CR3CR3性能计数器允许页全局允许允许机器检查物理地址扩展页大小扩展位调试扩充位禁止定时标志保护模式虚拟中断虚拟8086模式扩展PGEPCE83176543210MCEPAEPSEDETSDVMEPVI保留,缺省为全0CR4CR4系统地址寄存器GDTR—48位的全局描述符表寄存器全局描述符表32位线性地址16位界限值

IDTR—48位的中断描述符表寄存器中断描述符表32位线性地址16位界限值

TR—16位的任务状态段寄存器TSS的16位选择字

LDTR—16位的局部描述符选择字寄存器LDT的16位选择字当机器复位的时候CS=FFFFH,EIP,DS,ES,SS,FS,GS以及EFLAGS寄存器被清零。因为复位之后CS:EIP=FFFF:00000000,因此机器复位或开机后,都会自动从这个地址开始取指令,这里应该是BIOS的第一条指令。33Pentium的基本数据类型Pentium~Pentium4的存储器管理存储单元的地址和内容以字节为单位编址,即一个字节数据占一个存储单元。以字、双字、四字、双四字为单位存储数据时,分别占相邻2个、4个、8个、16个字节单元。高8位存放在高地址字节,低8位存放在低地址字节,高位字存放在高地址区,低位字存放在低地址区。字、双字、四字、双四字单元的地址由其最低字节的地址来表示。字、双字、四字、双四字的地址一般采用边界对齐,即它们地址分别是偶数地址,4的倍数、8的倍数和16的倍数。如果边界不对齐,Pentium会采用两个总线周期来完成操作,或直接报错,如果边界对齐,则只用一个总线周期完成操作。存储单元的地址和内容12H34H56H78H9AHBCHDEHFFH0000H0001H0002H0003H0004H0005H0006H0007H在0000H地址上:字节数据是12H字数据是3412H双字数据是78563412H四字数据是FFDEBC9A78563412H实模式存储器寻址存储器地址的分段解决16位寄存器表示20位地址的问题段是最大长度为64KB的连续的内存储器块20位的段的起始地址(段首址)低4位必须为0物理地址每个存储单元的20位实际地址,有唯一性,访问主存时必须用物理地址逻辑地址每个存储单元的地址用两部分表示:段基址(段首址的高16位)偏移量(段内某单元相对段首址的地址差,也称为有效地址EA)在此模式下,Pentium可以理解成是一个可处理32位数据的高速的8086。16位段地址16位段内偏移:6417H∶0100H6417H×10H+0100H=64170H+0100H=64270H几个不同的段物理地址上是可重叠的

物理地址=段基址×16+偏移量书写形式:段基址:偏移量16位段地址16位段内偏移(左移四位)+20位物理地址=000013.2奔腾Pentium微处理器第一代奔腾微处理器采用0.8微米工艺,集成度310万晶体管,工作频率66MHz,指令与486兼容,性能比486大大提高,是Inter芯片技术发展中的里程碑。高能奔腾(PentiumPro)处理器为第二代奔腾处理器,俗称P6。采用IA-32体系结构,新的内部操作方式,性能大大提高。采用0.6微米工艺,集成度共2100万晶体管:(

p:550万,L2:1550万),双穴封装。

p-cache总线连接在封装内部实现,数据传输率接近内核频宽。13.3Pentium系列处理器的新技术高能奔腾(PentiumPro)处理器为第二代奔腾处理器采用RISC的设计思想:(ReducedInstructionSetComputer)将X86指令转换成多个易执行的微操作(

ops),为3操作数格式,对程序员透明,与X86指令兼容。超级流水线与超标量采用12级流水线,每级操作简化,执行时间短,增加

ops执行的并行性,总体提高指令执行速度。采用超标量技术内部有多重可并行操作的执行部件,实现每个时钟周期完成二条指令操作。P6架构使用的技术采用12级3流水超标量结构多路分支预测允许程序的几个分支流向同时在处理器中执行PentiumII北桥内存FSB前端总线L2Cache后端总线推测执行在多分支与乱序执行后,按原指令顺序整理结果双独立总线结构后端总线连接到L2Cache上,或连接L3Cache前端总线FSB主要负责主存储器的信息传送操作动态数据流分析处理器分析几条指令的数据相关性和资源可用性以优化的执行顺序高效地乱序执行这些指令NetBurst架构使用的技术采用IntelNetBurst微内核结构超级管道技术增加了144条SSE2指令和13条SSE3指令简单ALU运行在2倍的处理器核心频率Quad-Pumping数据传输技术使前端总线达800MHz

3级Cache16KB数据和12KB执行跟踪L1Cache1MB或512KB的L2AdvancedTransferCache2MBL3Cache高级动态执行技术改进了分支预测算法,有效降低了失误预测率超线程(Hyper-Threading,HT)技术允许物理上单个的处理器采用共享执行资源的方法同时执行两个或更多的分离的代码流(线程)结构上HT技术由单处理器上的2个或者多个逻辑处理器组成,每个逻辑处理器都有自己的IA-32结构状态每个逻辑处理器都有自己的IA-32通用寄存器、段寄存器、控制寄存器、调试寄存器等逻辑处理器共享的资源包括执行引擎和系统总线接口双核(Dual-Core)技术通过在一个物理封装中包含两个分离的执行核来提供硬件多线程能力结构上有支持HT技术的和不支持HT技术的双核结构44AMD的双核Intel的双核完全兼容现在的IA-32结构具有传统I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论