计算机组成原理
第七章 输入输出系统
author:slightwjq
2022年12月27日
7.1 I/O基本概念
包括外部设备、接口、输入设备、输出设备、外存设备。
7.2 I/O接口
主要功能如下:
- 地址译码和设备选择
- 实现主机和外设的通信联络控制。
- 实现数据缓冲。
- 信号格式的转换。
- 传送控制命令和状态信息。
I/O端口是指电路中可被CPU直接访问的寄存器。
7.3 I/O方式
程序查询方式
信息交换完全由CPU执行程序实现,接口中设置一个数据缓存寄存器和设备状态寄存器。存在CPU踏步现象。
程序中断方式
在计算机执行过程中,出现紧急的异常情况或特殊请求,CPU中止现行程序转去处理,处理完毕后回到断点处继续。
中断请求:中断源是请求CPU的设备或事件,一台计算机有多个中断源。通过INTR线发出的是可屏蔽中断,通过NMI线发出的是不可屏蔽中断。
中断响应优先级是CPU响应中断的先后顺序。
一般来说,可屏蔽中断>内部异常>可屏蔽中断;内部异常中,硬件故障>软件中断;DMA>I/O设备。
CPU响应中断后,经过某些操作,转去执行中断服务程序,这些操作由硬件直接实现,称为中断隐指令。如下
- 关中断:保存断点和现场过程中不能响应更高级的中断。
- 保存断点。
- 引出中断服务程序:将对应的服务程序入口地址送入PC。
中断处理过程:
- 关中断
- 保存断点
- 中断服务程序寻址
- 保存现场和屏蔽字
- 开中断
- 执行中断服务程序
- 关中断
- 恢复现场和屏蔽字
- 开中断、中断返回
DMA方式
DMA方式传送数据不需要经过CPU。
对数据传送过程进行控制的硬件称为DMA控制器。功能如下:
- 接受外设DMA请求,向CPU发出总线请求。
- CPU响应总线请求。
- 确定传送数据的主存单元地址和长度。
- 规定传送方向。
- 向CPU报告DMA结束。
DMA传送方式
1、停止CPU访存:使CPU脱离总线,停止CPU访存。
2、周期挪用:I/O优先级高于CPU,冲突时,CPU放弃总线占有权。
3、交替访存。
DMA和中断的区别
- 中断是程序的切换,需要保护和恢复现场
- 中断请求的响应只能在每条指令执行完毕时,对DMA请求的响应可以在每个机器周期结束时。
- 中断需要CPU干预,DMA不需要。
- DMA请求优先级高于中断
- 中断具有异常处理的能力,DMA只针对I/O。
- 中断靠程序,DMA靠硬件。
- 本文作者: 魏静崎
- 本文链接: https://slightwjq.github.io/2023/10/17/计算机组成原理-第七章/
- 版权声明: 该文章来源及最终解释权归作者所有