计算机组成原理学习笔记——I/O 接口

  • I/O 接口,或者是 I/O 控制器,是主机和外设之间地交接界面,通过接口可以实现主机和外设之间地信息交换。主机和外设具有各自工作特点,它们在信息形式和工作速度具有很大地差异,接口就是为了解决这些差异而设置的。

1、功能

  • I/O 接口的主要功能如下:
  • 1)实现主机和外设的通信联络控制。主要是时序配合、工作速度上的协调,确保信息的正确传输,从而保证计算机系统统一、协调地工作。
  • 2)进行地址译码和设备选择。接口负责通过 CPU 送来地外设地址进行译码产生设备选择信息,从而确定目标外设。
  • 3)实现数据缓冲。主要是针对 CPU 速度与外设的相差很大,因此接口必须设置数据缓冲寄存器进行暂存数据,避免 CPU 送来的大量数据而外设处理不过来导致外设奔溃,或者造成数据的丢失。
  • 4)信号格式转换。主要是对电平、数据格式等进行转换,接口需要提供计算机和外设之间的信号格式的转换功能,如电平转换、并/串或串/并转换、模/数或数/模转换等。
  • 5)传送控制命令和状态信息。控制命令指接口根据 CPU 的请求对指定的外设进行开启、关闭等控制;状态信息就是指接口将指定外设“准备好”等表示外设状态的信息反馈给 CPU,以及 CPU 提出中断时发送给指定外设的相关响应信号。

2、结构

在这里插入图片描述

  • I/O 接口的基本结构如上图,数据线主要传输数据CPU 对外设的控制命令,接口和设备的状态信息记录在状态寄存器中,状态寄存器和控制寄存器在传送方向上是相反的。
  • 接口的地址线用于给出要访问的 I/O 接口中的寄存器的地址,和读/写控制命令一起送到I/O接口的控制逻辑部件,读/写信号用于确定选定的目标接口中的寄存器是读寄存器还是写寄存器,此外控制线还可以传送一些仲裁信号和握手信号。
  • I/O 控制逻辑主要完成控制寄存器中的命令字的译码,并将译码后的控制信号通过外设界面控制逻辑送到外设,并将数据缓冲寄存器中数据送到外设从外设接收数据到数据缓冲寄存器,以及收集外设状态状态寄存器中。
  • 通过 I/O 指令实现对数据缓冲寄存器、状态寄存器的访问操控I/O 指令只能在操作系统内核的底层 I/O 软件中使用,是一种特权指令

3、类型

  • I/O 接口可以分为如下几种类型:
  • 1)按数据传送方式,分为并行接口和串行接口,并行接口一次传输一个字节或一个字的全部位,串行接口一次传送一位。这里指的是外设和接口一侧的传输方式,主机和接口一侧的数据总是并行传输的。
  • 2)按主机访问 I/O 接口的控制方式,分为程序查询接口、中断接口和DMA接口等。
  • 3)按功能选择的灵活性,分为可编程接口和不可编程接口

4、I/O 端口及编址

1)I/O 端口
  • 接口电路中可被 CPU 直接访问的寄存器,主要有数据端口、状态端口和控制端口若干端口加上相应的控制逻辑电路组成接口;一般 CPU 只能对数据端口执行读写操作状态端口只能执行读操作控制端口只能执行写操作
2)I/O 端口编址
  • I/O 端口的编址方式主要有:存储器统一编址和独立编址
1> 统一编址
  • 又称为存储器映射方式,指把 I/O 端口当作存储器的单元进行地址分配,这种方式 CPU 不需要设置专门的 I/O 指令,用统一的访存指令就可以访问 I/O 端口。
  • 优点:不需要专门的 I/O 指令,CPU 访问 I/O 端口灵活、方便,I/O 端口有较大的编址空间
  • 缺点:占用存储器地址,使内容容量变小,利用存储器编址的 I/O 设备进行数据输入输出等操作速度较慢
2>独立编址
  • 又称为 I/O 映射方式单独对 I/O 端口进行编址,与主存地址空间是两个独立的地址空间,需要设置专门的 I/O 指令来操作 I/O 端口
  • 优点:使用专门的 I/O 指令,程序编制清晰,易于理解
  • 缺点:I/O 指令少,一般只能对端口进行传送操作,尤其需要 CPU 提供存储器读/写、I/O 设备读/写两套控制信号,增加了控制的复杂性

上一篇
下一篇

  • 21
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御承扬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值