搜档网
当前位置:搜档网 › 第3章作业

第3章作业

第3章作业
第3章作业

第3章从8086到Pentium系列微处理器的技术发展

教材习题解答

1. 简述80286的特点和保护模式的保护功能。

【解】80286的特点:

①CPU内部分为四个处理部件:EU(执行部件)、AU(地址部件)、IU(指令部件)和BU(总线部件)。这四个处理部件可以并行的进行操作,提高了处理速度。

②数据线和地址线完全分离。在一个总线周期中,当有效数据出现在数据总线上的时候,下一个总线周期的地址已经送到地址总线,形成总线周期的流水作业。

③具有“实地址模式”(Real Address Mode,简称为“实模式”)和“保护虚地址模式”(Protected V irtual Address Mode,简称为“保护模式”)”两种工作模式。

④能运行实时多任务操作系统,支持存储管理和保护功能。

⑤实现了虚拟存储管理。

⑥与80286 配合使用的数学协处理器是80287,它基本与8087相同,但适应80286 的两种工作模式。

保护模式体现了80286的特色,主要是对存储器管理、虚拟存储和对地址空间的保护。在保护模式下,可为每个任务提供多达1GB的虚拟存储空间和保护机制,有力地支持了多用户、多任务的操作。那些内存装不下的逻辑段,将以文件形式存在外存储器中,当处理器需要对它们进行存取操作时就会产生中断,通过中断服务程序把有关的程序或数据从外存储器调入到内存,从而满足程序运行的需要。

保护模式为不同程序设置了四个特权级别,可让不同程序在不同的特权级别上运行。依靠这一机制,可支持系统程序和用户程序的分离,并可进一步分离不同级别的系统程序,大大提高了系统运行的可靠性。

2. 简述80386 的特点、80386引脚与8086的区别。

【解】80386 的特点:

80386是全32位结构,它的外部数据总线和内部数据通道,包括寄存器、ALU和内部总线都是32位的。

80386 有3 种工作模式:实模式、虚拟86模式、386的保护模式。

80386的硬件结构可分成6个逻辑单元,它们以流水线方式工作,运行速度可达4MIPS。其硬件设计有支持段页式存储管理部件,易于实现虚拟存储系统。在保护模式下的分段寻址体系,与操作系统相配合可以组成虚拟存储器系统,一个任务的最大虚拟空间可达246=64 TB。

80386硬件支持多任务处理,用一条指令就可以实现任务切换。

80386设置了4级特权级,按优先顺序依次为0级、1级、2级、3级,前3级用于操作系统程序,后1级用于用户程序。

80386引脚与8086的区别见表3-1。

表3-1 80386引脚与8086的区别

8086CPU 80386CPU

共有40个引脚共有132个引脚

16条地址/数据复用线4条地址线34条地址线

32条数据线

在总线宽度控制信号16

BS的控制下,可实现16位或32位数据传送。字节控制信号0

BE~3

BE

协处理器接口信号

(1) PEREQ:协处理器向80386发出的请求信号,有效时表示协处理器请求与存储器之间传送数据。80386响应该请求后,将按照指令的要求控制对存储器的读写。

(2) BUSY:协处理器向80386发出的状态信号,有效时表示协处理器正在执行指令,处于忙状态,暂时不能接受新的指令。

(3)ERROR:协处理器向80386发出的状态信号,有效时表示协处理器出错。80386在检测到ERROR信号后,将转到错误处理子程序来处

理该类错误。

(1) C/

D:数据/控制信号,输出,表示当前是数据传送周期还是控制

周期。

(2) NA:“下一个地址”请求信号,输入,有效时则允许地址流水线

进行操作。

(3)ADS:地址状态信号,三态输出,类似于8086的ALE信号。

3. 简述80386 CPU寄存器的组成、特点及作用。

【解】80386共有34个寄存器,按功能可分为:通用寄存器、段寄存器、状态和控制寄存器、系统地址寄存器、调试寄存器及测试寄存器。

80386的8个通用寄存器和8086通用寄存器相同,只是扩展到32位,分别是:EAX(累加器)、EBX(基址寄存器)、ECX (计数寄存器)、EDX(数据寄存器,在I/O指令中可用作端口地址寄存器,乘除指令中用作辅助累加器)、ESI(源变址寄存器)、EDI(目的变址寄存器)、EBP(基址指针寄存器)、ESP(堆栈指针寄存器)

80386的6个段寄存器分别是:CS代码段寄存器,DS数据段寄存器,SS堆栈段寄存器,ES、FS、GS为三个附加段寄存器。在实方式下,段寄存器的用法和8086系统相同,只是增加了两个附加段寄存器FS、GS。在保护方式下,段寄存器称为段选择符,与描述符配合实现段寻址。

64位的段描述符寄存器对程序员是不可见的。为了加快对内存中描述符表的查询速度,在段选择符内容装入时,段描述符同时装入段描述符寄存器。这样,只要段选择符内容不变,就不需要到内存中查描述符表,从而加快了段地址寻址的速度。描述符寄存器的内容包括段基地址、段限和段属性。段限指出本段的实际长度,与段属性一起主要用于段保护,防止不同任务进入不该进入的段进行操作。

80386的状态和控制寄存器由标志寄存器EFLAGS、指令指针寄存器EIP和四个控制寄存器CR0~CR3组成。

80386有四个系统地址寄存器,用来保护操作系统需要的保护信息和地址转换表信息,定义目前正在执行任务的环境、地址空间和中断向量空间。

80386为调试提供了硬件支持。芯片内设有DR0~DR7八个调试寄存器,调试寄存器主要为系统程序设计人员准备。

80386有8个32位的测试寄存器。其中TR0~TR5保留备用。TR6~TR7用于控制对转换后备缓冲器(TLB)中RAM和CAM(内容可寻址寄存器)的测试。TR6是测试命令寄存器。TR7为测试数据寄存器,其中保存测试结果的状态。

4. 简述80386的三种工作模式的特点和异同。

【解】80386 有 3 种工作模式:实地址模式(简称为实模式),保护虚拟地址模式(简称为保护模式),虚拟8086模式(简称为虚拟86模式)。

实模式:

80386加电启动或复位后自动进入这一模式。实模式主要功能是初始化80386,为建立保护模式做准备。在实模式下,80386的工作方式与8086 相似,可保持80386与8086兼容:地址总线仍为20 位,不用虚拟地址的概念,存储器最大容量仍为1MB,其寻址机制、存储器管理均与8086相同;数据总线为32 位,数据总线与地址总线是相互独立的,内部寄存器主要作为16 位使用,操作数默认长度是16位,也可以按32 位使用,这时要在指令加上越权访问前缀;中断处理结构与8086相同;80386具有4级特权级,程序运行在最高级(0级)上,除少数几条指令外,80386的绝大部分指令均可在实模式下执行。

保护模式:

保护模式是80386最常用的工作模式,通常在80386加电启动或复位后首先进入实模式,完成初始化工作后立即进入保护模式。所谓保护,主要是对存储器的保护,即对存储器中存放的程序和数据的保护。80386运行在保护模式下,可实现对多任务、多道程序的复杂管理,也只有在保护模式下,80386才能够真正发挥其强大的功能。

在保护模式下,采用虚拟存储器的概念,存储空间可使用虚拟地址空间、线性地址空间、物理地址空间。通过存储器管理部件,操作系统可以将磁盘等外存设备映射到内存,使程序员可使用的逻辑地址空间大大超过实际内存的物理地址空间。程序指令的操作数和段内的偏移地址都是32位,地址总线也是32位,物理地址空间为232B=4GB,但对内存单元的访问要通过一种称为描述符的数据结构才能实现。80386具有4级特权级,可实现程序与程序之间、用户程序与操作系统之间的隔离和保护,为多任务操作系统提供了有效的支持

虚拟86模式:

在虚拟86模式下,不用虚拟地址的概念,存储器最大容量仍为1MB,其寻址机制与8086相同。但存储管理机制与8086

不同,它把1MB的存储空间分为256个页面,每页4KB。这时,当多道程序同时运行时,可以使其中的一个或多个任务使用虚拟86模式,并使某一个任务占用存储器的某些页面,而另一个任务占用存储器的另外一些页面,这样就可将多个任务分别转换到物理存储器的不同存储位置,实现了多任务同时运行。在虚拟86模式下,程序运行在最低特权级(3级)上,这时80386的一些特权指令是不能使用的。

80386的上述3种工作模式可以相互转换。在实模式下,通过LMSW或数据传送指令,将控制寄存器CR0的第0位(即PE,允许保护控制位)置为1,即可进入保护模式。通过数据传送指令,将PE置为0,即可从保护模式返回到实模式。在保护模式下,通过执行IRETD指令或进行任务转换,可以进入虚拟86模式。通过中断操作,可以从虚拟86模式转换到保护模式。

5. 什么是逻辑地址和物理地址,逻辑地址、线性地址和物理地址三者之间的关系是什么?

【解】逻辑地址:用户程序中所使用的地址称为逻辑地址。

物理地址:完成存储器单元或I/O端口寻址的实际地址。

程序提供的逻辑地址,包括偏移地址和段选择符两部分。逻辑地址由两部分组成:低32位为偏移地址,可指向4GB空间中的任何地址;高16位为选择符,指向段描述符表(段描述符表由操作系统管理)的一个表项,即一个段描述符。段描述符给出一个段基地址,该段基址与偏移地址相加,产生线性地址。当不采用分页机制时,该线性地址就可用作存储器的物理地址,即出现在地址总线上的地址。当采用分页机制时,线性地址通过分页机构再转换成物理地址。

6. 简述80486 CPU 的组成及各部分的作用。

【解】486微处理器的内部结构包括九个功能单元,这些单元是:总线接口单元、高速缓存(CACHE)、指令预取单元、指令译码单元、控制单元、整数和数据通路单元、浮点单元、分段单元和分页单元等。

总线接口单元用于数据传输、指令预取和处理器内部单元与外部系统的控制功能。

CACHE单元存储当前读入的指令、操作数及其它数据的副本。

指令预取单元:当指令执行中不使用总线周期时,指令预取单元就通过总线接口单元预取指令。

指令译码单元从指令预取单元接受指令,将其译码成低级控制信号和微代码入口指针。

控制单元的功能是解释指令字和从译码单元获得的微代码入口指针。

整数(数据通路)单元:数据在整数单元中存储并完成386处理器指令及几条新增指令的所有算术逻辑运算。

浮点单元执行协处理器387同样的指令组。

分段单元将程序发出的逻辑地址转换成线性地址,并将此线性地址发向分页单元和CACHE。

分页单元用把程序和数据一部分存在存储器中、一部分存在磁盘上的方法,能够存取的数据结构远大于实际的物理空间。

7. Pentium 微处理器采用了哪些新的技术和结构?

【解】Pentium新型体系结构的特点可以归纳为以下四个方面:

(1) 超标量流水线

超标量流水线(Superscalar)设计是Pentium处理器技术的核心。它由U与V两条指令流水线构成。每条流水线都拥有自己的ALU、地址生成电路和数据CACHE的接口。这种流水线结构允许Pentium在单个时钟周期内执行两条整数指令,比相同频率的486DX CPU性能提高了一倍。

(2) 独立的指令CACHE和数据CACHE

Pentium片内有两个8K CACHE B,一个作为指令CACHE,另一个作为数据CACHE,即双路CACHE结构,指令和数据分别使用不同的CACHE,使Pentium的性能大大超过486微处理器。

(3) 重新设计的浮点单元

Pentium的浮点单元在486的基础上进行了彻底的改进,其执行过程分为8级流水,使每个时钟周期能完成一个浮点操作。

(4) 分支预测

Pentium提供一个称为分支目标缓冲器BTB(Branch Target Buffer)的小CACHE来动态地预测程序分支,当一条指令导致程序分支时,BTB记下这条指令和分支目标的地址,并用这些信息预测这条指令再次产生分支时的路径,预先从此处预取指令,保证流水线的指令预取步骤不会空置。因此循环越多,BTB的效益越明显。

相关主题