计算机原理组成篇(1)

简介: 计算机的总线总线的概述举个栗子:USB-> Universal Serial Bus(通用串行总线)提供了对外连接的接口不同设备可以通过USB接口进行连接连接的标准,促使外围设备接口的统一

计算机的总线

总线的概述

举个栗子:

USB-> Universal Serial Bus(通用串行总线)

  1. 提供了对外连接的接口
  2. 不同设备可以通过USB接口进行连接
  3. 连接的标准,促使外围设备接口的统一

总线除了上面的USB,还有PCI总线ISA总线THunderbolt总线等等

5hWaBGXdj7DvNit.png

在没有总线时候,每个设备之间要互相连接,非常复杂

出现总线之后:

h5OFDks2oAqWvrN.png

总线的分类

片内总线

高集成度芯片内部的信息传输线
  1. 芯片内部的总线
  2. 寄存器与寄存器之间
  3. 寄存器与控制器、运算器之间

pSqDsEKeUlH9mR7.png

系统总线

CPU、主内存、IO设备、各组件之间的信息传输线

zNVUWHTJDk3PY1j.png

数据总线

一般与CPU位数相同(32位,64位)
  1. 双向传输各个部件的数据信息
  2. 数据总线的位数(总线宽度)是数据总线的重要参数

地址总线

地址总线位数=n,寻址范围:0~2�
  1. 指定源数据或目的数据在内存中的地址
  2. 地址总线的位数与存储单元有关

控制总线

  1. 控制总线是用来发出各种控制信号的传输线
  2. 控制信号经由控制总线从一个组件发给另外一个组件
  1. 比如从CPU发送到键盘
  1. 控制总线可以监视不同组件之间的状态(就绪/未就绪)

总线的仲裁

仲裁就是为了解决不同设备使用总线的先后冲突问题

我们有以下几种方法:

链式查询

O7XIxMTFHuaDBrL.png

假设设备2需要使用总线,就像仲裁控制器发送请求,得到请求后,会先发给设备1,看他用不用,他不用,就到接下来给设备2,发现设备2使用。同理,设备1和2同时发送,设备1先获取资格。

好处: 电路复杂度低,仲裁方式简单(串联的方式)

坏处: 优先级低的设备难以获得总线使用权

计时器定时查询

  1. 仲裁控制器对设备编号并使用计数器累计计数
  2. 接收到仲裁信号后,往所有设备发出计数值
  3. 计数值与设备编号一致则获得总线使用权

vDJ4kqcEoi3feu6.png

设备3要使用,顺着仲裁控制线请求,控制器收到后同时给3个设备发1,设备1没有使用,继续+1,设备2没有使用,继续+1,设备3使用,获得总线的使用权,(每次+1,都给这几个设备发送)

独立请求

  1. 每个设备均有总线独立连接仲裁器
  2. 设备可单独向仲裁器发送请求和接收请求
  3. 当同时收到多个请求信号,仲裁器有权按优先级分配使用权

swnD4Gjp2SHBVc6.png

好处:响应速度快,优先顺序可动态改变

坏处:设备连线多,总线控制复杂

计算机的输入输出设备

常见的输入输出设备

字符输入设备

键盘

薄膜键盘
机械键盘
黑轴
红轴
青轴
茶轴

图像输入设备

鼠标

数位板

扫描仪

图像输出设备

显示器

打印机

投影仪

输入输出接口的通用设计

数据线

是I/O设备与主机之间进行数据交换的传送线

单向传输数据线

双向传输数据线

状态线

  1. IO设备状态向主机报告的信号线
  2. 查询设备是否已经正常连接并就绪
  3. 查询设备是否已经被占用

命令线

  1. CPU向设备发送命令的信号线
  2. 发送读写信号
  3. 发送启动停止信号

设备选择线

  1. 主机选择l/O设备进行操作的信号线
  2. 对连在总线上的设备进行选择

例如对U盘进行操作

CPU与IO设备的通信

CPU速度与IO设备速度不一致

程序中断

提供低速设备通知CPU的一种异步的方式CPU可以高速运转同时兼顾低速设备的响应
  1. 当外围IO设备就绪时,向CPU发出中断信号
  2. CPU有专门的电路响应中断信号

image.png

注意:响应中断不一定是及时的。

DMA(直接存储器访问)

DMA直接连接主存与lO设备DMA工作时不需要CPU的参与


96BuN17z35waUZQ.png

当主存与IO设备交换信息时,不需要中断CPU,可以提高CPU的效率

硬盘,显卡都使用

计算机存储器

存储器的分类

按存储介质分类:

半导体存储器

内存,U盘,固态硬盘

磁存储器

磁带,磁盘

_

按存取方式分类:

随机存储器(RAM)

随机读取

与位置无关

串行存储器

与位置有关

按顺序查找

只读存储器(ROM)

只读不写

存储器的层次结构

读写速度↑,存储容量↑,价格↓

容量+价格 => 位价:每比特位价格


QzAmJNt1jKid8p2.png

容量从上到下增加

主存是上面提到的RAM与ROM


S9ja7s8hYlXKf6L.png

缓存-主存层次

原理:局部性原理实现:在CPU与主存之间增加一层速度快(容量小)的Cache 目的:解决主存速度不足的问题

局部性原理是指CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中。


UGPc5oEMHQAW2uv.png计算机原理组成篇(1): https://developer.aliyun.com/article/1387186

目录
相关文章
|
Java 开发工具
mac下解决intellij idea启动慢和debug卡死问题
mac下解决intellij idea启动慢和debug卡死问题
3908 0
mac下解决intellij idea启动慢和debug卡死问题
|
小程序 前端开发 开发者
【微信小程序】-- WXSS 模板样式- rpx & import (十三)
【微信小程序】-- WXSS 模板样式- rpx & import (十三)
|
9月前
|
人工智能 JavaScript 前端开发
通义灵码极好
通义灵码是阿里云推出的一款AI编程助手,基于大模型技术,支持多种编程语言,提供智能代码补全、优化建议、Bug诊断等功能,显著提升编码效率和代码质量。本文详细评测其核心功能,对比GitHub Copilot,并推荐给国内开发者及阿里云生态用户。评分:4.5/5。
676 1
通义灵码极好
|
9月前
|
关系型数据库 MySQL
图解MySQL【日志】——磁盘 I/O 次数过高时优化的办法
当 MySQL 磁盘 I/O 次数过高时,可通过调整参数优化。控制刷盘时机以降低频率:组提交参数 `binlog_group_commit_sync_delay` 和 `binlog_group_commit_sync_no_delay_count` 调整等待时间和事务数量;`sync_binlog=N` 设置 write 和 fsync 频率,`innodb_flush_log_at_trx_commit=2` 使提交时只写入 Redo Log 文件,由 OS 择机持久化,但两者在 OS 崩溃时有丢失数据风险。
239 3
|
7月前
|
存储 人工智能 自然语言处理
Cursor这类编程Agent软件的模型架构与工作流程
编程Agent的核心是一个强大的大语言模型,负责理解用户意图并生成相应的代码和解决方案。这些模型通过海量文本和代码数据的训练,掌握了广泛的编程知识和语言理解能力。
721 1
|
8月前
|
监控 机器人 数据挖掘
|
网络架构
合理设置 WLAN 频道以减少干扰
【8月更文挑战第24天】
461 0
|
网络协议 数据挖掘 5G
适用于金融和交易应用的低延迟网络:技术、架构与应用
适用于金融和交易应用的低延迟网络:技术、架构与应用
564 5
|
移动开发 小程序 API
uniapp中uview组件库丰富的CountTo 数字滚动使用方法
uniapp中uview组件库丰富的CountTo 数字滚动使用方法
320 2
ENVI:如何进行遥感图像的分类?(决策树模型)
ENVI:如何进行遥感图像的分类?(决策树模型)
631 0