版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第章第章 输入输出系统输入输出系统5.6 DMA5.6 DMA方式方式5.5 5.5 程序中断方式程序中断方式5.4 5.4 程序查询方式程序查询方式5.3 I/O5.3 I/O接口接口5.2 5.2 外部设备外部设备5.1 5.1 概述概述系系统统总总线线存储器存储器 运算器运算器 控制器控制器 接口与通信接口与通信 输入输入/输出设备输出设备Cache 一、一、I/OI/O系统的发展系统的发展 1. 1. 早期分散连接阶段早期分散连接阶段5.1 5.1 概述概述3. 3. 通道结构的阶段通道结构的阶段二、二、I/OI/O系统的组成系统的组成三、三、I/OI/O设备与主机的联系方式设备与主机
2、的联系方式1. I/O1. I/O设备编址方式设备编址方式u统一编址统一编址存储器映射编址存储器映射编址 把每个把每个I/OI/O设备地址都当作一个存储器单元看待,设备地址都当作一个存储器单元看待,I/OI/O设设备与存储器单元在同一地址空间中进行统一编址。常常在整备与存储器单元在同一地址空间中进行统一编址。常常在整个地址空间中划分出一小块连续的地址分配给个地址空间中划分出一小块连续的地址分配给I/OI/O设备。被设备。被分配给分配给I/OI/O设备的地址,存储器不能再使用。设备的地址,存储器不能再使用。统一编址的优缺点统一编址的优缺点优点:优点:缺点:缺点:u独立编址独立编址I/OI/O映射
3、编址映射编址 将存储器和将存储器和I/OI/O设备建立两个完全独立的地址空间。设备建立两个完全独立的地址空间。CPUCPU使使用专门的控制信号来区分是对存储器访问还是对用专门的控制信号来区分是对存储器访问还是对I/OI/O设备进行设备进行访问。这些控制信号的产生是由指令来控制。访问。这些控制信号的产生是由指令来控制。 独立编址的优缺点独立编址的优缺点优点:优点: (1 1)使用专门的)使用专门的I/OI/O指令,程序清晰易读;指令,程序清晰易读; (2 2)I/OI/O设备的地址空间独立,不占用存储器设备的地址空间独立,不占用存储器的存储空间,且地址译码电路相对简单。的存储空间,且地址译码电路
4、相对简单。 缺点:缺点: (1 1)访问外设的指令没有访问存储器的指令多)访问外设的指令没有访问存储器的指令多 (2 2)CPUCPU需设置专门的控制信号,区分对存储需设置专门的控制信号,区分对存储器的访问和对外设地址的访问。器的访问和对外设地址的访问。 2. 2. 设备寻址设备寻址I/OI/O指令设备码段指出设备号,通过接口电路指令设备码段指出设备号,通过接口电路中的中的设备选择电路设备选择电路SELSEL选中需要的外设。选中需要的外设。3. 3. 信息传送方式信息传送方式串行:速度慢,需要串行:速度慢,需要1 1数据线数据线1 1地址线,适合远距离地址线,适合远距离4. 4. 连接方式连接
5、方式5. 5. 联络方式联络方式并行并行串行串行“Ready”“Strobe”I/O 接接 口口I/O 设设 备备CPU并行并行数据字数据字命令字命令字命令字命令字0 1 1 0 1 0 0 09.09ms2 9.09ms起始位起始位终止位终止位9.09ms2 9.09ms一、程序查询方式一、程序查询方式工作原理:工作原理:CPUCPU查询外设已查询外设已准备好后,才传送数据。准备好后,才传送数据。特点:特点:CPUCPU与外设间通过程与外设间通过程序同步,序同步,CPUCPU被外设独占,被外设独占,CPUCPU效率低下。效率低下。要求:要求:不需要增加额外的硬不需要增加额外的硬件电路。件电路
6、。应用:应用: 适用于适用于CPUCPU不太忙且不太忙且传送速度要求不高时。传送速度要求不高时。四、四、I/OI/O设备与主机信息传送的控制方式设备与主机信息传送的控制方式返回二、程序中断方式二、程序中断方式工作原理:工作原理:在外设准备数据时,在外设准备数据时, CPUCPU执行与传送数据无关的工作,外设执行与传送数据无关的工作,外设在准备好数据后,主动向在准备好数据后,主动向CPUCPU发送发送一个中断请求,当一个中断请求,当CPUCPU执行完当前执行完当前指令后,停止当前程序的执行,自指令后,停止当前程序的执行,自动转向中断服务程序,在中断服务动转向中断服务程序,在中断服务程序中,完成一
7、个数据的传送,之程序中,完成一个数据的传送,之后中断返回至原来的断点处,继续后中断返回至原来的断点处,继续执行。执行。特点:特点:在外设准备数据时,在外设准备数据时,CPUCPU与外与外设并行工作,设并行工作,CPUCPU效率有所提高,效率有所提高,并且并且CPUCPU可以同时被多个外设占用。可以同时被多个外设占用。要求:要求:接口中需要中断控制逻辑支持。接口中需要中断控制逻辑支持。应用:应用:适用于中低速设备。适用于中低速设备。取指令取指令执行指令执行指令中断?中断?响应中断响应中断中断服务中断服务中断返回中断返回启动启动否否是是返回三、直接存储器访问(三、直接存储器访问(DMADMA)方式
8、)方式工作原理:工作原理:将将I/OI/O过程中,与内存交过程中,与内存交换数据的操作交由换数据的操作交由DMADMA控制器来控控制器来控制,简化了制,简化了CPUCPU对输入输出的控制,对输入输出的控制,进一步提高了进一步提高了CPUCPU的效率。的效率。特点:特点:数据的传送不经过数据的传送不经过CPUCPU(由(由DMACDMAC控制),而控制),而I/OI/O设备管理由设备管理由CPUCPU控制,简化了控制,简化了CPUCPU对对I/OI/O的控制。的控制。硬件开销大,结构复杂,但硬件开销大,结构复杂,但CPUCPU的的效率高。效率高。要求:要求:需要需要DMADMA控制器及相关逻辑支
9、控制器及相关逻辑支持。持。应用:应用:适用与高速度大量数据传送适用与高速度大量数据传送时。时。DMADMA请求请求DMADMA响应响应发送内存地址发送内存地址传送一个数据字传送一个数据字DMADMA结束结束修改地址指针修改地址指针修改字计数器修改字计数器检测传送检测传送是否结束是否结束否否是是返回存取周期结束存取周期结束CPU 执行现行程序执行现行程序CPU 执行现行程序执行现行程序DMA请求请求启动启动I/OI/O准备准备I/O准备准备一个存取周期一个存取周期实现实现I/O与主存与主存之间的传送之间的传送CPU 执行执行现行程序现行程序CPU查询等待并传输查询等待并传输I/O数据数据CPU
10、执行执行现行程序现行程序启动启动I/OI/O 准备及传送准备及传送指令执行周期结束指令执行周期结束CPU 执行现行程序执行现行程序CPU 执行现行程序执行现行程序启动启动I/O中断请求中断请求I/O准备准备I/O准备准备CPU 处理中断服务程序处理中断服务程序实现实现 I/O 与主机之间的传送与主机之间的传送间间断断启动启动I/O启动启动I/OI/O准备准备中断请求中断请求启动启动I/OI/O准备准备一个存取周期一个存取周期DMA请求请求I/O 准备及传送准备及传送5.2 I/O5.2 I/O设备设备输入设备:输入设备:输入的数据计算机可以识别。输入的数据计算机可以识别。输出设备:输出设备:输
11、出计算机中存储的数据。输出计算机中存储的数据。输入输出设备种类繁多,很难用一种结构形式加输入输出设备种类繁多,很难用一种结构形式加以描述,一般结构为以描述,一般结构为接口接口输入设备输入设备输出设备输出设备接口接口例如:例如:声卡、显示卡声卡、显示卡例如:例如:显示器、打印机显示器、打印机 显示器灯丝灯丝阴极阴极聚焦极聚焦极石墨层石墨层荧光屏荧光屏显示屏显示屏阳极帽阳极帽偏转线圈偏转线圈栅极栅极阳极阳极电子枪电子枪电子束电子束阴极射线管(阴极射线管(CRT)构成工作原理)构成工作原理 VRAMVRAM的地址由水平地址计数器的地址由水平地址计数器( (列地址列地址) )和垂直地址计数器和垂直地址
12、计数器( (行地址行地址) )决定决定VRAMVRAM输出输出ASCIIASCII代码作为代码作为ROMROM的高位地址,的高位地址,ROMROM的低位地址来自光栅地址计数器的低位地址来自光栅地址计数器ROMROM输出在输出在L L控制下并行装入移位寄存器,再在控制下并行装入移位寄存器,再在S S控制下移位输出形成视频信号控制下移位输出形成视频信号视频信号输出到显示器视频信号输出到显示器显示器在水平同步、垂直同步和视频信号控制下,连续刷新呈现稳定字符图像显示器在水平同步、垂直同步和视频信号控制下,连续刷新呈现稳定字符图像 图像输入板图像输入板信号转换。它接收摄像机模拟视频信号,信号转换。它接收
13、摄像机模拟视频信号,经经A/DA/D变为数字量存入刷存用于显示,并可传送到主机进变为数字量存入刷存用于显示,并可传送到主机进行图像处理。处理结果送回刷存,经行图像处理。处理结果送回刷存,经D/AD/A变成模拟信号,变成模拟信号,监视器(或电视机)显示输出。采用光栅扫描方式,有监视器(或电视机)显示输出。采用光栅扫描方式,有显像、灰度变换、窗口技术、真彩色、伪彩色等功能显像、灰度变换、窗口技术、真彩色、伪彩色等功能针式打印机构造针式打印机构造打印打印纸纸导轨导轨打印针打印针永磁铁永磁铁 铁芯铁芯衔铁衔铁 线圈线圈色带色带色带保护片色带保护片滚筒滚筒墨水槽墨水槽喷墨头喷墨头过滤器过滤器收集槽收集槽
14、高压高压电源电源振荡振荡发生器发生器字符字符发生器发生器打打印印纸纸充电电极充电电极压电陶瓷压电陶瓷偏转电极偏转电极墨水泵墨水泵回收器回收器组成与打印原理组成与打印原理字符打印过程字符打印过程( 以以 7*5 点阵为例点阵为例 )激光部分激光部分印字机印字机控制部分控制部分(微处理机汉字字形库微处理机汉字字形库)记录鼓记录鼓(硒鼓硒鼓)显象显象部分部分+.定形部分定形部分 输纸用辊输纸用辊转写转写清扫辊清扫辊带电器带电器印写部分印写部分清扫部分清扫部分转写部分转写部分接纸接纸 部分部分纸纸激光激光一一. .接口的基本概念接口的基本概念I/OI/O设备适配器简称为接口。设备适配器简称为接口。接口
15、指接口指CPUCPU和外围设备之和外围设备之间通过总线进行连接的逻辑部件。间通过总线进行连接的逻辑部件。 接口部件在它动态连接的两个部件之间起着接口部件在它动态连接的两个部件之间起着“转转换器换器”的作用,以便实现彼此之间的信息传送。的作用,以便实现彼此之间的信息传送。 5.3 输入输出接口微机系统各类接口框图微机系统各类接口框图 为什么要设置接口?为什么要设置接口?1. 1. 实现设备的选择实现设备的选择2. 2. 实现数据缓冲达到速度匹配实现数据缓冲达到速度匹配4. 4. 实现电平转换实现电平转换5. 5. 传送控制命令传送控制命令6. 6. 反映设备的状态(反映设备的状态(“忙忙”、“就
16、绪就绪”、“中断请求中断请求”)3. 3. 实现数据串实现数据串 并格式转换并格式转换I/O 接口接口设备设备BI/O 接口接口设备设备A数据线数据线命令线命令线状态线状态线I/O总线(地址、数据、控制)总线(地址、数据、控制)设备选择线设备选择线总线连接方式的总线连接方式的 I/O 接口电路接口电路1. 1. 实现设备选址的功能实现设备选址的功能(SELECTSELECT电路电路) )3. 3. 实现数据传送功能实现数据传送功能(缓冲寄存器(缓冲寄存器DBR)DBR)2. 2. 传送控制命令的功能传送控制命令的功能(命令寄存器、命令译码器)(命令寄存器、命令译码器)5. 5. 反映设备的状态
17、功能反映设备的状态功能(系列触发器)(系列触发器)4. 4. 实现数据转换功能实现数据转换功能(串(串 并格式转换、电平转换电路)并格式转换、电平转换电路)D D 完成触发器完成触发器B B 工作触发器工作触发器MASK MASK 屏蔽触发器屏蔽触发器INTRINTR中断请求触发器中断请求触发器ERRORERROR出错触发器出错触发器 命令寄存器命令寄存器和命令译码器和命令译码器 设备选择设备选择 电路电路 设备状态设备状态 标记标记 数据缓冲数据缓冲 寄存器寄存器DBR 控制逻辑电路控制逻辑电路I/O接口接口外外 部部 设设 备备数据线数据线命令命令状态状态数据线数据线命令线命令线状态线状态
18、线CPU地址线地址线三、三、I/OI/O接口的组成接口的组成端口:端口:接口电路中可以被接口电路中可以被CPUCPU直接访问的寄存器,如直接访问的寄存器,如数据端口、命令端口、状态端口数据端口、命令端口、状态端口接口:接口:若干端口加上相应的控制逻辑电路组成若干端口加上相应的控制逻辑电路组成并行接口并行接口串行接口串行接口可编程接口可编程接口不可编程接口不可编程接口通用接口通用接口专用接口专用接口1. 1. 按接口与外设数据按接口与外设数据 传送方式传送方式 分类分类2. 2. 按按功能功能 选择选择的灵活性的灵活性 分类分类3. 3. 按按 通用性通用性 分类分类4. 4. 按数据传送的按数
19、据传送的 控制方式控制方式 分类分类DMADMA接口接口IOIO通道通道Intel 8255Intel 8251Intel 8255、 Intel 8251Intel 8212Intel 8255、 Intel 8251Intel 8279、 Intel 8275查询接口查询接口中断接口中断接口程序查询方式、程序中断方式:程序查询方式、程序中断方式:适用于适用于慢速慢速外设与外设与CPU交换数据,交换数据,DMA方式、通道方式方式、通道方式 和和PPU方式:方式:适用于适用于高速高速外设与外设与CPU交换数据。交换数据。目前,目前,微型机微型机中多采用:中多采用:程序中断方式程序中断方式和和D
20、MA方式方式。大中型计算机大中型计算机中多采用:中多采用:通道方式通道方式和和PPU方式方式。 程序中程序中断方式断方式I/OI/O设备与设备与CPUCPU数据交换方式数据交换方式输入输入/输出设备与输出设备与CPU交换数据的控制方式:交换数据的控制方式:方法方法1方法方法2方法方法3方法方法41. 1. 程序查询流程程序查询流程(1 1)单个设备)单个设备(2 2)多个设)多个设备备设备选择电路设备选择电路DBRQQ&数据线数据线准备就绪准备就绪启动命令启动命令地址线地址线SEL输入数据输入数据启动设备启动设备设备工作设备工作 结束结束DB10 10以输入为例以输入为例3 3、程序查
21、询方式的接口电路、程序查询方式的接口电路输入电路输入电路CPU 执行执行主程序主程序CPU查询等待并传输查询等待并传输I/O数据数据CPU 执行执行主程序主程序启动启动I/OI/O 准备及传送准备及传送启动启动I/OI/O 准备及传送准备及传送该方式简单,但是存在以下缺点:该方式简单,但是存在以下缺点:(1)是是CPU主动去查询,而不是外设有数据传送时,主动去查询,而不是外设有数据传送时,CPU才去查询。才去查询。(2)查询过程中,查询过程中,CPU长期处于等待状态不能处理其他业务,效率低。长期处于等待状态不能处理其他业务,效率低。(3)CPU在一段时间内只能和一台外部设备交换数据。在一段时间
22、内只能和一台外部设备交换数据。(4)CPU不能发现和处理预先无法估计的错误和异常情况。不能发现和处理预先无法估计的错误和异常情况。 因此,目前,除单片机外,因此,目前,除单片机外,很少使用程序查询方式。很少使用程序查询方式。CPU与外设串行工作与外设串行工作CPU工作工作外设工作外设工作(CPU查询等待,数据传输的时间很短)查询等待,数据传输的时间很短)CPU工作工作程序查询方式:程序查询方式:CPUCPU和外设之间的传送数据,和外设之间的传送数据,完完全靠程序软件来控制全靠程序软件来控制。例例5.1、在采用程序查询方式的输入输出系统中,假设不考虑处理在采用程序查询方式的输入输出系统中,假设不
23、考虑处理时间,每一个查询操作需要时间,每一个查询操作需要100个时钟周期,个时钟周期,CPU的时钟频率为的时钟频率为50MHz。现有。现有鼠标和硬盘鼠标和硬盘两个设备,而且两个设备,而且CPU必须每秒钟对鼠标进必须每秒钟对鼠标进行行30次查询,硬盘以次查询,硬盘以32位字长为单位传输数据,即每传输位字长为单位传输数据,即每传输32位被位被CPU查询一次,传输率为查询一次,传输率为2MB/s。 求求CPU对这两个设备所花费的时间比率,由此可得出什么结论。对这两个设备所花费的时间比率,由此可得出什么结论。解:解:1)CPU每秒对鼠标进行每秒对鼠标进行30次查询,每秒钟次查询,每秒钟CPU查询所需的
24、时钟周期为查询所需的时钟周期为 100 * 30 = 3000CPU的时钟频率为的时钟频率为50MHz,一个时钟周期为,一个时钟周期为1/50M 秒,秒, 即每秒钟即每秒钟50*106个时钟周期。个时钟周期。 CPU对鼠标查询占用对鼠标查询占用CPU时间比率为:时间比率为:3000 / 50*106 = 0.006 % 2)对硬盘每传输)对硬盘每传输32位被位被CPU查询一次,每秒钟查询次数为查询一次,每秒钟查询次数为 2MB / 4B = 512 K 每秒钟每秒钟CPU查询所需的时钟周期为查询所需的时钟周期为 100 * 512K = 52.4 * 106 CPU对键盘查询占用对键盘查询占用
25、CPU时间比率为:时间比率为:52.4*106 / 50*106 = 104.8 % 可见,即使可见,即使CPU将全部时间都用于对硬盘的查询也不能满足磁盘传输的要求,将全部时间都用于对硬盘的查询也不能满足磁盘传输的要求,因此因此CPU一般不采用程序查询方式与磁盘交换数据。一般不采用程序查询方式与磁盘交换数据。中断服务程序中断服务程序中断服务程序中断服务程序入口入口1入口入口212一、中断的概念一、中断的概念KK+1QQ+1中断服务程序中断服务程序1中断服务程序中断服务程序2中断示意图中中断断断点断点IRET中断服务子程序中断服务子程序主程序主程序以打印机为例:以打印机为例: CPU 与打印机并
26、行工作与打印机并行工作发中断请求发中断请求 空闲空闲接收接收数据数据接收接收数据数据准备准备发中断请求发中断请求打印打印打印打印打印机打印机执行主程序执行主程序继续执行主程序继续执行主程序继续执行主程序继续执行主程序响应中断响应中断中断返回中断返回响应中断响应中断中断返回中断返回 启动启动打印机打印机传送传送数据数据传送传送数据数据CPU程序中断处理示意图主程序主程序A请求中断请求中断B请求中断请求中断C请求中断请求中断A中断服务子程序中断服务子程序B中断服务子程序中断服务子程序C中断服务子程序中断服务子程序二、程序中断方式的接口电路二、程序中断方式的接口电路DQ&1INTR INTR
27、 中断请求触发器中断请求触发器INTR = 1 INTR = 1 有请求有请求MASK MASK 中断屏蔽触发器中断屏蔽触发器MASK = 1 MASK = 1 被屏蔽被屏蔽INTR D MASKQD D 完成触发器完成触发器D = 1 D = 1 设备准备好设备准备好1) 1(01INTRQMASKD2. 2. 排队器排队器排队排队在在 CPU CPU 内或在接口电路中(链式排队器内或在接口电路中(链式排队器)硬件硬件软件软件INTP1 INTP2 INTP3 INTP4 INTR1INTR2INTR3INTR4 1& 1& 1& 1& INTR1设备设备 1
28、#、2#、3#、4# 优先级按优先级按 降序排列降序排列INTRi = 1 有请求有请求 即即 INTRi = 01INTP11INTP21INTP31INTP4&INTR1INTR2INTR3INTR4INTR1INTR2INTR3INTR4 1& 1& 1& 1& INTP1 INTP2 INTP3 INTP4 INTR2INTR1INTR1INTR21&INTP2如果如果2 2# #、3 3# #同时有请求:同时有请求: 经过上排电路竞争后,仅经过上排电路竞争后,仅2 2# #胜出,胜出,INTP2=1,INTP2=1,向向CPUCPU请求
29、请求2 2# #中断中断软件查询接口示意软件查询接口示意CPU响应中断响应中断后,转入执行后,转入执行一特定地址的一特定地址的中断服务程序,中断服务程序,该中断服务程该中断服务程序查询状态口,序查询状态口,确定发出中断确定发出中断请求的外设,请求的外设,然后进行相应然后进行相应的处理。的处理。软件查询流程图软件查询流程图保护现场保护现场恢复现场恢复现场A申请服务?申请服务?B申请服务?申请服务?C申请服务?申请服务?外设外设A中断服务程序中断服务程序NNN外设外设B中断服务程序中断服务程序外设外设C中断服务程序中断服务程序YYYCPUCPU响应中断请求转入中断服务程序,从该程序入口地址开始执行
30、响应中断请求转入中断服务程序,从该程序入口地址开始执行向量地址向量地址排队器输出排队器输出由软件产生由软件产生硬件向量硬件向量法法 显示器服务程序显示器服务程序 打印机服务程序打印机服务程序JMP 400JMP 300JMP 200主存主存12H13H14H200300向量地址向量地址入口地址入口地址入口地址入口地址1 0 0 0000100100 1 0 000010011设备选择电路设备选择电路DBR DQ&数据线数据线启动命令启动命令地址线地址线SEL输入数据输入数据启动设备启动设备设备工作设备工作 结束结束&1QQDINTR BQQ MASK设备编码器设备编码器排队器排
31、队器中断查询中断查询来自高一级来自高一级 的排队器的排队器至低一级至低一级的排队器的排队器向量地址向量地址中断响应中断响应 INTA中断请求中断请求命令译码命令译码10&DBR设备选择电路设备选择电路01以输入为例以输入为例4. 4. 程序中断方式接口电路的基本组成程序中断方式接口电路的基本组成解:设解:设3 3个设备的中断请求信号分别是个设备的中断请求信号分别是INTiINTi(i=Ai=A,B B,C C),),有请求时有请求时INTi=1INTi=1;排队电路的输出为排队电路的输出为INTPi INTPi (i=Ai=A,B B,C C),),INTAINTA为中断响应信号;当为
32、中断响应信号;当INTAINTA有效有效时设备编码器将被被选中的排队信号时设备编码器将被被选中的排队信号INTPiINTPi进行编码进行编码形成向量地址由数据总线送给形成向量地址由数据总线送给CPUCPU。电路如下:。电路如下:来自高一级来自高一级的排队器的排队器至低一级至低一级的排队器的排队器设设备备编编码码器器数数据据总总线线001010001011001100四、四、I/O I/O 中断处理过程中断处理过程1. CPU 1. CPU 响应中断的条件和时间响应中断的条件和时间(1) (1) 条件条件(2) (2) 时间时间允许中断触发器允许中断触发器 EINT = 1EINT = 1用用
33、开中断开中断 指令将指令将 EINT EINT 置置 “1”1”用用关中断关中断 指令将指令将 EINT EINT 置置“ “ 0”0” 或硬件或硬件自动复自动复位位当当 D = D = 1 1(随机)且(随机)且 MASK = MASK = 0 0 时时在每条指令执行阶段的结束前在每条指令执行阶段的结束前CPUCPU 发发 中断查询信号中断查询信号(将(将 INTR INTR 置置“1”1”)中断过程五个步骤:五个步骤:中断中断请求请求中断中断判优判优/ /排队排队 ( (有时还要进行有时还要进行中断源识中断源识别别) )中断中断响应响应中断中断服务服务/ /处理处理中断中断返回返回请求请求
34、排队排队响应响应服务服务/ 处理处理返回返回IRET 硬硬/ 软软 INT n 主程序主程序中断服务程序中断服务程序五、中断服务程序流程五、中断服务程序流程1. 1. 中断服务程序的流程中断服务程序的流程(1) (1) 保护现场保护现场(2) (2) 中断服务中断服务(3) (3) 恢复现场恢复现场(4) (4) 中断返回中断返回对不同的对不同的 I/O I/O 设备具有不同内容的设备服务设备具有不同内容的设备服务中断返回指令中断返回指令2. 2. 单重中断和多重中断单重中断和多重中断不允许中断不允许中断 现行的现行的 中断服务程序中断服务程序单重单重 中断中断多重多重 中断中断 允许级别更高
35、允许级别更高 的中断源的中断源中断中断 现行的现行的 中断服务程序中断服务程序中断隐指令完成中断隐指令完成进栈指令进栈指令出栈指令出栈指令程序断点的保护程序断点的保护寄存器内容的保护寄存器内容的保护3. 3. 单重中断和多重中断的服务程序流程单重中断和多重中断的服务程序流程中断否?中断否?保护现场保护现场设备服务设备服务恢复现场恢复现场 开中断开中断中断返回中断返回取指令取指令执行指令执行指令中断服务程序中断服务程序 中断响应中断响应 程序断点进栈程序断点进栈 关中断关中断 向量地址向量地址 PC中断周期中断周期是是中断返回中断返回保护现场保护现场设备服务设备服务恢复现场恢复现场开中断开中断开
36、中断开中断开中断开中断中断隐指令中断隐指令中断隐指令中断隐指令否否取指令取指令执行指令执行指令中断否?中断否?否否 中断响应中断响应 程序断点进栈程序断点进栈 关中断关中断向量地址向量地址 PC中断周期中断周期是是中断服务程序中断服务程序单重单重 多重多重 程序中断接口芯片程序中断接口芯片 8259A 8259A 的内部结构的内部结构 内部总线内部总线 缓冲器缓冲器读读 / 写写逻逻 辑辑级联缓冲级联缓冲器器/比较器比较器优先权优先权判别器判别器 ( PR ) 中断中断 服务服务 寄存寄存 器器(ISR) 中断中断 请求请求 寄存寄存 器器(IRR)中断屏蔽寄存器中断屏蔽寄存器 (IMR)控制
37、逻辑控制逻辑INTINTAD7D0A0RDWRCSCAS0CAS1CAS2SP/ENIR0IR1IR2IR3IR4IR5IR6IR7内部总线内部总线主程序和服务程序抢占主程序和服务程序抢占 CPU CPU 示意图示意图准备工作准备工作准备工作准备工作准备工作准备工作传送数据传送数据传送数据传送数据发中断请求发中断请求发中断请求发中断请求I/O宏观宏观 上上 CPU CPU 和和 I/O I/O 并行并行 工作工作微观微观 上上 CPU CPU 中断现行程序中断现行程序 为为 I/O I/O 服务服务主程序主程序继续执行主程序继续执行主程序启动外设启动外设 服务程序服务程序(传送数据)(传送数据
38、) 服务程序服务程序(传送数据)(传送数据)继续执行主程序继续执行主程序CPU5.6 DMA 5.6 DMA 方式方式一、一、DMA DMA 方式的特点方式的特点1. DMA 1. DMA 和程序中断两种方式的数据通路和程序中断两种方式的数据通路CPU主主存存ACC 中断接口中断接口DMA 接口接口I/O 设设 备备中断方式数据传送通路中断方式数据传送通路输入指令输入指令输出指令输出指令DMA方式数据传送通路方式数据传送通路DMA 传送过程示意图传送过程示意图总线总线响应响应总线总线请求请求CPUDMAC内内 存存外外 设设DMA请求请求DREQDMA响应响应DACK总线总线停止停止CPUCP
39、U访问主存(独占总线方式)访问主存(独占总线方式)内存工作时间内存工作时间CPUCPU控制并控制并使用内存使用内存DMADMA控制并控制并使用内存使用内存CPUCPU不执行不执行程序程序DMADMA不工作不工作DMADMA不工作不工作当当DMADMA传送数据时,传送数据时,CPUCPU停止工作,把主存使用权交给停止工作,把主存使用权交给DMADMA控制逻辑。控制逻辑。在在DMADMA传送数据过程中,传送数据过程中,CPUCPU处于等待状态处于等待状态在这批数据传送结束后,在这批数据传送结束后,DMADMA再交还主存使用权再交还主存使用权 周期挪用周期挪用内存工作时间内存工作时间CPUCPU控制
40、并控制并使用内存使用内存DMADMA控制并控制并使用内存使用内存DMADMA要求访问主存时,要求访问主存时,CPUCPU暂停暂停一个或多个存储周期一个或多个存储周期。一个。一个数据传送结束后,数据传送结束后,CPUCPU继续运行。继续运行。CPUCPU现场并没有变动,只是延缓了对指令的执行,这种技现场并没有变动,只是延缓了对指令的执行,这种技术称为术称为周期挪用周期挪用,或称周期窃取。,或称周期窃取。如发生访存冲突,则如发生访存冲突,则DMADMA优先访问。优先访问。 DMA DMA与与CPUCPU交替访内交替访内内存工作时间内存工作时间CPUCPU控制并控制并使用内存使用内存DMADMA控制
41、并控制并使用内存使用内存C C1 1C C2 2C C2 2C C1 1C C2 2C C1 1C C2 2C C1 1C C2 2C C1 1每个每个CPUCPU工作周期分成两个时间段,一段用于工作周期分成两个时间段,一段用于 DMADMA访问主存,访问主存,一段用于一段用于CPUCPU访问主存。访问主存。CPUCPU和和DMADMA都能访问主存,没有主存使用权移交过程,所以都能访问主存,没有主存使用权移交过程,所以这种方式的效率较高,但是硬件投资较大,而且要求这种方式的效率较高,但是硬件投资较大,而且要求 CPUCPU工作周期比存储周期长很多。工作周期比存储周期长很多。二、二、DMA DM
42、A 接口的功能和组成接口的功能和组成1. DMA 1. DMA 接口功能接口功能(1) (1) 向向 CPU CPU 申请申请 DMA DMA 传送传送(2) (2) 处理总线处理总线 控制权的转交控制权的转交(3) (3) 管理管理系统总线、系统总线、控制控制 数据传送数据传送(4) (4) 确定确定数据传送的数据传送的首地址和长度首地址和长度(5) DMA (5) DMA 传送结束时,传送结束时,给出操作完成信号给出操作完成信号修正修正传送过程中的数据传送过程中的数据地址地址和和长度长度地址总线地址总线HRQ DREQDMACHLDA DACK总线总线请求请求总线总线响应响应 HOLD H
43、LDACPUDMA请求请求DMA响应响应I / O设备设备控制总线控制总线数据总线数据总线DMA接口接口主主存存CPU2. DMA 2. DMA 接口组成接口组成DMA 控控 制制 逻逻 辑辑 中中 断断 机机 构构设备设备HLDAARWCDARHRQ中断请求中断请求数据线数据线地址线地址线+1+1溢出信号溢出信号DREQDACKBR 主存地址寄存器主存地址寄存器ARAR。它用来存放所需读写的数。它用来存放所需读写的数据的起始地址据的起始地址D D。字计数器字计数器WCWC。用来对要传送的字节数目计数。用来对要传送的字节数目计数。中断机构中断机构。当一个数据块传送完毕后触发中断。当一个数据块传
44、送完毕后触发中断机构机构, , 向向CPUCPU提出中断请求提出中断请求, CPU, CPU将进行将进行DMADMA传送传送的结尾处理。的结尾处理。 数据缓冲寄存器数据缓冲寄存器BRBR。用来暂存每次传送的数据。用来暂存每次传送的数据。 DMA DMA控制逻辑控制逻辑。负责管理。负责管理DMADMA的传送过程,由控的传送过程,由控制电路、时序电路及命令状态寄存器等组成。制电路、时序电路及命令状态寄存器等组成。设备地址寄存器设备地址寄存器DARDAR。存放存放I/OI/O设备的设备码或设备的设备码或表示设备信息存储区的寻址信息。表示设备信息存储区的寻址信息。传送前预处理传送前预处理(CPUCPU
45、)正式传送正式传送(DMADMA控制器)控制器)传送后处理传送后处理(CPUCPU) DMA DMA数据传送是以数据块为单位进数据传送是以数据块为单位进行的,因此,每次行的,因此,每次DMADMA控制器占用总线控制器占用总线后,无论是输入还是输出操作,都是后,无论是输入还是输出操作,都是通过循环来实现的。通过循环来实现的。DMADMA请求请求DMADMA响应响应发送内存地址发送内存地址传送一个数据字传送一个数据字中断请求中断请求修改主存地址修改主存地址数据个数计数数据个数计数传送结束传送结束? ?否否是是软软件件软软件件三、三、DMA DMA 的工作过程的工作过程1. DMA 1. DMA 传
46、送过程传送过程预处理、数据传送、后处理预处理、数据传送、后处理(1) (1) 预处理预处理通过几条输入输出指令预置如下信息通过几条输入输出指令预置如下信息 通知通知 DMA DMA 控制逻辑传送方向(入控制逻辑传送方向(入/ /出)出) 设备地址设备地址 DMA DMA 的的 DARDAR 主存地址主存地址 DMA DMA 的的 ARAR 传送字数传送字数 DMA DMA 的的 WCWC预处理:预处理:主存起始地址主存起始地址设备地址设备地址 传送数据个数传送数据个数启动设备启动设备DMADMADMA数据传送:数据传送:继续执行主程序继续执行主程序同时完成一批数据传送同时完成一批数据传送后处理
47、:后处理:中断服务程序中断服务程序做做 DMA 结束处理结束处理继续执行主程序继续执行主程序CPU(2) DMA (2) DMA 传送过程示意传送过程示意允许传送?允许传送?主存地址送总线主存地址送总线数据送数据送I/O设备(或主存设备(或主存 )修改修改 主存地址主存地址修改修改 字计数器字计数器 数据块数据块传送结束?传送结束?向向CPU申请申请 程序中断程序中断DMA请求请求否否否否是是是是数据传送数据传送2 2、数据传送、数据传送n设备准备好一个数据的传送后,接口向主机发出设备准备好一个数据的传送后,接口向主机发出DMADMA请求。请求。oCPUCPU中中DMADMA控制逻辑响应控制逻
48、辑响应DMADMA请求,将主存使用权让给请求,将主存使用权让给DMADMA。DMADMA送来主存单元地址、读或写命令。若是写命令,送来主存单元地址、读或写命令。若是写命令,DMADMA还还送来数据。送来数据。oDMADMA挪用一个周期对主存进行读写操作。周期挪用结束后挪用一个周期对主存进行读写操作。周期挪用结束后给给DMADMA接口应答信号。接口应答信号。oDMADMA接口接到应答信号,撤除接口接到应答信号,撤除DMADMA请求,将主存数据缓冲区请求,将主存数据缓冲区地址指示器加地址指示器加 1 1,指向下一个数据要传送的单元地址,字,指向下一个数据要传送的单元地址,字数计数器减数计数器减1
49、1。DMADMA接口控制逻辑判断数据是否全部传送完。若传送完毕,接口控制逻辑判断数据是否全部传送完。若传送完毕,则进入结束阶段;若没传完则又开始下一个循环操作。则进入结束阶段;若没传完则又开始下一个循环操作。数据传送过程(输入)数据传送过程(输入)BR设备设备DMA 控控 制制 逻逻 辑辑 中中 断断 逻逻 辑辑ARWCDARDMA接口接口主主存存CPU+1+1DREQHRQHLDA地址线地址线DACK数据线数据线溢出信号溢出信号中断请求中断请求ARWC+1+1BRBRBRBRBRBRBR设备设备DMA 控控 制制 逻逻 辑辑 中中 断断 逻逻 辑辑ARWCDARDMA接口接口主主存存CPU+
50、1+1DREQHRQHLDA地址线地址线DACK数据线数据线溢出信号溢出信号中断请求中断请求ARWC+1+1数据传送过程(输出)数据传送过程(输出)BRBRBRBR3 3、后处理(结束阶段)、后处理(结束阶段)DMADMA在两种情况下都进入结束阶段。在两种情况下都进入结束阶段。正常结束,一批数据传送完毕;正常结束,一批数据传送完毕;非正常结束,非正常结束,DMADMA发生了故障,也要进入结束阶段发生了故障,也要进入结束阶段不论是哪一种情况进入结束阶段,不论是哪一种情况进入结束阶段,DMADMA都向主机发都向主机发出中断请求,出中断请求,CPUCPU执行服务程序,查询执行服务程序,查询DMADM
51、A接口接口状态,根据状态进行不同处理。状态,根据状态进行不同处理。n例例5.35.3一个一个DMADMA接口可采用周期窃取方式接口可采用周期窃取方式把字符传送到存储器,它支持的最大批把字符传送到存储器,它支持的最大批量为量为400400个字节。若存取周期为个字节。若存取周期为100ns100ns,每处理一次中断需每处理一次中断需5s5s,现有的字符设备,现有的字符设备的传输率为的传输率为9600bps9600bps。假设字符间的传输。假设字符间的传输是无间隙的,若忽略预处理所需时间,是无间隙的,若忽略预处理所需时间,试问试问DMADMA方式每秒因数据传输需占用处理方式每秒因数据传输需占用处理器
52、多少时间?如果完全采用中断方式,器多少时间?如果完全采用中断方式,又需占用处理器多少时间?又需占用处理器多少时间? 解:根据字符设备的传输率为解:根据字符设备的传输率为9600bps9600bps,得每秒能传,得每秒能传输输 9600/8 = 1200B9600/8 = 1200B 即即1200 1200 个字符个字符 若采用若采用DMA DMA 方式,传送方式,传送1200 1200 个字个字符共需符共需1200 1200 个存取周期,考虑到每传个存取周期,考虑到每传400 400 个字符个字符需中断处理一次,因此需中断处理一次,因此DMA DMA 方式每秒因数据传输占方式每秒因数据传输占用处理器的时间是用处理器的时间是 0.1s 0.1s 1200 + 5s 1200 + 5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新高考英语|定语从句及其在高考中应用文和续写的应用专题复习课件-2025届高中英语一轮复习专题
- 《STMPWM输出实验》课件
- 《时间管理培训讲义》课件
- 呼伦贝尔学院《曲式与作品分析基础(一)》2021-2022学年第一学期期末试卷
- 员工劳动保障管理制度(7篇)
- 外科护理学第二十四章
- 幼儿园儿童营养健康教育
- 酒店员工安全教育培训计划方案
- 2024新版家具销售合同参考范文
- 现金流量表练习题
- 混合机大数据分析与预测性维护
- 东营港加油、LNG加气站工程环评报告表
- 数字化影视制作流程策划书
- 《物联网单片机应用与开发》课程标准(含课程思政)
- 电源适配器方案
- 人民银行征信报告样板
- 全国民用建筑工程设计技术措施节能专篇-暖通空调动力
- 中国急诊重症肺炎临床实践专家共识课件
- 辽宁省2023年高中学业水平合格性考试语文试卷真题(答案详解)
- 投资管理的项目投资和项目管理
- 2024年度医院心血管内科护士长述职报告课件
评论
0/150
提交评论