输入输出系统--外设与CPU之间的通信
1.概述
设备编址方式:统一编址或独立编址
设备选址有设备选择电路
联络方式,异步或立即响应
2.外部设备:许多输入输出设备键盘,显示器等。
3.IO接口
为什么存在IO接口?
- 实现设备的选择
- 实现数据缓冲达到速度匹配
- 传送控制命令
- 反应设备状态(忙,就绪,中断请求)
接口应该实质上就是在设备中的一些寄存器。
三种外设和CPU的通信方式:
1.程序查询方式:类似于轮询--》挨个问下外设,你准备好了没哦?帅哥,没准备好我就走了,准备好了咱们就嘿嘿嘿(数据传送)。
2.程序中断方式:
CPU在执行完一条指令后都会发出中断查询信号。
配置中断请求触发器,排队器,中断向量形成地址。中断向量(本质上就是一个地址,中断程序开始执行的地址)。
下图作简介:
中断程序的服务流程:
- 保护现场:保护现场呢,就是要将程序的寄存器内容这些放起来,毕竟中断完回来还要用,也是著名的定义“上下文”
- 中断服务:根据中断向量地址,找到对应的中断服务程序。
- 恢复现场
- 返回
说一下单重中断和多重中断:多重中断:在中断的时候允许中断。
注意下图开关中断的时期。
3.DMA方式(直接存储器访问)
想一下在之前的数据传送是不是外设的数据都要先放进CPU然后再送入内存,是不是有点绕弯子的感觉。那么就直接搞条路IO到内存--DMA(direct memory access)。
DMA与主存交换数据的方式:
1.停止CPU的访存:DMA一工作,CPU处于不工作状态或保持状态,未充分发挥CPU对主存的利用率;
2.周期窃取:DMA访存的时间在CPU的间隙中窃取,若CPU和DMA同时访存,DMA优先。
3.交替访存:不需要申请建立和归还总线的使用权;
DMA接口:组成,功能,工作方式。
DMA接口与系统的连接方式;
1.具有公共请求线的DMA请求,一条公共线连接至CPU;
2.独立的CPU请求;
DMA接口的类型:
1.选择型:一个接口多个设备
2.多路型:子通道也是小型接口
--IO系统的自治能力越来越强。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)