一般而言,CPU管理外围设备的输入输出控制方式有5种:程序查询方式、程序中断方式、DMA方式、通道方式、外围处理机方式,前两种方式由软件实现,后三种方式由硬件实现。
1. 程序查询方式
程序查询方式是早期计算机中使用的一种方式,CPU与外围设备的数据交换完全依赖于计算机的程序控制。
在进行信息交换之前,CPU要设置传输参数、传输长度等,然后启动外设工作,与此同时,外设则进行数据传输的准备工作;相对于CPU来说,外设的速度是比较低的,因此外设准备数据的时间往往是一个漫长的过程,而在这段时间里,CPU除了循环检测外设是否已准备好之外,不能处理其他业务,只能一直等待;直到外设完成数据准备工作,CPU才能开始进行信息交换。
这种方式的优点是CPU的操作和外围设备的操作能够完全同步,硬件结构也比较简单。但是,外围设备的动作通常很慢,程序进行循环查询白白浪费了宝贵的CPU时间,数据传输效率低下。在当前的实际应用中,除了单片机之外,已经很少使用程序查询方式了。
2. 程序中断方式
中断是外围设备用来“主动”通知CPU,准备发送或接收数据的一种方式。
通常,当一个中断发生时,CPU暂停其现行程序,转而执行中断处理程序,完成数据I/O工作;当中断处理完毕后,CPU又返回到原来的任务,并从暂停处继续执行程序。
这种方式节省了CPU时间,是管理I/O操作的一个比较有效的方法。中断方式一般适用于随机出现的服务,并且一旦提出要求,应立即执行。与程序查询方式相比,程序中断方式的硬件结构相对复杂一些,服务成本较大。
3. DMA方式
DMA方式就是直接存储器存取(Direct Memory Access)方式,是一种完全由硬件执行I/O交换的工作方式。
在该方式中,DMA控制器从CPU完全接管对总线的控制权,数据交换不经过CPU而直接在主存和外围设备之间进行,以便高速传送数据。
这种方式的主要优点是数据传送速度很高,传送速率仅受限于主存的访问时间。与程序中断方式相比,这种方式需要更多的硬件,适用于主存和高速外围设备之间大批量数据交换的场合。
4. 通道方式
DMA方式的出现减轻了CPU对I/O操作的控制,使得CPU的效率显著提高,而通道的出现则进一步提高了CPU的效率。
通道是一个具有特殊功能的处理器,又称为输入输出处理器(IOP),它分担了CPU的一部分功能,可以实现对外围设备的统一管理,完成外围设备与主存之间的数据传送。
通道方式大大提高了CPU的工作效率,然而这种效率的提高是以增加更多的硬件为代价的。
5. 外围处理机方式
外围处理机(Peripheral Processor Unit,PPU)方式是通道方式的进一步发展。
PPU基本上独立于主机工作,它的结构更接近于一般的处理机,甚至就是微小型计算机。在一些系统中,设置了多台PPU,分别承担I/O控制、通信、维护诊断等任务,从某种意义上说,这种系统已经变成了分布式多机系统。
综上所述,计算机外围设备的输入/输出方式如图7-1表示。其中,程序查询方式和程序中断方式适用于数据传输率比较低的外围设备,而DMA方式、通道方式和外围处理机方式则适用于数据传输率比较高的外围设备。
相关推荐
单片机输入输出控制系统设计是电子工程领域中的一个重要实践环节,尤其在自动化、物联网和智能设备等技术中占据核心地位。这个设计性实验通常旨在帮助学生理解和掌握单片机的基本原理,以及如何利用它们实现对硬件...
【位定义的输入输出控制】是嵌入式系统设计中的一个重要概念,主要涉及微控制器(MCU)如何通过编程来管理其内部或外部硬件资源的输入/输出端口。在这个主题中,我们将深入探讨位定义的输入输出控制的原理、应用以及...
### hFCT系统输入输出控制知识点详解 #### 一、hFCT系统概述 hFCT系统是一款专门用于自动化领域的控制系统,主要应用于工业自动化、测试测量等领域中的输入输出控制。该系统通过灵活配置不同的输入输出模式,实现对...
《HLK-DIO16:探索16路数字量输入输出控制器的奥秘》 在电子工程和自动化领域,数字量输入输出控制器是不可或缺的一部分,它们用于实现设备间的信号交互和控制逻辑。本文将深入探讨HLK-DIO16这款16路数字量输入输出...
【标题】"005、简单输入输出控制.zip" 涉及的主要是计算机系统中的输入/输出(I/O)控制技术,这是一个基础且至关重要的概念。在计算机科学中,输入输出是计算机与外部设备之间交换数据的方式。简单输入输出控制通常...
在使用8051单片机进行开发的过程中,位定义的输入输出控制是一个基础而又关键的技术点。8051Proteus仿真软件为单片机开发者提供了一个模拟真实硬件环境的平台,使得开发者可以在没有实际硬件设备的情况下进行程序的...
这个压缩包文件“【51单片机C语言+Proteus仿真实例】简单输入输出控制.zip”提供了51单片机使用C语言编程进行简单输入输出控制的实例,这对于学习和理解单片机的硬件控制与软件编程至关重要。 51单片机是Intel公司...
在电子工程和嵌入式系统领域,位定义的输入输出控制是单片机编程中一个至关重要的概念。本文将深入探讨这一主题,帮助你理解如何有效地利用单片机的资源来控制硬件接口。 首先,我们要知道单片机是一种集成了微处理...
输入输出控制.pdf
半导体输入输出控制电路是电子工程领域中的重要组成部分,特别是在数字逻辑系统、微处理器以及嵌入式系统中扮演着至关重要的角色。这些电路负责管理和调节半导体设备(如微控制器、FPGA或ASIC)与外部世界之间的数据...
利用C#与Halcon机器视觉库实现字符缺陷检测与识别,包括pin距离测量、相机SDK开发、触发与采集模式设置,结合巴斯勒相机与IO输入输出控制卡进行自动化检测。,利用C#与Halcon实现字符缺陷检测及识别:基于机器视觉的...
单片机C语言Proteus仿真实例简单输入输出控制提取方式是百度网盘分享地址
单片机C语言Proteus仿真实例位定义的输入输出控制提取方式是百度网盘分享地址
在输入输出控制方法中,采用【1】可以使得设备与主存间的数据块传送无需CPU干预。 【1】A.程序控制输入输出 B. 中断 C.DMA D. 总线控制 分析: Direct Memory Access【存储器直接访问】。这是指一种高速...
输入学生姓名和成绩,自动输出的小程序。希望大家相互讨论
计算机组成原理第七章输入输出系统主要讲解了输入输出系统的基本概念、输入输出控制方式、DMA控制方式、通道控制方式、中断机制等内容。 输入输出系统的基本概念包括输入输出设备、输入输出控制器、数据寄存器、...
用p1口的状态控制p3.0到p3.7,控制相关的发光二极管