CPU与I-O端口的数据传输方式.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CPU与I/O端口的数据传输方式 CPU与I/O端口的数据传输方式 输入/输出是微机与外部设备之间的数据传送,实际上是CPU与接口之间的数据传送。传送的方式不同,CPU对外设的控制方式也不同。CPU与I/O设备之间传输数据的控制方式一般有3种,即程序控制方式、直接存储器存取方式和专用I/O处理机方式。 1.1程序控制方式 程序控制方式的数据传送分为无条件传送、条件传送和中断传送。这类传送方式的特点是以CPU以中心,数据传送的控制来自CPU,通过预先编制好的输入或输出程序(传送指令和I/O指令)实现数据的传送。这种传送方式的数据传送速度较低,传送路径要经过CPU内部的寄存器,同时数据的输入/输出的响应也较慢。 1.无条件传送方式 无条件传送方式又称同步传送方式,这是一种最简单的传送方式,其特点是:输入时假设输入设备数据已经准备好,输出时假设输出设备是空闲的。无条件传送方式下的接口电路和程序设计都比较简单,应用场合也很少,只能用在一些简单外设的操作上。例如,主机对开关设备的操作以及CPU通过输出锁存器及驱动器控制LED显示器的数码显示等。一般情况下,使用无条件传送方式输入时需加缓冲器,输出时需加锁存器;在启动输入/输出传送时,CPU无须考虑I/O设备状态,直接使用IN/OUT指令在CPU与I/O接口间进行数据传送。 2.条件传送方式 条件传送方式又称查询方式,即CPU传送数据(包括输入和输出)之前,先要去查询外设是否“准备好”。若没有准备好,则继续查询其状态,直至外设准备好才进行数据传送。 条件传送方式是一种天然的同步控制机构,由于是CPU主动,所有I/O传送都与程序的执行严格同步,因此能很好地协调CPU与外设之间的工作,数据传送可靠。条件传送方式的接口比较简单,硬件电路不多,较之无条件传送方式,只需要添加供CPU查询外部设备状态的电路,如使用一个D触发器和一个三态缓冲器附加地址译码就可以构成;查询程序也不复杂,图是使用条件传送方式输入的流程图。 在条件传送方式下,CPU每传送一个数据,需花费很多时间来等待外设进行数据传送的准备,因此CPU利用效率很低。此外,当系统中有多个外部设备时,CPU只能使用轮询方式依次为各个外部设备服务,如果I/O处理的实时性要求很高,或者CPU的任务很繁忙,则不宜采用这种方式。但这种方式接口设计简单,往往不需要增加额外的硬件电路,因此易于实现。在CPU不太忙且传送速度不高的情况下,可以采用. 3.中断传送方式 查询方式下CPU使用效率低和多设备时实时性较差的缺陷,归根结底是由于CPU与I/O设备之间以及多个I/O设备之间不能同时工作的缘故,因此让CPU与I/O设备并行工作是中断传送方式的基本思想。 采用中断传送方式传送数据时,无需反复测试外部设备的状态。在外部设备没有做好数据传送准备时,CPU可以运行与传送数据无关的其他指令。外设做好传送准备后,主动向CPU请求中断,CPU响应这一请求,暂停正在运行的程序,转入进行数据传送的中断服务子程序,完成中断服务子程序(即完成数据传送)后,自动返回原来运行的程序。这样,虽然外部设备工作速度比较低,但CPU在外设工作时,仍然可以运行其他程序,使外设与CPU并行工作,提高了CPU的效率。 中断传送方式既能节省CPU时间,提高计算机使用效率,又能使I/O设备的服务请求得到及时响应,很适合计算机工作量十分饱满、而I/O处理对实时性要求又较高的系统,如实时采集、处理和控制系统中使用,这是它的突出优点。但是,这种控制方式需要一系列中断逻辑电路的支持,所以它的硬件比较复杂。 另外,中断方式是一种异步控制机构,中断请求信号的出现完全是随机的,在主程序的任意两条指令之间,中断请求都可能插入一段完全不同的、甚至与它们相冲突的子程序去执行,使整个程序流程无法预料,因此其软件开发和调试比查询传送方式复杂和困难。这种问题在用高级语言编程时更可能出现,因为高级语言的一个语句就包含许多机器指令,而中断发生时机器不是执行完现行机器指令后再转向中断服务子程序,因此当中断返回时一方面很难保证每次都能返回到中断点,另一方面也很难保证高级语言程序中的许多变量在中断服务期间都保持不变。所以,在有些资料中强调,中断驱动的I/O服务程序必须用汇编语言编写;而且用汇编语言编程,也必须遵守严格的约定,这些约定通过控制哪些变量可被读写和什么时候可读写以及在中断驱动程序与被中断程序之间如何进行信息通信等来避免冲突。 1.2直接存储器存取方式 用中断方式进行数据传送,可以大大提高CPU效率。但中断传送是由CPU通过程序来实现的,每次执行中断服务程

文档评论(0)

151****7975 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档