《微型计算机技术》学习辅导.ppt_第1页
《微型计算机技术》学习辅导.ppt_第2页
《微型计算机技术》学习辅导.ppt_第3页
《微型计算机技术》学习辅导.ppt_第4页
《微型计算机技术》学习辅导.ppt_第5页
已阅读5页,还剩284页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微型计算机技术,学习辅导,刘 明 华中师范大学计算机科学系,2,1 教学目的,随着微型计算机在各行各业中应用的不断扩大,包括单片机在内的微型计算机的应用已随处可见,理工科学生有必要了解掌握该领域的理论知识及专业技术,微型计算机技术是计算机科学与技术专业重要的专业课程。本课程系统地介绍微型计算机系统的基本组织结构及基本工作原理,微型计算机接口原理及应用技术。重点阐述微处理器与外界连接技术,包括硬件接口电路的设计和相关应用软件的设计。,3,2 教学要求,本课程要求学生理解和掌握微型计算机的基本概念、基本理论和基本方法,通过本课程的学习,使学生了解微型计算机系统的特点、工作原理和组织结构,掌握微型计算机接口技术的基本原理和方法,具有分析和设计接口的能力,为开发和应用微型计算机系统打下良好的理论和实践基础。,4,2 具体要求1,微型计算机系统的组织结构及工作原理: 微处理器芯片、微型计算机、微型计算机系统的基本组织结构和基本工作原理;,5,2 具体要求2,微型计算机接口原理及应用技术: 接口的基本概念;定时计数器、并行接口、串行接口、中断控制器、DMA控制器、A/D和D/A转换器接口等接口电路的工作原理、硬件设计及软件驱动程序的编程方法;I/O端口地址译码电路设计。,6,2 具体要求3,微型计算机技术现状与发展趋势: 嵌入式系统、软硬件协同设计(Software/Hardware Co-Design)、系统芯片(System on Chip,SOC)、 具有知识产权的内核(Intellectual Property Core, IP核)等技术,7,2 与其它课程的关系,计算机组成原理、计算机系统结构和微型计算机技术是计算机科学与技术专业的核心课程。 但三门课程内容陈旧且彼此交叉重复,为此1997年教育部邀请国内资深教授、参照国外同类权威教材,组织确定该系列教材的内容划分和所属重点。,8,2 各课程的重点,计算机系统结构:重点论述计算机系统的各种基本结构、设计技术和性能定量分析方法; 计算机组成原理:侧重讨论计算机基本部件的构成和组成方式,基本运算的操作原理和单元的设计思想、操作方式及其实现; 微型计算机技术:突出应用,详细讲述微处理器芯片、计算机主板、接口技术和应用编程方法。,9,2 教材与教学参考书,教 材: 微型计算机技术,孙德文,高等教育出版社,2001.1。 参考书: 1微型计算机接口技术及其应用,刘乐善等,华中科技大学出版社,2000.1。 2微型计算机原理及应用,周明德,清华大学出版社。2000.2。,第一章 微型计算机概论,11,本章重点与难点内容,本章主要介绍有关微型计算机系统的基本概念,包括微处理器、微型计算机和微型计算机系统的定义,微型计算机的发展概况,微型计算机的特点和应用,以及微型计算机的分类,并在此基础上从三个层面上引出微机系统总线结构的概念。重点了解微型计算机系统各组成部件的功能和相互关系,理解微型计算机系统的总线结构的特点,以及对于微处理器、微型计算机和微型计算机系统,如何采用总线结构框架连接各部分组件而构成一个整体。,12,1 关于微型计算机的简单介绍,首先介绍微处理器、微型计算机和微型计算机系统的定义以及三者之间的关系。对于微处理器的发展概况,应结合微电子学的发展来了解微处理器芯片技术,以及所遵循的摩尔定律,即芯片的容量每18-24个月增加一倍。,13,术语,运算器 微处理器 控制器 寄存器 微型计算机 内存储器 硬件 输入/输出接口 输入/输出设备及外存储器 微型计算机系统 电源、面板、机架等 软件 系统软件 应用软件,14,微型计算机系统基本构成,15,微处理器,中央处理器(CPU) 运算器 完成算术/逻辑运算 控制器 操作控制 寄存器组 存放参加运算的数据、中间结果、地址等,16,微型计算机的发展,摩尔定律 第N代微处理器,17,摩尔定律,芯片的容量每18-24个月增加一倍,18,微处理器的发展,4004(2300/50m)/8008 8080/8085、8086/8088 80286/80386/80486 Pentium/Pentium Pro/Pentium Pentium /Pentium (4200万/0.13m) 集成电路技术的发展是基础 高性能、低能耗、高速度、低成本,19,Intel 4004,20,Intel 8088,21,Intel Pentium,22,Intel Pentium,23,主频为3.2G的Intel处理器,处理器核心:Prescott和Northwood,24,1 关于微型计算机的简单介绍,微型计算机系统的发展经历了四个阶段:电子管计算机(1946)、晶体管计算机(1958)、集成电路计算机(1965)、大规模集成电路计算机(1970)。 微型计算机系统往两个方向发展,一是越来越大:小中大巨,二是越来越小:微型计算机。,25,电子计算机的发展,电子管计算机(1946) 晶体管计算机(1958) 集成电路计算机(1965) 大规模集成电路计算机(1970) 越来越大:小中大巨型机 越来越小:微型计算机(PC、单片机、单板机) .,26,电子计算机的发展ENIAC,第一台电子计算机(通用可编程序) 18800电子管 30吨 150平方米 150kw 5000次/秒,27,电子计算机的发展ENIAC,28,电子计算机的发展ENIAC,29,电子计算机的发展ENIAC,30,1 关于微型计算机的简单介绍,在学习微型计算机系统基本构成之后,按照组装形式和系统规模,可以把微型计算机划分为单片机、单板机和个人计算机。其中单片机是将CPU、部分存储器、部分I/O接口集成在一个芯片上,单板机是将CPU、存储器、I/O接口及部分I/O设备安装在一个印刷线路板上。,31,单片机,将CPU、部分存储器、部分I/O接口集成在一个芯片上,32,单板机,将CPU、存储器、I/O接口及部分I/O设备安装在一个印刷线路板上,33,研华工控主板:SOM-2353,CPU: NS Geode GX1-300 芯片组: NS CS5530A 内存: 在板64MB SDRAM VGA: 支持VGA和VESA, 最大可达 1280x1024和1024x768 LCD接口: 18位LCD信号输出 网口: 10/100 Mbps Audio: AC97 尺寸: 68mm x 100mm 功耗5V1.6A,34,Embedded Solution,OS为Win CE,并可支持 ROM、LCD、 触摸屏、COM等所有硬件的功能,1个COM,1个CFC(64M/128M)、1个USB、1个键盘、1个鼠标接口、1个PCMCIA接口、一个Audio、一个LCD,在SOM-2353的基础上,开发一底板:,35,2 微型计算机系统的总线结构,分别在微处理器、微型计算机和微型计算机系统三个层面上介绍微处理器的典型结构、微型计算机的基本结构,以及用元件级总线、板卡总线和通信总线构成微机系统。,36,三个层面上的典型结构,37,总线,在计算机中,各个部件之间传送信息的公共连线称为总线。 内部总线 元件级总线 板卡总线/局部总线,38,地址总线(Address Bus),CPU用来向存储器或I/O端口传送地址 单向(CPU发出) 位数(n)决定了CPU可直接寻址的内存容量(2n),39,数据总线(Data Bus),CPU与存储器及外设交换数据的通路 双向、三态 位数与微处理器的位数相同,40,控制总线(Control Bus),用来传输控制信号 由两种方向的单向控制信号组成,第二章 80X86 微处理器的结构,42,本章重点与难点内容,微处理器是微型计算机系统的控制核心。本章主要内容是介绍80X86系列微处理器(从8086到Pentium )的结构特点,详细讨论80X86微处理器的编程结构、引脚信号功能及总线时序。重点学习8086CPU的内部结构、8086CPU的引脚信号及其功能、8086的存储器组织、8086的系统配置以及8086CPU的时序,特别是8086CPU的一些控制信号的功能应深刻理解和熟练掌握。,43,本章重点与难点内容,本章难点是8086系统工作在最小方式下的配置以及总线时序,要求能够画出8086系统最小方式的配置框图,分析各部件功能以及8086系统工作总线时序。,44,1 从8086到Pentium ,8086微处理器内部结构包括BIU(总线接口单元)和EU(执行单元)部件。总线接口单元由段寄存器(CS、DS、SS、ES)、指令指针寄存器(IP)、地址加法器、内部寄存器、指令队列缓冲器及I/O控制逻辑等部分组成。它是CPU与外部(存储器、I/O)的接口,提供总线信号并完成所有总线操作,例如地址形成(逻辑地址物理地址)、取指令(CS:IP)、指令排队以及读/写操作数等功能。,45,1从8086到Pentium ,执行单元部件由通用寄存器组、专用寄存器组、算术逻辑运算单元(ALU)、标志寄存器(FR)和内部控制逻辑组成,负责全部指令的译码和执行、 向BIU提供数据和地址、管理内部寄存器及标志寄存器(PSW)等。应理解EU和BIU的操作关系和指令流水。 简单了解80286、80386、80486、Pentium系列各类微处理器的结构特点以及相互之间的关系。,46,8086 CPU,Intel,1978年,16位 29000个晶体管,3m 40pin,双直列封装 5MHz/8MHz/10MHz,47,8086 CPU结构图,48,8086 CPU内部结构,总线接口单元BIU 由段寄存器(CS、DS、SS、ES)、指令指针寄存器(IP)、地址加法器、内部寄存器、指令队列缓冲器及I/O控制逻辑等部分组成。 执行单元部件EU 由通用寄存器组、专用寄存器组、算术逻辑运算单元(ALU)、标志寄存器(FR)和内部控制逻辑组成。,49,总线接口部件BIU,CPU与外部(存储器、I/O)的接口 提供总线信号 完成所有总线操作 功能 地址形成(逻辑地址物理地址) 取指令(CS:IP)、指令排队 读/写操作数 总线控制,50,指令执行部件EU,负责全部指令的译码和执行 向BIU提供数据和地址 管理寄存器及标志,51,2 80X86微处理器的编程结构,80X86微处理器的寄存器组主要包括基本结构寄存器、系统级寄存器、调试和测试寄存器以及浮点寄存器。8086微处理器有14个基本结构寄存器,按其用途可分为8个通用寄存器(AX、BX、CX、DX、SP、BP、SI、DI)、2个专用寄存器(IP、Flags)和4个段寄存器(CS、DS、SS、ES)3类。对于80286、80386、80486、Pentium系列各类微处理器的系统级寄存器、调试和测试寄存器以及浮点寄存器可作一般性了解。,52,内部寄存器结构,53,标志寄存器(PSW),54,3 80X86微处理器的引脚功能,对于80X86微处理器的引脚功能,本节详细描述8086/8088引脚功能,介绍时钟发生、总线锁存、总线缓冲和总线收发等概念。通过对8086/8088的引脚按功能划分(地址总线、数据总线、控制总线及时钟与电源等其它)来学习,重点掌握时分复用技术在8086/8088引脚中的应用、8088与8086的差异、8086 CPU常用控制信号的引脚功能以及8086系统配置工作方式(最小方式与最大方式)的区别。在此基础上也简要描述32位微处理器(80386、80486、Pentium)的引脚功能。,55,8086CPU的引脚,两种模式(MN/MX) 最小模式 单CPU系统 最大模式 多CPU系统 协处理器系统,56,8086CPU的引脚,四类引脚 地址总线:20位地址线 数据总线:16位数据线 控制总线:读/写/. 其他:电源/时钟/.,57,8086CPU的引脚数据/地址,数据/地址引脚 AD15AD0 数据/地址复用,地址需锁存(T1,ALE) 20位内存地址的低16位 16位I/O地址 A19A16/S6S3 地址/状态 20位内存地址的高4位/运行状态,58,8086CPU的引脚控制总线,BHE/S7 高8位数据允许/状态 MN/MX 最小/最大模式 RD 读选通 WR 写选通,ALE 地址锁存允许 DEN 数据允许 DT/R 数据发送/接收 READY 准备就绪,59,8086CPU的引脚控制总线,INTR 可屏蔽中断请求 INTA 中断响应 NMI 不可屏蔽中断请求 RESET 复位,FFFF0H开始,HOLD 总线保持请求 HLDA 总线保持响应 CLK 时钟 VCC ,GND +5V,信号地,60,8088与8086的差异,8088 外部8位数据总线 4字节指令队列 IO/M 准十六位CPU,8086 外部16位数据总线 6字节指令队列 M/IO 十六位CPU,61,8086系统配置,8086最小模式系统 8088最小模式系统,62,8086最小模式系统,63,地址锁存8282,64,双向数据总线收发器8286,1: 0:,65,8088最小模式系统,66,4 80X86微处理器的基本时序,理解8086微处理器的总线时序,8086执行指令涉及三种周期,即时钟周期、总线周期和指令周期。首先要掌握这三种周期的区别与相互之间的联系。时钟周期T是CPU的时钟频率的倒数,总线周期是完成一次总线操作所需的时间,一般包含多个T(典型4个),指令周期是执行一条指令所需的时间包含多个总线周期。,67,4 80X86微处理器的基本时序,其次要掌握几种基本总线周期(例如读操作、写操作、中断响应周期和系统复位等)的时序关系。要求结合8086微处理器的引脚信号的功能理解三总线信号在这些典型的总线周期中出现的时间关系,从而为学习8086微处理器同内存储器及I/O设备的接口作准备。,68,8086 CPU时序概念,指挥:CLK 时钟周期 CPU的时钟频率的倒数,T 总线周期 完成一次总线操作所需的时间,多个T(典型4个) 指令周期 执行一条指令所需的时间,多个总线周期,69,时钟周期或状态周期,8086CPU内部的逻辑操作以及与外部存储器和I/O交换数据进行的总线操作全部由CPU的时钟来定时的。 CPU的基本定时单位称为时钟周期或者状态周期。 假设8086的主频为10MHz,一个时钟周期为100ns。,70,总线周期及其典型示意图,CPU为了读取指令或传送数据,需要通过总线接口部件BIU与存储器或I/O接口进行信息交互,执行对总线的操作。进行一次数据传送的总线操作定义为一个总线周期。,71,总线周期(读操作),72,总线周期(写操作),73,中断响应周期(INTA),74,中断响应周期(INTA),第一个INTA周期 通知外设接口(或中断控制器),准备好中断类型信息 第二个INTA周期 放出中断类型号数据 CPU从DB获取中断类型号,第三章 内存储器及其接口,76,本章重点与难点内容,本章主要讨论内存储器及其接口,主要内容包括三部分。第一部分介绍三类典型的半导体存储器芯片(SRAM芯片HM6116、DRAM芯片Intel 2164和EPROM芯片Intel 2732)的结构、工作原理和外特性。在此基础上,第二部分重点讲述半导体存储器芯片同微处理器接口的基本技术。,77,本章重点与难点内容,特别是在第三部分介绍16位和32位微机系统中存储器接口技术。要求深刻理解三类典型半导体存储器芯片的外特性和读写过程,以及常用译码器(如74LS138)的特性和应用,重点掌握存储器接口的基本技术,难点是16位和32位微机系统中存储器接口的技术特点。,78,1 半导体存储器,存储器是计算机系统中重要的组成部分,用于存放计算机系统工作时所用的信息。首先要求掌握存储系统概念、存储器系统的体系结构、内存储器中的数据组织、存储器的分类及半导体存储器芯片的主要性能指标。对于三类典型半导体存储器芯片(SRAM芯片HM6116、DRAM芯片Intel2164和EPROM芯片Intel2732)的结构、工作原理和外特性,要求了解各引脚的功能。,79,存储器概述,计算机中用来存储程序和数据的部件 表征计算机的记忆能力 存储器多种分类,80,存储器分类,存储器按用途可分为: 内存储器(主存)与外存储器(辅存) 存储器按用途可分为: TTL型(双极型)与MOS型(单极型) 存储器按存取方式可分为: RAM与ROM,81,存储器概述,存储器的引脚特征 地址线 数据线 片选 输出允许 读/写控制,82,半导体存储器,半导体存储器的主要性能指标 存储容量: 存取速度: 存取时间、存储周期 可靠性:MTBF 功耗 性能/价格比,83,半导体存储器,RAM SRAM:速度快、集成度低 DRAM:速度慢、集成度高 ROM MROM PROM EPROM EEPROM,84,RAM结构、工作原理、典型器件,随机存取存储器RAM 在正常环境下可根据需要进行数据的读出和写入 易失性存储器,需要DC的支持 SRAM/DRAM,85,SRAM,内部结构,86,SRAM,例:SRAM2114(1K4位) 1K个存储单元,每单元4位 需要10条地址线,4条数据线 直接与地址、数据线相连,87,DRAM,内部结构Intel2164(64K1),88,DRAM,Intel2164(64K1位) 行、列地址复用,只有一半的地址引脚 利用RAS、CAS进行控制 需要刷新(典型为2ms4ms) 可通过双路复用器电路(74LS157)与地址线相连,89,DRAM,S=0:A路 S=1:B路,90,ROM结构、工作原理、典型器件,只读存储器 非易失性存储器,主要存放不经常修改的数据、程序等 往往以字节为基本单元,91,EPROM2716(2K8),92,2 半导体存储器接口的基本技术,首先熟悉典型的3-8译码器74LS138,能综合应用各种典型芯片进行存储器系统的设计与分析,掌握存储空间的地址分配和片选技术,特别注意半导体存储器芯片同微处理器连接口时应注意的问题。,93,存储器接口技术,存储器与CPU的连接 数据线根据单元宽度连接 地址线 片内地址选择片内的单元 片外地址参与地址译码,确定被选中的存储芯片 地址选择 全译码、部分译码、线选、混合译码,94,存储器接口技术,全译码 所有的片外地址均参与译码,地址空间无浪费 74LS138,95,存储器接口技术,部分译码 部分片外地址参与译码 线路较简单 地址有重叠,96,存储器接口技术,线选 个别片外地址线直接连至存储芯片的片选输入端 有大量的地址重叠 只适用于小存储容量需求的场合,97,存储器接口技术,存储器接口中考虑的问题 时序配合 负载能力 选择存储芯片,98,存储器与8位系统的连接,99,3 16位和32位系统中内存储器接口,在掌握存储器扩展技术之后,应能理解PC机中的存储器组织,特别是16位微机系统中存储器接口的技术特点,包含奇偶分体、8088/8086的存储器访问操作等。,100,存储器与16位CPU的连接,101,存储器与16CPU的连接,102,存储器与CPU的连接,103,存储器与16位CPU的连接,#1#8,SRAM6116(2K8) #9#16,EPROM2732(4K8),第四章 输入/输出,105,本章重点与难点内容,微处理器同外设的连接和信息传递是微机系统要解决的最主要的问题,本章在介绍输入输出的一般问题的基础上,要求着重掌握微机系统中数据传送的几种控制方式(程序控制方式、直接存储器存取方式、I/O通道控制方式),比较各自的优点,重点是程序控制的三种方式(无条件传送、查询传送和中断传送)的工作原理、硬件设置和软件编制。,106,本章重点与难点内容,本章主要内容还有三种最常用的简单输入/输出接口电路(锁存器74LS373、缓冲器74LS244和数据收发器74LS245)的工作特性和应用。理解DMA控制方式的基本概念及其特点、DMA传送过程,简要认识可编程DMA控制器8237A。,107,1 概述,输入输出接口的基本功能、输入输出系统的特点、接口与端口的区别与相互关系以及I/O的编址方式。CPU对外设的访问实质上是对外设接口电路中相应的端口进行访问,特别要求理解I/O端口的两种编址方式,即独立编址和统一编址的特点、区别与相互关系。,108,I/O接口定义,CPU与外设之间传送信息的一个界面 CPU与“外部世界”的连接电路,是CPU与外界进行信息交换的中转站,109,I/O接口与CPU相连,与存储器连接一样,I/O接口通过三总线与CPU相连,110,为什么设置I/O接口,CPU与外界的联络 CPU与外界信号线不兼容,在功能、逻辑定义和时序关系上不一致(不匹配、不协调) 工作速度不兼容数据缓冲 提高CPU效率,避免CPU穷于应付与外设打交道 外设发展不依赖于CPU,而由接口完成两者之间的匹配,111,I/O接口功能,执行CPU命令:命令口 返回外设状态:状态口 数据缓冲:数据口 解决连接的不匹配、不协调 速度数据缓冲 信号电平信号电平转换电路 信号格式信息转换逻辑(数据宽度与格式) 时序时序控制电路 多端口、多连接地址译码(设备选择),112,I/O接口组成,硬件电路 基本逻辑电路核心电路 命令、状态、数据缓冲寄存器 端口地址译码不可缺少 其它供选电路 中断、DMA、定时/计数、串行、D/A或A/D等,113,I/O接口组成,软件编程 初始化程序段基本部分 芯片的工作方式、初始条件等 传送方式程序段与数据传送有关 主控程序段接口的主要任务 例如数据采集程序段,包括发启动转换信号、查转换结束信号、读数据以及存数据内容 程序终止与退出程序段保护硬件 其它程序段辅助 人机对话、菜单设计等,114,I/O接口通过的信息,I/O接口与外设交互三种信息 数据信息 控制信息 状态信息 均通过DB CPU同外设之间的信息传递,实质上是对端口进行读/写操作,115,I/O接口形式,固定式结构简单I/O接口电路 由简单组合电路构成的I/O接口电路 按需求构成,不可改变 半固定式结构 使用GAL或PAL器件 逻辑表达式的功能和工作方式根据需要可以改变 一旦烧入,逻辑表达式即固定,116,I/O接口形式,可编程结构 使用专用可编程I/O接口芯片 具有内部寄存器(方式、状态、数据) 由程序设置(改变)其工作方式 智能型结构 使用专用I/O处理器或通用单片机 完成外设的全部管理功能,117,2 简单接口电路,本节扼要地介绍了三种常用的简单输入/输出接口电路,即锁存器74LS373、缓冲器74LS244和数据收发器74LS245的工作特性和应用。通过学习这三种最常用的简单输入/输出接口电路,理解CPU与外设传送信息的工作原理、硬件设置和软件编制。,118,简单的I/O接口74LS244,119,连接8个开关的基本输入接口,120,简单的I/O接口74LS374,121,连接8个LED的基本输出接口,122,可编程I/O接口8255A,123,3 常用输入输出方法,主要介绍微机系统中数据传送的几种控制方式(程序控制方式、直接存储器存取方式、I/O通道控制方式),对于程序控制的三种方式(无条件传送、查询传送和中断传送),本章主要学习无条件传送和查询传送工作原理、硬件设置和软件编制。中断传送方式将在第五章重点讲述。数据传送还有I/O处理机方式。,124,CPU与外设的信息传递方式,程序控制方式 无条件传送方式 条件传送方式(查询方式) 中断方式 中断申请、响应、服务、返回 DMA方式直接存储器存取 需DMA控制器的介入 数据的传送不经过CPU I/O处理机方式,125,程序控制方式无条件传送,外设总是准备好 输入数据已经准备好 输出已准备好接收 只有数据,没有状态 同步方式 不需要过多的程序处理,在需要与外设交换信息时,随时访问I/O端口,126,程序控制方式无条件传送,127,程序控制方式无条件传送,128,程序控制方式条件传送,查询传送方式 查询外设的状态信息 输入数据已准备好 输出接收装置已准备好 状态端口、数据端口,129,程序控制方式条件传送,输入,130,程序控制方式条件传送,131,程序控制方式条件传送,输出,132,程序控制方式条件传送,133,中断方式,需要访问外设时,允许相应的中断,当期望的状态到达时,产生中断请求 充分利用CPU的资源,提高效率 常用于高速CPU与低速外设之间的数据交换,134,I/O处理机方式,DMA可以撇开CPU实现直接的数据传送,但无法单独实现数据的处理 建立独立的处理机制,单独处理I/O数据 例:智能串行接口卡,135,4 可编程DMA控制器8237A,理解DMA控制方式的基本概念及其特点、DMA传送过程。针对具体的高性能可编程DMA控制器8237A,主要了解其性能以及DMA操作和传送类型。,136,DMA方式,直接存储器方式 不必通过CPU的中转(IN/OUT指令均通过AL/AX),而直接在I/O接口与存储器之间进行传递(抢占总线) 需要DMA控制器的介入 适用于大量数据的交换,137,DMA方式,第五章 中断,139,本章重点与难点内容,中断传送是最常用和有效的输入输出控制方式,特别是在处理一些紧急事件时,中断特别有效。本章主要介绍有关中断的基本知识,例如中断和中断源、中断处理过程、中断优先权和中断嵌套等。重点掌握8086/8088PC机中断系统、中断分类、中断响应的工作过程以及中断程序设计,同时要求掌握可编程中断控制器8259A的特性、结构和工作原理。,140,本章重点与难点内容,难点是8086/8088PC机的中断机制,中断向量与中断向量表、中断类型号与中断向量指针等在中断工作过程的作用。,141,1 概述,在计算机系统中,中断的例子很多。中断作为传送数据和处理一些紧急事件最常用和有效的控制方式,在学习时要求掌握有关中断的基本概念,主要包括中断和中断源、中断系统的功能、中断屏蔽、中断优先级排队和中断的嵌套,特别是中断处理过程中的现场保护和断点保护、开中断和关中断时机的选择、中断识别等。,142,中断,是一个由中断源激发的过程,它打断正在执行的程序。 CPU在正常运行程序时,由于程序的预先安排或计算机内外部事件,引起CPU中断正在运行的程序,而转到为预先安排的事件或内外部事件服务的程序中去。,143,中断过程,当CPU正常运行程序时,由于内部事件或外设请求(随机的),引起CPU暂时中止正在运行的程序,转去执行发出请求的外设(或内部事件)的服务子程序,待该服务程序执行完毕,再返回被中止的程序,这一过程称为中断。,144,中断的图示,145,传统数据传送方式的缺点,条件方式(查询方式) :占用CPU时间; 无条件方式:固定的时序,外设必须处于“就绪”状态。,146,为什么要引入中断,中断原先是用于对紧急事件的处理 中断方式的优点: 中断传送可以和CPU并行工作,147,中断的主要作用,实时处理 在计算机用于工业控制时,由于很多控制参数发生变化的频率很高,计算机要及时地获得它们的变化情况。当有关参数发生变化时,外部设备则向计算机发出中断请求信号,要求计算机进行处理,从而达到实时数据处理的目的。,148,中断的主要作用,故障处理 在计算机运行时,往往会发生一些无法事先预料到的故障,如电源、内存或运算溢出等。当这些故障出现时,故障源向CPU发出中断请求,CPU对故障进行自动处理。,149,中断的主要作用,同步操作 在很多计算机系统中,外设与CPU经常同时工作。由于外设的工作速度较慢,所以CPU启动外设后,继续运行其它程序,而这时外设也进行数据的准备工作。当外设将数据准备完毕后,向CPU发出中断请求,CPU暂停当前工作,进行相应的数据处理工作。,150,中断术语,中断源 引起中断的事件 内部中断(片内/程序) 外部中断(片外) 中断响应 CPU对中断的响应(处理) 并不是有求必应 在一定时刻、满足一定条件,才能响应之,151,中断术语,中断向量表 中断服务子程序入口地址的地址表(类似于跳转表) 中断优先级 多个中断源之间的轻重缓急 高级中断/低级中断 中断屏蔽 使得CPU无法感知相关中断请求的机制,152,2 8086/8088中断系统,8086/8088的中断系统非常巧妙,每个中断都有一个,以供CPU进行识别,8086/8088中最多能处理256中不同的中断类型。中断可以由来自外部的事件产生的两种硬中断:不可屏蔽中断NMI及可屏蔽中断INTR,即外部中断是由外部设备从8086/8088的两条中断信号线(INTR和NMI)随机性输入提出的中断申请。内部中断是通过软件调用的不可屏蔽中断,软中断有ROM-BIOS中断、DOS中断和未定义自由中断。重点掌握8086/8088 PC机的中断机制,通过学习中断向量表、中断类型号与中断向量指针之间的关系,理解记忆中断处理过程。,153,中断分类,154,中断分类,8086/8088系统可容纳256种(个)不同的中断 外部中断(硬件中断) 不可屏蔽中断(NMI) 可屏蔽中断(INTR) 内部中断(软件中断) INT指令 CPU出错 调试,155,不可屏蔽中断(NMI),CPU必须响应,不受IF的限制 部分紧急事件由NMI向CPU请求中断 上升沿触发 类型中断号:n=2,156,可屏蔽中断(INTR),除了NMI之外的硬件中断,绝大部分的外部中断均由INTR向CPU请求中断 CPU可根据情况选择响应或不响应,受IF的制约 电平触发,必须保持,直至CPU响应之,157,内部中断(软件中断),不可屏蔽 三种类型 指令中断: Int n,如 INT 21H CPU出错 调试中断 单步中断 断点中断,158,中断处理过程(可屏蔽),CPU响应中断的条件 外设接口提出(发出)中断请求 有效请求电平信号能到达CPU的INTR引脚(时间间隔足够宽、中途未被屏蔽) CPU的中断控制位 IF=1(允许INTR中断) CPU执行到当前指令的最后一个总线周期的最后一个时钟周期时,才检测中断。(有特例:两条指令必须连续执行除外),159,INTR中断处理过程图示(无嵌套),160,中断处理过程中断向量表,中断向量表 8086/8088系统具有256种中断类型 将256个中断服务子程序的入口地址,集中排放在0000:0000开始的1024字节的存储空间区域内 每个类型对应4个字节(段:偏移) 2564=1024字节 只需获得中断类型(号)即可,161,中断向量表,向量地址 类型号n n4IP n4 + 2CS,162,中断处理过程向量中断,向量中断 利用中断类型号、中断向量表决定中断服务子程序入口地址的中断方式,163,中断处理过程向量中断,中断类型 系统中的每个中断源均具有一个中断类型号 内部中断 固定中断类型号 Int n 中断号: n NMI 中断类型号:n=2 INTR 由中断控制器、中断源向CPU提供中断类型号,164,中断处理过程主程序,设置中断向量 BIOS 用户自定义中断 初始化中断控制器 开中断(STI)/关中断(CLI),165,中断处理过程CPU/IO,中断源发出中断请求、并到达CPU引脚 CPU在当前指令结束时,判中断请求 NMI中断类型号为2,必须响应 INTRCPU在可以响应时(IF=1),发出INTA,以获取类型号 保护标志寄存器和断点,转向中断服务子程序,166,中断处理过程子程序,保护现场 开中断(如果允许中断嵌套) 中断处理 关中断 EOI(清除当前中断的被服务标志) 恢复现场 IRET(FR恢复、段点恢复),此时嵌套的INTR中断可能被响应,167,中断处理过程INTA,第一个INTA周期 通知外设接口(或中断控制器),准备好中断类型信息 第二个INTA周期 放出中断类型号数据 CPU从DB获取中断类型号,168,中断优先级和中断嵌套,中断嵌套 多个中断源,有可能同时发出中断请求 多重中断响应(服务) 中断优先级 给每个中断源规定优先级别,CPU先响应高级中断的请求 一般情况下,在允许中断嵌套时,高级中断可以打断低级中断,同级或低级中断不能打断高级或同级中断,169,中断优先级和中断嵌套,IBM PC的中断优先级层次 内部中断(出错、INT n) NMI INTR 单步中断,170,中断优先级和中断嵌套,IRQ0 IRQ1 IRQ7,该中断正被服务标志清除,171,3 可编程中断控制器8259A,8259A是一种可编程中断控制器,首先学习8259A的主要功能、引线、内部结构和工作原理。在系统上电时,必须根据8259A的具体应用环境进行初始化编程。应基本理解8259A的初始化命令字、操作命令字、编程过程以及中断控制器在微机系统中的应用。,172,可编程中断控制器8259A(PIC),8级(可级联至64级)优先级控制 单独屏蔽/允许 提供中断类型码 可编程多种工作模式 具有内部寄存器 由初始化命令字、操作命令字进行编程 改变工作模式,173,8259A内部结构,174,8259A内部结构,IRR中断请求寄存器 锁存中断请求信号,被响应后复位 1:有请求/0:无请求 IMR中断屏蔽寄存器 可编程屏蔽控制 逐位屏蔽 1:屏蔽/0:未屏蔽,175,8259A内部结构,PR优先级判断寄存器 多种中断优先判断机制 ISR中断服务寄存器 中断正被服务标识 1:正被服务/0:未被服务 全0? 全1?,176,8259A中断过程,一条或多条中断请求IR变为高电平,使IRR相应位置1 PR分析它们的优先级,向CPU发出中断请求INTR CPU响应中断,以INTA作为回答 8259接受来自CPU的第一个INTA,最高优先级的ISR置位,相应的IRR复位 第二个INTA,8259向DB发出中断类型码 EOI使ISR复位,示该中断服务完毕,第六章 可编程接口芯片及其应用,178,本章重点与难点内容,CPU要同外设交换信息,必须通过接口电路。本章的主要内容是介绍可编程序接口芯片的一些基本概念,重点讲述三种通用的可编程接口芯片,即可编程并行接口芯片8255A-5、可编程间隔定时器8253-5和通用同步异步接收发送器8251A的组成、功能和应用,以及两种模拟接口芯片(数/模转换器DAC0832和模/数转换器ADC0809)的工作原理及应用。,179,本章重点与难点内容,通过学习,要求能够掌握并行接口8255A和定时器/计数器8253的硬件连接和应用程序编程,深刻理解有关串行通信的一些基本知识以及串行接口的基本原理和组成,并对串行接口8251A的特性及应用有一个基本的了解。,180,1 可编程接口芯片概述,本节从接口芯片的外特性着手,讲述了接口芯片硬件连接中的“片选”、“读/写”、“可编程接口”、“联络”等概念,并简要讨论接口芯片中一些公用引脚的作用及其连接方法。,181,I/0端口和I/0操作,I/O端口 (port) 端口是接口电路中能被CPU直接访问的寄存器的地址 一个接口可以有几个端口,如命令口、状态口和数据口 对端口的操作也有所不同,有的端口只能写或只能读,有的既可以写也可以读。,182,I/0端口和I/0操作,计算机给接口电路中的每个寄存器分配一个端口,访问端口就是访问接口电路中的寄存器。 I/O操作 I/O操作是指对I/0端口的操作 I/O操作不是对I/O设备的操作。,183,I/O端口编址方式,I/O独立编址 M/IO = L 64K独立编址的I/O地址空间 专用 IN/OUT 指令 存储器映像编址 M/IO = H I/O端口与存储器统一编址 使用存储器操作指令,184,I/O端口编址方式,185,I/O独立编址优点,I/O端口地址单独编址而不和存储空间合在一起,大型计算机通常采用这种方式。 I/O端口地址不占用存储器空间 使用专门的I/O指令对端口进行操作 ,指令短,执行速度快 程序中I/O操作和存储器操作层次清晰,程序的可读性强 I/O端口地址和存储器地址可以重叠,而不会相互混淆,186,I/O统一编址特点,优点 指令类型多,功能齐全,这不仅使访问I/O端口可实现输入/ 输出操作,而且还可对端口内容进行算术逻辑运算,移位等 能给端口有较大的编址空间,这对大型控制系统和数据通信系统是很有意义的 缺点 端口占用了存储器的地址空间,使存储器容量减小 指令长度比专门IO指令要长,因而执行速度较慢,187,I/O独立编址的端口访问,I/O指令中端口地址的宽度 IN AL, PORT 和 OUT PORT , AL 长指令; 单字节地址,最多可访问256个端口; 直接在指令中给出 IN AL, DX 和 OUT DX, AL 短指令; 双字节地址,最多可访问65536个端口; 用寄存器DX间接给出,188,I/O独立编址的端口访问,I/O端口访问 对端口的访问就是CPU对端口的读/写 例如: IN AL, 60H ;系统板 8255A的PA端口地址 OUT 61H, AL ;系统板 8255A的PB端口地址 例如: MOV DX,300H ; 扩展板8255A的PA端口 IN AL ,DX MOV DX,301H ; 扩展板8255A的PB端口 OUT DX,AL,189,I/O端口地址译码,译码电路的输入信号 I/0地址译码电路与地址信号有关 而且与控制信号有关 译码电路的输出信号 在输出信号线中有且只有l 根选中线有效 有效选中一个接口芯片时,内部的数据线打开,并与系统总线相连,形成接口电路与系统总线的通路。而其它接口芯片呈高阻抗,关闭与系统总线的通路。,190,I/O端口地址译码,端口选择信号 I/O地址总线 M/IO 74LS138,191,I/O端口地址译码,片间寻址:高位地址线+控制信号经译码电路产生片选信号 全译码 部分译码 线选法 片内寻址:寄存器寻址,低位地址线直接连到I/O接口芯片,低位地址线的状态数决定了接口中寄存器的个数,192,输入握手并行接口,RD:读信号线 INTR:中断请求信号线 IBF:输入缓冲器满(Input Buffer Full)握手信号线 STB:STroBe握手信号线,193,输出握手并行接口,WR:写信号线 INTR:中断请求信号线 OBF:输出缓冲器满(Output Buffer Full)握手信号线 ACK:Acknowledge握手信号线,194,输入/输出握手并行接口,INTR:中断请求线 OBF:输出缓冲器满握手信号线 ACK:响应输入的握手信号线 IBF:输入缓冲器满握手信号线 STB:选通输入握手信号线 INTE:中断允许位,195,2 可编程并行接口芯片8255A,8255A是一种通用的可编程并行I/O接口芯片,通过8255A,CPU可直接同外设相连接,其应用最广、使用灵活。首先应熟悉8255A的外部特性和内部结构,了解PA口、PB口和PC口的引脚功能,特别是PC口比较特殊,即可用作数据口,有时其大部分引脚被分配作专用联络信号(控制或状态信息)。,196,8255A的工作原理,8255A是可编程的,连接外部设备时,通常不需要附加外部电路。 并行I/O接口芯片:三个八位输入/输出端口 可通过软件设置芯片的多种工作方式(可编程) 一种通用芯片,197,8255A的封装,Intel系列的8位并行接口芯片 通用性强,使用灵活 可用程序设置和改变芯片的工作方式 是一种典型的可编程并行接口芯片,40个引脚,双列直插式,198,8255A的内部结构,三个8位数据端口:PA、PB、PC,可用软件使它们分作输入端口或输出端口。 PA: 一个8位数据输入锁存器 一个8位数据输出锁存器/缓冲器 PB: 一个8位数据输入缓冲器 一个8位数据输出锁存器/缓冲器 PC: 一个8位数据输入缓冲器 一个8位数据输出锁存器/缓冲器,199,读/写控制逻辑 负责管理8255A的数据传送过程 接收CS、A1、A0和控制信号RD、WR、RESET,将这些信号进行组合,得到对A组控制和B组控制的控制命令,以完成对数据、状态信息及控制信息的传输。 控制数据总线缓冲器的状态 数据总线缓冲器有3种状态:输入、输出、高阻态,8255A的内部结构,200,8255A的内部结构,201,A口、B口: 作为独立的输入端口或输出端口,当端口 A 在方式 1 或方式 2、端口 B 在方式 1 时, 端口 C 的某些位用于传送联络信号, 以适应CPU与外设间的各种数据传送方式的要求, 如查询传送的应答信号、中断传送的中断申请信号等。 C口: 常被分成两个4位端口,以配合A口和B口的工作,输入状态信号和输出控制信号。C口未被用作联络信号的其它位可工作在方式 0下。,8255A的内部结构,202,控制端口D :A组和B组控制电路 A组:端口A + 端口C的高4位 B组:端口B + 端口C的低4位 这两组控制电路一方面接收芯片内部总线上的控制字,另一方面接收来自读/写控制逻辑电路的读/写命令,以决定两组端口的工作方式和读/写操作。 控制端口的内容决定A口、B口、C口的工作状态(输入或输出)和工作方式(方式 0、1、2), 起控制作用。 A组控制电路:控制PA和PC的高4位(PC7PC4) B组控制电路:控制PB和PC的低4位(PC3PC0),8255A的内部结构,203,8255A的引脚信号,204,8255A的引脚信号,面向外设的引脚信号 PA07 PB07 PC07,205,8255A的引脚信号,面向CPU的引脚信号 D7D0 8255A的数据线:和系统数据总线相连 RESET 复位信号:当其有效时,清除所有内部寄存器,三个数据端口(A口、B口、C口)被自动设置为输入端口 CS 片选信号:低电平有效。通常译码器分配给8255A一组端口地址,若该组地址有效,CS为低电平,启动8255A与CPU之间的通信,206,8255A的引脚信号,面向CPU的引脚信号 RD 芯片读出信号:当RD有效时,CPU可从8255A读取数据或状态信息 WR 芯片写入信号:当该信号有效时,CPU可往8255A写入数据或控制命令 A1、A0 端口选择信号:8255A内部有3个数据端口和一个控制字端口,共4个端口, A1、A0对这4个端口选择规定如下: A1 A0 = 0 0 / 0 1 / 1 0 / 1 1 端口 A / B / C / 控制,207,208,8255A的结构和功能,209,8255A的控制字,8255A通过向控制端口写控制字,来决定各端口的工作 8255A具

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论