计算机组成原理 输入输出系统 1

1.1 输入输出系统发展

1、早期

  • 分散链接
  • 串型工作

2、接口模块与DMA阶段

  • 总线链接
  • CPU和IO设备 并行工作

3、具有通道结构

4、具有IO处理机阶段

1.2 输入输出系统的组成

一、I/O软件

1、I/O指令 CPU指令的一部分

    操作码 |命令码|设备码

操作码相当于标准,这个执行是IO,命令码是操作码

2、通道指令 通道自身的指令

通道有自己的控制器甚至存储器

通道能够执行由通道指令组成的通道程序

指出数组的收地址、传送字数、操作命令

二、I/O硬件

包含设备与接口 设备通过接口连接在总线上面,如果采用通道,设备连接设备控制器,设备控制器连接通道

1.3 I/O设备与主机的联系方式

一、I/O设备编址方式

1、统一编址

把IO设备地址看作是内存地址一部分,如果输入输出指令,地址码部分地址落入IO地址部分,则这次输入输出操作就是针对IO设备进行的,可以直接用存数、取数指令对IO设备进行操作。

2、不统一编址

在内存地址空间之外单独设置地址空间,输入输出指令不能使用原有存数取数指令,需要使用专门的IO指令

二、设备选址

用设备选择电路识别是否被选中

三、传送方式

1、串行

2、并行

四、联络方式

1、立即响应

对于一些结构简单设备,接收到或者输入数据时可以直接响应,eg:LED灯

2、异步工作采用应答信号

  • 并行     为了进行并行操作,IO接口与IO设备之间有由多条数据线组成的类似总线结构,来完成数据并行的输入输出,双方之间还要采用应答信号
  • 串行 

3、同步工作采用同步时标

五、I/O设备与主机的连接方式

1、辐射式连接

2、总线连接

便于增删设备

 

1.4 I/O设备与主机信息传送的控制方式

一、程序查询方式

在IO设备准备阶段,CPU一直在等待阶段,没有执行其他指令或者其他工作,CPU效率极低

二、程序中断方式

CPU被一定程度的从输入输出中解放出来

在IO进行准备时,CPU不进行查询,只有当外部设备开始进行信息交换时,CPU回暂停现行程序,为输入输出进行服务

外部设备准备好接收或者输入设备后,会向cpu提出中断请求,

三、DMA方式

  • 主存和IO之间有一条直接数据通道
  • 不中断现行程序
  • 周期挪用(周期窃取)

CPU发出启动IO指令,IO设备在DMA控制器的控制下完成数据准备,当数据准备好后,由DMA控制器发出DMA请求,占用总线使用权,占用一个存取周期,进行外部设备和内存的数据交换,在这一个周期中CPU不能使用总线对内存进行访问。

2.1 接口

一、接口作用

  • 实现设备的选择
  • 实现数据缓冲达到速度匹配
  • 实现数据串-并格式转换
  • 实现电平转换
  • 传送控制命令
  • 反应设备状态

二、接口的功能和组成

1、总线连接方式的I/O接口电路

2、I/O接口的基本组成

 

3.1 程序查询方式

一、程序查询流程

1、查询流程

单个设备

测试指令- 转移指令- 数据传送指令

多个设备

需要把参与传输的设备根据优先级进行排序

二、程序流程

首先要保存寄存器的内容,保存内容后要设置计数器的值,为了控制传输数据的量

二、程序查询方式的接口电路

设备选择电路来确认设备是否参加传输,设备选择信号是整个电路的选择信号,只有这个信号有效,IO接口电路才会工作,若SEL有效且启动命令有效,IO接口开始工作

  • CPU通过地址线给出外部设备地址,设备选择电路把自己的设备地址和地址线上的地址进行比较,如果相同,说明启动的是连接在接口电路上的设备,SEL有效,其同命令也有效,对两个状态标记进行置位或者复位
  • cpu发出命令,设备还没开始工作则则D为0,B为1,表示设备开始工作,处于忙的状态
  • 设备接收到B的标记信号后以及启动命令后,开始工作,通过数据线保存到DBR中,此时设备工作结束,通过状态线向接口电路送入工作结束信号
  • 此时D为1,表示数据已经准备就绪,B为0,设备工作已结束
  • CPU通过数据线把数据进行读入

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章