《微型计算机技术及应用:第2章 16位和32位微处理器》由会员分享,可在线阅读,更多相关《微型计算机技术及应用:第2章 16位和32位微处理器(112页珍藏版)》请在金锄头文库上搜索。
1、第第2章章 16位和位和32位微处理器位微处理器本章重点本章重点 : CPU的编程结构标志寄存器的含义CPU的操作时序CPU的中断分类和中断向量硬件中断和软件中断的区别,软件中断的特点80386 的功能部件32位微型机的三种工作方式 本章重点:本章重点: 32位微型机中指令流水线和地址流水线和实现 32微型机中的两级存储管理 逻辑地址到线性地址的转换 逻辑地址到物理地址的转换 线性地址到物理地址的转换 Pentium采用的CISC和RISC技术 分支预测技术的设计思想和实现方法 本章重点:本章重点: Pentium的技术特点 Pentium的主要部件 Pentium的主要信号 Pentium的
2、总线状态和总线周期Itanium的主要新技术 教学建议:教学建议: 以8086为基础,以80386 作过渡,以Pentium中的技术为重点。 本章用6学时,其中: 8086用 3学时 80386用 1学时 Pentium用 2学时 微处理器的性能指标:微处理器的性能指标: 字长主频 2.1 16位微处理器位微处理器80862.1.1 8086的编程结构的编程结构 从功能上,8086分为两部分,即1.总线接口部件(businterfaceunit,BIU)2.执行部件(executionunit,EU) 1. 总线接口部件总线接口部件总线接口部件负责与存储器、I/O端口传送数据 ,由下列4部分组
3、成: 4个段地址寄存器(CS、DS、ES、SS) 16位的指令指针寄存器 IP(Instruction Pointer) 20位的地址加法器6字节的指令队列缓冲器2. 执行部件执行部件 执行部件负责指令的执行 ,由下列4部分组成: 4个通用寄存器,即AX、BX、CX、DX; 4个专用寄存器,即基数指针寄存器BP(base pointer)堆栈指针寄存器SP(stack pointer)源变址寄存器SI(source index)目的变址寄存器DI(destination index); 标志寄存器;算术逻辑部件(arithmeticlogicunit)。 标志寄存器共有16位,其中7位未用,所
4、用的各位含义如下: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0OFDFIFTFSFZFAFPFCF根据功能,8086的标志可以分为两类:1.状态标志2.控制标志 状态标志有6个,即SF、ZF、PF、CF、AF和OF 符号标志SF(signflag) 零标志ZF(zeroflag) 奇偶标志PF(parityflag) 进位标志CF(carryflag) 辅助进位标志(auxiliarycarryflag) 溢出标志(overflowflag) 控制标志有3个,即 方向标志DF(directionflag) 中断允许标志IF(interruptenableflag
5、) 跟踪标志TF(trapflag)又称为单步标志 3. 8086的总线周期的概念的总线周期的概念 典型的8086总线周期序列:T1状态,发地址信息 T2状态,总线的高4位输出状态信息T3状态,高4位状态信息,低16位数据T3之后,可能插入TW在T4状态,结束。2.1.2 8086的引脚信号和工作模式的引脚信号和工作模式 1.最小模式和最大模式的概念最小模式和最大模式的概念 (1)最小模式: 在系统中只有一个微处理器。(2)最大模式:两个或多个微处理器(主处理器、协处理器)2. 8086/8088的引脚信号和功能的引脚信号和功能注意点:8086/8088的数据线和地址线复用 8086有16根数
6、据线 第21脚(RESET)为输入复位信号 第22引脚为“准备好”(READY)信号高4位地址和状态线复用 各引脚信号:GND、V地和电源 AD15AD0地址/数据复用A19/S6A16/S3 地址/状态复用BHE/S7高8位数据总线允许/状态复用NMI非屏蔽中断输入 INTR可屏蔽中断请求信号输入 RD读信号输出 CLK时钟输入 RESET复位信号输入 READY“准备好”信号输入 TEST测试信号输入 MN/MX最小和最大模式控制输入 3. 最小模式最小模式 引脚信号:INTA中断响应信号输出 ALE地址锁存允许信号输出 DEN数据允许信号 DT/R数据收发信号输出 M/IO存储器/输入输
7、出控制信号输出 WR写信号输出 HOLD总线保持请求信号输入 HLDA总线保持响应信号输出 8086在最小模式下的典型配置在最小模式下的典型配置 :4. 最大模式最大模式 引脚信号:QS1、QS0指令队列状态信号输出 S2#、S1#、S0#总线周期状态信号输出 LOCK#(lock)总线封锁信号输出 RQ#/GT1#、RQ#/GT0#总线请求信号输入、总线授权信号输出 8086在最大模式下的典型配置在最大模式下的典型配置 :2.1.3 8086的操作和时序的操作和时序 8086的主要操作的主要操作: 系统的复位和启动操作; 暂停操作; 总线操作; 中断操作; 最小模式下的总线保持;最大模式下的
8、总线请求/允许。 1. 系统的复位和启动操作系统的复位和启动操作 2. 总线操作总线操作(1) 最小方式下的总线读操作(2) 最小方式下的总线写操作(3)最大模式下的总线读操作(4) 最大模式下的总线写操作 (1) 最小方式下的总线读操作最小方式下的总线读操作(2) 最小方式下的总线写操作最小方式下的总线写操作(3) 最大模式下的总线读操作最大模式下的总线读操作(4) 最大模式下的总线写操作最大模式下的总线写操作3中断操作和中断系统中断操作和中断系统(1)8086的中断分类的中断分类 硬件中断 (非屏蔽中断和可屏蔽中断)软件中断8086/8088的中断分类的中断分类 :(2) 中断向量和中断向
9、量表中断向量和中断向量表 (3) 硬件中断硬件中断 NMI INTR(4) 硬件中断的响应和时序硬件中断的响应和时序 可屏蔽中断的响应过程 :读取中断类型码将标志寄存器的值推入堆栈把标志寄存器的IF和TF清零将断点保护到堆栈中。 寻找中断向量,转入中断处理程序 中断响应中断响应 8086的中断响应总线周期的中断响应总线周期 :非屏蔽中断和可屏蔽中断有两点差别; TF是单步中断标志 ;在中断响应后,又遇NMI;结束时,返回断点;等待或串操作时,允许过程中进入中断。中断响应用中断响应用2个总线周期个总线周期第1个总线周期,通知外设,CPU准备响应中断;第2个总线周期,外设发送中断类型码(5) 中断
10、处理子程序中断处理子程序 进一步保护中断现场 开放中断 中断处理的具体内容 弹出堆栈指令中断返回指令(6) 软件中断软件中断 特点: 用一条指令进入中断处理子程序,并且,中断类型码由指令提供。 不执行中断响应总线周期,也不从数据总线读取中断类型码。 不受中断允许标志IF的影响 执行过程中可响应外部硬件中断软件中断没有随机性4. 最小模式下的总线保持最小模式下的总线保持利用HOLD和HLDA信号实现总线保持5. 最大模式下的总线请求最大模式下的总线请求/授权授权利用RQ#/GT实现总线请求/授权2.1.4 8086的存储器编址和的存储器编址和I/O编址编址 1. 8086的存储器编址的存储器编址
11、 CS、DS、SS和其他寄存器组合指向存储单元的示意图 :2.2 32位微处理器位微处理器80386 2.2.1 80386的体系结构的体系结构 6个功能部件个功能部件 指令预取部件 指令译码部件 执行部件 分段部件分页部件总线接口部件2.2.2 80386的三种工作方式的三种工作方式 80386有三种工作方式:实地址方式(realaddressmode)保护虚拟地址方式(protectedvirtualaddressmode)即保护方式虚拟8086方式(virtual8086mode) 实地址方式和虚拟实地址方式和虚拟8086方式区别方式区别 单任务和多任务问题寻址空间问题内存划分问题2.2
12、.3 寄存器寄存器 1.通用寄存器通用寄存器 8个32位通用寄存器, EAX EBX ECX EDX ESI EDI EBP ESP2.指令指针寄存器(指令指针寄存器(EIP)和标志寄存器和标志寄存器 (EFLAGS)3.段寄存器和段描述符寄存器段寄存器和段描述符寄存器 4.控制寄存器控制寄存器 CR0CR2CR3CR0的含义:的含义:5.系统地址寄存器系统地址寄存器 系统地址寄存器有4个:GDTR全局描述符表寄存器IDTR 中断描述符表寄存器TR任务状态寄存器.LDTR局部描述符表寄存器4个系统地址寄存器的结构个系统地址寄存器的结构 :6.调试寄存器和测试寄存器调试寄存器和测试寄存器 调试寄
13、存器:DR0DR7测试寄存器:测试命令寄存器:TR6数据寄存器:TR732位位CPU的调试寄存器的调试寄存器 :2.2.4 指令流水线和地址流水线指令流水线和地址流水线 1. 指令流水线构成:指令流水线构成:总线接口部件指令预取部件指令译码部件执行部件2. 地址流水线组成地址流水线组成 分段部件分页部件总线接口部件3种地址:种地址:逻辑地址线性地址物理地址2.2.5 80386的虚拟存储机制和片内两级存储管理的虚拟存储机制和片内两级存储管理 (1) 虚拟储存技术虚拟储存技术 虚拟存储器机制的组成:主存储器辅助存储器存储管理部件虚拟存储器分类:段式虚拟存储器页式虚拟存储器(2) 片内两级存储管理
14、片内两级存储管理1分段管理分段管理 采用描述符表的优点 :可以大大扩展存储空间。 可以实现虚拟存储。 可以实现多任务隔离。 80386有两类段,即非系统段系统段 (1) 非系统段描述符非系统段描述符 非系统段:代码段、数据段(堆栈段)非系统段描述符的格式和含义非系统段描述符的格式和含义 :(2) 系统段描述符系统段描述符 系统段描述符的格式和含义系统段描述符的格式和含义 :段选择子的含义和功能段选择子的含义和功能 :从逻辑地址到线性地址的转换从逻辑地址到线性地址的转换 :从逻辑地址到物理地址的转换从逻辑地址到物理地址的转换 :2.分页管理分页管理 分页部件用两个表实现地址转换: 页组目录项表
15、页表线性地址到物理地址的转换线性地址到物理地址的转换 线性地址转换为物理地址的例子线性地址转换为物理地址的例子 3.转换检测缓冲器转换检测缓冲器TLB 转换检测缓冲器TLB的功能 :转换检测缓冲器转换检测缓冲器TLB的工作原理的工作原理 2.2.6 80386的中断的中断 80386下列情况下引起中断: 外设送中断请求信号。 CPU或协处理器产生异常。 执行INT指令。 2.2.7 80386的信号和总线状态的信号和总线状态 1. 80386的信号的信号 2. 80386的总线周期的总线周期 80386的总线周期:写总线周期中断响应周期暂停和停机周期(1) 读写总线周期读写总线周期 80386
16、的完整的总线状态图的完整的总线状态图 :(2) 中断响应周期中断响应周期 (3) 暂停周期和停机周期暂停周期和停机周期 2.3 32位微处理器位微处理器Pentium2.3.1 Pentium采用的先进技术采用的先进技术 1 CISC技术和技术和RISC技术技术CISCCISC技术技术的特点的特点RISCRISC技术的特点技术的特点2 超标量流水线技术超标量流水线技术超标量超标量的含义的含义超标量超标量的实现前提的实现前提3 分支预测技术分支预测技术 分支规律分支规律 MOV DX,100;取填色矩形右上角像素点的y坐标AAA :MOV CX,200;取填色矩形右上角像素点的x坐标BBB: M
17、OV AL,04 ;在AL中设置红色对应的值04H MOV AH,0CH;在AH中设置对应写像素的功能码 INT 10H ;在指定的像素位置填上指写颜色 DEC CX ;x坐标左移一个像素点 JNZ BBB ;继续对下一个点操作 DEC DX ;横向填完一行再对下一行操作 JNL AAA ;如未结束则继续 HLT ;如填好则结束分支预测的方法分支预测的方法采用Cache动态预测2.3.2 Pentium的技术特点的技术特点 64位数据总线 互相独立的指令Cache和数据Cache常用指令用硬件来实现。 增加系统管理方式SMM。 2.3.3 Pentium的原理结构的原理结构 1. Pentiu
18、m的主要部件的主要部件 总线接口部件 U流水线和V流水线 指令Cache 数据Cache指令预取部件 指令译码器 浮点处理部件FPU 分支目标缓冲器BTB 控制ROM寄存器组 2. 原理结构原理结构 2.3.4 Pentium的寄存器的寄存器 Pentium的寄存器分为如下几类: 基本寄存器组 通用寄存器, 指令寄存器, 标志寄存器,段寄存器; 系统寄存器组 地址寄存器, 调试寄存器, 控制寄存器,模式寄存器; 浮点寄存器组 数据寄存器 标记字寄存器 状态寄存器 控制字寄存器指令指针寄存器和数据指针寄存器 1. 基本寄存器组基本寄存器组 标志寄存器 :2. 系统寄存器组系统寄存器组 控制寄存器
19、 :3. 浮点寄存器组浮点寄存器组 Pentium的的FPU状态寄存器状态寄存器 Pentium的的FPU控制字寄存器控制字寄存器 2.3.5 Pentium的主要信号的主要信号 1. 地址线及控制信号地址线及控制信号 A31A3地址线 AP地址的偶校验码位 ADS#地址状态输出信号 A20M# A20以上的地址线屏蔽信号APCHK#地址校验出错信号2. 数据线及控制信号数据线及控制信号 D63D0数据线 BE7#BE0#字节允许信号 DP7DP0奇偶校验信号 PCHK#读校验出错PEN#奇偶校验允许信号3. 总线周期控制信号总线周期控制信号 D/C#数据/控制信号M/IO#存储器和I/O访问
20、信号W/R#读写信号LOCK#总线封锁信号 BRDY#突发就绪信号 NA#下一个地址有效信号 SCYC分割周期信号4. Cache控制信号控制信号 CACHE#Cache控制信号EADS#外部地址有效信号KEN#Cache允许信号FLUSH#Cache擦除信号AHOLD地址保持/请求信号PCDCache禁止信号PWT片外Cache的控制信号 WB/WT#片内Cache回写/通写选择信号HIT#和HITM#Cache命中信号和命中Cache的状态信号INV无效请求信号 5. 系统控制信号系统控制信号 INTR可屏蔽中断请求信号 NMI非屏蔽中断请求信号 RESET系统复位信号 INIT初始化信号
21、CLK系统时钟信号 6. 总线仲裁信号总线仲裁信号 HOLD总线请求信号 HLDA总线请求响应信号 BREQ总线周期请求信号 BOFF#强制让出总线信号 7. 检测与处理信号检测与处理信号 BUSCHK#转入异常处理的信号 FERR#浮点运算出错的信号 IGNNE#忽略浮点运算错误的信号 FRCMC#输入此信号会使CPU进行冗余校验IERR#冗余校验出错信号 8. 系统管理模式信号系统管理模式信号 SMI#系统管理模式中断请求信号SMIACT#系统管理模式信号9. 测试信号测试信号 TCK从此端输入测试时钟信号 TDI用来输入串行测试数据 TDO此端获得输出的测试数据结果 TMS用来选择测试方
22、式TRST#测试复位,退出测试状态10.跟踪和检查信号跟踪和检查信号 BP3BP0以及PM1PM0 BT3BT0分支地址输出信号 IUU流水线完成指令 IV 流水线完成指令的执行过程 IBT指令发生分支 R/S#探针信号输入端PRDY对R/S#的响应信号 2.3.6 Pentium的总线状态和总线周期的总线状态和总线周期 1 . Pentium的总线状态的总线状态 (1)Pentium的几种总线状态 (2)总线状态之间的转换 2. Pentium的总线周期的总线周期 (1) 非流水线式读写周期非流水线式读写周期 (2) 流水线式读写周期流水线式读写周期 (3) 突发式读写周期突发式读写周期 (a)读周期(b)写周期 2.4 Itanium微处理器概述微处理器概述 Itanium新技术新技术:可拥有三级Cache多个执行部件和多个通道数量众多的寄存器采用完全并行指令计算技术采用新机制的分支预测技术