计算机组成原理--三章四章
这里写目录标题
- 第三章:存储系统
- 3.1 存储系统基本概念
- 引入
- 存储器的层次结构
- 简介
- 产品
- 存储器的分类
- 按层次分类
- 按照介质分类
- 按照存取方式分类
- 按照信息的可更改性
- 按照信息的可保护性
- 存储器的性能指标
- 存储容量
- 单位成本
- 存储速度
- 总结
- 3.2
- 主存储器的基本组成
- 半导体元器件的原理
- 基本部件
- 存储元的功能实现
- 存储芯片的基本原理
- 如何实现不同的寻址方式
- 二级目录
- 一级目录
- 二级目录
- 二级目录
- 二级目录
- 一级目录
- 二级目录
- 二级目录
- 二级目录
- 一级目录
- 二级目录
- 二级目录
- 二级目录
- 一级目录
- 二级目录
- 二级目录
- 二级目录
第三章:存储系统
3.1 存储系统基本概念
引入

对于一台电脑来说,其主机中会有主存储器,这个主存储器可以直接与CPU交互,而他还有个别名:内存
而对于硬盘、磁盘这种,属于是辅存,也就是我们平时说的存储空间的大小
存储器的层次结构
简介
1、内存:

1、首先,第一点,可以看到一个金字塔,他越向上的部件,速度越快,造价越高,容量越小
2、当我们启动一个应用的时候,一般应用的数据、启动程序都在辅存(硬盘)中,而启动一个程序需要CPU去运行其启动程序、数据等,而CPU不能直接访问辅存,所以,一般辅存会将数据给到主存(内存),然后内存再给到CPU
(我们开启微信时,刚开始的一个地球的画面,就是等待数据从辅存调入主存)
2、cache:

在主存与CPU之间,多出了一个cache,称为高速缓冲存储器
**存在原因:**因为虽然主存的读写速度已经很快很快了,但是其仍然跟不上CPU的速度,所以,我们将一个进程常用的数据或者程序拷贝一份到Cache中,这样,CPU就无需去主存拿数据,而直接与cache交互,缓解主存和CPU之间的速度矛盾,提高CPU性能的释放效率
例如:我们在微信视频时,可能“控制视频”的那段代码或者程序或者数据,会被拷贝到cache中,这样,CPU就可以高速的读取所需要的数据了
3、寄存器:

在cache与CPU直接,实际上还夹着一个东西叫“寄存器”,例如前面用到的ACC、MQ等
而寄存器的读写速度又会比Cache高出好多,CPU可以将临时的数据放入寄存器,以辅助CPU完成高速计算
补充:

1、主存与辅存之间的数据交换,需要硬件+操作系统,一起完成
2、而Cache与主存之间的数据交换,纯硬件完成
3、主存与辅存数据交换需要硬件+操作系统来实现,具体实现了虚拟存储系统(操作系统会讲),解决了主存容量不够的问题
4、cache与主存,解决了主存与CPU速度不匹配的问题
产品

1、cache缓冲区:cache缓冲区一般都在CPU内部,所以,每个CPU产品都会说明其cache的一些属性,可以看到cache的速度特别快,已经接近1kGB/s了,但是其容量很小,只有12MB
2、内存条:内存条也就是主存,他的速度也很快,大概是40G/s的速度,其容量为8G
3、硬盘:也就是辅存,他的速度就会慢很多,实际速度可能只有100MB/s,但是其容量很大,都是以TB为单位
4、外存:一些光盘、U盘等,特点就是量大便宜,速度很慢
补充:固态硬盘

固态硬盘也属于硬盘,之前那个100MB/S的是机械硬盘,而固态硬盘的速度可达到4GB/S,大约是主存的十分之一,所以现在主流都在用固态硬盘代替机械硬盘
因为开机程序也在辅存中,所以固态硬盘速度越快,开机程序越快被主存调入,也就越快被CPU访问,开机速度就越快
总结:存储系统就是由cache、主存(内存)、辅存(硬盘)、外存构成
存储器的分类
按层次分类

按照层次分类,分为三类:
1、高速缓存:cache
2、主存储器:主存
3、辅助存储器:辅存、外存
其中,前两类能被CPU直接读写
按照介质分类

按照介质分:
1、半导体:cache、主存
2、磁性材料:磁盘(辅存)、磁带(外存)
3、光介质:光盘(外存)
按照存取方式分类

1、随机存取存储器:内存
其想要访问某个地址的数据时,可以直接定位到目标地址,称之为随机存取
2、顺序存取存储器:外存(磁带)
想要访问某个地址的数据时,要从头开始按照顺序来到目标地址,而不能直接跳到目标地址
3、直接存取存储器:硬盘(辅存)
他有两个动作
一个是磁头臂会伸缩,从而调节磁头所在的半径,该动作为“随机存取”的特点
另一个是磁盘会自己旋转,而该过程想要得到一圈内某个点上的数据时,必须要等圈转到磁头了才能访问到,是“顺序存取”的特点
所以,他有随机存取和顺序存取的特点,我们称之为直接存取
其中,第二第三种,由于其都涉及到顺序存取,所以是串行访问存储器
另外:

上面三种存储器都是以“地址”为目标进行定位,并访问其上的数据
而还有一种存储器,称之为“相联存储器”,他定位数据不靠地址,而是靠数据内容,例如“快表”
按照信息的可更改性

存储器可以分为读写存储器和只读存储器
其中,只读存储器,只能读数据,不能写数据,音乐和电影很好理解,而BIOS,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。 其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
按照信息的可保护性

1、断电后不会保存原有数据:主存、cache
2、断电后会保存原有数据:磁盘(辅存)、光盘(外存)
3、信息读出后,原有数据会被破坏:DRAM芯片(后续会讲)
4、信息读出后,原有数据不会被破坏:磁盘(辅存)、光盘(外存)
存储器的性能指标
存储容量

存储容量=字数*字长,其中,字数好理解,就是有几个“字”
字长,则为一个内存单元有多少bit,或者说多少位,一位一个bit
MDR的位数反映了字长,MAR的位数反映了字数
补充:

我们平时说的GB、MB,其都是以B为单位,也就是字节,而1B=8bit,也就是8位
B->KB->MB->GB->TB
(计算机中,大K 就代表 1024)
而每进一位,都是乘以了1024
每退一位,都是除以了1024
单位成本

存储速度

存储速度,又称“主存带宽”
计算时,使用数据宽度(即字长),除以,存取周期(注意存取周期不等于存取时间,而是存取时间+恢复时间)
总结

3.2
主存储器的基本组成
半导体元器件的原理
基本部件

1、一个主存,也就是一块内存条上,由三部分组成,一个是存储体,一个是MAR,一个是MDR,其中MAR、MDR分别是地址寄存器和数据寄存器。存储体就是内存地址块
2、而存储体,是由许多的存储元构成的,一个存储元代表一个bit位
3、而一个存储元,上面有一电容以及一个MOS管,这个MOS管,是当输入电压达到某个阈值,MOS管那部分的电路就会接通,不然断开
存储元的功能实现
PS:一个存储元代表一个bit位
从存储元读取电容处是1还是0:

当MOS管的上面那端是高电平,则MOS管下面那端电路就会接通,此时,如果电容有电荷,则部分电荷会来到输出端,可以读取到此时电容为1
而如果电容没有电荷,此时没有任何电荷来到输出端,就会读取到此时电容为0
从向存储元写入1或者0:

将输出端加上一个高电平电压,同时MOS管也加上高电压,使得电路接通,那此时,电容的上面就是5V,而下面由于接地,为0V,产生了电压差,所以电容上面会充满电荷,一段时间后,将MOS端的高电压撤下,这样,电荷就保存在了电容中,所以,电容此时表示二进制的“1”
而不进行上述操作,电容就不会有电荷,表示二进制的“0”,前提是电容本来就没电荷
存储元组合:

1、8个存储元,的MOS管的控制端被一条红线控制,所以,该红线上是0还是1,会直接影响到这8个存储元是通还是断
2、一列的存储元都通过一条绿线,将结果输出,所以,可以直接从最上面的绿色端口看到8bit的二进制
这也是为什么主存(内存)每次读或者写,其单位都是读写一个“字”,因为绿线连接了一列,所以,每次只能保持一条红线是1,其他都是0,不然会将两排的结果混合
(不仅内存是这样,每个存储器都是这样)
3、一排组成了一个“字”
4、多个“字”组成了存储体
不一定一个字就是8b,具体看存储器的结构
存储芯片的基本原理
如何实现不同的寻址方式
二级目录
一级目录
二级目录
二级目录
二级目录
一级目录
二级目录
二级目录
二级目录
一级目录
二级目录
二级目录
二级目录
一级目录
二级目录
二级目录
二级目录
相关文章:
计算机组成原理--三章四章
这里写目录标题 第三章:存储系统3.1 存储系统基本概念引入存储器的层次结构简介产品 存储器的分类按层次分类按照介质分类按照存取方式分类按照信息的可更改性按照信息的可保护性 存储器的性能指标存储容量单位成本存储速度 总结 3.2主存储器的基本组成半导体元器件…...
单片机工程使用链接优化-flto找不到定义_链接静态库
IDE: CLion HOST: Windows 11 MinGW:x86_64-14.2.0-release-posix-seh-ucrt-rt_v12-rev0 GCC: arm-gnu-toolchain-13.3.rel1-mingw-w64-i686-arm-none-eabi 示例工程:https://github.com/ichliebedich-DaCapo/STM…...
UniTask/Unity的PlayerLoopTiming触发顺序
开始尝试在项目中使用UniTask,发现其中的UniTask.Yield确实很好用,还可以传入PlayerLoopTiming来更细致的调整代码时机,不过平常在Mono中接触的只有Awake,Start,Update等常用Timing,其他的就没怎么接触了&a…...
【报错记录】Steam迁移(移动)游戏报:移动以下应用的内容失败:XXX: 磁盘写入错误
前言 由于黑神话悟空,导致我的2TB的SSD系统盘快满了,我又买了一块4TB的SSD用来存放游戏,我就打算把之前C盘里的游戏移动到D盘,结果Steam移动游戏居然报错了,报的还是“磁盘写入错误”,如下图所示ÿ…...
C 语言学习-04【结构化程序设计】
1、单分支结构语句 用单分支结构进行奇偶判断: #include <stdio.h>int main() {int num;printf("Please enter an integer: ");scanf("%d", &num);if (num % 2 ! 0) {printf("%d is odd! \n", num);}if (num % 2 0) {prin…...
机器视觉:轮廓匹配算法原理
轮廓匹配的模板变量主要包括模板图像(Template)和待检测图像(Source Image) 在轮廓匹配中,模板变量主要包括一下几个关键部分: 模板图像(Template):这是进行匹配的…...
动力商城-02 环境搭建
1.父工程必须满足:1.1删除src目录 1.2pom 2.依赖继承 //里面的依赖,后代无条件继承<dependencies></dependencies>//里面的依赖,后代想要继承,得自己声明需要使用,可以不写版本号,自动继承&l…...
【react】Redux基础用法
1. Redux基础用法 Redux 是一个用于 JavaScript 应用的状态管理库,它不依赖于任何 UI库,但常用于与 React 框架配合使用。它提供了一种集中式的状态管理方式,将应用的所有状态保存在一个单一的全局 Store(存储)中&…...
使用Python分析股票价格数据并计算移动平均线的实用指南
使用Python分析股票价格数据并计算移动平均线的实用指南 在金融市场中,移动平均线(Moving Average, MA)是一种常用的技术分析工具,用于平滑价格数据,帮助投资者识别趋势。本文将详细介绍如何使用Python分析股票价格数据,并计算移动平均线。我们将通过一个实际的案例来演…...
如何解决FPS低的问题?代码优化方法有哪些?
如果你是一名游戏开发者,或者对电脑性能有所追求的用户,那么你一定遇到过帧率(FPS)低的问题。帧率低会导致游戏卡顿、画面不流畅等问题,极大地影响了用户体验。本文将从代码层面探讨FPS低的原因,并提供一些…...
QT信号和槽与自定义的信号和槽
QT信号和槽与自定义的信号和槽 1.概述 这篇文章介绍下QT信号和槽的入门知识,通过一个案例介绍如何创建信号和槽,并调用他们。 2.信号和槽使用 下面通过点击按钮关闭窗口的案例介绍如何使用信号和槽。 创建按钮 在widget.cpp文件中创建按钮代码如下 …...
LC:二分查找——杂记
文章目录 268. 丢失的数字162. 寻找峰值 268. 丢失的数字 LC将此题归类为二分查找,并且为简单题,下面记一下自己对这道题目的思考。 题目链接:268.丢失的数字 第一次看到这个题目,虽然标注的为简单,但肯定不能直接排…...
GA/T1400视图库平台EasyCVR多品牌摄像机视频平台前端监控摄像头镜头的基础知识
在现代安全监控系统中,摄像机镜头作为捕捉图像的关键组件,其选择和应用直接影响到监控图像的质量和系统的整体性能。随着技术的发展,摄像机镜头的种类和功能也在不断扩展,以适应各种复杂的监控环境和需求。对于相机成像来讲&#…...
【C++】踏上C++的学习之旅(六):深入“类和对象“世界,掌握编程的黄金法则(一)
文章目录 前言1. "面向过程"和"面向对象"的碰撞1.1 面向过程1.2 面向对象 2. "类"的引入3. "类"的定义3.1 🍉语法展示:3.2 "类"的两种定义方式3.3 "类"的命名规则 4. 类的访问限定符以及封…...
【物联网技术】ESP8266 WIFI模块在STA模式下作为TCP客户端上电自动进入透传数据模式
前言:讲解如何在ESP8266 WIFI模块在STA模式下作为TCP客户端与网络调试助手(TCP服务器)上电自动进入透传数据模式,而不需重新再发指令配置进入透传模式。 演示视频: ESP8266 WIFI模块在STA模式下作为TCP客户端上电自动进入透传数据模式 wifi模块在STA模式下作为TCP客户端相…...
重构代码之用委托替代继承
在代码重构中,用委托替代继承 是一种用于改善代码设计和提高灵活性的重要技术。它的核心思想是,将子类与父类的直接继承关系转换为委托关系,即子类不再直接继承父类,而是通过持有父类的实例来访问所需的功能。 一、为什么需要用委…...
软件设计师下午题UML15分
一、涉及到的图及对应关系 二、例题 1.用例图和类图的例题 解析及答案 2.状态图和类图的例题 3.通信图和类图例题 例题...
css background-image背景图片轮播
1、CSS背景样式有以下几种: 背景颜色(background-color):设置元素的背景颜色。背景图片(background-image):设置元素的背景图片。背景重复(background-repeat)ÿ…...
java---认识异常(详解)
还有大家来到权权的博客~欢迎大家对我的博客提出意见哦,有错误会及时改进的~点击进入我的博客主页 目录 一、异常的概念及体系结构1.1 异常的概念1.2 异常的体系结构1.3异常的分类 二、异常的处理2.1防御式编程2.2 异常的抛出2.3 异常的捕获2.3.1异常声明throws2.3.…...
Linux基础学习笔记
Linux基础学习笔记 Linux目录结构: 具体的目录结构: /bin [重点] (/usr/bin 、 /usr/local/bin) • 是Binary的缩写, 这个目录存放着最经常使用的命令 /home [重点] • 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
