
第二章Intel32位.ppt
32页第二章 Intel 32位CPU2.1 CPU的根本构造2.2 存放器2.3 指令流水线操作2.1 CPU的根本构造2.1.1 几种典型Intel CPU简介1、8086 16位CPU16位内部体系构造16位外部数据总线,20位地址总线 寻址范围220B=1MB2、80386 32位CPU32位内部体系构造32位外部数据总线,32位地址总线实内存232B=4GB,虚拟空间=64TB三种工作方式:实方式、保护方式、虚拟8086方式采用流水线技术和指令预取技术3、80486 32位CPU32位内部体系构造32位外部数据总线,32位地址总线三种工作方式:实方式、保护方式、虚拟8086方式采用流水线技术和指令预取技术片内含8KB高速缓存Cache片内含浮点运算单元FPU4、Pentium系列 32位CPU11993年3月,推出Pentium经典奔腾 双执行部件/超标量流水技术/别离的程序和数据Cache/64位数据总线21995年11月,推出Pentium Pro高能奔腾 动态分支预算/更大的流水线深度/增加的Cache容量31997年1月,推出Pentium MMX 多能奔腾 主要增加了处理多媒体数据的MMX指令集41997年5月,推出Pentium 奔腾二代 片内64KB的一级Cache和片外512KB二级Cache51999年2月,推出Pentium 奔腾三代 增加了70条新的SSE指令集,主要用来进步多媒体的处理速度和质量 1999年,Intel发布了Celeron赛扬处理器62000年,推出Pentium 4奔腾四代 支持双通道DDR技术,传输速度更快,增加了144个全新的指令72003年,推出Pentium M 增加了一些节能、管理的新特性5、64位CPU简介 目前主流CPU使用的64位技术主要有AMD公司的AMD64位技术、Intel公司的EM64T技术、和Intel公司的IA-64技术。
其中IA-64是Intel独立开发,不兼容如今的传统的32位计算机,仅用于Itanium安腾以及后续产品Itanium 2 2.1.2 CPU的内部构造 AH ALBH BLCH CLDH DL SP BP DI SI通用存放器运算存放器ALU标志执行部分控制电路1 2 3 4 5 6 CS DS SS ES IP 内部存放器I/O控制电路地址加法器20位16位8位指令队列缓冲器外总线执行部件总线接口部件8086CPU构造图80486CPU构造图80486CPU的内部构造 80486CPU内部由八大部件组成:总线接口部件、高速缓存部件、代码预取部件、指令译码部件、浮点数部件、执行部件、段部件、分页部件 (1)总线接口部件(BIU)总线接口部件通过数据总线、地址总线和控制总线负责与外部获得联络,包括访问存储器预取指令,读写数据和访问IO端口读写数据等全部操作及其他控制功能2)执行部件:完成一般的算术运算、逻辑运算以及数据传送等任务3)代码预取部件:对代码做取入、排队分析、分解等译码等前期准备工作4)指令译码部件:把指令的含义转换成响应的内部控制总线信号,指挥各部件协同工作5分段部件:根据逻辑地址对内存分段寻址,可实现任务之间的隔离,也可实现指令和数据区的再定位。
6分页部件:对段进展分页寻址,每页大小固定(一般为4KB),每段可包括假设干页分段分页为虚拟存储管理提供了有效方法7高速缓存部件:为了加快访问速度 ,系统中还设置有高速缓冲存储器(cache),构成完好的cache主存辅存的3级存储体系8浮点数部件:2.1.3 CPU的外部引脚 2.1.4 CPU的工作方式 1、实地址方式 Real Address Mode 2、保护方式 Protected Mode 3、虚拟8086方式 Virtual 8086 Mode 1 实地址方式 具有32条地址线的微处理器只有低20条地址线起作用,能寻址1M字节的物理地址 (相当于一个快速的8086) 实地址方式和保护虚地址方式的区分是由控制存放器CR0的最低位PE位决定的假设PE位为0,那么工作在实地址方式;假设PE位为1,工作在保护虚地址方式 ; 实地址方式下,采用类似于8086的体系构造 2保护虚地址方式在保护方式下,全部32根地址有效,可寻址达4G字节的物理空间;支持多任务,一个任务可运行多达16KB个段,每个段最大可为4G字节,故一个任务最大可达64MM字节的虚拟地址,能快速的进展任务切换和任务保护环境;在保护方式运行的程序分为4个特权级:0、1、2、3,操作系统核心运行在最高特权等级0,用户程序运行在最低特权等级3。
在保护形式下,当寻址扩展内存里的数据和程序时,仍然使用偏移地址访问位于存储器段内的信息区别是,实形式下的段基址由段存放器提供,而保护形式下段存放器里存放着一个选择符selector,用于选择描绘表内的一个描绘符描绘符descriptor描绘存储器段的位置、长度和访问权限段存放器 偏移量 访问权 界 限 基地址 存储器操作数段内基址段界选择段大到4GB段描绘符 3虚拟8086方式 虚拟8086形式是运行在保护形式中的实形式,为了在32位保护形式下执行纯16位程序它不是一个真正的CPU形式,还属于保护形式 有了虚拟8086形式,允许80486微处理器同时执行8086操作系统和8086应用程序,以及80486微处理器操作系统和80486微处理器的应用程序,因此,在一台多用户的80486微处理器的计算机里,多个用户可以同时使用计算机 2.2存放器64位微处理器存放器2.2.1 通用存放器 31 15 7 0 031 015 815 07 EAX AX AH AL EBX BX BH BL ECX CX CH CL EDX DX DH DL EBP BP ESP SP ESI SI EDI DI2.2.2 指令指针存放器 EIP 32位 IP EIP的低16位 内容:下一条要取入CPU的指令在内存中的偏移地址。
2.2.3 标志存放器 EFLAGS 32位 FLAGS EFLAGS的低16位 31 18 17 16 15 14 1312 11 10 9 8 7 6 5 4 3 2 1 0ACVMRF0 NTIOPLOFDFIFTFSFZF0 AF0 PF1 CF各标志位的含义: 1、CF进位标志 =1 算术操作最高位产生了进位或借位 =0 最高位无进位或借位 2、PF奇偶标志 =1 数据最低8位中1的个数为偶数 =0 数据最低8位中1的个数为奇数 3、AF辅助进位标志 =1 D3D4位产生了进位或借位 =0 D3D4位无进位或借位 4、ZF零标志 =1 操作结果为0 =0 结果不为0 5、SF符号标志 =1 结果最高位为1 =0 结果最高位为0 6、OF溢出标志 =1 此次运算发生了溢出 =0 无溢出 7、DF方向标志 =1 地址自动按减量变化 =0 地址自动按增量变化 8、TF陷阱标志 =1 调试按单步方式 =0 非单步 9、IF中断允许标志 =1 允许响应外部可屏蔽中断 =0 制止响应 10、IOPL输入/输出特权级标志 I/O特权级:0级3级 11、NT嵌套任务标志 =1 当前任务被嵌套于前一任务 =0 不嵌套 12、RF恢复标志 =1 遇到调试故障也不产生异常中断 =0 当指令顺利进展后自动清零 13、VM虚拟8086形式标志 =1 CPU工作在虚拟8086方式 =0 否 14、AC对准检查标志 =1 假设进展未对准的地址访问,那么产生异常中断 =0 否2.2.4 段存放器 16位编程可见 64位编程不可见 选择器存放器 描绘符存放器CSDSSSESFSGSCSDSSSESFSGS CS 0000 IP代码段 DS或ES 0000 SI、DI或BX SS 0000 SP或BP数据段堆栈段存储器段存放器和偏移地址存放器组合关系 一、实方式或虚拟8086方式下 段存放器为16位,存放内存段的段基址。
CS-代码段的段基址 DS-数据段的段基址 SS-堆栈段的段基址 ES-附加数据段的段基址逻辑地址由段基址:偏移地址组成段基址为段首地址的高16位段首地址的低4位为0物理地址20位=段首地址20位+偏移地址16位 =段基址16位10H+偏移地址16位 例:在实形式方式下,假定内存数据段中有两个数据1234H和5678H;假设当前DS=5AAA0H,它们的偏移地址分别是245AH和3245H,试用图说明它们在存储器中的物理地址. 二、保护方式下 段存放器有CS、DS、SS、ES、FS、GS,包括选择器存放器和描绘符存放器 逻辑地址由选择器存放器:偏移地址组成 选择器存放器的低2位为特权标志,D2位为描绘符表类型标志,高13位是选择码 描绘符存放器的作用是为了加速运行保护方式下: 段基址32位 偏移地址32位 线性地址32位 物理地址32位2.2.5 系统地址存放器 1、GDTR 48位 全局描绘符表存放器 2、LDTR 16位 部分描绘符表存放器 3、IDTR48位 中断描绘符表存放器 4、TR16位 任务状态存放器2.3 指令流水线操作 在80486CPU中设有8KB的内部高速缓存器、32字节的预取指令队列、指令译码器、控制器及执行部件,这就从硬件上支持了指令流水线操作。
80486使用5个步骤的流水线技术,即指令预取PF、译码D1、 译码D2、执行EX和结果写回WB其过程如以以下图图 80486指令执行过程流水线过程示意图: D1123455677D21234567EX123445567WB1234567 对于绝大多数指令,各步骤各需要1个时钟周期少数需增加时钟周期 Pentium微处理器有两条流水线,即U流水线和V流水线这样就可以使微处理器同时执行两条指令。












