80X86微机原理与接口技术 教学课件 作者 喻宗泉 第7-9章第8章.pptVIP

  • 3
  • 0
  • 约6.67千字
  • 约 58页
  • 2019-10-03 发布于广东
  • 举报

80X86微机原理与接口技术 教学课件 作者 喻宗泉 第7-9章第8章.ppt

8.4.3 CPU对外设的选择 CPU选择外部设备就是对外设端口地址的寻址。找到了I/O端口,也就是找到了相应的外部设备。不同的微机系统对I/O端口分配有不同的端口地址。IBM PC机按照两种不同的I/O硬件类型把I/O空间分成了两部分。硬件依照其复杂程度划分成的两类,一类是系统板上的I/O接口芯片,有并行接口、DMAC、T/C、中断控制器等,是一些可编程集成芯片。表8-1列出了它们占用的256个端口,地址为000H~0FFH。另一类是扩展槽上的I/O接口卡,有软驱卡、硬驱卡、打印卡、网卡、串行卡等,是由若干芯片组成的逻辑部件(适配器)。表8-2列出了它们占用的768个端口,地址为100H~3FFH。 端口地址实际使用时,地址范围并未占满,往往只用到其中几个。如PC/AT机中的DMA页面寄存器地址范围为080H~09FH,占32个地址,实际使用8个(通道4用于主从片DMA的级联): 表8-1 PC机系统板上I/O芯片端口地址范围 表8-2 扩展槽上的I/O接口卡端口地址范围 8.4.4 I/O定时与协调 无论采用哪种译码方式,首先必须注意有效端口地址的产生和CPU读/写操作时序上的配合。以逻辑门电路为例,门电路延迟时间不得长于和有效之后,否则芯片未能选中就开始读/写,必然引起操作失误。其次在系统设计中还必须注意I/O端口的设置是否合理。凡已被系统占用了的地址就不能为用户所用;对未被占用的地址,由生产厂家注明“保留”的,一般不要使用,否则会出现端口地址重叠等问题;用户使用微机系统专门留给用户的地址空间,如IBM PC机中的I/O端口地址300H~31FH;在用户可用的地址空间内,为避免用户与用户之间的冲突,可加接地址开关,避开其他用户开发的插板。 8.5 CPU与I/O设备间的数据传送 8.5.1 程序传送方式 1.无条件传送 当程序依指令序列执行到I/O指令时,无条件地在AL/AX和I/O端口之间传送数据,如图8-11(a)所示。这种传送方式使用极为广泛,例如I/O接口芯片的初始化编程,I/O设备的状态读取等,显然它适合于固定I/O设备在固定时间内的固定操作。在另一些I/O操作中,这种方式根本不能适应。例如随机输入输出的一些数据,I/O设备还没有把数据准备好时,CPU就执行IN指令,那就读入了一些不该读入的内容,从而出现错误。为此程序传送改用查询方式进行。 图8-11 程序传送方式 (a) 无条件传送;(b) 查询传送 2.查询方式 1) 查询式输入 查询式输入所使用的接口电路、输入状态和输入数据如图8-12所示。当输入设备的数据已准备好后,该设备将向接口电路发出一个选通信号,一方面将数据存入锁存器,另一方面使D触发器Q端置“1”,如果CS、IO/M、RD的控制命令能将状态口选通,则Q端“1”信号经缓冲器使READY输出1。 READY与数据总线的D2相连,因此可用IN指令将状态信息读至AL,再用测试指令检查D2位。编程查询输入的步骤如下:首先CPU用输入指令从状态口输入状态字;其次测试D2状态位为“0”还是为“1”,如果为0就重读状态,如果为1就让CPU用输入指令从数据口读入数据。由此编成查询程序为: * 第 8 章 接 口 技 术 第 8 章 接 口 技 术 8.1 接口技术概述 8.2 I/O指令的两种寻址方式 8.3 I/O端口的两种寻址方式 8.4 端口地址译码技术 8.5 CPU与I/O设备间的数据传送 8.1 接口技术概述 1.I/O接口电路的功能 I/O接口电路是为解决I/O设备与CPU之间存在的工作原理、运行速度、信息格式不同等诸多矛盾而设置的,I/O设备的多样性导致了I/O接口电路的多样性。为了便于使用,借助LSI技术的发展,I/O接口电路已制成尽可能通用的I/O接口芯片,这些芯片的每一种型号都有自己的应用领域,它们共有的一些功能如下: (1) 数据转换:I/O设备提供的自身状态信号和它所需的控制信号通常与微机总线信号不兼容,接口芯片的数据转换功能就是让它们兼容,做到逻辑关系匹配、时序配合默契、高低电平一致。 (2) 数据缓冲:转换后能匹配的数据,并不能立即传送,因为主机和外设的速度不一致,盲目传送会丢失数据。为此接口芯片中都设置有暂存数据的锁存器或寄存器,称为“数据端口”,此外还有“控制端口”和“状态端口”。控制端口用于CPU对I/O接口芯片写入控制命令字,规定I/O接口芯片的具体工作方式和应用环境;状态端口用于I/O接口芯片向CPU报告自身的

文档评论(0)

1亿VIP精品文档

相关文档