【计算机硬件】3、输入输出技术、总线结构

文章目录

  • 输入输出技术
    • 内存与接口地址的编址方法
      • 1、 内存与接口地址独立编址方法
      • 2、内存与接口地址统一编址方法
    • 计算机和外设间的数据交互方式
      • 1、程序控制(查询)方式
      • 2、程序中断方式
      • 3、DMA方式(直接主存存取)
  • 总线结构

输入输出技术

内存与接口地址的编址方法

1、 内存与接口地址独立编址方法

内存地址和接口地址是完全独立的两个地址空间 。访问数据时所使用的指令也完全不同,用于接口的指令只用于接口的读/写,其余的指令全都是用于内存的
优点:在编程序或读程序时很易使用和辨认
缺点:用于接口的指令太少 、功能太弱

2、内存与接口地址统一编址方法

内存地址和接口地址统一在一个公共的地址空间里,即内存单元和接口共用地址空间 。
优点:1、用于内存的指令全都可以用于接口
2、增强了对接口的操作功能
3、指令上也不再区分内存或接口指令
缺点:整个地址空间被分成两部分,其中一部分分配给接口使用,剩余的为内存所用,这经常会导致内存地址不连续

计算机和外设间的数据交互方式

1、程序控制(查询)方式

CPU主动查询外设是否完成数据传输,效率极低
(等CPU自己来问)

2、程序中断方式

外设完成数据传输后,向CPU发送中断,等待CPU处理数据,效率相对较高
中断响应时间指的是从发出中断请求到开始进入中断处理程序(通知到执行的时间)
中断处理时间指的是从中断处理开始到中断处理结束 (执行过程的时间)
中断向量提供中断服务程序的入口地址
多级中断嵌套,使用堆栈来保护断点和现场。
(完成之后主动告诉CPU)

3、DMA方式(直接主存存取)

CPU只需完成必要的初始化等操作,数据传输的整个过程都由DMA控制器来完成主存和外设之间建立直接的数据通路,效率很高
(不需要CPU询问,直接全部搞定)
一个总线周期结束后CPU会响应DMA请求开始读取数据; CPU响应程序中断方式请求是在一条指令执行结束时(未懂)

总线结构

总线( Bus),是指计算机设备和设备之间传输信息的公共数据通道 。总线是连接计算机硬件系统内多种设备的通信线路,它的一个重要特征是由总线上的所有设备共享,因此可以将计算机系统内的多种设备连接到总线上
7817e0d1c1e2ad0c8f6911acc6f8e13.jpg
内部总线:内部芯片级别的总线,芯片与处理器之间通信的总线

系统总线:是板级总线,用于计算机内各部分之间的连接,具体分为
1、数据总线(并行数据传输位数)
2、地址总线(系统可管理的内存空间的大小)
3、控制总线(传送控制命令)
代表的有ISA总线 、EISA总线 、PCI总线
(询问分类的时候回答这一种分类法)

外部总线:设备一级的总线,微机和外部设备的总线。代表的有RS232(串行总线)、SCSI(并行总线) 、USB(通用串行总线,即插即用,支持热插拔)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/415200.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

tessreact训练字库

tessreact主要用于字符识别,除了使用软件自带的中英文识别库,还可以使用Tesseract OCR训练属于自己的字库。 一、软件环境搭建 使用Tesseract OCR训练自己的字库,需要安装Tesseract OCR和jTessBoxEditor(配套训练工具)。jTessBoxEditor需要…

关于java的继承

关于java的继承 我们在上一篇文章中,了解到了封装,我们本篇文章来介绍一下面向对象的第二大特点,继承,还是遵循结合现实生活中的实际情况,理解着去学习,能更好的加深印象😀。 一、继承 继承的…

flink 1.18 sql gateway /sql gateway jdbc

一 sql gateway 注意 之所以直接启动gateway 能知道yarn session 主要还是隐藏的配置文件,但是配置文件可以被覆盖,多个session 保留最新的applicationid 1 安装flink (略) 2 启动sql-gatway(sql-gateway 通过官网介绍只能运行…

对象存储, 开源MinIO docker-compose.yml 文件

文章目录 python SDK 文档地址:docker-compose.yml 文件控制台使用:应用服务中使用样例: python SDK 文档地址: https://min.io/docs/minio/linux/developers/python/API.html docker-compose.yml 文件 version: 3services:min…

设计模式⑦ :简单化

文章目录 一、前言二、Facade 模式1. 介绍2. 应用3. 总结 三、Mediator 模式1. 介绍2. 应用3. 总结 一、前言 有时候不想动脑子,就懒得看源码又不像浪费时间所以会看看书,但是又记不住,所以决定开始写"抄书"系列。本系列大部分内容…

为 OpenCV 编写文档(二)

常用命令 这里通过简短的示例描述了最常用的 doxygen 命令。有关可用命令的完整列表和详细说明,请访问命令参考。 基本命令 brief - 带有简要实体描述的段落 param - 函数参数的描述。 多个相邻语句合并到一个列表中。如果在实际函数签名中找不到具有此名称的参数…

亚马逊卖食品有什么具体要求?亚马逊卖食品好做吗?—站斧浏览器

亚马逊卖食品有什么具体要求? 首先,亚马逊要求卖家提供食品的详细信息,包括产品描述、成分表、营养信息和包装规格等。这些信息对于消费者来说至关重要,它们可以帮助消费者了解产品的特点和质量,并做出明智的购买决策…

51单片机原理及应用——张毅刚版本代码全集可复制

从左到右的流水灯的制作(重点) #include <reg51.h> #include <intrins.h> //移位函数的头文件 unsigned int j; void Delay(unsigned int i) // 延时函数 {while(i--) // 注意这里是i--{for(j 0;j < 120;j); // 注意这里是120} }void main() {P1 0xFE;while(1…

INS-06003错误处理

在麒麟V10操作系统上安装Oracle RAC 19C&#xff0c;安装GI的建立互信步骤中&#xff0c;遇到INS-06003错误&#xff1a; [INS-06003] Failed to setup password SSH connectivity with following node(s) 查看详细信息&#xff1a; PRVG-11001: PRCZ-2136: PRCZ-2006: 此时在操…

leetcode82. 删除排序链表中的重复元素 II

文章目录 题目思路1复杂度Code2 思路2复杂度2Code2 题目 给定一个已排序的链表的头 head &#xff0c; 删除原始链表中所有重复数字的节点&#xff0c;只留下不同的数字 。返回 已排序的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,3,4,4,5] 输出&#xff1a;…

SpringBoot Redis入门(四)——Redis单机、哨兵、集群模式

单机模式&#xff1a;单台缓存服务器&#xff0c;开发、测试环境下使用&#xff1b;哨兵模式&#xff1a;主-从模式&#xff0c;提高缓存服务器的高可用和安全性。所有缓存的数据在每个节点上都一致。每个节点添加监听器&#xff0c;不断监听节点可用状态&#xff0c;一旦主节点…

CTF CRYPTO 密码学-1

题目名称&#xff1a;enc 题目描述&#xff1a; 压缩包中含两个文件&#xff1a;一个秘钥d.dec&#xff0c;一个密文flag.enc 解题过程&#xff1a; Step1&#xff1a;这题是一个解密他题目&#xff0c;尝试openssl去ras解密 工具简介 在Kali Linux系统中&#xff0c;openss…