第2章 微型计算机基础.

Slides:



Advertisements
Similar presentations
第三章 系统总线 3.1 总线的基本概念 3.2 总线的分类 3.3 总线特性及性能指标 3.4 总线结构 3.5 总线控制.
Advertisements

信息技术:硬件、软件、网络、数据库 计算机技术、多媒体技术、压缩技术...
2017年3月5日 单片机原理与应用 背景知识调查.
第2章 微处理器 2.1 概述 /8086微处理器 微处理器 X86/Pentium微处理器
计算机组装与维护.
电子数字计算机 计算机性能 计算机硬件 计算机软件 多级层次结构
实验四 利用中规模芯片设计时序电路(二).
第三章 计算机核心部件及其 工作原理.
5.4 顺序脉冲发生器、 三态逻辑和微机总线接口 顺序脉冲发生器 顺序脉冲 计数型 分类 移位型.
1.1 计算机系统简介 1.2 计算机的基本组成 1.3 计算机硬件的主要技术指标 1.4 本书结构.
计算机基础知识 丁家营镇九年制学校 徐中先.
第一章 计算机基础知识 第一节 计算机概述 一、计算机的基本组成和工作原理 二、有关术语 三、计算机发展简史 四、微型计算机概述
第五章 总线 及其形成 本节课之前,大家学习了:
第 2 章 8086 系 统 结 构 中国科学技术大学 何克东.
第五章 微处理器总线操作与时序 三、总线时序 一、 8086/8088引脚 二、最小模式和最大模式.
汇编语言与接口技术 教师:范新民.
第三节 CPU与外设间的数据传送方式 CPU与外设的工作速度不一致, 如何使两者高效、可靠地进行数据传送, 是本节讨论的问题。
逆向工程-汇编语言
微机原理与接口技术 第2章 8086系统结构 朱华贵 2015年09月17日.
第四章 典型CPU及指令系统举例.
第2章 汇编语言与汇编程序 ——8086/8088指令系统 mov ax,12h call display Jmp 1234h.
输入输出与中断 主要内容 CPU与外设之间数据传送方式 中断技术 8086中断系统和中断处理.
第2章 16位和32位微处理器 位微处理器8086/ 位微处理器80386
第三章 微机基本系统的设计 第一章 8086程序设计 第二章 MCS-51程序设计 第四章 存贮器与接口 第五章 并行接口
总 复 习.
第 2 章 微处理器 的结构特点 CPU 寄存器组 外部引脚及功能
存储系统.
第3章 8086/8088指令系统 mov ax,12h call display Jmp 1234h.
微机原理与接口技术 ——80x86微处理器 西安邮电大学 计算机学院 范琳.
第二章 8086/8088系统结构 主要内容 8086/8088微处理器的内部结构 8086/8088 CPU 的引脚与功能
第五章 微处理器.
第2章 8086微处理器及其系统 微处理器简介 系统的存储器组织及I/O组织 系统的工作模式
1.3 微型计算机的结构和工作原理.
逆向工程-汇编语言
CPU结构和功能.
版权所有,引用请注明出处 第六章、中央控制器 原著 谭志虎 主讲(改编) 蒋文斌.
第二章 80x86计算机组织 x86微处理器 2.2 基于微处理器的计算机系统构成 2.3 中央处理机 2.4 存储器
微机原理与接口技术 ——80x86微处理器 西安邮电大学 计算机学院 范琳.
第五章:输入输出基本技术 主讲教师:范新民.
第二章 8086微处理器. 第二章 8086微处理器 微处理器的基本结构 8086微处理器的主要特性和内部结构 8086CPU的工作模式和引脚信号 8086的存储器管理 8086的总线操作和时序.
第3章 系统总线 3.1 总线的基本概念 3.2 总线的分类 3.3 总线特性及性能指标 3.4 总线结构 3.5 总线控制.
《微型计算机原理与接口技术》 第4版 王良 宁德师范学院 吴宁 乔亚男 编著 清华大学出版社 出版
第九章 微处理器外部结构和总线操作时序.
C语言程序设计 主讲教师:陆幼利.
得技通电子 问题 1.0 、选择题:本大题共15个小题,每小题1分,共15分,在每小题给出的四个选项中,只有一项符合题目要求,把所选项前的字母填在括号内。
微机系统的组成.
第四章 MCS-51定时器/计数器 一、定时器结构 1.定时器结构框图
微机原理与接口技术 西安邮电大学计算机学院 王忠民.
计算机组成原理 课程设计.
(Random Access Memory)
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
第三章 MCS 51的硬件结构.
第二章 补充知识 2.1 总线和三态门 一、总线(BUS) 三总线结构 数据总线DB(Data Bus)
实验三 16位算术逻辑运算实验 不带进位控制的算术运算 置AR=1: 设置开关CN 1 不带进位 0 带进位运算;
长春理工大学 电工电子实验教学中心 数字电路实验 数字电路实验室.
实验二 带进位控制8位算术逻辑运算实验 带进位控制8位算术逻辑运算: ① 带进位运算 ② 保存运算后产生进位
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
苏教版小学信息技术3年级第2课 认识计算机.
微机原理与接口技术 ——8086微处理器 西安邮电大学 计算机学院 范琳.
微机原理与接口技术 ——80x86微处理器 西安邮电大学 计算机学院 范琳.
第2章 16位和32位微处理器 16位微处理器8086/ 位微处理器
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
微机原理与接口技术 西安邮电大学计算机学院 宁晓菊.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
第二章 8086系统结构 /8086的存储器组织 的系统配置及引脚功能 CPU时序
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
上节复习(11.7) 1、定时/计数器的基本原理? 2、定时/计数器的结构组成? 3、定时/计数器的控制关系?
第三章 CPU子系统 西南石油大学计算机科学学院 主讲教师 杨 梅 联系电话:
工业机器人入门使用教程 ESTUN机器人 主讲人:李老师
DSP技术与应用 电子与信息技术系.
Presentation transcript:

第2章 微型计算机基础

主要内容: 微型机的构成及工作原理 8088/8086 CPU的结构及工作原理 系统总线

§2.1 微型机的基本结构 掌握: 微机系统的基本组成 微型机的工作原理 微机8088的存储器组织

一、微型计算机系统组成 微型计算机系统的三个层次 微处理器(Microprocessor) 微型计算机(Microcomputer) 微型计算机系统(Microcomputer System)

微型计算机系统的三个层次 ALU 寄存器 微处理器CPU 控制器 存储器 I/O接口 总线 (主机) 硬件系统 键盘、鼠标 显示器 微 型 软件系统 微 型 计算机 系 统 (主机) 外 设 ALU 寄存器 控制器 键盘、鼠标 显示器 软驱、硬盘、光驱 打印机、扫描仪 系统软件 应用软件

核心级——微处理器 微处理器简称CPU,是计算机的核心,主要包括: 运算器ALU 控制器CU 寄存器组Registers(简称Regs或R)

硬件系统级——微型计算机 以微处理器为核心,配上只读存储器(ROM)、读写存储器(RAM)、输入/输出(I/O)接口电路及系统总线等部件,就构成了微型计算机。 将CPU、存储器、I/O接口、总线等集成在一片超大规模集成电路芯片上,称为单片微型计算机,简称单片机。

系统级 以微型计算机为中心,配以相应的外围设备以及控制微型计算机工作的软件,就构成了完整的微型计算机系统。 微型计算机如果不配有软件,通常称为裸机 软件分为系统软件和应用软件两大类。

一、微型计算机的基本结构 1. 微型计算机的硬件系统 微处理器(CPU) 存储器(M) 输入/输出接口(I/O接口) 总线(BUS)

微型计算机的概念结构 C P U AB: Address Bus DB: Data Bus CB: Control Bus 存 储 器 I/O 接 口 I/O 接 口 输 出 设 备 I/O 接 口 输 入 设 备 数据总线 DB 控制总线 CB AB: Address Bus DB: Data Bus CB: Control Bus

(一) 主机硬件系统——CPU 作用: 计算机的控制中心,提供运算、判断能力 构成:ALU、CU、Regs(P29图2-3) 作用: 计算机的控制中心,提供运算、判断能力 构成:ALU、CU、Regs(P29图2-3) 例:Intel 8088/8086、PIII、P4、Celeron AMD K7(Athlon、Duron) CPU的位数(字长):4位、8位、16位、32位、64位 是指一次能处理的数据的位数

(二) 主机硬件系统——存储器M 功能: 存放程序和数据的记忆装置 用途:存放程序和要操作的各类信息(数据、文字、图像、。。。) 分类: 功能: 存放程序和数据的记忆装置 用途:存放程序和要操作的各类信息(数据、文字、图像、。。。) 分类: 内存:ROM、RAM 特点:随机存取,速度快,容量小 外存:磁盘(软/硬盘、光盘、半导体盘、U盘… 特点:顺序存取/块存取,速度慢,容量大

有关内存储器M的几个概念 (1) 内存单元的地址和内容 (2) 内存容量 (3) 内存的操作 (4) 内存的分类

(1)内存单元的地址和内容 内存包含有很多存储单元(每个内存单元包含8bit),为区分不同的内存单元,对计算机中的每个内存单元进行编号,内存单元的编号就称为内存单元的地址。 Bit 7 6 5 4 3 2 1 0 0 1 0 1 1 0 0 0 内存单 元地址 . 内存单 元内容 38F04H 1 0 1 1 0 1 1 0 *内存单元有时又称为地址单元 .

(2)内存容量 即内存单元的个数,以字节Byte为单位。 注意:内存空间与内存容量的区别 内存容量:实际配置的内存大小。例:某微机配置2条 128MB的SDRAM内存条,其内存容量为256MB 内存空间:又称存储空间、寻址范围,是指微机的最大 的寻址能力,与CPU的地址总线宽度有关。

(3) 内存操作 读:将内存单元的内容取入CPU,原单元内容不改变; 写:CPU将信息放入内存单元,单元中原内容被覆盖; 内存的读写的操作步骤为: CPU把要读写的内存单元的地址放到AB上 若是写操作, CPU紧接着把要写入的数据放到DB上 CPU通过CB发出读写命令 数据被写入指定的单元或从指定的单元读出到DB 若是读操作, CPU紧接着从DB上取回数据 参见P30图2-5

(4) 内存储器的分类 读写存储器或随机存取存储器(RAM) 只读存储器(ROM) 可读可写 易失性,临时存放程序和数据 工作时只能读 非易失性,永久或半永久性存放信息

(三)主机硬件系统—输入/输出接口 简写为I/O接口,是CPU与外部设备间的桥梁 I/O 接口 CPU 外设

接口的功能 提供驱动外设的电压或电流; 匹配计算机与外设之间的信号电平、速度、信号类型、数据格式等; 缓存CPU发给外设的数据、控制命令 和外设提供的运行状态信息; 提供两者间数据传递控制方式: DMA控制、中断控制(还有无条件、查询)。

(四) 主机硬件系统——总线BUS 连接多个功能部件的一组公共信号线 地址总线AB:用来传送CPU输出的地址信号,确定被访问的存储单元、I/O端口。 地址线的根数决定了CPU的寻址范围。 CPU的寻址范围 = 2n, n--地址线根数 数据总线DB:在CPU与存储器、I/O接口之间数据传送的公共通路。数据总线的条数(字长)决定CPU一次最多可以传送的数据宽度。 控制总线CB:用来传送各种控制信号,如读、写等

2. 微型计算机的软件系统 操作系统 编译系统 系统软件 网络系统 工具软件 软件 应用软件 软件定义:为运行、管理和维护计算机系统或为实现某一功能而编写的各种程序的总和及其相关资料文档。 操作系统 编译系统 网络系统 工具软件 系统软件 软件 应用软件

3.微型计算机的物理结构 前端总线/CPU总线 PCI 总线扩展槽 ISA CPU 外设 Cache 北桥 CRT AGP 接口卡 RAM KBD,Mouse 串行/并行接口 HDD/CDROM(IDE) FDD USB 南桥 BIOS 总线扩展槽 ISA

微型计算机的物理结构

INTEL 845GE主板

主板的主要硬件构成 CPU插座 芯片组(南北桥/ 加速中心HUB) 内存插槽 高速缓存(现已集成到CPU内部) 系统BIOS,硬件控制 CMOS,存放硬件配置参数、 系统自检及引导程序 总线扩展槽,PCI、ISA 串行、USB、并行接口 软/硬盘、光驱插座

芯片组 CPU的外围控制芯片,通常为2片 两种架构:南北桥、HUB(加速中心) 北桥——提供CPU/主存/高速缓存的连接、AGP接口、PCI桥接 南桥——提供USB、IDE(FDD/HDD)、串/并口及ISA桥接等 例如:Intel 440BX、VIA694(KT133)+686B、SiS 645等 HUB GMCH——AGP接口、存储器通道 ICH——PCI桥接、IDE控制器、USB、串/并口 FWH——系统BIOS、显示BIOS、随机数发生器 例如:Intel 810、Intel 815、Intel845等

二、计算机的工作过程 存储程序计算机—又称为冯•诺依曼型计算机 以运算器为核心、以存储程序原理为基础 将计算过程描述为由许多条指令按一定顺序组成的程序,即程序是由多条有逻辑关系的指令组成,指令的长度不等(一般为1~4字节) 数据和程序均以二进制代码的形式不加区别地存放在存储器中,存放位置由地址指定,地址码也是二进制形式 由控制器控制整个程序和数据的存取以及程序的执行 指令驱动

存储程序计算机的工作原理 控制器按预先存放在计算机存储器中的程序的流程自动地连续取出指令并执行之。 运算器 控制器 输入设备 输出设备 指令流 存储器 控制命令 数据流

程序的执行过程 1. CPU如何知道从哪里取出程序的第一条指令?——操作系统OS 2. CPU如何按程序控制流执行指令? ——程序计数器PC 操作码 操作数 执行 PC  指令1 取指令 指令2 指令译码 指令3 取操作数 指令周期 指令4 执行 执行指令 … … 存结果 指令n 1. CPU如何知道从哪里取出程序的第一条指令?——操作系统OS 2. CPU如何按程序控制流执行指令? ——程序计数器PC 3. CPU如何知道从哪里取操作数? ——地址、寻址方式

例:计算5+8(p35) 注意: 指令在内存中存放形式见P36图2-8 指令执行过程见P36-39图2-9~2-12 汇编语言程序 对应的机器语言指令 对应的操作 ------------------ --------------------- --------------------------------------------- MOV AL, 5 10110000 将立即数1传送到累加寄存器AL中 00000101 ADD AL, 8 00000100 计算两个数的和,结果存放到AL中 00001000 HLT 11110100 停机 注意: 指令在内存中存放形式见P36图2-8 指令执行过程见P36-39图2-9~2-12

指令执行过程(取指/译码/执行) 注意: 本例子与I/O接口无关 CPU M 地址总线AB 数字总线DB 读写命令CB ② ① +1 ③ 时序控制信号(控制命令) ② 输出指令地址 锁存地址 置初值 ① +1 ③ 时序逻辑电路 加法器 指令译码器ID ⑧ 指令译码 输出 程序计数器PC 累加器A 指令寄存器IR ⑦ 锁存指令 锁存 内部总线 ④ 输出地址 地址 存储器 地址寄存器AR 地 址 译 码 器 1011 0000 数据寄存器DR 1 2 3 4 MOV A, 5 ADD A, 8 HLT 0000 0101 1011 0000 0000 0100 锁存数据 ⑥ CPU 0000 1000 地址总线AB 1111 0100 读写命令CB ⑤ 数字总线DB M 读写控制电路 注意: 本例子与I/O接口无关

主要内容: §2.2 8088/8086微处理器MP(也即CPU) 8088CPU外部引线及功能; 8088CPU的内部结构和特点; 各内部寄存器Regs的功能; 8088的工作时序。

一、概述 差别: 8088、8086基本类似 16位CPU、AB宽度20位 指令预取队列:8088为4字节,8086为6字节 数据总线引脚:8088有8根,8086有16根 控制线引脚: 8088为IO/M,而8086为M/IO 8088为准16位CPU,内部DB为16位,但外部仅为8位,16位数据要分两次传送 本课程主要介绍8088(IBM PC采用)

指令预取队列(IPQ) 指令的一般执行过程: 取指令 指令译码 (前2步合称为取指) 读取操作数 执行指令 存放结果 取指令 指令译码 (前2步合称为取指) 读取操作数 执行指令 存放结果 (最后3步统称指令执行)

串行工作方式: 8088以前的CPU采用串行工作方式: CPU BUS 1) CPU访问存储器(存取数据或指令)时要等待总线操作的完成 取指令 1 执行 1 存结果 1 取指令 2 取操 作数2 执行 2 BUS 忙碌 忙碌 忙碌 忙碌

取指令和执行指令示意图(1) 8位CPU(如8080) t 忙 总线BUS CPU 取指1 取指4 取指3 取指2 取指5 执行1 执行2 执行5 执行3 执行4

取指令和执行指令示意图(2) 8位CPU(如8080) 16位CPU(8086/8088) t 忙 总线BUS CPU t 忙 总线BUS 取指1 取指4 取指3 取指2 取指5 CPU 执行1 执行2 执行5 执行3 执行4 16位CPU(8086/8088) t 忙 总线BUS 取指1 取指4 取指3 取指2 取指5 CPU 执行1 执行2 执行5 执行3 执行4 ··· ···

并行工作方式: 8088CPU采用并行工作方式 BUS CPU EU 执行1 执行2 执行3 BIU 取指令2 取操作数 存结果 取指令3 取指令4 BUS 忙碌 忙碌 忙碌 忙碌 忙碌 忙碌

8088的流水线操作 8088 CPU包括两大部分:EU和BIU BIU不断地从存储器取指令送入IPQ,EU不断地从IPQ取出指令执行 例如,PIII为14个阶段,P4为20个阶段(超级流水线)

结论 指令预取队列IPQ的作用: 使EU和BIU两个部分可同时进行工作,从而带来了以下两个好处: 提高了CPU的效率 降低了对存储器存取速度的要求

8088/8086 CPU的特点 采用并行流水线工作方式 对内存空间实行分段管理: 每段大小为16B~64KB 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址 支持多处理器系统(最大模式); 片内无浮点运算部件,浮点运算由数学协处理器8087支持(或用软件模拟) 注:80486DX以后的CPU已将数学协处理器作为标准部件集成到CPU内部

8088CPU的两种工作模式 8088可工作于两种模式: 最小模式和最大模式 最小模式为单处理机模式,控制信号较少,一般可不必外接总线控制器。 最大模式为多处理机模式,控制信号较多,CPU必须通过总线控制器与总线相连。

二、8088 CPU的引线及功能 40引脚定义方法可大致分为:: 每个引脚只传送一种信息(RD等); 引脚电平的高低不同的信号(IO/M等); CPU工作于不同方式有不同的名称和定义(WR/LOCK 等); 分时复用引脚(AD7 ~ AD0 等) ; 引脚的输入和输出分别传送不同的信息(RQ/GT等)。

8086CPU引脚功能 最小最大模式控制 MN/MX=1,最小模式 地址/状态线 MN/MX=0,最大模式 读信号 地址/数据线 总线保持请求信号 总线保持相应信号 存储器/IO控制信号 M/IO=1,选中存储器 M/IO=0,选中IO接口 写信号 数据发送/接收信号 DT/R=1,发送 DT/R=0,接收 数据允许信号 地址允许信号 非屏蔽中断 中断响应信号 准备好信号:表示内存 或I/O设备准备好, 可以进行数据传输。 测试信号:执行WAIT指令, CPU处于空转等待; TEST有效时,结束等待状态。 可屏蔽中断请求 复位信号

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

8086CPU两种组态: 8086CPU的最大模式典型配置

主要引线(最小模式下) 8088是工作在最小还是最大模式由MN/MX端状态决定:MN/MX=0时工作于最大模式,反之工作于最小模式。 数据信号线(DB)与地址信号线(AB): AD7~AD0:三态,地址/数据复用线。ALE有效时为地 址的低8位。地址信号有效时为输出,传送 数据信号时为双向。 A19~A16:三态,输出。高4位地址信号,与状态信号 S6-S3分时复用。 A15~A8 :三态,输出。输出8位地址信号。

主要的控制(CB)和状态信号 WR: 三态,输出。写命令信号; RD: 三态,输出。读命令信号; IO/M:三态,输出。指出当前访问的是存储器还是I/O接 口。高:I/O接口,低:内存 DEN:三态,输出。低电平时,表示DB上的数据有效; RESET:输入,为高时,CPU执行复位; ALE: 三态,输出。高:AB地址有效; DT/ R:三态,输出。数据传送方向,高:CPU输出, 低:CPU输入

RESET复位时序 复位时,8086 CPU将使总线处于如下状态:地址线浮空(高阻态),直到8086 CPU脱离复位状态,开始从FFFF0H单元取指令;ALE、HLDA信号变为无效(低电平);其他控制信号线,先变高一段时间(相应于时钟脉冲低电平的宽度),然后浮空。另外,复位时CPU内寄存器状态为:标志寄存器、指令指针(IP)、DS、SS、ES清零;CS置FFFFH;指令队列变空。

[例]: 当WR=1,RD=0,IO/M=0时,表示CPU当前正在进行读存储器操作。

基本控制信号的组合方法

READY信号(输入): 用于协调CPU与存储器、I/O接口之间的速度差异 READY信号由存储器或I/O接口发出。 READY=0时,CPU就在T3后插入TW周期,插入的TW个数取决于READY何时变为高电平。

中断请求和响应信号 INTR:输入,可屏蔽中断请求输入端。 高电平:有INTR中断请求 NMI:输入,非屏蔽中断请求输入端。 INTA:输出,对INTR信号的响应。

总线保持信号 HOLD:总线保持请求信号输入端。当CPU 以外的其他设备(如DMA)要求占用 总线时,通过该引脚向CPU发出请 求。 HLDA:输出,对HOLD信号的响应。为高 电平时,表示CPU已放弃总线控制 权,所有三态信号线均变为高阻状 态。

三、8088CPU的内部结构 8088内部由两部分组成: 执行单元(EU)总线接口单元(BIU)

执行单元EU 功能: 执行指令 从指令队列中取指令代码 译码 在ALU中完成数据的运算 运算结果 的特征保存在标志寄存器FLAGS中。

执行单元EU包括 算术逻辑单元(运算器ALU) 8个通用寄存器(通用Regs) 1个标志寄存器(Flags) EU部分控制电路(部分CU)

总线接口单元BIU 功能: 从内存中取指令送入指令预取队列IPQ 负责与内存或输入/输出接口之间的数据传送

8088的内部寄存器 含14个16位寄存器,按功能可分为三类 8个通用寄存器(通用Regs) 4个段寄存器 (Seg Regs) 2个控制寄存器(Con Regs) 专用Regs

通用寄存器(通用Regs) 数据寄存器(AX,BX,CX,DX) 地址指针寄存器(SP,BP) 变址寄存器(SI,DI)

数据寄存器 8088含4个16位数据寄存器,它们又可分为8个8位寄存器,即: AX AH,AL BX BH,BL CX CH,CL DX DH,DL 作用: 常用来存放参与运算的操作数或运算结果

数据寄存器特有的习惯用法 AX:累加器。多用于存放中间运算结果; 所有I/O指令必须都通过AX 与接口传送信息. BX:基址寄存器。在间接寻址中用于存放基地址; CX:计数寄存器。用于在循环或串操作指令中存放 循环次数或重复次数. DX:数据寄存器。在32位乘除法运算时存放高16位数; 在间接寻址的I/O指令中存放I/O端口地址。

地址指针寄存器 SP:堆栈指针寄存器. 其内容为栈顶的偏移地址; BP:基址指针寄存器. 常用于在访问内存时存放内存单元的偏移地址。

BX与BP在应用上的区别 相同点: 作为通用寄存器, 二者均可用于存放数据; 不同点: 作为基址寄存器, BX通常用于寻址数据段; BX一般与DS或ES搭配使用; BP一般与SS拾配. 注:间接寻址时 仅BX、BP、SI、DI可用于存储器寻址; 仅DX可用于I/O寻址。

变址寄存器 SI:源变址寄存器 DI:目标变址寄存器 作用: 变址寄存器常用于指令的间接寻址或变址寻址。

段寄存器(专用Seg Regs ) 作用: 用于存放逻辑段的段基地址 (逻辑段的概念后面将要介绍) CS:代码段寄存器 作用: 用于存放逻辑段的段基地址 (逻辑段的概念后面将要介绍) CS:代码段寄存器 代码段用于存放指令代码 DS:数据段寄存器 ES:附加段寄存器 数据段和附加段用来存放操作数 SS:堆栈段寄存器 堆栈段用于存放返回地址,保存寄存器内容,传递参数 CS DS/ES SS 代码段 数据段 堆栈段

控制寄存器(专用Con Regs ) IP:指令指针寄存器,其内容为下一条 要执行的指令的偏移地址 FLAGS:标志寄存器 状态标志:存放运算结果的特征 6个状态标志位(CF,SF,AF,PF,OF,ZF) 控制标志:控制某些特殊操作 3个控制标志位(IF,TF,DF) 15 11 10 9 8 7 6 4 2 FLAGS O D I T S Z A P C

四、存储器M寻址 物理地址 8088:20根地址线,可寻址220=1MB个存储单元 CPU送到AB上的20位的地址称为物理地址

物理地址 存储器的操作完全基于物理地址。 问题: 8088的内部总线和内部寄存器均为16位,如何生成20位地址? 解决:存储器分段 物理地址 . 60000H 60001H 60002H 60003H 60004H F0H 存储器的操作完全基于物理地址。 问题: 8088的内部总线和内部寄存器均为16位,如何生成20位地址? 解决:存储器分段 12H 1BH 08H

存储器分段 低地址 段基址 段i-1 最大64KB,最小16B 段基址 段i 段基址 段i+1 段基址 高地址

逻辑地址 段基地址和段内偏移组成了逻辑地址 物理地址=段基地址×16+偏移地址 段地址 偏移地址(偏移量) 格式为:段地址:偏移地址 段地址 偏移地址(偏移量) 格式为:段地址:偏移地址 物理地址=段基地址×16+偏移地址 60000H 偏移地址=0002H 段首地址 60002H 00H 12H × × × • • • × × × 0 0 0 0 段基地址(16位)

+ BIU中的地址加法器用来实现逻辑地址到物理地址的变换 8088 可同时访问4个段,4个段寄存器中的内容指示了每个段的基地址 16位 段基址 0000 + 段内偏移 物理地址 20位 BIU中的地址加法器用来实现逻辑地址到物理地址的变换 8088 可同时访问4个段,4个段寄存器中的内容指示了每个段的基地址

默认段和偏移寄存器 8086规定了访问存储器段的规则: 此规则定义了段地址寄存器和偏移地址寄存器的组合方式,其默认规则如下表: 段地址 默认偏移地址 用于访问 CS IP 指令 SS SP、BP 堆栈中的数据 DS BX、DI、SI、8位或16位数 数据段中的数据 ES 串指令的DI 目标串操作数

[例]: 已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H, DS段有一操作数,其偏移地址=0204H, 1)画出各段在内存中的分布 2)指出各段首地址 3)该操作数的物理地址=? 10550H 250A0H 2EF00H 8FF00H CS SS DS ES 解: 各段分布及段首址见右图所示。 操作数的物理地址为: 250AH×10H+0204H = 252A4H 这个例子说明:段与段可以不连续 段之间可以重叠

堆栈及堆栈段的使用 操作规则: 内存中一个按FILO方式(先进后出)操 作的特殊区域. 两种操作: 每次压栈和退栈均以WORD(16位)为 单位. 操作指示: SS存放堆栈段地址,SP存放段内偏 移,SS:SP构成了堆栈指针. 作用: 堆栈用于存放返回地址、过程参数或需要 保护的数据; 常用于响应中断或子程序调用.

堆栈操作示例 低 低 低 SS SS SS SP F0H SP F0H 12H SP 12H SP SP SP 高 高 高 高 压栈前 压栈后 退栈后

[例]: (1)若已知(SS)=1000H(SP)=2000H 则堆栈段的段首地址=?栈顶地址=? (3)若该段最后一个单元地址为12FFFH,则栈底地址=? 段首 堆 栈 段 12H 34H 栈顶 解:(1)段首地址=10000H, 栈顶地址=10000+2000=12000H (2)低8位数据34H在11FFFH地址中, 而高8位数据12H在11FFEH中 (3)栈底地址=13000H 栈底

五、时序 时序的概念:CPU各引脚信号在时间上的关系。 指令周期:CPU完成一条指令所需的时间。 一个指令周期由多个总线周期组成。 所需要的时间。 一个总线周期至少包括4个时钟周期。 在5MHz的工作频率时,一个标准总线周期为0.8μs。 时钟周期:由时钟发生器产生。是计算机内部最 小的时间单位,用Ti表示。 晶振周期:晶体振荡器输出的周期。它一般分频后 变为时钟周期,再作为内部工作单位。 (总线周期的时序参见教材p51-52)

§2.3 系统总线 主要内容: 总线的基本概念和分类; 总线的工作方式; 常用系统总线标准。

一、概述 总线: 是一组导线和相关的控制、驱动电路的集合。是计算机系统各部件之间传输地址、数据和控制信息的公共通道。 地址总线(AB) 数据总线(DB) 控制总线(CB)

总线结构的优点 简化系统设计(模块化) 提高兼容性 便于扩充升级 便于维修 减低生产成本

总线分类 片内总线 片外总线 CPU总线:CPU  其他部件 系统总线:主机I/O接口 外部总线:微机外设 按相对 CPU的位置 按层次 结构

总线结构 单总线结构 简单,但总线竞争严重 CPU M I/O

多总线结构 面向CPU的双总线结构 面向主存的双总线结构 双总线结构 多总线结构

多总线结构(续) 教材p55 图2-23:面向CPU的双总线结构 图2-24:面向主存的双总线结构 问题:外设到主存的数据传输必须通过CPU, 传输效率低,无法实现DMA传输 图2-24:面向主存的双总线结构 主存储器即与CPU直接连接,又与系统总线连接,较好地解决了上述问题

二、总线技术* 总线传输需要解决的问题: 传输同步——协调通信双方的传输操作 总线仲裁——消除多个设备同时使用总线造成的冲突现象 出错处理 同步、异步、半同步 总线仲裁——消除多个设备同时使用总线造成的冲突现象 Master查询,Slave独立请求 出错处理 信号驱动

同步方式 同步传输——用公共的时钟统一 各部件数据发送和接收的时机 异步传输——用控制和状态信号协调 各部件数据发送和接收的时机 半同步——用公共的时钟统一 控制和状态信号的产生时机(即控制和状态信号与时钟是同步的),但数据发送和接收的时机仍不固定

总线仲裁 用来决定某一时刻哪一个部件可以使用总线 集中控制——统一由总线控制器进行控制 分散控制——总线控制由各部件共同实现,所有部件均按统一的规则来访问总线

总线仲裁——集中控制 1)链式查询(p59图2-28)——基本原理是: 部件提出申请(BR) 总线控制器发出批准信号(BG) 提出申请的部件截获BG,并禁止BG信号进一步向后传播 提出申请的部件发出总线忙信号(BS),开始使用总线。总线忙信号将阻止其他部件使用总线,直到使用总线的设备释放总线 电路最简单,但优先级固定,不能改变

总线仲裁——集中控制 2)计数器查询——(p60图2-29)基本原理是: 需要使用总线的部件提出申请(BR) 总线控制器发出递增的设备地址 提出申请的设备检查设备地址,若与自己的地址匹配,就发出总线忙信号(BS),然后就可以使用总线 总线控制器根据检测到BS信号时的设备地址就知道当前哪个设备使用了总线 调整设备地址发出的顺序即可改变优先级别 仲裁过程较慢

总线仲裁——集中控制 3)独立请求——(p60图2-30)基本原理是: 每个设备都拥有独立的总线请求线和总线应答线 总线控制器对所有的总线请求进行优先级排队,并响应级别最高的请求 得到响应的设备将占用总线进行传输 最常用,响应速度最快 PC机中使用的8237 DMAC采用此种方式

三、常见的系统总线 ISA(8/16位) PCI(32/64位) AGP(加速图形端口,用于提高图形处 理能力) 自学: P61~P64

总线的主要性能指标 总线带宽(B/S):单位时间内总线上可传送 的数据量 总线位宽(bit):能同时传送的数据位数 总线的工作频率(MHz) 总线带宽= (位宽/8)(工作频率/每个存取周期的时钟数)

四、8088系统总线 最小模式——仅支持单处理器(p65图2-32) 最小模式下主要解决: 地址与数据的分离 地址锁存 电路实现方案 用3片8位的锁存器8282实现地址锁存。ALE为锁存控制信号,OE#≡0使锁存的地址直接输出; 用1片双向三态门8286用作数据总线驱动和隔离,DT/R#作为方向控制,DEN#作为开门信号; 其他控制信号由8088直接产生。

最小模式下的连接示意图 地址总线 8088 CPU 数据总线 控制总线 ALE • 3片8282 地址 锁存 时钟发 生 器 8286 数据 生 器 8286 数据 收发器 数据总线 DT/R# DEN# 控制总线 •

最大模式 最大模式——可支持多处理器(p66图2-33) 大多数控制信号是由总线控制器8288对S0#、S1#、S2#三个信号译码得到,如DT/R#、ALE、DEN#、IOR#、IOW#、MEMR#、MEMW#信号。DB和AB的构成基本同最小模式。 PC/XT机的总线采用了最大模式,但有三点区别: 地址总线驱动用2个74LS373和1个74LS244代替3个8282; 数据总线驱动用74LS245代替8286; 支持DMA传送。

最大模式下的连接示意图 地址总线 8088 CPU 数据总线 控制总线 ALE 地址 锁存 时钟发 生 器 数据 收发 总 线 控制器 生 器 8282 数据 收发 数据总线 8286 总 线 控制器 控制总线 S0# S1# S2# 8288

常用接口芯片介绍 8282 / 74LS373 —— 具有三态正相输出的锁存器 内部结构: p67图2-34,内部包含8个D触发器 引脚: DI0~DI7 输入 DO0~DO7 输出 STB 锁存信号 OE# 输出允许 功能: STB = 1 锁存数据 OE# = 0 将锁存的数据输出 功能类似的还有8283——但为反相输出

总线驱动器 8286 / 74LS245 —— 双向三态驱动器(p68图2-36) 引脚: 功能: 功能类似的还有8287——但为反相输出 A0~A7和B0~B7 双向数据线 OE# 输出允许 T 方向控制 功能: OE#=0时,门导通; 门导通时: T=0,B→A;T=1,A→B 功能类似的还有8287——但为反相输出

总线驱动器(续) 74LS244 —— 三态门驱动器(含8个门) 引脚: 功能: I1~I8和O1~O8 输入线和输出线 E1#,E2# 使能信号,各控制4个三态门 功能: E1#=0,E2#=0,门导通,否则输出为高阻态

作业:p91-92 2.1 2.10(1)(2) 2.12 2.15~2.20