《微型计算机原理》(王忠民版)PPT电子课件教案-第3章 80x86微处理器

上传人:aa****6 文档编号:48798045 上传时间:2018-07-20 格式:PPT 页数:235 大小:2.42MB
返回 下载 相关 举报
《微型计算机原理》(王忠民版)PPT电子课件教案-第3章  80x86微处理器_第1页
第1页 / 共235页
《微型计算机原理》(王忠民版)PPT电子课件教案-第3章  80x86微处理器_第2页
第2页 / 共235页
《微型计算机原理》(王忠民版)PPT电子课件教案-第3章  80x86微处理器_第3页
第3页 / 共235页
《微型计算机原理》(王忠民版)PPT电子课件教案-第3章  80x86微处理器_第4页
第4页 / 共235页
《微型计算机原理》(王忠民版)PPT电子课件教案-第3章  80x86微处理器_第5页
第5页 / 共235页
点击查看更多>>
资源描述

《《微型计算机原理》(王忠民版)PPT电子课件教案-第3章 80x86微处理器》由会员分享,可在线阅读,更多相关《《微型计算机原理》(王忠民版)PPT电子课件教案-第3章 80x86微处理器(235页珍藏版)》请在金锄头文库上搜索。

1、第3章 80x86微处理器 第3章 80x86微处理器 3.1 80x86微处理器简介3.2 8086/8088微处理器3.3 8086/8088存储器和I/O组织 3.4 从80286到Pentium系列的技术发展 第3章 80x86微处理器 3.1 80x86微处理器简介 80x86微处理器是美国Intel 公司生产的系列微处理器。该公司成立于1968年,1969年就设计了4位的4004 芯片,1973年开发出8位的8080芯片,1978年正式推出16位的8086微处理器芯片,由此开始了Intel公司的80x86系列微处理器的生产历史。本节简要介绍Intel公司80x86系列微处理器的发展

2、过程及其特性。表3.1给出了80x86系列微处理器概况。下面通过对表中有关技术数据的分析来说明Intel 80x86系列微处理器的发展情况。 第3章 80x86微处理器 表中“集成度”是指CPU芯片中所包含的晶体管数。“主频”是指芯片所使用的主时钟频率,它直接影响计算机的运行速度。“数据总线”是计算机中各个组成部件间进行数据传送时的公共通道,“内数据总线宽度”是指CPU芯片内部数据传送的宽度(位数),“外数据总线宽度”是指CPU与外部交换数据时的数据宽度,显然,数据总线位数越多,数据交换的速度就越快。 第3章 80x86微处理器 “地址总线”是在对存储器或I/O端口进行访问时,传送 由CPU提

3、供的要访问的存储单元或I/O端口的地址信息的总线,其宽度决定了处理器能直接访问的主存容量大小。如8086有20根地址线,使用这20根地址线上不同地址信息的组合,可直接对220=1M个存储单元进行访问;Pentium II有36根地址线,因此它可直接寻址的最大地址范围为236=64G。 第3章 80x86微处理器 高速缓冲存储器Cache的使用,大大减少了CPU读取指令和操作数所需的时间,使CPU的执行速度显著提高。为了满足微型计算机对存储器系统高速度、大容量、低成本的要求,目前,微型计算机系统采用如图3.1所示的三级存储器组织结构,即由高速缓冲存储器Cache、主存和外存组成。 第3章 80x

4、86微处理器 表3.1 80x86系列微处理器概况 第3章 80x86微处理器 当前正在执行的程序或要使用的数据必须从外存调入主存后才能被CPU读取并执行,主存容量通常为MB级(理论上可达GB级,如Pentium II可配置的内存最大容量可达236=64G,但事实上,基于成本和必要性考虑,目前,微型计算机内存配置一般都不会达到其理论允许值);当前没有使用的程序可存入外存,如硬 盘、软盘、光盘等,外存的容量通常很大,可达GB甚至TB级;而高速缓冲存储器的最大特点是存取速度快,但容量较小,通常 为KB级,将当前使用频率较高的程序和数据通过一定的替换机制从主存放入Cache,CPU在取指令或读取操作

5、数时,同时对Cache和主存进行访问,如果Cache命中,则终止对主存的访问,直接从Cache中将指令或数据送CPU处理,由于Cache的速度比主存快得多,因此,Cache的使用大大提高了CPU读取指令或数据的速度。 第3章 80x86微处理器 高速缓冲存储器 (Cache)微处理器 CPU主存储器 (主存)外存储器 (外存)图3.1 存储器三级结构 第3章 80x86微处理器 80386之前的CPU都没有Cache。80386 CPU内无Cache,而由与之配套使用的Intel 82385 Cache 控制器实现CPU之外的Cache管理。80486之后的CPU芯片内部都集成了一至多个Cac

6、he。需要说明的是,80x86CPU在发展过程中,存储器的管理机制发生了较大变化。8086/8088CPU对存储器的管理采用的是分段的实方式;80286CPU除了可在实方式下工作外,还可以在保护方式下工作;而80386CPU之后的处理器则具有三种工作方式:实方式、保护方式和虚拟8086方式。 第3章 80x86微处理器 在保护方式下,机器可提供虚拟存储管理和多任务管理机制。虚拟存储的实现,为用户提供了一个比实际主存空间大得多的程序地址空间,从而可使用户程序的大小不受主存空间的限制。多任务管理机制的实现,可允许多个用户或一个用户的多个任务同时在机器上运行。从80386开始,微处理器除支持实方式和

7、保护方式外,又增加了一种虚拟8086方式。在这种方式下,一台机器可以同时模拟多个8086处理器的工作。有关存储器管理机制的详细介绍,请参阅3.4.2 “80x86存储器管理”一节。 第3章 80x86微处理器 3.2 8086/8088微处理器 8086是Intel系列的16位微处理器。使用HMOS工艺制造,芯片上集成了2.9万个晶体管,用单一的+5V电源供电,封装在标准的40引脚双列直插式管壳内,时钟频率5MHz10MHz。8086有16条数据总线,可以处理8位或16位数据。有20条地址总线,可以直接寻址1M(220)字节的存储单元和64K个I/O端口。在8086推出后不久,为方便原8位机用

8、户,Intel公司很快推出了8088微处理器,其指令系统与8086完全兼容,CPU内部结构仍为16位,但外部数据总线是8位的,这样设计的目的主要是为了与原有的8位外围接口芯片兼容。并以8088为CPU组成了IBM PC、PC/XT等准16位微型计算机,由于其性能价格比高,很快占领了市场。 第3章 80x86微处理器 3.2.1 8086/8088内部结构一总线接口单元BIU总线接口单元BIU的功能是负责完成CPU与存储器或I/O设备之间的数据传送。具体任务是: 指令队列出现空字节(8088CPU 1个空字节,8086CPU 2个空字节)时,从内存取出后续指令。BIU取指令时,并不影响EU的执行

9、,两者并行工作,大大提高了CPU的执行速度。 EU需要从内存或外设端口读取操作数时,根据EU给出的地址从内存或外设端口读取数据供EU使用 第3章 80x86微处理器 EU的运算结果、数据或控制命令等由BIU送往指定的内存单元或外设端口。总线接口单元内有4个16位段寄存器:代码段寄存器CS(Code Segment)、数据段寄存器DS(Data Segment)、堆栈段寄存器SS(Stack Segment)和附加数据段寄存器ES(Extra Segment),一个16位的指令指针寄存器IP(Instruction Pointer),一个20位地址加法器,6字节指令队列缓冲器,一个与EU通讯的内

10、部寄存器以及总线控制电路等。 第3章 80x86微处理器 图3.2 8086CPU内部结构框图 第3章 80x86微处理器 1段寄存器8086CPU的地址引脚有20根,能提供20位的地址信息,可直接对1M个存储单元进行访问,但CPU内部可用来提供地址信息的寄存器都是16位的,那么如何用16位寄存器实现20位地址的寻址呢?8086/8088采用了段结构的内存管理的方法。将指令代码和数据分别存储在代码段、数据段、堆栈段、附加数据段中,这些段的段地址分别由段寄存器CS、DS、SS、ES提供,而代码或数据在段内的偏移地址则由有关寄存器或立即数给出。 第3章 80x86微处理器 代码段寄存器CS存储程序

11、当前使用的代码段的段地址。代码段用来存放程序的指令代码。下一条要读取指令在代码段中的偏移地 址由指令指针寄存器IP提供;数据段寄存器DS用来存放程序当前使用的数据段的段地址。一般来说,程序中所用到的原始数据、中间结果以及最终结果都存放在数据段中,如果程序中使用了字符串处 理指令,则源字符串也存放在数据段中;堆栈段寄存器SS用来存放程序当前所使用的堆栈段的段地址。堆栈是在存储器中开辟的一个 特定区域,详见3.3.4 “堆栈操作”一节。附加数据段寄存器ES用来存放程序当前使用的附加数据段的段地址。附加数据段通常用于存放字符串操作时的目的字符串。程序员在编写汇编语言源程序时,应该按照上述规定将程序的

12、各个部分放在规定的段内。每个源程序必须至少有一个代码段,而数据段、堆栈段和附加数据段则根据程序的需要决定是否设置。 第3章 80x86微处理器 2指令指针寄存器指令指针寄存器IP用来存放下一条要读取的指令在代码段中的偏移地址。IP在程序运行中能自动加1修正,从而使其始终存放的是下一条要读取的指令在代码段的偏移地址。由于CS和IP的内容决定了程序的执行顺序,因此程序员不能直接用赋值指令对其内容进行修改。有些指令能使IP和CS的值改变(如跳转指令)或使其值压入堆栈或从堆栈中弹出恢复原值(如子程序调用指令和返回指令)。 第3章 80x86微处理器 320位地址加法器8086/8088CPU在对存储单

13、元进行访问以读取指令或读/写操作数时,必须在地址总线上提供20位的地址信息,以便选中对应的存储单元。那么,CPU是如何产生20位地址的呢?CPU提供的用来对存储单元进行访问的20位地址是由BIU中的地址加法器产生的。 第3章 80x86微处理器 存储器中每个存储单元的地址可有以下两种表示方式:逻辑地址:其表达形式为“段地址:段内偏移地址”。段内偏移地址又称为“有效地址EA(Effective Address)。在读指令时,段地址由代码段寄存器CS提供,当前要读取指令在代码段中的偏移地址由指令指针寄存器IP提供;在读取或存储操作数时,根据具体操作,段地址由DS、ES或SS提供,段内偏移地址由指令

14、给出。 第3章 80x86微处理器 物理地址:CPU与存储器进行数据交换时在地址总线上提供的20位地址信息称为物理地址。物理地址的形成过程如图3.3所示。当由IP提供或由EU根据指令所提供寻址方式计算出寻址单元的16位段内偏移地址后,把该偏移地址和段寄存器内容左移四位后(相当于乘以10H)得到的段基址(段内第一个存储单元的物理地址)同时送到BIU中的地址加法器,形成一个20位的物理地址,从而实现对存储单元的访问。由逻辑地址求物理地址的公式为:物理地址=段地址10H+段内偏移地址 如假设当前(CS)=20A8H,(IP)=2008H,那么,下一条从内存中读取的指令所在存储单元的物理地址为:20A

15、8H10H+ 2008H=22A88H。 第3章 80x86微处理器 图3.3 物理地址的形成 第3章 80x86微处理器 4. 指令队列缓冲器8086的指令队列有6个字节,8088的指令队列有4个字节。对 8086而言,当指令队列出现2个空字节,对8088而言,指令队列 出现1个空字节时,BIU就自动执行一次取指令周期,将下一条要 执行的指令从内存单元读入指令队列。它们采用“先进先出”原则 ,按顺序存放,并按顺序取到EU中去执行。当EU执行一条需要到存储器或I/O端口读取操作数的指令时 ,BIU将在执行完现行取指令的存储器周期后的下一个存储周期 ,对指令所指定的存储单元或I/O端口进行访问,

16、读取的操作数经 BIU送EU进行处理。当EU执行跳转、子程序调用或返回指令时, BIU就使指令队列复位,并从指令给出的新地址开始取指令,新 取的第1条指令直接经指令队列送EU执行,随后取来的指令将填 入指令队列缓冲器。 第3章 80x86微处理器 指令队列的引入使得EU和BIU可并行工作,即BIU在读指令时,并不影响EU单元执行指令,EU单元可以连续不断地直接从指令队列中取到要执行的指令代码,从而减少了CPU为取指令而等待的时间,提高了CPU的利用率,加快了整机的运行速度。 第3章 80x86微处理器 二执行单元EU执行单元EU不与系统外部直接相连,它的功能只是负责执行指令。执行的指令从BIU的指令队列缓冲器中直接得到,执行指令时若需要从存储器或I/O端口读取操作数时,由EU向BIU发出请求,再由BIU对存储器或I/O端口进行访问。EU由下列部件组成:1. 16位算术逻辑单元(ALU):用于进行算术和逻辑运算。2. 16位标志寄存器FLAGS:用来存放CPU运算的状态特征和控制

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号