微型计算机原理及应用(第三版)第4章.ppt_第1页
微型计算机原理及应用(第三版)第4章.ppt_第2页
微型计算机原理及应用(第三版)第4章.ppt_第3页
微型计算机原理及应用(第三版)第4章.ppt_第4页
微型计算机原理及应用(第三版)第4章.ppt_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

4. 16位微处理器,4.1 16位微处理器概述 4.2 8086/8088 CPU的结构 4.3 8086/8088 CPU的引脚信号和工作模式 4.4 8086/8088的主要操作功能,微型计算机系统组成,微型计算机系统的三个层次 微处理器( Microprocessor ) 微型计算机( Microcomputer ) 微型计算机系统( Microcomputer System ),微型计算机系统组成,微处理器(Micro Processing Unit),微处理器(Micro Processing Unit),即微型化的中央处理器。中央处理器CPU的英文全称是 Central Processing Unit。早期微处理器以 MPU 表示,以区别于大型主机的多芯片CPU。但现在已经不加区分,都用CPU表示。,与CPU有关的术语,主频 CPU内部的时钟频率,是CPU进行运算时的工作频率。一般来说,主频越高,一个时钟周期里完成的指令数也越多,CPU的运算速度也就越快。但由于内部结构不同,并非所有时钟频率相同的CPU性能一样。 外频 即系统总线、CPU与周边设备传输数据的频率,具体是指CPU到芯片组之间的总线速度。 倍频 原先并没有倍频概念,CPU的主频和系统总线的速度是一样的,但CPU的速度越来越快,倍频技术也就应允而生。它可使系统总线工作在相对较低的频率上,而CPU速度可以通过倍频来提升。CPU主频的计算方式为:主频 = 外频 x 倍频。也就是倍频是指CPU和系统总线之间相差的倍数,当外频不变时,提高倍频,CPU主频也就越高。,与CPU有关的术语,缓存(Cache) CPU进行处理的数据信息多是从内存中调取的,但CPU的运算速度要比内存快得多,为此在此传输过程中放置一存储器,存储CPU经常使用的数据和指令。这样可以提高数据传输速度。可分一级缓存和二级缓存。 一级缓存(L1 Cache) 集成在CPU内部中,用于CPU在处理数据过程中数据的暂时保存。L1级高速缓存的容量越大,存储信息越多,可减少CPU与内存之间的数据交换次数,提高CPU的运算效率。但因高速缓冲存储器均由静态RAM组成,结构较复杂,在有限的CPU芯片面积上,L1级高速缓存的容量不可能做得太大。 二级缓存(L2 Cache) 由于L1级高速缓存容量的限制,为了再次提高CPU的运算速度,在CPU外部放置一高速存储器,即二级缓存。工作主频比较灵活,可与CPU同频,也可不同。CPU在读取数据时,先在L1中寻找,再从L2寻找,然后是内存,最后是外存储器。,与CPU有关的术语,生产工艺 在生产CPU过程中,要进行加工各种电路和电子元件,制造导线连接各个元器件。其生产的精度以微米(um)来表示,精度越高,生产工艺越先进。在同样的材料中可以制造更多的电子元件,连接线也越细,提高CPU的集成度,CPU的功耗也越小。这样CPU的主频也可提高,在0.25微米的生产工艺最高可以达到600MHz的频率。而0.18微米的生产工艺CPU可达到G赫兹的水平上。 工作电压 是指CPU正常工作所需的电压,提高工作电压,可以加强CPU内部信号,增加CPU的稳定性能。但会导致CPU的发热问题,CPU发热将改变CPU的化学介质,降低CPU的寿命。早期CPU工作电压为5V,随着制造工艺与主频的提高,CPU的工作电压有着很大的变化,Core 2 Duo CPU的电压为1.7V,解决了CPU发热过高的问题。,与CPU有关的术语,MMX(MultiMedia Extensions,多媒体扩展指令集) 英特尔开发的最早期SIMD指令集,可以增强浮点和多媒体运算的速度。 SSE(Streaming SIMD Extensions,单一指令多数据流扩展) 英特尔开发的第二代SIMD指令集,有70条指令,可以增强浮点和多媒体运算的速度。 3DNow!(3D no waiting) AMD公司开发的SIMD指令集,可以增强浮点和多媒体运算的速度,它的指令数为21条。,CPU内核 内核电压 1.248V 制作工艺 0.065 微米 CPU频率 主频 1860MHz 倍频(倍) 7 外频 266MHz CPU缓存 L1缓存 32KB L2缓存 2MB CPU指令集 指令集 MMX,SSE,SSE2,SSE3,SSE4,EM64T,4.1 16位微处理器概述,8086/8088内部结构相同,但外部性能有区别: 8086是16位数据总线,8088是8位数据总线。处理一个16位数据字时,8088需要两步操作,8086只要一步。 8086/8088的CPU的内部都采用16位字进行操作及存储器寻址,软件完全兼容、程序执行也一样。但是8088有相对较多的外部存取操作,所以程序执行速度相对较慢。,封装模式:都封装在40脚双列直插组件(DIP)中。,4.2 8086/8088 CPU的结构,8086 CPU 从功能上可以分为两部分: 总线接口部件(bus interface unit, BIU) 执行部件(execution unit, EU),AH AL,BH BL,CH CL,DH DL,SP,BP,DI,SI,通用寄存器,运算寄存器,ALU,标志,执行部分控制电路,1 2 3 4 5 6,CS,DS,SS,ES,IP,内部寄存器,I/O控制电路,地址加法器,20位,16位,8位,指令队列缓冲器,外部总线,执行部件 (EU),总线接口部件 (BIU),8086CPU结构图,AX BX CX DX,16位,专用寄存器,4.2.1 执行部件,功能:负责指令的执行。 (1)从指令队列中取出指令。 (2)对指令进行译码,发出相应的控制信号。 (3)接收由总线接口送来的数据或发送数据至接口。 (4)利用内部寄存器和ALU进行数据处理。,4.2.1 执行部件,执行部件的组成: (1)4个通用寄存器:AX、BX、CX、DX。 (2)4个专用寄存器: BP- 基数指针寄存器( base pointer ) SP- 堆栈指针寄存器 ( stack pointer ) SI- 源变址寄存器( source index ) DI-目的变址寄存器 ( destination index ) (3)FR-标志寄存器( flag register ) (4)ALU-算术逻辑部件(arithmetic-logic unit),4.2.1 执行部件,8086/8088的EU具有如下 4 个特点: (1)4个通用寄存器既可以作为16位寄存器来使用,也可以作 为8位寄存器使用。例如:BX作为8位寄存器时,分为BH 高8位和BL低8位。 (2)AX寄存器常常称为累加器,8086指令系统中有许多指令 是通过累加器的动作来执行的。例如,累加器作为16位来 使用的时候,可以按照“字”进行乘、除等操作;当累加器 作为8位来使用的时候,可以按照“字节”进行乘、除等操 作。 (3)加法器是算术逻辑单元(ALU)的主要部件,绝大部分指 令的执行都由加法器来完成。,4.2.1 执行部件,(4)标志寄存器FR共有16位,其中有7位未用。,D15,D0,OF DF IF TF SF ZF AF PF CF,进位标志,奇偶标志,辅助进位标志,零标志,符号标志,跟踪标志,中断标志,方向标志,溢出标志,1-有进、借位 0-无进、借位,加减法中第3位向第4位有进、借位,BCD码运算中是否调整,1-当前运算结果为0 0-结果不为0,状态标志:操作执行后,决定ALU在何种状态,这种状态影响以后的操作。 控制标志:人为设定的,对特定的功能起控制作用。,标志寄存器功能举例,0101 0100 0011 1001 5439H + 0100 0101 0110 1010 456AH 1001 1001 1010 0011 低8位中“1”的个数为偶数,PF=1 运算结果不为0,ZF=0 低4位向前有进位,AF=1 最高位向前没有进位,CF=0,15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,O D I T S Z A P C,4.2.2 总线接口部件,功能: 负责CPU与存储器、I/O端口之间的数据传送。 (1)取指令送到指令队列。 (2)CPU执行指令时,到指定的位置取数据,并将其送至指令 要求的位置单元中。,总线接口部件由下列各部分组成: (1)4个段地址寄存器; CS16位代码段寄存器; DS16位数据段寄存器; ES16位附加段寄存器; SS16位堆栈段寄存器;,4.2.2 总线接口部件,(2)16位指令指针寄存器IP; (3)20位的地址加法器; (4)6字节的指令队列缓冲器。,8086/8088的BIU具有如下特点: (1)指令队列缓冲器:在执行指令的同时,从内存中 取下一 条或者下几条指令,并放入指令队列缓冲器中。CPU执行 完一条指令后,可以立即执行下一条指令(流水线技术), 而无需轮番取指令和执行指令,从而提高CPU效率。 (2)地址加法器:产生20位地址。CPU内无论是段地址寄存器 还是偏移量都是16位的,通过地址加法器产生20位地址。,4.2.2 总线接口部件,指令的一般执行过程: 取指令 指令译码 读取操作数 执行指令 存放结果,8088之前的CPU采用串行工作方式: CPU访问存储器(存取数据或指令)时要等待总线操作的完成 CPU执行指令时总线处于空闲状态 缺点:CPU无法全速运行 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到,取指令 1,执行 1,取操 作数2,执行 2,CPU,BUS,忙碌,忙碌,忙碌,忙碌,存结果 1,取指令 2,4.2.2 总线接口部件,8086/8088CPU采用并行工作方式,取指令2,取操作数,BIU,存结果,取指令3,取操作数,取指令4,执行1,执行2,执行3,EU,BUS,忙碌,忙碌,忙碌,忙碌,忙碌,忙碌,指令预取队列的存在使EU和BIU两个部分可同时进行工作, 提高了CPU的效率 降低了对存储器存取速度的要求,4.2.2 总线接口部件,总线接口部件和执行部件不是同步工作的,它们按照以下的流水线技术原则管理: (1)每当8086的指令队列中有2个空字节,8088指令队列中有1 个空字节时,总线接口部件就会自动取指令至队列中。 (2)执行部件从总线接口的指令队列前部取出指令代码,执行 该指令。 (3)当队列已满,执行部件又不使用总线时,总线接口部件进 入空闲状态。 (4)执行转移指令、调用指令、返回指令时,先清空队列内 容,再将要执行的指令放入队列中。,数据与指令的存储与访问,地址是数据存放的门牌号码,是标明数据所在位置的唯一代号,每个地址空间可以存放8位二进制数,内存示意图,所有CPU可以访问的数据与指令都以二进制数的形式存放在内存中,4.2.3 存储器结构,4.2.3 存储器结构,由于8086/8088有20条地址线,可以寻址220(1M)字节,CPU送到地址总线(AB)上的20位的地址称为物理地址。,物理地址,. . 60000H 60001H 60002H 60003H 60004H . . .,12H,F0H,1BH,08H,存储器的操作完全基于物理地址。 问题: 8086/8088的内部总线和内部寄存器均为16位,如何寻找20位地址?,FFH,解决方法: 存储器分段并赋以地址偏移量,4.2.3 存储器结构,8086/8088CPU把1M字节的存储器空间划分为任意的一些存储段,一个存储段是存储器中可独立寻址的一个逻辑单位,也称逻辑段,每个段的容量小于等于64K字节。每段起始地址规定最低4位为0。图42,高地址,段基址,段基址,段基址,段基址,最大64KB,最小16B,i-1段,i段,i+1段,各段之间可以相互独立,相互重叠,甚至相互重合 (P76 图43),1、8086最少和最多可以分为多少个段? 2、下列地址哪些可能是一个段的开始地址: 134546H,67828H,1FF30H,4.2.3 存储器结构,64KB代码,64KB数据,64KB附加,64KB堆栈,各段独立的分配方式举例,CS DS SS ES,段寄存器,存储器,01500H114FFH 1CD00H2CCFFH 42000H51FFFH B0000HBFFFFH,4.2.3 存储器结构,8086存储器中的每个存储单元都可以用两个形式的地址来表示: 物理地址: 用唯一的20位二进制数所表示的地址,规定了1M字节存储空间中某个字节的地址 。 逻辑地址: 在程序中使用,即: 段基址:偏移地址 。,4.2.3 存储器结构,8086CPU中有四个段地址寄存器:CS,DS,SS和ES,这四个段地址寄存器存放了CPU当前可以寻址的四个段的基址,即可以从这四个段寄存器规定的逻辑段中存取指令代码和数据。一旦这四个段寄存器的内容被设定,就规定了CPU当前可寻址的段。,段基址:段寄存器的16位地址,它们决定了各段在内存中的位置。 偏移地址:每个段最多有64K个存储单元,要区分这64K个单元就要使用16位段内偏移地址。64K2 16,4.2.3 存储器结构,物理地址由两部分组成:段基址和偏移地址。,8086/8088CPU中有一个地址加法器,它将段寄存器提供的段基址乘以16,即左移4位,然后与16位的偏移地址相加,并锁存在物理地址锁存器中。如图所示。 物理地址 = 段基址 * 16 + 偏移地址,段寄存器值,偏移量,+,物理地址,16位,4位,16位,20位,存储器物理地址的计算方法,段基址:CS、DS、ES、 SS。 偏移地址:IP、DI、SI、 BP、SP等。,4.2.3 存储器结构,存储器寻址方式,偏移地址,15 0,+,段基址,存储器,所选存储单元,物理地址,15 0,19 0,地址加法器,偏移地址,4.2.3 存储器结构,60002H,00H,12H,60000H,偏移地址=0002H,逻辑地址: 段基址和段内偏移地址组成。 格式为:段基址:偏移地址,6000H : 0002H,4.2.3 存储器结构,习题:已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H,各段的容量均为64K,DS段有一操作数,其偏移地址=0204H, 1)画出各段在内存中的分布; 2)在图中指出各段首地址; 3)求操作数的物理地址。,解:各段分布及段首址见右图所示。,操作数的物理地址为: 250AH16 + 0204H = 252A4H,00000H,FFFFFH,CS 0000,IP,代码段,DS或ES 0000,SI、DI,SS 0000,SP,数据段 附加段,堆栈段,段寄存器和偏移地址寄存器组合关系,4.2.3 存储器结构,4.2.4 8086总线的工作周期,8086总线的操作时序 在微机系统中,CPU是在时钟信号CLK控制下,按节拍有序地执行指令序列。,时钟信号是一个按一定电压幅度,一定时间间隔发出的脉冲信号 。,4.2.4 8086总线的工作周期,相邻两个脉冲之间的时间间隔,称为一个时钟周期,又称 T 状态(T周期)。,每个T状态包括:下降沿、低电平、上升沿、高电平,8086CPU 频

温馨提示

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

评论

0/150

提交评论