第2章 微处理器_第1页
第2章 微处理器_第2页
第2章 微处理器_第3页
第2章 微处理器_第4页
第2章 微处理器_第5页
已阅读5页,还剩136页未读 继续免费阅读

下载本文档

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

文档简介

第2章

;16位和32位微处理器

本章主要教学内容

A8086微处理器内部组成、寄存器结构

>8086微处理器的外部引脚特性和作用

>8086微处理器的存储器和I/O组织

>8086的时序和总线概念以及最小/最大工作方式

>80X86和Pentium系列微处理器的组成结构及特点

章教学目的及要求

通过学习,使学生掌握8086微处理器

的基本应用;熟悉8086微处理器的组

成及其寄存器结构;掌握8086微处理

器的存储器和I/O组织。

2.1Intel8086微处理器

Intel8086微处理器是典型的16位微处理器,

它采用高速运算性能的HMOS工艺制造,芯片

上集成了2.9万只晶体管,使用单一的+5V电源,

40条引脚双列直插式封装,有16根数据线和20

根地址线,可寻址的地址空间为1MB(220B),

时钟频率为5MHz〜10MHz,基本指令的执行时

间为0.3(is〜0.6然。

I8086CPU的特点

・8086CPU的特点是:采用并行流水线工作方

式,通过设置指令预取队列实现;对内存空间实行

分段管理,将内存分为4个段并设置地址段寄存器,

以实现对1MB空间的寻址;支持多处理器系统;

8086可工作于两种模式下,即最小模式和最大模式。

8086还具有多重处理能力,使它能极方便地和浮点

运算器8087、I/O处理器8089或其他处理器组成多

处理器系统,从而极大地提高了系统的数据吞吐能

力和数据处理能力。

2,1.18086微处理器的内部结构

I------------------------------

Intel8086微处理器内部安排了两个逻辑

单元,即执行部件EU(ExecutionUnit)和总线

接口部件BIU(BusInterfaceUnit),其组成

结构如图2T所示。

地址总线

AXAHAL

BXBHBL数据寄存器

地址加法器

CXCHCL数据

总线

DXDHDL

SP

BP地址寄存器CS

SIDS

DISS8086

总线

ES线

控\

/

ALU数据总线(16位)IP制

内部通信辑

寄存器

指令队列

123456

图2-1

执行部件(EU)总线接口部件(BIU)

[■总线接口部件(businterfaceunit,BIU)

总线接口部件负责与存储器、I/O端口传送数据,由

下列部分组成:

①4个段地址寄存器(CS、DS、ES、SS)

②16位的指令指针寄存器IP(InstructionPointer)

③20位的地址加法器

④6字节的指令队列缓冲器

⑤总线控制逻辑

*2.执行部件(executionunit,Ell)

行部件EU负责指令的译码、执行和数据运算,

其基本功能是:从总线接口部件BIU的指令队列中取出

指令代码,经过指令译码器译码后执行该指令所规定的

操作功能。EU中的各个部件都通过16位的ALU数据总

线连接在一起,在内部可实现快速的数据传输。

EU由算术逻辑单元(ALU)、8个通用寄存器,1个

状态标志寄存器、1个数据暂存寄存器和EU控制电路等

组成。

执行部件EU

负责指令的译码、执行和数据运算,由下列部分组成:

①16位算术逻辑部件ALU(arithmeticlogicunit);

②16便标志寄存器F反映CPU运算的状态特征或存放控

制标志;

③4个16位通用寄存器,即AX、BX、CX、DX;

④4个16位专用寄存器,即

基数指针寄存器BP(basepointer)

堆栈指针寄存器SP(stackpointer)

源变址寄存器SI(sourceindex)

目的变址寄存器DI(destinationindex);

⑤数据暂存寄存器协助ALU完成运算,暂存参加运算

的数据;

⑥EU控制电路它是控制、定时与状态逻辑电路,接收

从BIU中指令队列取来的指令,经过指令译码形成各种

定时控制信号,对EU的各个部件实现特定的定时操作。

EU中所有的寄存器和数据通道(除指令队列总线为8位

外)都是16位的宽度,可实现数据的快速传送。

I3.Bill和EU的流水线管理

■j»IU和EU并不是同步工作的,但两者的动作仍然有一定的

管理原则,体现在下面几个方面。

①每当BIU的指令队列中有两个空字节,BIU就会自动把后面的

指令从存储器取到指令队列中。

②在EU执行指令的过程中,指令需要对存储器或I/O设备存取数

据时,所需的数据交换均由BIU完成。

③当指令队列已满,且EU对BIU又没有总线访问请求时,BIU进

入空闲状态。

④遇转移/循环指令时,BIU将指令队列中指令完全清除,重新取

指令。

2.1,28086/8088的寄存器结构

8086CPU中可供编程使用的有13个16位寄存器和1个只

用了9位的标志寄存器,按其用途可分为8个通用寄存器、2

个控制寄存器和4个段寄存器,如图2-2所示。

AHAL累加器

BHBL基址寄存器

数据寄存器

CHCL计数寄存器

DHDL-

通用寄存器

SP堆栈指针寄存器

BP基址指针寄存器地址指针和

SI源变址寄存器变址寄存器

DI目的变址寄存器

IP指令指针寄存器

控制寄存器

FLAGS标志寄存器

CS代码段寄存器

DS数据段寄存器

段寄存器

SS堆栈段寄存器

ES附加段寄存器图2-2

8086/8088的寄存器结构

F通用寄存器

通用寄存器是一种面向寄存器的体系结构,操作数可以直接存放

在这些寄存器中。

(1)数据寄存器:有4个16位的寄存器,其典型功能归纳如下:

AX:累加器,用于完成各类运算和传送、移位等操作;

BX:基址寄存器,在间接寻址中用于存放基地址;

CX:计数寄存器,用于在循环或串操作指令中存放计数值;

DX:数据寄存器,在间接寻址的I/O指令中存放。

止匕外,还可将每个16位的寄存器分成独立的两个8位寄存器

来使用,即AH、BH、CH、DH和AL、BL、CL、DL两组。16位数

据寄存器主要用于存放常用数据,也可存放地址,而8位寄存器只

能用于存放数据。

8086/8088的寄存器结构

(2)指针与变址寄存器:8086的指针寄存器和变址寄存

器都是16位寄存器,一般用来存放偏移地址,4个寄存器的功

能如下:

SP:堆栈指针寄存器,保存位于当前堆栈段中的数据,其内容

为栈顶的偏移地址。

BP:基址指针寄存器,在访问内存时存放内存单元的偏移地址,

或用来存放位于堆栈段中的一个数据区基址的偏移地址。

SI:源变址寄存器,用来存放源操作数的偏移地址。

DI:目的变址寄存器,用来存放目的操作数的偏移地址。

(3).通用寄存器的隐含用法

表2-1寄存器的隐含用法

寄存静执行操作

AX整字乘法,整字除法,整字I/O

AL字节乘法,字节除法,字节I/O.查表,十进制篁术运篁

AH字节乘法,字节除法

BX查表

CX字符串噪作,循环

CL变量的移位和循环移位

DX整字乘法,整字除法,间接寻址ID

SP堆栈操作

SI字符串操作

DI字符串操作

图2-3

&8086/8088的寄存器结构

2.控制寄存器

(1)指令指针寄存器IP:由于指令代码是存放在存储器的

代码段中,代码段寄存器CS指示代码段的开始,16位指令指

针寄存器IP用来指示当前指令在代码段的偏移位置。CPU利

用CS和IP取得要执行的指令,然后修改IP中的内容,使之指

向BIU要取的下一条指令的偏移地址。

指令序列执行时,每取一次指令IP就自动加1,这样保

证按顺序取出指令并执行相应操作。需要注意的是,IP是指

令代码存放单元的地址指针,不能用指令取出IP或给IP设置

给定值,但可以通过某些指令(如转移类指令)来修改IP的

内容。

■8086/8088的寄存器结构

(2)标志寄存器FLAG:FLAG用于反映指令执行结果或控

制指令执行的形式。它是一个16位的寄存器,共有9个可用

的标志位,其余7个位空闲不用。各种标志按作用可分为两

类:状态标志和控制标志。

状态标志:用来反映算术或逻辑运算后结果的状态,以记录

CPU的状态特征。

控制标志:用来控制CPU的操作,由程序设置或清除。

标志寄存器F所用的各位含义如下:

6个状态标志:CF-进位标志;PF-奇偶标志;AF-辅助

进位标志;ZF-零标志;SF-符号标志;OF-溢出标志

3个控制标志:TF-陷阱标志或单步操作标志:IF-中断

允许标志;DF-方向标志

1514131211109876543210

OFDFIFTFSFZFAFPFCF

图2-4

状态标志位有6个,即SF、ZF、PF、CF、AF和OF

①符号标志SF(signflag)

②零标志ZF(zeroflag)

③奇偶标志PF(parityflag):当指令执行结果的

低8位中含有偶数个1时,则PF为1;否则为0。

④进位标志CF(carryflag)

⑤辅助进位标志AF(auxiliarycarryflag)

⑥溢出标志OF(overflowflag)

控制标志位有3个,即DF、IF、TF

①方向标志DF(directionflag):控制数据串操

作指令的步进方向。可用STD、CLD将DF置1或清0。

②中断允许标志IF(interruptenableflag):控

制可屏蔽中断的标志。可用STI、CLI将IF置1或清0。

③跟踪(陷阱)标志TF(trapflag):为调试程

序的方便而设置的。若将TF置1,贝”8086/8088CPU处

于单步工作方式;否则,将正常执行程序。

3,段寄存器

在IBMPC机中,有四个专门存放段地址的寄存器,称为段

寄存器。每个段寄存器可以确定一个段的起始地址,而这些

段则各有各的用途。

(1)代码段(CodeSegment):用来存放当前正在运行的

程序。系统在取指时将寻址代码段,其段地址和偏移地址分

别由段寄存器CS和指令指针IP给出。

(2)数据段(DataSegment):存放当前运行程序所用的

数据。用户在寻址该段内的数据时,可以缺省段的说明,其

偏移地址可通过多种寻址方式形成。

・8086/8088的寄存器结构

(StackSegment):“堆栈”是数据的一种存取方

式,按照“先进后出”的方式操作。堆栈指针SP用来指示栈顶。

堆栈为保护、调度数据提供了重要的手段。系统在执行栈操作指

令时将寻址堆栈段,这时,段地址和偏移地址分别由段寄存器SS

和堆栈指针SP提供。

(4)附加数据段(ExtraSegment):该段是附加的数据段,是

一个辅助的数据区,也用于数据的保存。用户在访问段内的数据

时,其偏移地址同样可以通过多种寻址方式来形成,但在偏移地

址前要加上段的说明(即段跨越前缀ES)。

2.1.38086的引脚信号和工作模式

1.最小模式和最大模式的概念

⑴最小模式:

系统中只有一个微处理器。

(2)最大模式:

两个或多个微处理器(主处理器、协处理器)

j,2.8086/8088的引脚信号和功能

VI)8086CPU引脚信号

8086CPU具有40个引脚,采用双列直插式的封装形

式,如图2-4所示。

数据总线为16条,地址总线为20条,其余为状态

线、控制信号线、电源、地线等。地址/数据总线采

用了分时复用方式,即一部分引脚具有双重功能,

例如AD15~ADo这16个引脚,有时传送数据信号,有时

可输出信址信号。

GNDi40VCCl十3v)

An,.

AD14239aAun1y5

An.A/Q

八U|3338A16/S3

八AUr)|2437AIS.

AnA/Q

AD11536A18/^5

…ADio635A19/^6

An

3AU9734

BHE/S/

cADUo«8331MV1N1>//1MV1Y人

r\U7932RD

AADn61031HOLID\RQ/CJ1Q/

AAUn5L1130HLDA(RQ/G11/

AD41229WR(LOCK)

AnA4/TC/C\

AD31328M/1U\02o7

AD21427D1/R(S1/

ADi-1526DEN(So)

AALn)()1625ATP(Ct)

N1、M1V1I11724ITNNT1TAA\(CS,、

1T1NNT1TDK1823TEST

CTLVlx1922KEADI

VJINU2021KLSL1

图2-58086CPU引脚图

注意点:

①8086/8088的数据线和低16位地址线复用

②8086有16位数据线,而8088只有8位

③除了第28和34脚之外,8086和8088的控

制线引脚定义是一样的。

④第21脚(RESET)为输入复位信号

⑤第22引脚为“准备好”(READY)信号

⑥高4位地址线和状态线复用

(2)引脚功能

①GND、VCC地和电源

②AD15〜ADO地址/数据复用

③A19/S6〜A16/S3地址/状态复用

④§n^/s7高8位数据总线允许/

状态复用

⑤NMI非屏蔽中断输入

⑥INTR可屏蔽中断请求信号输入

⑦亚读信号输出

⑧CLK时钟输入

⑨RESET复位信号输入

©READY“准备好”信号输入

(11)TEST测试信号输入

⑫MN/MX最小和最大模式控制输入

(3)最小模式下引脚功能

①INTA中断响应信号输出

②ALE地址锁存允许信号输出

③DEN数据允许信号

(4)DT/R数据收发信号输出

⑤M/记存储器/输入输出控制信号

输出

⑥而写信号输出

©HOLD总线保持请求信号输入

⑧HLDA总线保持响应信号输出

(4)最大模式下引脚功能定义

①QS1、QSO指令队列状态信号输出

②豆、可、前总线周期状态信号输出

③LOCK(lock)总线封锁信号输出

@RQ/GTI>也?/而)总线请求信号输入、

总线授权信号输出

4

表2-2SO,S1,免的组含和对应总线操作

SOsiS2操作

000发中断响应信号

001读I/O端口

0i0写DO端口

0i1哲停

100取指令

101读存储器

1i0写存储器

1i1无源状态

2.1.4最小/最大工作模式

8086CPU的最小/最大工作模式的概念

Intel公司在设计8086CPU芯片时,为了适应各种应用场合,构成不

同规模的微型计算机系统,规定了两种工作模式,即最小工作模式和最

大工作模式。通过CPU的第33条引脚MN/来控制。

(1)最小工作模式(MN/=1):当把8086CPU的33引脚MN/接+5V时,系统

就处于最小工作模式了。最小模式系统适用于单微处理器组成的小系统,

系统中通常只有一个微处理器,所有的总线控制信号都直接由8086CPU产

生,系统中的总线控制逻辑电路被减到最少。该模式8086CPU的8条控制

引脚24〜31的功能定义如表2-7所示。

(2)最大工作模式(MN/R):当把8086的33引脚MN/接地时,系统处于

最大工作模式。此时,系统中存在两个或两个以上的微处理器,其中有

一个主处理器8086,其他处理器称为协处理器。

02.最小工作模式的配置特点_

(1)8086CPU的33引脚MN/接+5V(MN/=1)时,决定了系统处于最小工

作模式。

(2)有一片8284A,作为时钟发生器。

(3)有三片8282或74LS373,用来作为地址锁存器。

(4)当系统中所连接的存储器和外设比较多时,需要增加系统数据总线

的驱动能力,这时,可选用两片8286或74LS245作为总线收发器。

8086在最小模式下的典型配置:

8284A

CLKRESET

READYBHE

MN/MX+5V

ALESTB

BHE

地址锁存器地圮:总吟〉

A|9〜A]6

8282

AD]5~AD()c(3片)

8086才收发器----------1

I8286途攵据总终

DEN-I,(2片)

DT/R-IT(可选)

____I

M/7O

WR

RD

HOLD

HLDA一控制总线

INTR

INTA

READY

RESET

图2-6

3.8284A时钟信号发生器

8284A是Intel公司专为8086设计的时钟信号发生器,能产生8086所

需的系统时钟信号,即系统主频。8284A除提供恒定的时钟信号外,还

对外界输入的准备就绪信号RDY和复位信号进行同步操作。

8284A芯片的引脚特性如图2-7所示。

8

CSYNC

—VCc

27

PCLK-Xi

3

AENi-----X1

485

2—ASYNC

RDYi8

54-4

A4

READY—EFI

613

1—F/C

RDY2

72

—osc

AEN2

CLK一—RES

o

GND—RESET

图2-78284A引脚特性

8284A时钟信号发生器的原理

其工作原理简述如下:当外界的准备就绪信号RDY输入8284A,经

时钟下降沿同步后,输出READY信号作为8086的准备就绪信号;外界的

复位信号输入8284A,经整形并由时钟的下降沿同步后,输出RESET信

号作为8086的复位信号,其宽度不得小于4个时钟周期。采用脉冲发生

器作为振荡源时只需将脉冲发生器的输出端和8284A的EFI端相连,引

脚F/接为高电平即可;采用石英晶体振荡器作为振荡源时只需将晶体

振荡器连在8284A的Xi和X2两端,将引脚F/接地即可。不管采用哪种方

法,8284A输出的时钟频率CLK应该是振荡源频率的1/3,振荡源频率经

过驱动后,再由0SC端输出供系统使用。

4.最大工作模式的配置特点

(1)8086CPU的33引脚MN/接地(MN/-O)时,决定了系统处于最大工作

模式。

(2)最大模式外加8288总线控制器,通过它对CPU发出的控制信号进行

变换和组合。

(3)最大模式中,一般包含2个或多个处理器,需要解决主处理器和协

处理器之间的协调工作问题以及对总线的共享控制问题,为此,需从软

件和硬件两个方面去解决。

8086在最大模式下的典型配置:

CLKRESET

READY

MN/MX

BHE

A[9〜A%

AD15~AD()

80868286

收发器

OE(2个)

8288

总线控制器

S.

S.

INTR

RQ/GTQ8259A

RQ/GT|及有关电路图2-8

42.L5存储器和I/O组织

1.8086的存储器编址

图2・9存储器的逻辑结构示意图

低位中节方:入低地址,高位字节存入高地址。

(2)同一个地址既可看作字节单元的地址,也可看作字节

单元的地址。

(3)存储器的特性:内容取之不尽,从某单元取出其内容

后,该单元仍然保存着原来的内容不变,可以重复取出,只

有存入新的信息后,原来保存的内容就自动消失了。

(4)假设X单元中存放着Y,而Y又是一个地址,则可用

(Y)=((X))来表示Y单元的内容。如:

(0001H)=1234H

(1234H)=2F1EH

((0001H))=2F1EH

2.存储器分段

8086系统中采用20位地址线来寻址1M字节的存储空间。由于CPU内所有

的寄存器都只有16位,只能寻址64KB(216字节)。因此,把整个存储空间分

成若干逻辑段,每个逻辑段的容量最大为64KB,这样段内地址可以用16位表

示。CPU允许各个逻辑段在整个存储空间中浮动,它们可以紧密相连,也可

以相互重叠,还可以分开一段距离,如图2-10所示。

段的起始地址有所限制,不能起于任意地址,而必须从任一小段的首

地址开始,其特征是:在16进制表示的地址中,最低为0(即20位地址的

低4位为0)。

在1MB的存储器中,每个存储单元都有一个唯一的20位地址,称为该

单元的物理地址,由16位段地址和16位偏移地址组成。

OOOOOH

逻辑段1

W64KB

逻辑段2

W64KB

逻辑段3

W64KB

逻辑段4

W64KB

FFFFFH

图2-10存储器分段示意图

20位物理地址的形成:

段地址:每一段的起始地址。

偏移地址:在段内相对于起始地址的偏移值。

段寄存器值

偏移量

物理地址

图2-11

CS、DS、SS和其他寄存器组合指向存储单元的示

意图:

图2-12

3.逻辑地址(LA)和物理地址(PA)的关系

物理地址:就是存储器的实际地址,它是指CPU和存储器

进行数据交换时所使用的地址(20位)。

逻辑地址:是在程序中使用的地址,它由段地址和偏移地

址两部分组成(16位)。

逻辑地址的表示形式为“段地址:偏移地址”。

物理地址=段地址X10H+偏移地址

一个存储单元的物理地址唯一,逻辑地址不唯一。

存储器组织

・存储器内部是按字节进行组织的,两个相邻的字节被

称为一个“字”。

8086CPU在组织1M字节的存储器时,其存储空间被分

成两个512K字节的存储体:固定与CPU的低位字节数据

线D7〜D。相连的称为低字节存储体,该存储体中的每个地

址均为偶数;固定与CPU的高位字节数据线D”〜Dg相连的

称为高字节存储体,该存储体中的每个地址均为奇数。两

个存储体之间采用字节交叉编址方式,如图2-13所示。

00001H00000H

00003H00002H

.■

100005H00004H

512KX8(位)512KX8(位)

|njT*T1存储体低字吊存储体

(奇地址存储体)(偶地址存储体)

(A0=l)(Ao=O)

FFFFDHFFFFCH

FFFFFHFFFFEH

图2-138086存储器的分体结构

A1Q-A1

图8086系统的存储结构

­表BHE和AO的意义

操作BHEA0使用的数据埃

传送偶地址的一个字节10AD7-AD0

传送奇地址的一个字节01AD15-AD8

存取规则字0LIAD15~AD0

01AD15~AD8(第一个总线周期)

存取不规则字

10AD7-AD0(第二个总线周期)

.5.I/O端口组织

■8086的I/O端口有以下两种编址方式:

(1)统一编址:该方式将I/O端口地址置于1MB的存储器

空间中,把它们看作存储器单元对待,每个端口占用一个

存储单元的地址。CPU访问存储器的指令和各种寻址方式

都可用于寻址I/O端口。优点是不需要专门的I/O指令,对

I/O端口操作的指令类型多,数据存取灵活,方便进行I/O

程序的设计;缺点是I/O端口要占用部分存储器的地址空间,

程序不易阅读,不容易区分哪些指令在访问存储器,哪些

指令在访问外部设备。

5.I/O端口组织

■独立编址:该方式的端口单独编址构成一个I/O空间,

不占用存储器地址。CPU设置了专门的输入/输出指令(IN和

OUT)和接口控制信号来访问I/O端口。8086CPU使用16条地

址线Ai5~A0来作为访问I/O端口的地址线,可访问最多64K容

量的8位端口或32K容量的16位端口。

独立编址的优点是I/O端口的地址空间独立,控制电路和地

址译码电路比较简单,采用专用的I/O指令,使得端口操作

的指令在形式上与存储器操作指令有明显区别,程序编制清

晰,阅读容易;缺点是输入/输出指令类别少,一般只能进

行传送操作。

1j,L5总线操作及时序

8086CPU的操作是在时钟CLK统一控制下进行的,以便使

取指令和传送数据能够协调地工作。

8086CPU经外部总线对存储器或I/O端口进行一次信息的

输入或输出过程,称为总线操作,执行该操作所需要的时间,

称为总线周期。一个总线周期通常包括T1、丁2、丁3、丁4状态,

即4个时钟周期。不同的总线操作需要不同的总线信号,对这

些信号的变化进行时间顺序的描述称为“总线时序”

1.8086总线周期与时钟周期的概念

通常,计算机执行一条指令所需要的时间称为一个指令

周期。而一个指令周期是由若干个总线周期所组成的,一个

总线周期是CPU通过总线与存储器或外部设备进行一次数据传

输所需的时间。

为了保证总线的读/写操作,8086的总线周期至少要由4

个时钟周期组成,每个时钟周期称为T状态。时钟周期是CPU

的基本时间计量单位,由主频决定。对于8086来讲,其主频

为5MHz,故一个时钟周期为200ns。

2.总线周期序列

典型的8086总线周期序列:

图2-14

①T1状态,发地址信息

②T2状态,总线的高4位输出状态信息

③T3状态,高4位状态信息,低16位

数据

④T3之后,可能插入Tw

⑤在T4状态,结束。

3.8086的操作和时序

8086的主要操作:

①系统的复位和启动操作;

②暂停操作;

③总线操作;

④中断操作;

⑤最小模式下的总线保持;

⑥最大模式下的总线请求/允许。

4.系统的复位和启动操作

图2-15

露,6复位时各内部寄存翻值

标志寄存器1等

指令指针(网0000H

CS膏存器FFFFH

DS寄存器0000H

SS寄储0000H

ES箱詈0000H

指令队列5

其他鞘器0000H

5.总线操作

(1)最小方式下的总线读操作

(2)最小方式下的总线写操作

(3)最大模式下的总线读操作

(4)最大模式下的总线写操作

(1)最小方式下的总线读操作

TTw(l〜〃)

T,T2

CLK-

M/TOX高为读内存低为读I/O

A"S6-------®_____⑥

Y地址输状态输出

-A|/Sf1LX_>

63_⑧

BHE/S7侬BHE

%、⑦.⑪___________

AD-AD,--------〈地址输出)一<数据输入

15(>

图2-16

(2)最小方式下的总线写操作

图2-17

(3)最大模式下的总线读操作

1个总线周期---------

0s?〜s()/无源状态'

〜A16、BHE

A19/S6-A,6/S3)浮空

XS7〜S3

BHE/S7

地址输入数据、

AD]5~AD()(AI5-AOy〈D|5〜D0>

*ALE

*MRDC或*10RC

*DT/R

*DEN

图2-18

(4)最大模式下的总线写操作

1个总线周期

T.T2T4

当。/无源状态\

〜S2〜So

A~A,BHE

A/S~A/S19I6浮空

196163S~S

73>

BHE/S7

地址

AD]5〜AD°)­—(A]5〜A()X输出数据—>

*DT/R-------------------------------------------------------

•ALE-----------/\----------------------------------------------

*AMWC或*AIOWC\/

*MWTC或*IOWC\/

*DEN----------------------''-----------

图2-19

6.中断操作和中断系统

(1)8086的中断分类

硬件中断(非屏蔽中断和可屏蔽中断)

软件中断

8086/8088的中断分类:

INTn指令非屏蔽中断请求

NM1

中断控制逻辑

INIR

INT3INTO单步除数为断

0中断

指令指令中断求

(8259A)

软件中断

硬件中断

图2-20

(2)中断向量和中断向量表

溢出4•断

断点中断

非屏蔽中断

单步中断

除数为o中断

图2-21

(3)硬件中断

NMI

INTR

(4)硬件中断的响应和时序

可屏蔽中断的响应过程:

①读取中断类型码

②将标志寄存器的值推入堆栈

③把标志寄存器的IF和TF清零

④将断点保护到堆栈中。

⑤寻找中断向量,转入中断处理程序

结束当前指令

心经部中断吗?

中断响应是非屏蔽中断吗?

是可屏蔽中断吗?

~~

执行下一条指令

图2-22

返回断点

(5)8086的中断响应总线周期:

ALE

INTA

中断类型

AD7-AD0

图2-23

①非屏蔽中断和可屏蔽中断有两点差别;

②TF是单步中断标志;

③在中断响应后,又遇NMI;

④结束时,返回断点;

⑦等待或串操作时,允许过程中进入中断。

中断响应用2个总线周期

第1个总线周期,通知外设,CPU准备响应中断;

第2个总线周期,外设发送中断类型码

(6)中断处理子程序

①进一步保护中断现场

②开放中断

③中断处理的具体内容

④弹出堆栈指令

⑤中断返回指令

(7)软件中断

特点:

①用一条指令进入中断处理子程序,并且,

中断类型码由指令提供。

②不执行中断响应总线周期,也不从数据总

线读取中断类型码。

③不受中断允许标志IF的影响

④执行过程中可响应外部硬件中断

⑤软件中断没有随机性

7.最小模式下的总线保持

M/IO、DEN、DT/R

图2-24利用HOLD和HLDA信号实现总线保持

8.最大模式下的总线请求/授权

CLKjvwwuwvwwww

峭士授释

权a

、至v放

RQ/GT国GT

AD]5〜ADQ■,“।a二太

一心((

勺/年〜勺6§、)------------------------?T

务<

S()、S[、S2

RD>LOCK>BHE/S7

图2-25利用RQ#/GT#实现总线请求/授权

2.232位微处理器80386

2.2.180386的体系结构

分段部件SU

指令预取部件IPU

逻辑地址一I

16字节的指令预取队列

L一线性地址

指线性地址

指令译码部件IDU逻分页部件PU

地线性地址一I

指令译码器节

洋码指令队列物理地址

译好码的

物理地址

指令

接口

温馨提示

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

评论

0/150

提交评论