关于存储那些事1-----基础篇

news2024/11/18 14:01:06

目录

  • 一、SSD
    • 1、简介
      • 1.1 分类
        • 1.1.1 易失性存储器
        • 1.1.2 非易失性存储器
    • 2、SSD接口
      • 2.1 SATA接口
      • 2.2 SATA Express接口
      • 2.3 SAS接口
      • 2.4 U.2接口
      • 2.5 mSATA接口
      • 2.6 M.2接口
      • 2.7 PCI-E接口
  • 二、闪存(Flash memory)
    • 1、简介
      • 1.1 NOR Flash
      • 1.2 NAND Falsh
      • 1.3 NOR Flash 和NAND Flash 区别
    • 2、存储单元电位阶数划分
  • 三、RAM
    • 1、RAM简介
    • 2、RAM分类
      • 2.1 DRAM
        • 2.1.1 DRAM简介
        • 2.1.2 DRAM分类
          • (1)SDRAM
            • SDRAM简介
            • DDR简介
            • DDR发展
          • (2) FPM DRAM
        • 2.1.3 DRAM封装
      • 2.2 SRAM
        • 2.2.1 SRAM简介
        • 2.2.2 SRAM分类

一、SSD

1、简介

固态硬盘(Solid-state drive简称SSD),是一种以集成电路制作的电脑存储设备。固态硬盘常采用SATA、PCI Express、mSATA、M.2、ZIF、IDE、U.2、CF、CFast等接口。

1.1 分类

SSD又分为易失性存储器和非易失性存储器。根据字面意思可以得出易失性存储器即为掉电丢数据设备,而非易失性存储器即为掉电不丢数据设备,你也可以叫它永久性存储设备。

1.1.1 易失性存储器

此类设备主要用于临时性存储,例如DRAM,具有访问速度快的特点,可以将需要运行的程序、资料先行复制到易失性存储器中,然后再执行。

1.1.2 非易失性存储器

非易失性存储器一经写入数据,就不需要外力来维持其记忆。闪存当中的NAND Flash是最常见的非易失性存储器。

2、SSD接口

2.1 SATA接口

SATA接口应该是我们最常见的接口了,不过是机械硬盘还是固态硬盘,大部分都是使用SATA接口来与主板连接。SATA接口向前兼容。SATA接口发展到今天已经是第三代了,也就是我们常说的SATA3.0,SATA3.0理论速度最高支持6Gb/s。

2.2 SATA Express接口

SATA Express接口是由两个SATA接口和一个辅助接口组成,理论上速度就是6Gb/s+6Gb/s=12Gb/s。

2.3 SAS接口

SAS接口是在SATA接口上加多了SCSI技术,这个技术主要用来提高数据传输的稳定性和安全性。SAS接口相对于SATA接口,数据传输的电缆可以更长,稳定性和耐用性也越强,因此一般都是用于企业服务器这种需要长时间不间断读写的设备使用。SAS的理论速度目前最大可以达到12Gb/s。

2.4 U.2接口

U.2接口和SAS接口形状一模一样,唯一的区别就是逻辑标准的区别,SAS实际上还在走的SATA总线,而U.2接口则是走PCI-E总线,两者在外观上虽然一样,但是本质上却是两套完全不同的标准协议在工作。U.2接口的问世也是为了解决企业级SSD固态的速度瓶颈,提高服务器速度。因此U.2接口的速度在理论上也是和NVMe一样的可以达到的32Gb/s。

2.5 mSATA接口

mSATA接口的全称叫mini-SATA接口,这个接口当时是为了给笔记本这类内部空间比较狭小的设备提供SSD设备而制定的。顾名思义就是一个缩小版的SATA接口,在总线标准和协议标准还是传输速度上,都是和SATA3.0接口一样的。

2.6 M.2接口

M.2接口分为B-key和M-key接口两种类型。B-key接口可以支持SATA总线和最高PCI-E x2的总线标准(这里说的支持PCI-E x2,但是是不支持NVMe协议),而M-key接口是支持NVMe高速协议的标准,理论上也是向下兼容B-key接口的SSD(同样要以厂商的设计说明为准)。简单来说就是B-key接口的SSD可以插在M-key接口的插槽上,但是反过来是不可以的。

2.7 PCI-E接口

PCI-E是PCI Express的简写,是新一代的总线接口,是由20多家业界主导公司共同起草并完成的新技术规范,采用点对点的串行连接,可以将数据传输率提高到一个很高的频率,以此提供更高的带宽。
而PCI Express的接口根据总线位宽不同,还可分为X1、X4、X8和X16。目前使用较多的是PCIe X4,市面上流通较多的是PCI-E 2.0版本和3.0版本,对应的X4带宽为16Gbps/32Gbps,折算成传输速率约为2GB/s和3.93GB/s。
PCI-Ex1 x4 x8 x16等说的是什么?
SSD接口

二、闪存(Flash memory)

1、简介

闪存是一种像电可擦写只读存储器一样的存储器,允许对资料进行多次的删除、加入或改写。闪存又分为NOR(或非门闪存)和NAND(与非门闪存)两种类型。(扩展:3D NAND Flash:将NAND闪存在垂直方向进行堆叠和互联,藉以提高单位面积的内存容量。)

1.1 NOR Flash

在读取数据时,只要提供数据地址,数据总线将根据数据地址直接提取数据。由于NOR Flash没有原生坏区管理,所以一旦存储区块发生毁损,软件或驱动程序必须接手这个问题,否则可能会导致设备发生异常。

1.2 NAND Falsh

东芝在1989年发表了NAND Flash架构,这种内存的访问方式类似硬盘、储存卡之类的区块性存储设备,每个区块由数个页所构成。一般来说这些页的大小为512或2048或4096字节。读取与写入动作可以以“页”为单位偏移量进行,抹除动作只能以“区块”为单位偏移量进行。NAND Flash还有一项限制就是区块内的资料只能序列性的写入。

1.3 NOR Flash 和NAND Flash 区别

(1)连接个别记忆单元的方法不同
(2)读取写入内存的接口不同(NOR型闪存允许随机存取,而NAND型闪存只能允许页访问)

2、存储单元电位阶数划分

通过对闪存内最小的物理存储单元的电位划分不同的阶数,可以在一个存储单元内存储一至多个二进制位数。常见的一至四阶存储单元为SLC、MLC、TLC和QLC。
(1)SLC:每个存储单元内存储1个信息比特,称为单阶存储单元(Single-Level Cell,SLC),使用这种存储单 元的闪存也称为单阶存储单元闪存(SLC flash memory),或简称SLC闪存。
(2)MLC:多阶存储单元(Multi-Level Cell,MLC)可以在每个存储单元内存储2个以上的信息比特
(3)TLC:三阶储存单元(Triple-Level Cell, TLC),这种架构的原理与MLC类似,但可以在每个储存单元内储存3个信息比特。
(4)QLC:四阶储存单元(Quad-Level Cell, QLC),每个存储单元有4个bits的格式,寿命为四者之中最短,大约只有500次。
(注:SLC、MLC、TLC的读写速度依序从快至慢(约4:2:1),使用寿命依序从长至短(约6:3:2),成本依序从高至低,需要纠错比特数(ECC)则是相反地从低至高(同一制程下1:2:4。不过ECC也受制程的影响,同一种芯片,越小尺度的制程需要越多的纠错比特))

三、RAM

1、RAM简介

RAM,是指随机存取存储器(random access memory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的短时间临时数据存储媒介。计算机首先从存储盘将用户请求的程序或文档加载到内存,然后从内存中访问每条信息。由于许多操作均依赖于内存,因此RAM 容量在系统性能方面起着至关重要的作用。

2、RAM分类

为进一步定义随机存取存储器,RAM可分为DRAM和SRAM,DRAM 是较为常见的一种 RAM;它是指动态随机存取存储器,动态部分来自不断刷新的数据。此外还有一种是 SRAM,也称为静态随机存取存储器,静态指的是信息不需要刷新。SRAM 速度快,但价格也较高。两种类型 的 RAM 均具有易失性,即计算机电源关闭之后将不保存其中所包含的信息。

2.1 DRAM

2.1.1 DRAM简介

DRAM 是一种常见的随机存取存储器(RAM),用于个人计算机 (PC)、工作站和服务器。随机访问允许 PC 处理器直接访问内存的任何部分,而不必从起始位置顺序进行。DRAM 存储单元是动态的,这意味着它需要每隔几毫秒刷新一次或重新充电一次,以补偿电容器的电荷泄漏。

2.1.2 DRAM分类

(1)SDRAM
SDRAM简介

同步动态随机存取存储器,通常缩写为SDRAM,是一种动态随机存取存储器(DRAM)。SDRAM的接口与系统总线同步,将信息从 CPU 传输到内存控制器集线器。这导致与系统总线同步的快速响应,这是 SDRAM 在大多数计算机设备中广泛流行和使用的主要原因。
与传统的异步 DRAM 相比,SDRAM 提供更高的数据传输速率和并发性。除此之外,SDRAM 以低成本提供简单的设计,这可以极大地使制造商受益。这些优势使 SDRAM 成为计算机内存市场的流行和首选,特别是 RAM。

DDR简介

DDR=Double Data Rate双倍速率,双倍数据率同步动态随机存取存储器(英语:Double Data Rate Synchronous Dynamic Random Access Memory,简称***DDR SDRAM***)为具有双倍数据传输率的SDRAM,人们习惯称为DDR。其数据传输速度为系统时钟频率的两倍,由于速度增加,其传输性能优于传统的SDRAM。DDR SDRAM 在系统时钟的上升沿和下降沿都可以进行数据传输。DDR内存是在SDRAM内存基础上发展而来的,仍然沿用SDRAM生产体系。

DDR发展
产品型号数据传输速率其他特点
DDR12.1-3.2 GB/s工作电压:2.5/2.6V
DDR24.2-6.4 GB/s提供两种始终速率:200/260MHZ
DDR38.5-14.9 GB/s工作电压:1.35-1.5V
DDR417-25.6 GB/s低能耗,高带宽
DDR556.25GB/s支持4.8GB/s带宽
(2) FPM DRAM

快速页面模式 DRAM (FPM DRAM) 通过专注于快速页面访问,提供比其他 DRAM 类型更高的性能。

2.1.3 DRAM封装

DRAM 封装主要有两种类型:单列直插式内存模块 (SIMM) 和双列直插式内存模块 (DIMM)。
SIMM 有 30 和 72 针脚组,通常具有 32 位数据传输速率。另一方面,DIMM 现在很常用,并且是双列直插的——这意味着它们在芯片的两侧都有引脚。DIMM 通常有 168 针连接器——或更多——并支持 64 位数据传输速率。

DIMM 的 DRAM 封装类型被设置为不同的集成电路架构。其中一些包括:

  • 无缓冲 DIMM (UDIMM) 通常用于台式机和笔记本电脑。这些成本更低,运行速度更快,但稳定性较差。
  • 寄存式 DIMM (RDIMM) 通常用于服务器。这些更稳定并减少了 CPU 内存控制器的压力。
  • 全缓冲 DIMM (FB-DIMM) 用于较大的内存系统。这些更可靠,因为它们可以改进错误检测方法并保持信号完整性。

2.2 SRAM

2.2.1 SRAM简介

静态随机存取存储器(Static Random-Access Memory,SRAM)是随机存取存储器的一种。所谓的“静态”,是指这种存储器只要保持通电,里面储存的数据就可以恒常保持。SRAM主要用于二级高速缓存(Level2 Cache)。它利用晶体管来存储数据。与DRAM相比,SRAM的速度快,但在相同面积中SRAM的容量要比其他类型的内存小。SRAM速度快但昂贵,一般用小容量的SRAM作为更高速CPU和较低速DRAM之间的缓存。

2.2.2 SRAM分类

  • 非挥发性SRAM
    非挥发性SRAM(Non-volatile SRAM,nvSRAM)具有SRAM的标准功能,但在失去电源供电时可以保住其数据。非挥发性SRAM用于网络、航天、医疗等需要关键场合—保住数据是关键的而且不可能用上电池。
  • 异步SRAM
    异步SRAM(Asynchronous SRAM)的容量从4 Kb到64 Mb。SRAM的快速访问使得异步SRAM适用于小型的cache很小的嵌入式处理器的主内存,这种处理器广泛用于工业电子设备、测量设备、硬盘、网络设备等等。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

二维码图片生成工具C#winform源码

二维码图片生成工具C#winform源码 源码描述: 一、源码特点 采用winform进行开发,生成二维码并保存,欢迎下载 二、功能介绍 本源码是一个可以自动生成二维码图片的小模块,可以添加自己的logo图片,可以保存在自己想要保存的地方 …

ubuntu20.04+x86_64+virtualbox6.7 环境下编译xenomai内核和实时性测试[详解]

下面是针对实时系统Xenomai使用的一些记录,实时系统在工业自动化,机器人等智能行业是必需会用到的。 简述 xenomai是众多inux实时性解决方案中的一种,通过在linux的基础上添加一个RTOS内核cobalt,来提高linux的实时性。实时内核cobalt与非实时内核linux相结合,既能提供工…

C/C++笔记-写一个Makefile并链接QtCore库使用QString,QDebug

如下cpp代码&#xff0c;调用QDebug打印程序&#xff1a; #include <QDebug> #include <QString>int main(int argc, char *argv[]){QString testStr "hello";qDebug() << testStr;return 0; } 如下makefile&#xff1a; test: main.cppg -c -…

‘gulp‘ 不是内部或外部命令,也不是可运行的程序

出现问题&#xff1a; D:\git\renwey-web-mobile>gulp default gulp 不是内部或外部命令&#xff0c;也不是可运行的程序 或批处理文件。 两种原因 原因一&#xff1a;环境变量没有设置 原因二&#xff1a;没有安装全局的gulp&#xff0c;只安装了本地gulp&#xff0c;…

CTFShow-Web篇详细wp

CTFShow-Web篇详细wp web签到题web2web3web4web5web6web7web8 CTFShow 平台&#xff1a;https://ctf.show/ web签到题 直接F12然后Base64解码 ctfshow{19bdf375-f974-481e-8c62-0f4c3d170fb4} web2 考点&#xff1a;联合查询 先尝试使用万能密码登入 ‘ or 11# 登入成功&am…

NFS共享服务

文章目录 1.NFS1.1 NFS简介1.2 RPC简介1.3 NFS网络文件系统1.4 NFS应用场景1.5 NFS通讯原理 2.NFS配置 1.NFS 1.1 NFS简介 NFS&#xff08;Network File System&#xff09;即网络文件系统&#xff0c;是FreeBSD支持的文件系统中的一种&#xff0c;它允许网络中的计算机之间通…

产品的技术加油站

作为产品经理的你&#xff0c;每次被喷不懂技术的时候&#xff0c;是否也曾想过暗暗发力&#xff0c;恶补一波技术&#xff0c;然后惊艳所有人&#xff1f;但冷静之后&#xff0c;又觉得无从下手&#xff1f; 是不是还想过要不要学习一下编程&#xff1f;然后被人推荐了什么py…

【致敬未来的攻城狮计划】— 连续打卡第十天:FSP固件库开发及FSP配置详解。

系列文章目录 1.连续打卡第一天&#xff1a;提前对CPK_RA2E1是瑞萨RA系列开发板的初体验&#xff0c;了解一下 2.开发环境的选择和调试&#xff08;从零开始&#xff0c;加油&#xff09; 3.欲速则不达&#xff0c;今天是对RA2E1 基础知识的补充学习。 4.e2 studio 使用教程 5.…

Gnuplot绘图入门2——根据多列文本数据绘制图形

Gnuplot绘图入门2——根据多列文本数据绘制图形 Gnuplot绘图入门1以绘制sin(x)的函数图形为例&#xff0c;对Gnuplot进行了简要介绍。这个教程将介绍如何使用Gnuplot对保存在文本文件&#xff08;.txt、.dat文件&#xff09;中的数据进行可视化。 将下面的数据复制下了&#…

Python高光谱遥感数据处理与机器学习实践技术

目录 第一章 高光谱基础 第二章 高光谱开发基础&#xff08;Python&#xff09; 第三章 高光谱机器学习技术&#xff08;python&#xff09; 第四章 典型案例操作实践 总结了高光谱遥感技术领域的基础原理与核心概念&#xff0c;采用编程语言复现经典数据处理和应用方法&am…

OpenHarmony应用开发-ArkUI方舟开发框架简析

方舟开发框架&#xff08;简称ArkUI&#xff09;为OpenHarmony应用的UI开发提供了完整的基础设施&#xff0c;包括简洁的UI语法、丰富的UI功能&#xff08;组件、布局、动画以及交互事件&#xff09;&#xff0c;以及实时界面预览工具等&#xff0c;可以支持开发者进行可视化界…

ChatGPT会被人工智能干掉吗?

01 ChatGPT火爆全球 ChatGPT是美国“开放人工智能研究中心”2022年11月30日发布的聊天机器人程序&#xff0c;它是人工智能技术驱动的自然语言处理工具&#xff0c;能通过学习和理解人类的语言来进行对话&#xff0c;还能根据聊天的上下文进行互动&#xff0c;真正像人类一样…

pcl中MomentOfInertiaEstimation计算有向包围盒

pcl::MomentOfInertiaEstimation 是 Point Cloud Library (PCL) 中的一个类&#xff0c;用于计算点云中物体的矩。它可以提供点云物体的三个主轴及其长度&#xff0c;以及物体的惯性矩阵等信息。通过使用 pcl::MomentOfInertiaEstimation 类&#xff0c;可以实现物体形状分析、…

C++类和对象-3

承接上一篇博客中内容&#xff0c;讲述完类和对象中构造函数内容之后&#xff0c;这篇博客我们来讲述类和对象中&#xff0c;析构函数的内容。 目录 1.析构函数 2.拷贝构造函数 3.浅拷贝与深拷贝 1.析构函数 在类和对象的构建当中&#xff0c;类中的对象会通过构造函数来…

Jenkins配置邮箱发送报告

本文以qq邮箱为例 1.下载Email Extension Plugin插件 2.在Manage Jenkins--System&#xff0c;Jenkins Location下配置理员邮件 Extended E-mail Notification 下配置Jenkins SMTP server&#xff08;邮箱服务&#xff09;、SMTP Port&#xff08;邮箱端口&#xff09;、Cred…

c++学习(day4)

文章目录 一. 友元&#xff08;friend&#xff09;1 友元函数1.1 全局函数作为友元函数1.2 类的成员函数作为友元函数&#xff08;了解&#xff09; 2. 友元类3. 使用友元的注意事项 二. 常成员函数和常对象&#xff08;const&#xff09;1. 常成员函数2. 常对象3. mutable关键…

【微服务笔记17】微服务组件之Gateway实现动态路由、配置路由规则、路由过滤器

这篇文章&#xff0c;主要介绍微服务组件之Gateway实现动态路由、配置路由映射规则、路由过滤器。 目录 一、动态路由配置 1.1、动态URI路由配置 &#xff08;1&#xff09;引入eureka客户端依赖 &#xff08;2&#xff09;添加路由配置 1.2、服务名称转发配置 二、断言配…

基于 Windows 安装 ESP32 Arduino 软件开发环境

ESP32 Arduino 源码库&#xff1a;arduino-esp32ESP32 Arduino 环境搭建说明&#xff1a;About Arduino ESP32 其他软件环境需求&#xff1a; Git 环境 1、安装 Arduino 软件 可在 Arduino 官网 获取 Windows 端 Arduino 安装包&#xff0c;如下&#xff1a; 使用如下 .exe 一…

JVM类加载过程

文章目录 1、加载2、链接2.1 验证2.2 准备2.3 解析 3、初始化3.1 类初始化练习3.2 懒汉式单例练习 4、类加载器4.1 启动类加载器4.2 扩展类加载器4.3 双亲委派模式4.4 线程上下文类加载器4.4 自定义类加载器 5、运行时优化5.1 即时编译逃逸分析方法内联&#xff08;Inlining&am…

StressAppTest的简介

StressAppTest的全称是Stressful Application Test (stressapptest) 的简称http://code.google.com/p/stressapptest/ 这里我们可以将其简化为SAT。 SAT试图让来自处理器和I/O到内存的数据尽量随机化,以创造出模拟现实的环境来测试现在的硬件设备是否稳定。 SAT的大概作用如…