SSD接口详解,再也不会买错固态硬盘了
http://stor.51cto.com/art/201808/582349.htm
硬盘知识科普中,我们提到了SSD的发展史虽短,但是种类和协议比HDD不知道多到哪里去了。因此,本期小编就通过接口类型,总线标准和协议标准来详细地介绍SSD。本文可能会出现很多小白都没有见过或者听过的名词。但是,对科技的探索,就是在不断学习新事物的过程嘛。
- 作者:科技补丁来源:今日头条|2018-08-29 14:56
硬盘知识科普中,我们提到了SSD的发展史虽短,但是种类和协议比HDD不知道多到哪里去了。因此,本期小编就通过接口类型,总线标准和协议标准来详细地介绍SSD。本文可能会出现很多小白都没有见过或者听过的名词。但是,对科技的探索,就是在不断学习新事物的过程嘛。
逻辑标准篇
首先,小编先给出几个名词:
SATA、PCI-E和AHCI、NVMe
是不是很熟悉,但是解释起来,SATA好像是一种接口,但是好像又听过SATA标准的M.2 SSD?PCI-E好像是显卡插槽,怎么可以插想intel 750这样的SSD呢,而且插在PCI-E的750怎么也写着支持NVMe,NVMe不是插M.2接口的SSD吗?看到这里是不是觉得有点懵了?(小编也是懵了好久才绕出这个圈的T_T)

首先,先给这四个词分一下类,SATA、PCI-E是总线标准,AHCI和NVMe是协议标准。这两个标准是属于从属关系,即总线标准是在协议标准之上,在讨论接口标准的时候,绝对不能把四者混为一谈。(在这里,我们讨论标准的时候,就不要和物理接口混为一谈,下文我们会逐一介绍各种不同类型SSD接口。)总线标准一般是指系统与其组成模块之间相互连接的一个标准界面,目前最常见的SATA3.0总线理论上最高的速度只有6Gbps,PCI-E 3.0 x4的总线速度却高达32Gbps,这就是不同总线标准的上限差距。而协议标准而是可以说针对系统中模块定制的规范,在SSD中我们常见的AHCI标准,就是SATA硬盘对应的协议标准。而NVMe标准则是专门针对PCI-E接口总线定制的一种SSD协议。而且需要注意的是,PCI-E总线一般是可以兼容AHCI标准的SSD(以厂商设计说明为准),而SATA总线却不支持NVMe标准的SSD。简单的来说,就是,ACHI协议是SATA总线的一个优化驱动,PCI-E也可以用这个驱动,而NVMe协议是PCI-E总线专门给自己量身定做的一个SSD驱动,只能给自己用,别人都用不了。
说到这里,是不是有些明白了,但是在M.2接口好像还是搞不懂,有些主板上写着M.2接口支持SATA标准的SSD,有些主板则写着兼容NVMe标准和SATA标准的SSD?接下来我们就逐一介绍目前市面上可见的不同SSD接口。
物理接口篇
SATA接口

(最常见的SATA接口)
SATA接口应该是我们最常见的接口了,不过是机械硬盘还是固态硬盘,大部分都是使用SATA接口来与主板连接。SATA接口发展到今天已经是第三代了,也就是我们常说的SATA3.0,现在也很少见到SATA2.0或者1.0的接口,就算是见到了也不用担心,因为SATA是向前兼容的,就算是SATA3.0的硬盘,插在SATA2.0的接口上也是可以用的,就算理论速度会降低一半。而目前SATA3.0理论速度最高支持6Gb/s,差不多也是机械硬盘传输的天花板了,而对于当红的固态硬盘,这个速度倒是成为了瓶颈,所以后续才会出现更多的接口。

(一块家用sata接口的SSD)
SATA Express接口

(华硕主板的SATA Express接口)
根据图片来看,无非就是把连个SATA接口并在一起,而事实上也确实如此。SATA Express接口是由连个SATA接口和一个辅助接口组成,理论上速度就是6Gb/s+6Gb/s=12Gb/s,实际上由于损耗可能也就10Gb/s左右的速度,但是这个接口很多人事听都没有听过的,因为它只出现了再两代主板上,就泯然众人已了。原因就是有成本更低,速度更快的M.2接口的出现,让一个刚面世的接口马上就接受了淘汰的命运。
SAS接口

(用于服务器的SAS连接线和SAS固态硬盘)
看起来也和SATA接口差不多,就是在中间多了几个金手指。实际上SAS接口也是在SATA接口上加多了SCSI技术,这个技术主要用来提高数据传输的稳定性和安全性。SAS接口相对于SATA接口,数据传输的电缆可以更长,稳定性和耐用性也越强,因此一般都是用于企业服务器这种需要长时间不间断读写的设备使用,在民用市场基本很少见,而且因为成本的原因,也很少有个人消费者去购买。SAS的理论速度目前最大可以达到12Gb/s。也是比较适合服务器主机这类对速度要求比较高的设备。值得一提的是,SAS接口是可以兼容普通的SATA硬盘,但是反过来SAS硬盘是不能插在SATA接口上的。SAS的理论速度目前最大可以达到12Gb/s。
U.2接口

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

(mSATA插槽)
mSATA接口的全称叫mini-SATA接口,这个接口当时是为了给笔记本这类内部空间比较狭小的设备提供SSD设备而制定的。顾名思义就是一个缩小版的SATA接口,在总线标准和协议标准还是传输速度上,都是和SATA3.0接口一样的。唯一需要注意的就是MSATAssd的尺寸有两种,一种是全高尺寸(30mm*50mm)和半高尺寸(30mm*25mm)的。

(全高的mSATA固态硬盘)
M.2接口

(两种不同的M.2插槽)
M.2接口一开始是叫NGFF接口的,后来才改叫为M.2的。至于改名的原因,就是M.2出现了支持NVMe标准的接口。所以我们就根据改名前后,把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接口的插槽上,但是反过来是不可以的。在尺寸上,M.2接口也是有五种长度尺寸的,分别是2230、2242、2260、2280和22110,其中最常见的就是我们常见的2280。

(不同协议的M.2硬盘)
PCI-E接口

(主板上PCI-E插槽)
PCI-E接口其实一开始是不是为SSD定制的接口,毕竟定制PCI-E接口协议的时候,SSD还没有出生。后来厂商发现了主板上的PCI-E插槽反正也插不完,SATA接口的速度又太慢,就干脆设计出了插在PCI-E插槽上的SSD。一般插PCI-E接口的SSD是走PCI-E总线的,虽然SATA标准的SSD也可以通过转接卡插在PCI-E接口上,但是速度也不会有提神。在尺寸类型上,PCI-E接口的SSD还分为PCI-E 2.0 x2、x4、x8还有PCI-E 3.0 x2和x4的版本,目前最常用的也应该是PCI-E 3.0 x4的SSD了。
(文章开头的第一章图,就是PCI-E插槽的SSD)
写到,差不多市面所能见的SSD接口都已经介绍完毕(可能有人会问小编没有介绍mini-PCI-E接口,因为mini-PCI-E接口设计初衷就不是为了给SSD服务的,同样插槽的mSATA接口比它更快,mini-PCI-E接口就没有必要讨论了),看完这么多不同协议不同标准的接口,很多人估计都看晕了。所以,在最后小编就做了一张图,来结束这剪不断理还乱的接口类型。

SSD接口详解,再也不会买错固态硬盘了的更多相关文章
- JDBC常用接口详解
JDBC中常用接口详解 ***DriverManager 第一.注册驱动 第一种方式:DriverManager.registerDriver(new com.mysql.jdbc.Driver()) ...
- Java6.0中Comparable接口与Comparator接口详解
Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ...
- socket接口详解
1. socket概述 socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信. socket起源于UNIX,在Unix一切 ...
- “全栈2019”Java第八十四章:接口中嵌套接口详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第八十三章:内部类与接口详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- Java接口 详解(二)
上一篇Java接口 详解(一)讲到了接口的基本概念.接口的使用和接口的实际应用(标准定义).我们接着来讲. 一.接口的应用—工厂设计模式(Factory) 我们先看一个范例: package com. ...
- [转载]MII/MDIO接口详解
原文地址:MII/MDIO接口详解作者:心田麦浪 本文主要分析MII/RMII/SMII,以及GMII/RGMII/SGMII接口的信号定义,及相关知识,同时本文也对RJ-45接口进行了总结,分析了在 ...
- map接口详解
1.Map接口详解(1)映射(map)是一个存储键.键值对的对象,给定一个键,可以查询得到它的值,键和值都可以是对象(2)键必须是唯一的,值可以重复(Map接口映射唯一的键到值)(3)有些映射可以接收 ...
- ReadWriteLock 接口详解
ReadWriteLock 接口详解 这是本人阅读ReadWriteLock接口源码的注释后,写出的一篇知识分享博客 读写锁的成分是什么? 读锁 Lock readLock(); 只要没有写锁,读锁可 ...
随机推荐
- centos7在线安装mysql8.0.16
一.官网复制安装源地址: 1.进入官网地址:https://dev.mysql.com/downloads/repo/yum/ 二.进入/usr/local目录下 ,创建mysql文件夹 三.使用命令 ...
- CNN笔记:通俗理解卷积神经网络
CNN笔记:通俗理解卷积神经网络 2016年07月02日 22:14:50 v_JULY_v 阅读数 250368更多 分类专栏: 30.Machine L & Deep Learning 机 ...
- PHP curl_getinfo函数
curl_getinfo — 获取一个cURL连接资源句柄的信息 说明 mixed curl_getinfo ( resource $ch [, int $opt = 0 ] ) 获取最后一次传输的相 ...
- HDU 6058 Kanade's sum —— 2017 Multi-University Training 3
Kanade's sum Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tota ...
- scipy与sklearn下载与安装
一.scipy下载与安装 scipy下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv提供各种包whl文件 下载之后放到Scripts文件中 ...
- LOJ 2719 「NOI2018」冒泡排序——模型转化
题目:https://loj.ac/problem/2719 首先要发现合法的充要条件是 | LDS | <=2 ! 因为有没用的步数,说明一个元素先往左移.又往右移(不会先往右移再往左移,因为 ...
- 如何为网站启用HTTPS加密传输协议
前言 当今时代对上网的安全性要求比以前更高,chrome和firefox也都大力支持网站使用HTTPS,苹果也从2017年开始在iOS 10系统中强制app使用HTTPS来传输数据,微信小程序也是要求 ...
- 测开之路五十七:实现runner和测试报告
准备测试用例 from fox.case import Casefrom src import Calculator class TestCalculator(Case): def setUp(sel ...
- 用Linux 搭建 PXE 网络引导环境
本例子中使用了CentOS7.4 minimal 系统,并且关闭了防火墙和selinux,并使用了dhcp.tftp.http和samba服务. 假设PXE服务器是192.168.4.104 ,tft ...
- centos 7 安装 redis 及 php-redis 拓展
===============redis 安装========================== 直接yum 安装的redis 不是最新版本 yum install redis 如果要安装最新的re ...