26
东东东东 微微微 微微微 1 东东东 东东东 Microcomputer Systems and Interface 东1东 东东东东东东东 东东 () 马马马 13809022379/ 83795360 [email protected]

《 微机系统与接口 》

  • Upload
    ronald

  • View
    182

  • Download
    0

Embed Size (px)

DESCRIPTION

Microcomputer Systems and Interface. 第 1 章 微型计算机基础(续) 马旭东 13809022379/ 83795360 [email protected]. 《 微机系统与接口 》. 体系 Von NeuMANN / Harvard ( 外 MEM 可流水线作业 ) 功能结构 单 / 多片机 / (MCU)/MPU) ; 组装方式 单 / 多板机; TP801 使用方式 DESKTOP/LAPTOP/NOTEBOOK (便携式) -Mobile MP - PowerPoint PPT Presentation

Citation preview

Page 1: 《 微机系统与接口 》

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

《微机系统与接口》Microcomputer Systems and Interface 第 1 章 微型计算机基础(续)

马旭东 13809022379/ 83795360

[email protected]

Page 2: 《 微机系统与接口 》

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

微型计算机分类 体系 Von NeuMANN / Harvard (外 MEM 可流水线作业 )

功能结构 单 / 多片机 / (MCU)/MPU) ; 组装方式 单 / 多板机; TP801 使用方式 DESKTOP/LAPTOP/NOTEBOOK (便携式) -Mobile MP 安装使用 非(可重装入) / 嵌入式( EMBBEDED ) 指令 CISC/RISC 内核 ( 标准内核 ), 多核,软核 专用 / 通用 MPU DSP,MCU

Page 3: 《 微机系统与接口 》

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

8086/8088微处理器

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

冯 . 诺伊曼( Von NeuMANN )结构

i8086: 工业控制

单板计算机

i8088 :个人计算机

同代 MC6802/6809

Page 4: 《 微机系统与接口 》

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

8086/8088微处理器

INTEL 公司 78 年推出( 79 年推出 8088 ) 4 万多个晶体管 (8088为 2.9 万个晶体管 ) 时钟频率 4.77MHZ 数据线 16 位( 8088 的数据线 8 位) 地址线 20 位 40脚 DIP 封装 81年 IBM 推出 Personal Computer

(个人计算机、微机) PC Intel Architecture(IA)-16

Page 5: 《 微机系统与接口 》

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

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

可以重复加载运行各种应用软件的个人计算机: 多板结构 1 .系统板 +I/O 选卡 ---- 基于中大规模 IC μP:8088(80C88)/8087+ 82XX 芯片组 chipset82C88 总线控制器 BUS Controller8284 Clock Generator &Driver 2. ROM---- 基本系统程序3.  RAM---- 中间数据 / 应用程序4. I/O 接口电路: Speaker/KB5. I/O expanding slots: 62 脚: PC-5 XT-8

如何构建??

Page 6: 《 微机系统与接口 》

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

微处理器的基本结构基本组成

算术逻辑单元(运算器)

寄存器组

指令处理单元(控制器)

内部数据总线

控制总线

数据总线

地址总线

暂存器 累加器

ALU

标志寄存器

指令寄存

指令译码

时序和

控制逻辑

通 用寄存器组

地 址寄存器组

地址总线控制

数据总线控制

处理器干哪些事??执行指令!!

Page 7: 《 微机系统与接口 》

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

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

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

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

SCLK

P26 图 1.7 微机外部结构框图

Page 8: 《 微机系统与接口 》

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

IA-16 微处理器( Intel 8086/8088 )

AH AL

BH BL

CH CL

DH DL

SP

BP

DI

SI

AXBX

CX

DX

ALU 数据总线( 16位)运算寄存器

ALU

标志寄存器

EU 控制系统

执行单元EU

CS

DS

SS

ES

IP内部暂存器

1 2 3 4 5 6

数据总线8088:8 位

8086:16 位

总线 控制逻辑

地址总线20 位

指令队列

8088

8086

Q 总线( 8 位)

指令指针

段寄存器

外部总线

总线接口单元 BIU

SCLK

P19图 1.9 功能结构

Page 9: 《 微机系统与接口 》

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

8086/8088 流水工作过程指令队列总线接口单元 BIU

MPU执行单元

时间

等待 执行 1 执行 2 执行 3 。。。

1 2 23 3 34 45…

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

与 BIU 有关的指令执行

指令的执行过程: 1000:100 MOV AX,0064H ; B8 64 00 1000:103 ADD AX,100H ; 05 00 01 1000:106 MOV [2000H],AX ; F3 00 20机器码

Page 10: 《 微机系统与接口 》

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

Page 11: 《 微机系统与接口 》

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

8086/8088 的内部寄存器(Registers)

14个 16 位寄存器: 8 通用寄存器 /4段 /2 控制寄存器

栈操作:16 位

P20 图1.10

ADD AX, 100 , MOV BH, [1000]SUB DX, [BX]JC 1000MOV CS:[SI],AL

Page 12: 《 微机系统与接口 》

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

通用寄存器 (Register) 功能 AX, BX, CX, DX, AH, AL, BH,

BL, CH, CL, DH, DL( 16-8 ) 习惯: AX 累加器 Accumulator)/ BX 基址 R/

CX(Count) 计数 R, 循环 - 串操作 / DX 数据R( Data ), I/O port, 双字除( H16 );

SP, BP: Stack Pointer R, Base Pointer 基址指针 R 数据 /Pointer

SI, DI 变址 R( Source Index R, Destination Index R) -- 指针作用

例: REP MOVSB

指令、数据存储地址

Page 13: 《 微机系统与接口 》

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

段寄存器功能 段寄存器 Segment Register CS,SS,DS,ES Code,Stack,Data,Extra( 附加段 )R==Segment Base

Address 解决8位机兼容问题 MOV AX, [1000H] 8086/8088 存储器管理: 20 AB1MB, 64KB 单位,

物理地址 PA ,段基地址 SA ,偏移地址EA( OFFSET );( SA, EA 逻辑地址)关系:PA=SA*16+EA

默认: MOV AX, DS:[1000H] 当 (DS)=1234H 时 物理地址= 13340H A19……A0=? 当 (DS)=56A8H 时 物理地址= 57A80H

Page 14: 《 微机系统与接口 》

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

控制寄存器控制寄存器:IP( Instruction Pointer- 预取指令的偏移地址

)FLAGS 标志( 6 状态 /3 控制 -8088/86 定义 9

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

奇偶位= 1

借进位

半进位

溢出标志

跟踪

符号位

零标志位

中断允许= 1

方向

当算术运算的结果超出了带符号数的范围,即溢出时, OF= 1 ,否则 OF= 0。 8 位带符号数范围是一 128 ~+ 127, 16 位带符号数的范围是 -32768 ~+ 32767 。

例 : XXXX1010 10X0X1X1

Page 15: 《 微机系统与接口 》

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

标志状态寄存器 Flags( 位 )

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

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

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

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

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

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

例 : XXXX1010 10X0X1X1

Page 16: 《 微机系统与接口 》

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

标志控制寄存器 Flags ( 位 )

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

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

IF 的状态对不可屏蔽中断及内部中断没有影响。 DF 方向标志位 DF= l 使串操作按减地址方式进

行。也就是说,从高地址开始,每操作一次地址减小一次。 DF= 0 使串操作按增地址方式进行。

Page 17: 《 微机系统与接口 》

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

8086 / 8088 的引脚信号

  P22动态复用 ----机器周期至少 4 个时钟周期 CLK:T1, T2,T3, T4,Tw)

两种工作模式:

MAX/MIN

MAX模式

Page 18: 《 微机系统与接口 》

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

8086 / 8088 引脚分类 第一类 每个引脚只传送一种信息。 32P---/RD 。

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

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

第四类 每个引脚可以传送两种信息 (分时复用)。这两种信息在时间上是可以分开的,因此可以用一个引脚在不同时刻传送不同的信息,一般称这类引脚为分时复用线。例如: AD7 ~ AD 。

第三类 引脚在 8086/ 8088 的两种不同工作方式——最小模式和最大模式下有不同的名称和定义。例如:第 29 脚为WR#( LOCK# )。

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

Page 19: 《 微机系统与接口 》

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

8086 / 8088 重要引脚信号

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

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

AD7~ AD0( Address Data Bus )地址、数据复用端,双向工作。

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

RESET 系统复位信号 输入端

RESET信号高电平有效, 8086/ 8088要求该信号的有效时间至少为 4个 T 状态。 CPU 接收到RESET信号后,立即停止当前操作,完成内部的复位过程,恢复到机器的起始状态并使系统重新启动。复位时各寄存器的状态 : FLAGS=0H, IP=0, CS=FFFFH ,(预取队列空), DS=ES=SS=0 ,各 GR=0。 ==起始地址 0FFFF:0 ( P23表 1.4 )

CLK 时钟 输入端 接至 8284集成电路的输出端,由 8284提供8088所需的 4. 77M, 33%占空比(即 1/ 3周期为高电平, 2/ 3周期为低电平)的系统时钟信号 T=2.096 微秒

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

Page 20: 《 微机系统与接口 》

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

8086/8088 与 Max/Min 模式 8088: AD0-AD7: 数据 /低 8 位地址复用线 SS0 :状态信号 8086: AD0~ AD15 地址 / 数据复用引脚 ( 双向、三态 )

A16/S3~ A19/S6 地址 / 状态复用引脚 (输出、三态 )

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

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

Page 21: 《 微机系统与接口 》

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

8086 / 8088 的工作方式MIN

锁存器:74LS373i8282/8283

(双向)缓冲器74LS245i8286/8287

(P24图 1.13)

-单 CPU 模式

Page 22: 《 微机系统与接口 》

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

8086 / 8088 的工作方式MAX

锁存器

双向总线缓冲器

总线控制器 8288

-- 多处理器 / 总线模式

P26图 1.14

Page 23: 《 微机系统与接口 》

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

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

辑(不同指令实现不同操作、处理功能:计算、读写寄存器/存储器/ IO 口)

典型 BIU 时序

指令周期

Page 24: 《 微机系统与接口 》

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

时钟周期、总线周期和指令周期 每两个时钟脉冲上升(下降)沿之间的时间间隔称为

T 状态,也称为时钟周期( Clock Cycle ) T

CPU 从存储器或输入 /输出端口,存取一个字节(或字)所要花费的时间称为一个总线周期( Bus Cycle ) 执行一条指令所需要的时间称为指令周期( Instruction Cycle ) MOV AX, BX ;2T MOV AX, [1000H] 10T, 1 次传送

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

t

Page 25: 《 微机系统与接口 》

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

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

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

Page 26: 《 微机系统与接口 》

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

小 结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硬件工作过程: RESETTCLK 控制-时序逻辑电路 :按指令指定逻辑工作;

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

第二章 指令系统