- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 六 章 I/O接口和总线 学习目的 通过对本章的学习,您应该能够达到下列要求: 端口的功能、种类、编址方式 CPU与外设交换数据 查询式传送软硬件设计 总线的概念、分类,PC总线 重点与难点 输入缓冲、输出锁存的概念 CPU与外设交换数据的方式 查询方式 6-1 I/O接口 一、I/O接口的功能 二、简单的输入输出接口芯片 三、 I/O端口及其编址方式 1.I/O端口 I/O端口是外设接口电路中CPU访问的寄存器。 CPU通过对端口的访问来实现对外设的访问。 根据所存内容不同,接口电路包含以下几种端口: 数据端口:存放外设与CPU之间要交换的数据,通常为1个字节或1个字。 状态端口:存放外设的当前状态,通常有准备好、出错、忙等。 命令端口:也叫控制端口,存放CPU对接口电路的行为逻辑的控制信息,通常有方式控制字、操作控制字。 每个端口存储一个字节数据,地址相邻的两个字节端口可以组成一个字端口,低地址存放地字节,高地址存放高字节。 端口的访问用输入输出指令 IN AL,port IN AX,port OUT port,AL OUT port,AX IN AL,DX IN AX,DX OUT DX,AL OUT DX,AX 访问外设的IN/OUT指令与访问存储器的MOV指令硬件的区别在于:M/IO(对8086)、IO/M(对8088)。 2.I/O端口编址方式 CPU通过地址信息区分不同的端口,接口电路中要有地址译码功能。CPU有两种处理端口地址的方法:统一编址、独立编址。 存储器映象编址: 把每个I/O端口当作一个存储器单元,并与存储单元统一编址。 所有访问存储器的指令都可访问I/O端口。 地址译码电路简单,占用存储器地址空间。 例如:MC6800,51系列单片机。 I/O独立编址: 把所有I/O端口组成I/O端口空间,与存储器空间相互独立。 用独立的I/O指令访问I/O端口。 地址译码电路复杂,不占用存储器地址空间。 例如:INTEL 8088/8086 在 8088/8086 系统中,I/O端口空间使用低16位地址信号A0~A15,总共64kB,而存储器空间使用20位地址信号,总共1MB。 8086使用M/IO(8088用IO/M)控制信号来区分I/O端口空间与存储器空间。 四、 CPU与外设间的数据传输方式 1.程序控制方式 CPU与外设接之间的数据交换完全在程序控制下实现,包括无条件传送和条件传送两种方式。 (1)无条件传送: CPU直接用 IN 指令从外设读取数据,直接用 OUT 指令向外设发送数据。 要求外设总是已经准备好数据,总是准备好接收数据。 用于简单的外设,如显示、按键。 按键、开关输入接口 八段码输出接口 (2)条件传送(查询传送): 一般而言,CPU应该在外设准备好数据以后才读取数据,应该在外设准备好接收数据以后才发送数据。 传送数据前,CPU应该查询外设的当前状态,等到外设准备好以后才开始传送。 除数据端口以外,接口电路还需要另有一个状态端口以存放外设的当前状态,CPU线先读取该端口以判断外设是否准备好。 输入时,数据准备好信号由外设置位,由CPU读数据操作复位。 输出时,忙信号由CPU写操作置位,由外设复位。 四、 CPU与外设间的数据传输方式 2.DMA方式 (1)、DMA方式的提出 在程序控制方式下,外设与内存之间的数据交换要通过累加器中转,至少需要一条IN/OUT指令与一条MOV指令,还有修改指针、计数器的指令,不可能快速传递。 在大多数系统中,硬件操作速度远高于指令执行时间,若不经过CPU中转,在内存与外设之间直接传送数据,则可获得很高的传送速度,称为直接存储器存取方式。 DMA方式常用于与高速外设之间一次传送大量数据的场合,如磁盘操作,需要DMA控制器才实现。 (2) DMA工作原理 (2) DMA工作原理 外设通过DREQ向DMAC请求DMA操作,DMAC据此向CPU发出HREQ信号。 CPU收到HOLD信号,执行完当前指令,进入总线响应周期,释放总线——使CPU内部与三总线之间处于高阻状态,并给出总线保持应答HLDA。 DMAC收到HLDA以后,接管总线——撤销其内部电路与三总线的高阻状态,向存储器输出地址信息,制定传送数据单元,发DACK到外设。 外设收到DACK后,即准备好收发数据。 DMAC控制数据传送过程。 传送完毕,DMAC撤销HREQ,CPU接管总线,撤销HLDA,DMAC再撤销DACK,结束。 五、 PC机 I/O 端口地址分配 6-2 总线 一、总线的概念 二、IBM PC总线 二、IBM PC总线 6-1 I/O接口 6-2 总线 Evaluation only. Created
文档评论(0)