ch1 2.ppt [兼容模式]automation.seu.edu.cn/download/data/ch1_2.pdf · 2010-04-19 ·...

30
微机系统与接口Microcomputer Systems and Interface 第1章 微型计算机基础(续) 马旭东 马旭东 13809022379/ 83795360 [email protected] 东南大学 微机系统与接口 1

Upload: dinhthu

Post on 09-Oct-2018

287 views

Category:

Documents


0 download

TRANSCRIPT

《微机系统与接口》《微机系统与接口》

Microcomputer Systems and Interface第1章 微型计算机基础(续)

马旭东马旭东13809022379/ 83795360

[email protected]

东南大学微机系统与接口 1

微型计算机分类体系

Von NeuMANN / Harvard (外MEM可流水线作业)Von NeuMANN / Harvard (外MEM可流水线作业)功能结构

单/多片机/ (MCU)/MPU)单/多片机/ (MCU)/MPU);组装方式 单/多板机; TP801使用方式使用方式 DESKTOP/LAPTOP/NOTEBOOK

(便携式)-Mobile MP安装使用 非(可重装入) /嵌入式(EMBBEDED)

指令 CISC/RISC内核 (标准内核), 多核,软核

专用/通用MPU DSP,MCU

东南大学微机系统与接口 2

专用/通用MPU DSP,MCU

8086/8088微处理器8086/8088微处理器

冯.诺伊曼(Von NeuMANN)结构NeuMANN)结构

i8086: 工业控制

单板计算机

i8088:个人计算机

8086/8088芯片管脚图:Vcc=+5V VLSI

i8088:个人计算机

同代MC6802/6809

东南大学微机系统与接口 3

8086/8088芯片管脚图:Vcc=+5V,VLSI

8086/8088微处理器8086/8088微处理器

INTEL公司78年推出(79年推出8088 )INTEL公司78年推出(79年推出8088 )4万多个晶体管(8088为2.9万个晶体管)时钟频率4 77MHZ时钟频率4.77MHZ数据线16位(8088的数据线8位)

地址线20位地址线20位40脚DIP封装

81年IBM推出Personal Computer(个人计算机 微机)PC(个人计算机、微机)PC

Intel Architecture(IA)-16

东南大学微机系统与接口 4

IBM PC&PC/XT (20年前产品)

可以重复加载运行各种应用软件的个人计算机:多板结构多板结构

1.系统板 +I/O选卡----基于中大规模ICP 8088(80C88)/8087+82XX芯片组 hi tμP:8088(80C88)/8087+82XX芯片组chipset

82C88 总线控制器BUS Controller8284 Clock Generator &Driver2 ROM 基本系统程序 如何构建??2.ROM----基本系统程序

3. RAM----中间数据/应用程序

如何构建

4.I/O接口电路:Speaker/KB5. I/O expanding slots: 62脚:PC-5 XT-8

东南大学微机系统与接口 5

5. I/O expanding slots: 62脚:PC 5 XT 8

微处理器的基本结构

基本组成控制总线

指令寄

指令译

时序和

控制

算术逻辑单元(运算器)

控制总线寄存

译码

控制逻辑

元(运算器)地址总线

通 用寄存器组

地 址寄存器组

地址总线控制

寄存器组内部数据总线数据总线

数据总线控制

指令处理单元(控制器)

暂存器 累加器 标志寄存器

元(控制器)ALU

东南大学微机系统与接口 6处理器干哪些事??执行指令!!

IA-16微机系统结构指令:算逻运算、数据传送、I/O、跳转、系统操作等

执行方式:串行 流水线(深度-EU+BIU 两级)执行方式:串行、流水线(深度 EU+BIU 两级)

取指、执行、取指、执行。。

SCLK

东南大学微机系统与接口 7

P26 图1.7 微机外部结构框图

IA-16微处理器(Intel 8086/8088 )AH ALBH BL通

AXBX

地址总线20位

BH BLCH CLDH DL

BXCXDX CS

数据总线8088:8位

8086:16位段寄存器SCLK

SPBPDI

DSSSES

8086:16位

SI器

ALU数据总线(16位)

ESIP

内部暂存器

总线 控制逻辑

指令指针外部总线

运算寄存器

EU 控制系统 1 2 3 4 5 6

指令队列Q总线

ALU

标志寄存器

制系统

执行单元

1 2 3 4 5 68088

8086

(8位)

总线接口单元

东南大学微机系统与接口 8

标志寄存器 EU 单元BIU P19图1.9 功能结构

8086/8088流水工作过程8086/8088流水工作过程

指令队列 1 2 23 3 34 45指令队列

总线接口单元BIU

1 2 23 3 34 45…

取指 取指 取指 取数 取指 ….

MPU执行单元 等待 执行1 执行2 执行3 。。。

时间与BIU有关

指令的执行过程:1000:100 MOV AX,0064H

B8 64 00与BIU有关

的指令执行

; B8 64 00 1000:103 ADD AX,100H

; 05 00 01

东南大学微机系统与接口 9

;1000:106 MOV [2000H],AX

; F3 00 20机器码

东南大学微机系统与接口 108088指令执行过程(结构为8086,复制自郑州大学钱晓捷资料)

8086/8088的内部寄存器(Registers)14个16位寄存器:8通用寄存器/4段/2控制寄存器

栈操作:16位

P20图1.10

ADD AX,100,MOV BH,[1000]SUB DX,[BX]JC 1000

东南大学微机系统与接口 11

MOV CS:[SI],AL

通用寄存器(Register)功能( g )AX,BX,CX,DX,AH,AL,BH,BL,CH CL DH DL(16-8)CH,CL,DH,DL(16-8)习惯:AX累加器Accumulator)/ BX基址R/ CX(Count)计数R 循环 串操作/ DX数据R(Data)CX(Count)计数R,循环-串操作/ DX数据R(Data),I/O port, 双字除(H16);

SP BP St k P i t R B P i t 基址SP,BP:Stack Pointer R, Base Pointer基址指针 R 数据/PointerSI,DI 变址R(Source Index R, Destination Index R)--指针作用 指令、数据存储地址

例:REP MOVSB

指令、数据存储地址

东南大学微机系统与接口 12

例:REP MOVSB

段寄存器功能段寄存器Segment Register CS,SS,DS,ESCode,Stack,Data,Extra(附加段)R==Segment BaseCode,Stack,Data,Extra(附加段)R Segment Base Address解决8位机兼容问题 MOV AX,[1000H]解决8位机兼容问题 MOV AX,[1000H]

8086/8088存储器管理:20 AB 1MB, 64KB单位,段基地址SA,偏移地址EA(OFFSET)段基地址SA,偏移地址EA(OFFSET)例:1234H:1000H; 5678H:1000H ;DS:1000H物理地址PA ?物理地址PA ?(SA,EA逻辑地址)关系:PA=SA*16+EA默认 MOV AX DS:[1000H]默认:MOV AX,DS:[1000H]当(DS)=1234H时 物理地址=13340H A19……A0=?当 时 物理地址

东南大学微机系统与接口 13

当(DS)=56A8H时 物理地址=57A80H

控制寄存器控制寄存器:IP(Instruction Pointer-预取指令的偏移地址)IP(Instruction Pointer 预取指令的偏移地址)FLAGS标志(6状态/3控制-8088/86定义9位 )

控制标志位(3) 六个算术和逻辑运算结果特征(6)控制标志位(3) 六个算术和逻辑运算结果特征(6)

当算术运算的结果超出了带符号数的范围

奇偶位

借进位

半进位

溢出标

跟踪

符号位

零标志

中断允

方向

出了带符号数的范围,即溢出时,OF= 1,否则OF=0。8位带符号数范围是一128~+ 位

=1

位位标志

位 志位

允许=1

数范围是一128~+127,16位带符号数的范围是-32768~+32767

东南大学微机系统与接口 14

偶32767。例: XXXX1010 10X0X1X1

标志状态寄存器Flags(位)g ( )

CF进位标志位 当进行加法或减法运算时,若最高位发生进位或借位则CF=1,否则CF=0。

PF奇偶标志位 当逻辑运算结果中“1”的个数为偶数时PF=1,为奇数时PF=0。

AF辅助进位位 在8(l6)位加减法操作中 低4位向高4位AF辅助进位位 在8(l6)位加减法操作中,低4位向高4位有进位、借位发生

ZF零标志位 当运算结果为零时ZF=1,否则ZF=0。ZF零标志位 当运算结果为零时ZF 1,否则ZF 0。SF符号标志位 当运算结果的最高位MSB为1时SF=1,否

则SF= 0。OF溢出标志位 当算术运算的结果超出了带符号数的范

围,即溢出时,OF= 1,否则OF=0。8位/16位带符号数范围

东南大学微机系统与接口 15

围例: XXXX1010 10X0X1X1

标志控制寄存器Flags (位)g ( )

TF 跟踪标志位 TF= 1,使CPU处于单步执行指令的工作方式 这种方式便于进行程序的调试 每执的工作方式。这种方式便于进行程序的调试。每执行一条指令后,自动产生一次内部中断,从而使用户能逐条指令地检查程序户能逐条指令地检查程序。

IF 中断允许标志位 IF= l使CPU可以响应可屏蔽中断请求 IF 0使CPU禁止响应可屏蔽中断请求断请求。 IF= 0使CPU禁止响应可屏蔽中断请求。

IF的状态对不可屏蔽中断及内部中断没有影响。

DF 方向标志位 DF= l 使串操作按减地址方式进

行。也就是说,从高地址开始,每操作一次地址减

东南大学微机系统与接口 16

小一次。DF=0使串操作按增地址方式进行。

8086/8088的引脚信号

P22动态复用----机器周期至少4个时钟周期CLK T1

MAX 模式期CLK:T1,

T2,T3,T4,Tw)

Tw)

两种工作两种工作模式:

东南大学微机系统与接口 17

MAX/MIN

8086/8088引脚分类

第一类 每个引脚只传送一种信息。/RD(32P)

第二类 每个引脚电平的高低代表不同的信号 例如IO/

第三类 引脚在8086/8088的两种不同工作方式——最小

第二类 每个引脚电平的高低代表不同的信号,例如IO/M#(28P)。第三类 引脚在8086/8088的两种不同工作方式 最小模式和最大模式下有不同的名称和定义。例如:第29脚WR#(LOCK#)。

第四类 每个引脚可以传送两种信息(分时复用)。这两种

信息在时间上是可以分开的,因此可以用一个引脚在不同时刻传送不同的信息 般称这类引脚为分时复用线 例

第五类 引脚的输入和输出分别传送不同的信息 如RQ#

时刻传送不同的信息,一般称这类引脚为分时复用线。例如:AD7 ~AD。

第六类 电源 地 ( )

第五类 引脚的输入和输出分别传送不同的信息,如RQ#/GT0#输入时传送总线请求,输出时传送总线请求允许。

东南大学微机系统与接口 18

`第六类 电源/地 Vcc/Vss(GND)

8086/8088重要引脚信号

(完成微机基本功能的基本信号)

/ RD(Read)读信号输出端。读信号是一个低电平AD7~AD0(Address Data Bus)地址、数据复用端 双向工作

RESET系统复位信号 输入端

信 高 有 信CLK 时钟 输入端

有效的输出信号,当/RD为低电平时,表明CPU正在对内存或外设进行读操作。

数据复用端,双向工作。RESET信号高电平有效,8086/8088要求该信号的有效时间至少为4个T状态。CPU接收到RESET信号

时钟 输入端

接至8284集成电路的输出端,由8284提供8088所需的4 77M 33%占空比(即1/3

/WR(Write)写信号输出端 写信号是一个低电

A15~A8(Address)地址输出端 (A16-A19)

后,立即停止当前操作,完成内部的复位过程,恢复到机器的起始状态并使系统重新启动。复位时各寄存 的状态

8088所需的4.77M,33%占空比(即1/3周期为高电平,2/3周期为低电平)的系统时钟信号 微秒

/WR(Write)写信号输出端。写信号是 个低电平有效的输出信号,当/WR为低电平时,表明CPU正在对内存或外设进行写操作

A19)寄存器的状态: FLAGS=0H,IP=0,CS=FFFFH,(预取队列空),DS=ES=SS=0,各GR=0。==起始地址 表

时钟信号T=2.096微秒

正在对内存或外设进行写操作。

(IORD--IOWR),(IORQ--MENRQ)地址 0FFFF:0 (P23表1.4)

东南大学微机系统与接口 19

8086/8088与Max/Min模式

8088: AD0-AD7:数据/低8位地址复用线

SS0:状态信号SS0:状态信号

8086: AD0~AD15地址/数据复用引脚(双向、三态)地址 状态复用引脚 输出 态A16/S3~A19/S6地址/状态复用引脚(输出、三态)

/BHE/S7总线高位允许/状态(输出,三态):P25表1.6)线高位允许 状态(输出 态) 表 )

最小模式:系统只有8086或8088一个微处理器。所有控制信号直接由CPU提供控制信号直接由CPU提供

最大模式:由两个或多个微处理器(主处理器和协处理器)组成中(大)规模系统 CPU并不直接向外界提供理器)组成中(大)规模系统,CPU并不直接向外界提供全部控制信号,而由S0S1S2通过Intel 8288总线控制器提供(编码信号:P27 表1 8)

东南大学微机系统与接口 20

器提供(编码信号:P27 表1.8)

8086/8088的工作方式MIN

(双向)

-单CPU模式

锁存器:74LS373

(双向)缓冲器74LS245i8286/8287

i8282/8283i8286/8287

82558251..

东南大学微机系统与接口 21

(P24图1.13)

8086/8088的工作方式MAX线模式总线

控制器8288--多处理器/总线模式

锁存器

双向总线图

东南大学微机系统与接口 22

双向总线缓冲器 P26图1.14

8086/8088工作过程(时序)RESET复位 FFFF 0取第 条指令 TCLK控制操RESET复位 FFFF:0取第一条指令 TCLK控制操作逻辑 一系列指令周期

T

t

指令队列

总线接口单元BIU

1 2 23 3 34 45…

取指 取指 取指 取数 取指单元BIU 取指 取指 取指 取数 取指 ….

MPU执行单元 等待 执行1 执行2 执行3 。。。

东南大学微机系统与接口 23

执行单元 等待 执行 执行 执行

时钟周期、指令周期和总线周期

每两个时钟脉冲上升(下降)沿之间的时间间隔称为T状态,也称为时钟周期(Clock Cycle),T周期y

T

t执行一条指令所需要的时间称为指令周期(Instruction Cycle)通常是确定的(P412-429指令系统表)

CPU从存储器或输入/输出端口,存取一个字节(或字)所要花费的时间称为一个总线周期(Bus Cycle)字)所要花费的时间称为 个总线周期(Bus Cycle)

MOV AX, BX ;2T MOV AX, [1000H] 10T, 1次传送

东南大学微机系统与接口 24

ADD [BX], AL ;16T+EA , 2次传送

8086/8088基本总线周期

存储器读

存储器写指令顺序按设计执行可从指令中判断;需要理解掌握

DS=55A8HI/O 读

I/O写

需要理解掌握

1000:100 MOV AX,0064H; B8 64 00I/O写 ; B8 64 00

1000:103 ADD AX,100H; 05 00 01

中断响应周期

; 05 00 011000:106 MOV [2000H],AX

; F3 00 20中断响应周期

DMA响应周期

系统控制:

硬件自动产生

;

AX=0164H 存储

东南大学微机系统与接口 25

DMA响应周期 硬件自动产生物理地址:57A80H

8086/8088工作过程(时序)

RESET复位 FFFF:0取第一条指令 TCLK控制操作逻辑

(执行不同指令实现不同操作、处理功能:计算、读写寄存器/存储器/IO口) 一系列指令周期

指令周期指令周期

东南大学微机系统与接口 26

典型BIU时序

8086/8088总线时序例-存储器写

转 束

东南大学微机系统与接口 27

T1:输出地址;T2:总线转向;T3:存储器访问;T4:结束

8086/8088的工作总线IO-M-单CPU模式

完整的基本总线

广义CPU完整的基本总线

每条指令执行可实例化

锁存器

82558251..

东南大学微机系统与接口 28

(双向)缓冲器

(P24图1.13)

IA-16微机系统结构指令:算逻运算、数据传送、I/O、跳转、系统操作等

执行方式:串行 流水线(深度-EU+BIU 两级)执行方式:串行、流水线(深度 EU+BIU 两级)

取指、执行、取指、执行。。

SCLK

问题 指令功能:软件问题?时序配合:硬件

指令功能:软件

东南大学微机系统与接口 29

P26 图1.7 微机外部结构框图

小 结备 过 接 才 主机 连1.外部设备一定要通过I/O接口才能与主机相连;

2.CPU内寄存器只能放暂存信息,主要信息放在存储器中;

3.原始数据(数值数据、非数值数据(如人名等字符)

编码压缩数据 位 半字节 字节 字 字 信息/程序编码压缩数据 (位、半字节、字节、字、双字 ) 信息/程序

4.3的ASCII码表示,*011 0011B,MSB*=0表示标准ASCII文 扩展 数据 中文等 码 内码(西文),1扩展ASCII—数据、中文等,GB码----内码

(GB码MSB=1);MIMH(64)

5.8086数据总线16位;8088为8位;字长=ALU数据宽度

6. 8086/8088硬件工作过程:RESET TCLK控制-时序逻硬件 作过程 控制 时序逻辑电路:按指令指定逻辑工作;

时钟周期、指令周期和总线周期

东南大学微机系统与接口 30

时钟周期、指令周期和总线周期

第二章 指令系统