微机原理及应用第二章体系结构.docx

上传人:b****5 文档编号:28611752 上传时间:2023-07-19 格式:DOCX 页数:20 大小:55.19KB
下载 相关 举报
微机原理及应用第二章体系结构.docx_第1页
第1页 / 共20页
微机原理及应用第二章体系结构.docx_第2页
第2页 / 共20页
微机原理及应用第二章体系结构.docx_第3页
第3页 / 共20页
微机原理及应用第二章体系结构.docx_第4页
第4页 / 共20页
微机原理及应用第二章体系结构.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

微机原理及应用第二章体系结构.docx

《微机原理及应用第二章体系结构.docx》由会员分享,可在线阅读,更多相关《微机原理及应用第二章体系结构.docx(20页珍藏版)》请在冰豆网上搜索。

微机原理及应用第二章体系结构.docx

微机原理及应用第二章体系结构

第二章8086微处理器及其体系结构

本章主要内容

●8086CPU的内部结构

●8086CPU的引脚特点

●微机电路结构及工作时序

●8086CPU对存储器的组织

§2-1CPU性能描述

一:

字长——CPU数据线条数

1:

表数精度

2:

相对运行速度

3:

典型CPU字长

A:

8088——8bit

B:

8086——16bit

C:

80386——32bit

二:

指令数

1:

基本指令133条

2:

扩展指令数千条(不同寻址方式和寄存器的组合)

三:

指令执行时间

1:

提高主频

2:

减少指令执行所需时钟周期数

3:

增加数据线条数

4:

取指令和执行指令时间重叠

四:

访问内存储器空间——由CPU地址总线数确定

1:

Z80CPUAB=16访存空间216=64K

2:

8086CPUAB=20访存空间220=1M

3:

80286CPUAB=24访存空间224=16M

4:

PⅢCPUAB=32访存空间232=4G

§2-28086CPU内部结构

由两部分组成执行部件—EU接口部件—BIU

一:

执行部件EU——8086CPU的核心

1:

16位运算器ALU

A:

算术及逻辑运算(同8位机)

B:

16位偏移地址运算(8086特点)

2:

8位控制单元

A:

从BIU的指令队列中取指令

B:

对指令进行译码

C:

产生不同的控制信号

3:

16位寄存器组

A:

16位通用数据寄存器AX,BX,CX,DX

B:

16位通用地址寄存器BP,SP,SI,DI

C:

16位标志寄存器F

二:

接口部件BIU——8086CPU的特点

1:

指令队列缓冲器

A:

Z80CPU取指,执指图

取指

执指

取指

执指

1)取指总线忙

2)执指总线闲

B:

8086CPU取指,执指图

取指1

执指1

取指2

执指2

取指3

执指3

1)指令队列缓冲器先从指令存储区取数条指令

2)EU从队列中取指,而非直接从指令存储区取指

3)EU执行指令的同时队列继续从指令存储区取指

4)取指和执指重叠

5)总线一直忙,从而提高速度

C:

特点

1)指令队列缓冲器为移位寄存器,满足先进先出原则

2)8086队列为6字节,8088队列为4字节

3)执行转移指令时清队列

2:

16位指令指针寄存器——IP

A:

8位机(Z80CPU)中的程序指针寄存器PC

1)地址总线AB=16bit

2)程序指针寄存器PC=16bit

3)PC指向存储器单元的实际地址

B:

16位机(8086CPU)中的指令指针寄存器IP

1)地址总线AB=20bit

2)指令指针寄存器IP=16bit

3)IP指向存储器单元的偏移地址(有效地址)

C:

IP的使用

1)程序设计中,不能直接改变IP的值

2)程序运行中,IP值根据指令功能而自动改变

3:

16位段寄存器CS,DS,ES,SS

8086CPU的AB=20bit,REG=16bit,

问题:

怎样用16位寄存器表示20位存储器实际地址

A:

将存储器1M空间分为多段,每段长为64K

B:

将段首地址值的高16位值放入段寄存器,称段地址

C:

20位实际地址由段地址和段内偏移地址(有效地址)构成

4:

地址产生器

A:

输入1)段寄存器中的段首地址(16位)

2)从EU来的段内偏移地址(16位)

B:

输出实际地址(20位)

C:

公式

实际地址=段首地址*16+段内偏移地址

实际地址=段首地址←4+段内偏移地址

注:

段首地址左移4位等于段首地址乘与16

《例》某存储器单元的段地址为2F86H,偏移地址为2A36H,

问:

该存储器单元的实际地址为多少

PA=段地址←4+偏移地址

=2F86H←4+2A36H

=2F860H+2A36H

=32296H

D:

存储器单元地址表示法

1)20位地址表示法32296H

2)32位地址表示法2F86H:

2A36H

5:

总线控制器

A:

8086CPU的数据线/地址线复用技术(40页)

B:

数据线,地址线的分离过程(44页)

§2-38086CPU的寄存器结构

一:

使用特点

1:

指令助记符中,寄存器用名定义

2:

程序设计中,寄存器用名访问

二:

分类特点

1:

通用数据寄存器

A:

16位通用数据寄存器(4个)

AXBXCXDX

B:

8位通用数据寄存器(8个)

AHALBHBLCHCLDHDL

C:

常用功能

AX——累加器

BX——基数寄存器

CX——计数器

DX——数据寄存器

2:

通用地址寄存器——SP,BP,SI,DI

A:

仅有16位使用

B:

用于存放偏移地址

C:

常用功能

SP,BP——用于堆栈段操作

SI,DI——用于数据段,附加段操作

3:

段寄存器——CS,DS,ES,SS

A:

仅有16位使用

B:

用于存放段地址

CS——存放代码段段首地址

SS——存放堆栈段段首地址

DS——存放数据段段首地址

ES——存放附加段段首地址

C:

段寄存器与通用寄存器之间的使用特点

1):

CS——IPCS:

IP构成代码段20位指令存放地址

2):

SS——SPSS:

SP构成堆栈段栈顶地址

3):

DS——SIDS:

SI构成源数据串地址

4):

ES——DIES:

DI构成目的数据串地址

5):

DS——BXDS:

BX构成数据段基数地址

6):

SS——SPSS:

SP构成堆栈段基数地址

注:

有关应用在寻址方式及串操作指令中祥细讲解

4:

指令指针寄存器——IP

A:

仅有16位使用

B:

用于存放代码段内的偏移地址(有效地址)

C:

与CS寄存器构成指令存放的实际地址

5:

标志寄存器——F

A:

16位标志寄存器中仅用9位作标志位用

B:

状态标志位名称CFOFAFZFSFPF

C:

控制标志位名称IFDFTF

注:

关于标志位的作用及使用方法非常重要,在后面章节中讲解

§2-48086CPU的引脚特性

一:

数据/地址复用线

1:

减少了8086CPU的引脚线

2:

需解决数据/地址的分离

二:

控制线

功能各异——不同控制线具有不同的作用,

方向确定——仅为单向,输入,输出确定

电平触发——不同控制线具有不同的电平触发方式

1:

/BHE——存储器R/W传数方式选择

与地址线A0构成8位,16位数据传送选择

注:

§2-9节祥讲

2:

/RD——存储器读数据有效控制线,输出,低有效

/WR——存储器写数据有效控制线,输出,低有效

注:

用于存储器,I/O操作,后面章节常用

3:

READY——CPU,MEM间R/W等待控制线,输入,高有效

4:

RESET——8086CPU复位有效控制线,输入,高有效

5:

ALE——地址/数据复用线分离控制线,输出

A:

ALE=H地址线锁存

B:

ALE=L地址线保持

6:

/DEN——数据传送有效控制线,输出,低有效

7:

DT//R——数据传送方向控制线,输出

A:

DT//R=HCPU向存储器写数据有效

B:

DT//R=LCPU从存储器读数据有效

8:

M//IO——存储器,I/O端口操作选择,输出

A:

M//IO=HCPU与存储器间读写操作

B:

M//IO=LCPU与I/O端口间输入,输出操作

9:

MN//MX——8086CPU工作方式选择,输入

A:

MN//MX=H8086CPU工作于最小工作方式

B:

MN//MX=L8086CPU工作于最大工作方式

10:

NMI,INTR,/INTA——与中断有关的控制线

11:

HDLD,HLDA——与DMA有关的控制线

三:

8086CPU复位后寄存器的初始值(41页)

1:

CS=FFFFHIP=0000H

2:

其余寄存器=0000H

3:

指令队列清空

§2-58086CPU与8088CPU的比较

一:

数据线比较

1:

8088CPU数据线为8条,故称8088CPU为8位机

2:

8086CPU数据线为16条,故称8088CPU为16位机

注:

又称8088CPU为准(伪)16位机,因为8088CPU片内

数据线为16条,片外数据线为8条

二:

地址线比较

8088CPU和8086CPU的地址线均为20条

三:

控制线比较

1:

MEM,I/O选择

A:

8088CPU——/M/IO

B:

8086CPU——M//IO

2:

8位,16位数据传送

A:

8088CPU仅有8条数据线,不能传送16位数据

B:

8086CPU有16条数据线,一次可传8位或16位,

由控制线/BHE控制

§2-68086CPU的时钟及总线周期

一:

专用时钟信号发生器芯片8284A介绍

1:

输入

A:

晶振

B:

外部复位信号/RES=L

C:

外部等待信号RDY=H

2:

输出(送8086CPU)

A:

时钟周期输出CLK=X

B:

复位信号输出RESET=H

C:

等待信号输出READY=H

二:

总线周期(44页图2-9)

CPU与MEM间R/W所需时钟周期数称总线周期

1:

基本总线周期

由四个时钟周期构成,分别称为T1T2T3T4

2:

扩展总线周期

A:

等待周期Tw由控制线READY=H控制,插入T3,T4之间,数量不限

B:

空闲周期Tt由控制线/TEST=L控制,插入T4之后,

数量不限

3:

读周期

A:

T1——8086CPU数据/地址复用线发地址信息

经地址总线AB给存储器

B:

T2——缓冲

C:

T3,T4——数据/地址复用线为数据线有效,8086CPU

经数据总线DB从存储器单元中读数据

4:

写周期

A:

T1——8086CPU数据/地址复用线发地址信息

经地址总线AB给存储器

B:

T2,T3,T4——数据/地址复用线为数据线有效,8086CPU

经数据总线DB向存储器单元中写数据

注:

从理论上讲R/W周期仅需要两个时钟周期,从可靠性考虑,8086CPU用了四个时钟周期,读周期中T2缓冲是由于地址线信息输出而数据线信息输入,而写周期不需缓冲是由于地址线信息,数据线信息均为输出

§2-78086CPU的最小/最大工作方式

条件控制线MN//MX=L,8086CPU工作于最小工作方式(45页)

控制线MN//MX=H,8086CPU工作于最大工作方式(48页)

特点最小工作方式,控制线由8086CPU直接给出(45页)

最大工作方式,控制线由专用芯片8288给出(48页)

应用最小工作方式,硬件系统简单,多用于专用机,要求掌握

最大工作方式,硬件系统复杂,多用于系统机,要求了解

一:

最小工作方式下的硬件电路

1:

数据/地址复用线的地址线分离

A:

分离时间T1

B:

分离控制线ALE=H

C:

分离器件锁存器

2:

数据/地址复用线的数据线分离

A:

分离时间T2,T3,T4

B:

分离控制线/DEN=L

C:

分离器件缓冲器

3:

锁存器

A:

作用——在T1时刻,将CPU发出的地址信号进行锁存

B:

原理——应用D触发器

1):

电路INOUT

ALE

注:

IN——地址/数据复用线(CPU)

OUT——地址总线AB(存储器,I/O)

ALE——地址锁存允许控制线(D触发器)

2):

真值表

ALE

IN

OUT

H

H

H

H

L

L

L

H

Qn

L

H

Qn

 

若:

ALE=H,则OUT=IN

若:

ALE=L,则OUT保持不变

3):

工作过程

T1时,ALE=H,CPU发地址→锁存器→存储器

T2,T3,T4时,ALE=L,锁存器锁存→存储器

C:

锁存器芯片

1):

专用,8282,8283

2):

通用,74LS373,74HC573

4:

缓冲器(收发器)

A:

作用——在T2~T4间,从地址/数据复用线中获得数据信息

B:

原理——应用三态门

1):

电路

INOUT

/DEN

注:

IN——地址/数据复用线(CPU)

OUT——数据总线DB(存储器,I/O)

/DEN——数据有效控制线(三态门)

2):

真值表

/DEN

IN

OUT

L

L

L

L

H

H

H

L

Z

H

H

Z

 

若:

/DEN=L,则OUT=IN

若:

/DEN=H,则OUT为高阻

3):

工作过程

T1时,/DEN=H,缓冲器输出为高阻态

T2,T3,T4时,/DEN=L,缓冲器为直通态

C:

缓冲器芯片

1):

专用,8286,8287

2):

通用,74LS244,74LS245

5:

双向缓冲器

在控制线/DEN,DT//R作用下,完成数据读写(收发)

A:

电路

注:

AB/DB——地址/数据复用线(CPU)

DB——数据总线(MEM,I/O)

B:

分析

1):

若G1=H,G2=L完成MEM→DB→CPU读(收)

2):

若G1=L,G2=H完成MEM←DB←CPU写(发)

3):

若G1=L,G2=L缓冲器为高阻态

4):

若G1=H,G2=H此种情况绝不能发生

B:

真值表

/DEN

DT//R

G1

G2

L

L

H

L

L

H

L

H

H

L

L

L

H

H

L

L

高阻

高阻

二:

最小工作方式下的工作时序

1:

复位时序(52页)

A:

当RESET=H持续4个时钟周期,8086CPU复位

B:

复位后,CS:

IP=FFFH:

0000H

C:

8086CPU从实际地址FFFF0H处开始执行JMP指令

2:

读时序(53页)

A:

分离地址线

T1时,ALE=H,锁存器片选有效,地址锁存

T2,T3,T4时,ALE=L,锁存器片选无效,地址保持

B:

T2时,缓冲

C:

分离数据线

T1时,/DEN=H,缓冲器片选无效

T2,T3,T4时,/DEN=L,缓冲器片选有效

D:

读数据

T3,T4时,/DEN=L,DT//R=L,/RD=L,/WR=H

若M//IO=H,CPU经数据总线DB从存储器单元中读数据

若M//IO=L,CPU经数据总线DB从I/O端口中读数据

3:

写时序(55页)

A:

分离地址线

T1时,ALE=H,锁存器片选有效,地址锁存

T2,T3,T4时,ALE=L,锁存器片选无效,地址保持

B:

分离数据线

T1时,/DEN=H,缓冲器片选无效

T2,T3,T4时,/DEN=L,缓冲器片选有效

C:

写数据

T3,T4时,/DEN=L,DT//R=H,/RD=H,/WR=L

若M//IO=H,CPU经数据总线DB向存储器单元中写数据

若M//IO=L,CPU经数据总线DB向I/O端口中写数据

§2-98086CPU对存储器的组织

一:

存储器的组织

1:

存储器的组织方式

按字节组织,每一个存储单元仅存放8位二进制数,若需一次R/W16位数据,则应从相邻两存储单元中分别取8位数据构成16位数据

2:

存储器的存数原则

A:

按字节存放时,从低地址单元到高地址单元顺序存放

B:

按字存放时,相邻地址单元中,低地址单元存放低字节,

高地址单元存放高字节

3:

存储器的地图表示

数据

35H

4AH

地址

2000H

2001H

4:

存储器的规则存放与非规则存放

用于字(16bit),双字(32bit)存放时,对字节(8bit)存放无效

A:

规则存放,从偶数地址单元开始存放字或者双字,

即要求A0=0

B:

非规则存放,从奇数地址单元开始存放字或者双字,

即要求A0=1

5:

控制线/BHE,地址线A0对数据传送的作用

A:

关于存储器的奇偶库

为解决存储器单元按8位数据组织,面8086CPU可一次读写16位数据的矛盾,采用了存储器的奇偶库方式

B:

存储器奇偶库的控制

1):

偶库存储器的片选控制地址线A0=L

奇库存储器的片选控制控制线/BHE=L

2):

偶库存储器与8086CPU的数据线D0~D7

奇库存储器与8086CPU的数据线D8~D15

C:

/BHE,A0的作用(62页)

////BHE

A0

读写数据的位数

0

10

奇库,偶库片选有效,16位数据传送

0

11

奇库有效,偶库无效,D8~D15数据传送

1

0

奇库无效,偶库有效,D0~D7数据传送

1

1

奇库,偶库片选无效,无数据传送

二:

存储器的分段

解决20位实际地址与16位寄存器之间的矛盾

1:

分段方式连续分,分离分,重叠分

2:

段内容量64KB

3:

段基地址段首地址

4:

偏移地址段内偏移地址

三:

实际地址与逻辑地址

1:

实际地址20位物理地址

2:

逻辑地址16位段基地址及16位偏移地址

四:

堆栈

1:

堆栈的作用

A:

将需要放入堆栈的数据入栈,将需要调出堆栈的数据出栈

B:

在调用过程及中断服务程序时保护现场——相应数据入栈

在返回过程及中断服务程序时恢复现场——相应数据出栈

2:

堆栈使用原则

先进后出原则注:

指令队列是先进先出原则

3:

堆栈段,堆栈底,堆栈顶

A:

栈段堆栈段段首地址在段寄存器SS中

B:

栈底定义堆栈长度时确定

C:

栈顶由寄存器SP中的值确定,栈顶的物理地址为SS:

SP

注:

当定义堆栈后还未使用相关堆栈操作指令时,栈顶等于栈底,汇编程序设计中,若不定义堆栈,系统将自动生成一定长度的堆栈存储区

4:

栈顶指针寄存器SP中值的自动变化特点

A:

对8位机

1)入栈(SP)–1—→(SP)

2)出栈(SP)+1—→(SP)

B:

对16位机(8086CPU)

1)入栈(SP)–2—→(SP)

2)出栈(SP)+2—→(SP)

《例》(65页图2-32)

1定义堆栈

栈段(SS)=1050H,栈长=14H,

栈底=0012H或者为1050H:

0012H

定义时栈顶等于栈底,(SP)=0012H

2当前栈顶

经一些操作后,图示当前栈顶(SP)=0008H

3执行入栈指令PUSHAX

A:

(SP)–2—→(SP)=0006H

B:

(AX)=1234H—→[0006H]

4执行出栈指令POPBX

A:

[0006H]—→(BX)=1234H

B:

(SP)+2—→(SP)=0008H

5执行出栈指令POPAX

A:

[0008H]—→(AX)=BBAAH

B:

(SP)+2—→(SP)=000AH

注:

入栈时工作步骤,先(SP)–2—→(SP),后将数据入栈

出栈时工作步骤,先将数据出栈,后(SP)+2—→(SP)

五:

8086CPU对存储器的分配

1:

中断向量表存储区00000H~003FFH1KB

2:

系统复位后指令存储区FFFF0H~FFFFFH16字节

3:

显示缓存存储区

A:

单显B0000H~B0FFFH4KB字符显示

B:

CGAB8000H~BBFFFH16KB图形显示

C:

VGAA0000H~图象显示

4:

其余为工作存储区

§2-10I/O端口组织

一:

统一编址方式MOTOROLA方式

MEM,I/O共用寻址空间

1:

优点不需要存储器,I/O端口选择控制线,专用指令

2:

缺点存储器,I/O端口占用共同的寻址空间

二:

分别编址方式INTEL方式

MEM,I/O分别有寻址空间

1:

优点存储器,I/O端口分别寻址,扩展了寻址空间

2:

缺点需要专用控制线及专用指令

《例》8086CPU控制线M//IO=H存储器寻址,

M//IO=LI/O端口寻址

存储器操作指令为MOV,

I/O端口操作指令为IN及OUT

作业:

2.3,2.6,2.11,2.12,2.13,2.15,2.18

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1