Download - 《 微机系统与接口 》
东南大学微机系统与接口 1
《微机系统与接口》Microcomputer Systems and Interface 第 1 章 微型计算机基础(续)
马旭东 13809022379/ 83795360
东南大学微机系统与接口 2
微型计算机分类 体系 Von NeuMANN / Harvard (外 MEM 可流水线作业 )
功能结构 单 / 多片机 / (MCU)/MPU) ; 组装方式 单 / 多板机; TP801 使用方式 DESKTOP/LAPTOP/NOTEBOOK (便携式) -Mobile MP 安装使用 非(可重装入) / 嵌入式( EMBBEDED ) 指令 CISC/RISC 内核 ( 标准内核 ), 多核,软核 专用 / 通用 MPU DSP,MCU
东南大学微机系统与接口 3
8086/8088微处理器
8086/8088 芯片管脚图: Vcc=+5V,VLSI
冯 . 诺伊曼( Von NeuMANN )结构
i8086: 工业控制
单板计算机
i8088 :个人计算机
同代 MC6802/6809
东南大学微机系统与接口 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
东南大学微机系统与接口 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
如何构建??
东南大学微机系统与接口 6
微处理器的基本结构基本组成
算术逻辑单元(运算器)
寄存器组
指令处理单元(控制器)
内部数据总线
控制总线
数据总线
地址总线
暂存器 累加器
ALU
标志寄存器
指令寄存
指令译码
时序和
控制逻辑
通 用寄存器组
地 址寄存器组
地址总线控制
数据总线控制
处理器干哪些事??执行指令!!
东南大学微机系统与接口 7
IA-16微机系统结构指令:算逻运算、数据传送、 I/O 、跳转、系统操作等
执行方式:串行、流水线(深度- EU+ BIU 两级)
取指、执行、取指、执行。。
SCLK
P26 图 1.7 微机外部结构框图
东南大学微机系统与接口 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 功能结构
东南大学微机系统与接口 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机器码
东南大学微机系统与接口 108088 指令执行过程(结构为 8086 ,复制自郑州大学钱晓捷资料 )
东南大学微机系统与接口 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
东南大学微机系统与接口 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
指令、数据存储地址
东南大学微机系统与接口 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
东南大学微机系统与接口 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
东南大学微机系统与接口 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
东南大学微机系统与接口 16
标志控制寄存器 Flags ( 位 )
TF 跟踪标志位 TF= 1 ,使 CPU 处于单步执行指令的工作方式。这种方式便于进行程序的调试。每执行一条指令后,自动产生一次内部中断,从而使用户能逐条指令地检查程序。
IF 中断允许标志位 IF= l使 CPU 可以响应可屏蔽中断请求。 IF= 0使 CPU禁止响应可屏蔽中断请求。
IF 的状态对不可屏蔽中断及内部中断没有影响。 DF 方向标志位 DF= l 使串操作按减地址方式进
行。也就是说,从高地址开始,每操作一次地址减小一次。 DF= 0 使串操作按增地址方式进行。
东南大学微机系统与接口 17
8086 / 8088 的引脚信号
P22动态复用 ----机器周期至少 4 个时钟周期 CLK:T1, T2,T3, T4,Tw)
两种工作模式:
MAX/MIN
MAX模式
东南大学微机系统与接口 18
8086 / 8088 引脚分类 第一类 每个引脚只传送一种信息。 32P---/RD 。
第六类 电源 / 地 Vcc/Vss( GND )
第五类 引脚的输入和输出分别传送不同的信息,如 RQ#/ GT0#输入时传送总线请求,输出时传送总线请求允许。
第四类 每个引脚可以传送两种信息 (分时复用)。这两种信息在时间上是可以分开的,因此可以用一个引脚在不同时刻传送不同的信息,一般称这类引脚为分时复用线。例如: AD7 ~ AD 。
第三类 引脚在 8086/ 8088 的两种不同工作方式——最小模式和最大模式下有不同的名称和定义。例如:第 29 脚为WR#( LOCK# )。
第二类 每个引脚电平的高低代表不同的信号,例如 IO/M# 。
东南大学微机系统与接口 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 微秒
( 完成微机基本功能的基本信号 )
东南大学微机系统与接口 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)
东南大学微机系统与接口 21
8086 / 8088 的工作方式MIN
锁存器:74LS373i8282/8283
(双向)缓冲器74LS245i8286/8287
(P24图 1.13)
-单 CPU 模式
东南大学微机系统与接口 22
8086 / 8088 的工作方式MAX
锁存器
双向总线缓冲器
总线控制器 8288
-- 多处理器 / 总线模式
P26图 1.14
东南大学微机系统与接口 23
8086/8088 工作过程(时序)RESET 复位 FFFF:0 取第一条指令 TCLK 控制操作逻
辑(不同指令实现不同操作、处理功能:计算、读写寄存器/存储器/ IO 口)
典型 BIU 时序
指令周期
东南大学微机系统与接口 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
东南大学微机系统与接口 25
8086/8088 总线时序例-存储器写
T1 :输出地址; T2 :总线转向; T3: 存储器访问; T4: 结束
东南大学微机系统与接口 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 控制-时序逻辑电路 :按指令指定逻辑工作;
时钟周期、总线周期和指令周期
第二章 指令系统