news 2026/3/9 16:50:09

[微机原理与系统设计-从入门到入土] 输入输出IO

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
[微机原理与系统设计-从入门到入土] 输入输出IO

[微机原理与系统设计-从入门到入土] 输入输出IO

知乎:https://www.zhihu.com/people/byzh_rc

CSDN:https://blog.csdn.net/qq_54636039

注:本文仅对所述内容做了框架性引导,具体细节可查询其余相关资料or源码

参考文章:各方资料

文章目录

  • [微机原理与系统设计-从入门到入土] 输入输出IO
  • 芯片回顾
  • I/O 接口
  • 常用 I/O 接口芯片
  • I/O 端口
  • I/O 端口编址方式
        • 1.独立编址
        • 2.统一编址
  • I/O 地址线分配
        • 1.地址线分配
        • 2.物理地址范围对比
  • I/O 相关的系统总线
  • I/O 数据传送工作方式
        • 1.无条件传送方式(同步传送方式)
        • 2.有条件传送方式(异步传送方式/程序查询式)
        • 3.I/O 中断方式
        • 4.DMA 工作方式(直接存储器访问方式)

芯片回顾

  • 最小系统中M / I O ‾ o r I O / M ‾ M/\overline{IO}~or~IO/\overline{M}M/IOorIO/MW R ‾ \overline{WR}WRR D ‾ \overline{RD}RD要参与芯片的C S ‾ \overline{CS}CS

  • 最大系统中I O W ‾ \overline{IOW}IOWI O R ‾ \overline{IOR}IOR要参与芯片的C S ‾ \overline{CS}CS

I/O 接口

CPU 对不同部件的访问方式存在差异:

  • 内存访问:直接通过地址线寻址访问
  • 外设访问:必须通过I/O接口电路间接访问

I/O接口是 CPU 与外设之间的桥梁
-> 负责协调两者的速度差异、信号类型差异等

常用 I/O 接口芯片

I/O 接口功能通过专用接口芯片实现:

  • 中断控制器 8259A:管理外部中断请求,协调 CPU 响应优先级
  • 定时计数器 8253:实现定时触发、脉冲计数等功能
  • 并行接口芯片 8255A:提供并行数据传输通道,适配打印机等并行外设

I/O 端口

基本定义:

  • I/O 端口:I/O 接口内部的寄存器
  • 接口与端口的关系:一个 I/O 接口包含多个 I/O 端口,每个端口对应唯一的地址单元,即 I/O 接口有多少个端口,至少占用多少个地址资源

芯片端口数量:

  • 8259A:占用 2 个 I/O 端口
  • 8253:占用 4 个 I/O 端口
    (COUNTA, COUNTB, COUNTC, COUNTD)
  • 8255A:占用 4 个 I/O 端口
    (PA口, PB口, PC口, 控制端口)

I/O 端口编址方式

CPU 如何区分 I/O 端口和内存单元的地址

1.独立编址

核心逻辑:I/O 端口与 内存 采用独立的地址空间,地址范围互不重叠

区分访问设备:

  • 8086:M / I O ‾ M/\overline{IO}M/IO

  • 8088:I O / M ‾ IO/\overline{M}IO/M

2.统一编址

核心逻辑:将 I/O 端口地址纳入内存地址空间,I/O 端口与内存单元共用同一套地址编码

特点:无需专用的 I/O 访问控制信号,可使用内存访问指令操作 I/O 端口,但会占用部分内存地址空间

I/O 地址线分配

不同处理器/系统分配给 I/O 端口的地址线数量不同,直接决定了 I/O 地址空间大小

1.地址线分配
  • 8086/8088 处理器:分配16 根地址线A 0 ∼ A 15 A_0 \sim A_{15}A0A15)用于 I/O 寻址
  • PC/XT 系统:分配10 根地址线A 0 ∼ A 9 A_0 \sim A_9A0A9)用于 I/O 寻址
2.物理地址范围对比
访问对象处理器/系统地址线范围地址空间大小
Memory(内存)8086/8088A 0 ∼ A 19 A_0 \sim A_{19}A0A191MB(2 20 2^{20}220
I/O 端口8086/8088A 0 ∼ A 15 A_0 \sim A_{15}A0A1564KB(2 16 2^{16}216
I/O 端口PC/XTA 0 ∼ A 9 \mathbf{A_0 \sim A_{9}}A0A91KB(2 10 2^{10}210

I/O 相关的系统总线

系统类型I/O 相关系统总线组成
8086 最小系统A 15 ∼ A 0 , D 15 ∼ D 8 , D 7 ∼ D 0 , B H E ‾ , M / I O ‾ , R D ‾ , W R ‾ A_{\textbf{15}} \sim A_{0},D_{15} \sim D_{8},D_{7} \sim D_{0},\overline{BHE},M/\overline{IO},\overline{RD},\overline{WR}A15A0,D15D8,D7D0,BHE,M/IO,RD,WR
8086 最大系统A 15 ∼ A 0 , D 15 ∼ D 8 , D 7 ∼ D 0 , B H E ‾ , I O R ‾ , I O W ‾ A_{\textbf{15}} \sim A_{0},D_{15} \sim D_{8},D_{7} \sim D_{0},\overline{BHE},\overline{IOR},\overline{IOW}A15A0,D15D8,D7D0,BHE,IOR,IOW
8088 最小系统A 15 ∼ A 0 , D 7 ∼ D 0 , I O / M ‾ , R D ‾ , W R ‾ A_{\textbf{15}} \sim A_{0},D_{7} \sim D_{0},IO/\overline{M},\overline{RD},\overline{WR}A15A0,D7D0,IO/M,RD,WR
8088 最大系统A 15 ∼ A 0 , D 7 ∼ D 0 , I O R ‾ , I O W ‾ A_{\textbf{15}} \sim A_{0},D_{7} \sim D_{0},\overline{IOR},\overline{IOW}A15A0,D7D0,IOR,IOW
PC/XT 系统A 9 ∼ A 0 , D 7 ∼ D 0 , I O R ‾ , I O W ‾ , A E N A_{\textbf{9}} \sim A_{0},D_{7} \sim D_{0},\overline{IOR},\overline{IOW},AENA9A0,D7D0,IOR,IOW,AEN

PC/XT 系统中,A E N AENAEN信号需参与地址锁存器的使能端(CP)控制:

  • 当 AEN=0 时:CPU 控制总线,地址锁存器正常工作,锁存CPU 输出的 I/O 地址或内存地址(CP在非上升沿保持)
  • 当 AEN=1 时:系统处于 DMA 操作状态,DMA 控制器控制总线,地址锁存器响应 DMA 控制器输出的地址信号(CP在上升沿更新)

I/O 数据传送工作方式

1.无条件传送方式(同步传送方式)
  • 核心逻辑:默认外设始终处于就绪状态,CPU 无需查询外设状态,直接进行数据读写
  • 适用场景:外设状态固定或可严格同步的场景(如 LED 指示灯控制)
2.有条件传送方式(异步传送方式/程序查询式)
  • 核心逻辑:CPU 先查询外设状态端口,确认外设就绪(或空闲)后,再进行数据传送
  • 特点:可靠性高,但 CPU 需持续查询等待,占用大量 CPU 时间,传输效率低(串行工作
  • 适用场景:外设速度较慢、对传输效率要求不高的场景
3.I/O 中断方式
  • 核心逻辑:CPU 正常执行主程序,当外设就绪后主动向 CPU 发出中断请求;CPU 响应中断后,暂停主程序,转去执行中断服务程序(完成数据传送),传送结束后返回主程序
  • 特点:CPU 无需持续等待,可在等待期间执行其他任务,实现CPU 与外设并行工作,传输效率显著提升
  • 适用场景:大多数中低速外设(如键盘、打印机)
4.DMA 工作方式(直接存储器访问方式)
  • 核心逻辑:通过 DMA 控制器(如 8237)接管总线控制权,数据无需经过 CPU,直接在主存与 I/O 设备之间成块传送
  • 特点:传输速度最快(无 CPU 中转延迟),适合大量数据高速传输
  • 适用场景:高速外设(如硬盘、光驱)的大批量数据传输
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/20 6:45:54

RAG优化:rerank+小模型整理提升精度

RAG检索后的原始文本往往存在片段零散、语义不连贯、冗余噪声、逻辑断裂问题 本质是“检索只解决了‘找得到’,没解决‘用得好’” 而“rerank(精准筛选)+ 小模型知识整理(结构化提炼)”的组合方案,正是当前业界解决这一痛点的主流优化思路——既能过滤无效信息,又能把…

作者头像 李华
网站建设 2026/3/6 7:30:13

从RAG的核心技术原理(语义表示、检索机制、知识融合)出发,解决“为什么检索不精准”“为什么知识融合不高效”等根本问题

从RAG的核心技术原理(语义表示、检索机制、知识融合)出发,解决“为什么检索不精准”“为什么知识融合不高效”等根本问题 目录 从RAG的核心技术原理(语义表示、检索机制、知识融合)出发,解决“为什么检索不精准”“为什么知识融合不高效”等根本问题 简单rag 简介 一、嵌…

作者头像 李华
网站建设 2026/3/4 22:56:24

Kafka在大数据生态中的角色与应用场景

Kafka在大数据生态中的角色与应用场景:从“数据快递站”到“实时流中枢” 1. 引入与连接:你身边的Kafka故事 凌晨12点,你在电商APP上下了一单零食;12点01分,首页弹出“你可能喜欢的同款薯片”;12点02分&…

作者头像 李华
网站建设 2026/3/8 14:27:40

大数据领域数据产品的成本核算方法

大数据领域数据产品成本核算全攻略:从模糊到清晰的落地指南 引言:为什么你必须搞懂数据产品的成本? 作为数据产品经理,你是否遇到过这些场景: 财务问“这个数据看板每月要花多少钱?”你支支吾吾说不清楚&am…

作者头像 李华
网站建设 2026/3/3 1:34:53

如何高效实现语义相似度分析?试试GTE中文向量模型镜像

如何高效实现语义相似度分析?试试GTE中文向量模型镜像 在自然语言处理(NLP)领域,语义相似度分析是构建智能对话系统、推荐引擎、文本去重、问答匹配等应用的核心技术之一。传统方法如TF-IDF、编辑距离等虽然简单易用,…

作者头像 李华