前言:关于SSD,有众多总线类型、协议类型、接口类型,每个接口还包括不同型号,在这里花点时间全部整理一下,整理日期2017-08-08。

1.传输总线

总线就像一条公路,公路上的车好比总线上的电信号;公路的大小和车流量就决定了公路的车流量,故总线的位宽大小和传输频率决定了一次传输中能够提供的最大速度。常见的总线类型有:

1.1 PCIE

  PCIE是一切的根,所有外设都是由PCIE演化而来。

  给出PCIe 2.0和PCIE 3.0标准速率,实际速率却很难达到这个理论值。

1.2 SATA

1.3 PATA(ATA)

IDE盘

1.4 SCSI

  服务器领域中使用的传输总线,已经很少人用了。

1.5 SAS

  民用领域由PATA到SATA,服务器领域由SCSI到SAS。

  SAS控制器可以兼容SATA的设备,但是SATA控制器不能兼容SAS设备。

  SAS 1.0达到3Gbps,每一代翻2倍。

1.6 FC

  FC接口很稀缺,是基于网络传输协议下诞生的接口。

  起源于SCSI,但速度远远超过SCSI,最新FC通道速度可以达到16Gbps。

2.传输协议

  传输规范、传输标准,也就是数据传输的方式。

2.1 IDE

(1)PATA(并行ATA)

(2)PATA只支持数据部分进行CRC校验

(3)IDE盘不支持热插拔

(4)需要设置主从盘跳线

2.2 AHCI

  Serial ATA Advanced Host Controller Interface,串行ATA高级主控接口/高级主机控制器接口

  IDE速度太低,协议老旧,所以有了AHCI;但AHCI是为了机械硬板而产生的产物,现在SSD已经普及,所以不再说明。

2.3 SATA

  • 协议特性

(1)简介:Serial Advanced Technology Attachment即为Serial ATA,串行高级技术附件。SATA接口是一种基于行业标准的串行硬件驱动器接口。

(2)优势:串行接口结构简单,支持热插拔,传输速度快,执行效率高。

  与传统ATA相比,具备了更强大的纠错能力,很大程度上提高了数据传输的可靠性。

  还节省空间,有利于机箱内部的散热,线缆之间的串扰也得到了有效控制。

  对数据和指令封包进行循环冗余校验(CRC),使得单bit和双bit的错误都能被检测出来。

  SATA不需要设置主从盘跳线。

  • 支持的接口类型

  主要有5中接口形式:SATA、Half-slim、mSATA、mini-mSATA、B-key M.2

  • SATA接口pin脚定义

  说明:SATA 3.1之后,没有3.3V,第3脚为休眠脚。

2.4 NVMe

  一种建立在M.2接口上的类似AHCI的一种协议,是专门为闪存类存储设计的协议。

  具体优势包括:

  ①性能有数倍的提升;
  ②可降低延迟超过50%;
  ③NVMe PCIe SSD可提供的IOPs十倍于高端企业级SATA SSD;
  ④自动功耗状态切换和动态能耗管理功能大大降低功耗;
  ⑤支持未来十年技术发展的可扩展能力。

3. 传输接口图例

  传输接口也就是一个插口。

SAS

PATA(IDE)

SATA & Half-slim

  左边:SATA;右边:half-slim(半高SATA)。

mSATA & mini-mSATA

  左边:m-SATA;右边:mini-mSATA(半高mSATA)。

  正反面都有pin脚,且pin脚数一样。

M.2

  M.2(NGFF) B+M

  根据接口样式:M.2分为M、B、B+M接口样式。

  其中,B key支持SATA协议;M key支持PCIE协议。

U.2

PCIE

  分为:PCI、PCIEx1、PCIEx4  x8  x16等。

  下图为PCIEx4:

ZIF

VPX

  VPX 无标准,信号自定义,是定制化的

DOM

  USB DOM

SSD的传输总线、传输协议、传输接口的更多相关文章

  1. (传输层)TCP协议

    目录 首部格式数据单位特定注意自动重传请求ARQ具体实现发送缓存接收缓存滑动窗口确认丢失和确认迟到超时重传时间选择报文段的发送时机运输连接发送TCP请求客户端拥塞处理相关概念避免拥塞具体实现TCP 的 ...

  2. OSI模型第四层传输层--UDP协议

    1.udp协议 UDP是OSI参考模型中一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成[2]  ,提供面向事务的简单不可靠信息传送服务.UDP 协议 ...

  3. 传输层TCP协议

    目录 首部格式数据单位特定注意自动重传请求ARQ具体实现发送缓存接收缓存滑动窗口确认丢失和确认迟到超时重传时间选择报文段的发送时机运输连接发送TCP请求客户端拥塞处理相关概念避免拥塞具体实现TCP 的 ...

  4. 传输层tcp协议以及scoket套字节方法

    一.传输层 1.传输层的由来: 网络层的IP帮我们区分子网 以太网的Mac帮我们找到主机 所以通过IP和Mac找到了一台特定的主机 如何找到该特定主机的应用程序呢? 答案是通过端口,端口即应用程序与网 ...

  5. OSI模型第四层传输层--TCP协议

    1.传输层2个协议tcp和udp 2.tcp的可靠性(挂号信). 面向链接的:类似寄挂号信,对方收到了并且能够确认.所以也是可靠的传输. 最大报文传输:两端可以协商传输报文大小.(协商一个报文的大小) ...

  6. Netty--使用TCP协议传输文件

    简介: 用于将文件通过TCP协议传输到另一台机器,两台机器需要通过网络互联. 实现: 使用Netty进行文件传输,服务端读取文件并将文件拆分为多个数据块发送,接收端接收数据块,并按顺序将数据写入文件. ...

  7. 【传输文件】文件传输协议FTP、SFTP和SCP

    网络通信协议分层 应用层: HTTP(Hypertext Transfer Protocol 超文本传输协议,显示网页) DNS(Domain Name System) FTP(File Transf ...

  8. 使用同一个目的port的p2p协议传输的tcp流特征相似度计算

    结论: (1)使用同一个目的port的p2p协议传输的tcp流特征相似度高达99%.如果他们是cc通信,那么应该都算在一起,反之就都不是cc通信流. (2)使用不同目的端口的p2p协议传输的tcp流相 ...

  9. 有关使用HTTP协议传输二进制文件

    HTTP协议是基于字符(ASCII)的,当Content-Type项为text/xml,则内容是文本格式:当二进制格式时,Content-Type项为image/gif,就是了.例如,浏览器请求一张图 ...

随机推荐

  1. 原生js实现Ajax的原理。

    Ajax(Asynchronous JavaScript and XML)表示异步的js与xml. 有别于传统web的同步开发方式. 原理:通过XMLHttpRequest对象向服务器发送异步请求,从 ...

  2. Redis客户端管理工具的安装及使用

    1.下载及安装 请到官网下载:www.treesoft.cn,要最新的版本treeNMS, window系统下载直接解压,就可以用了,免安装,免布署. 2.登录及连接参数配置 登录后,要配置连接参数信 ...

  3. nvarchar 和varchar区别

    有时候设计字段的时候,碰到nvarchar和varchar时候,是有点犹豫.所以今天就来探个究竟把. (一)  varchar是非Unicode可变长度类型,nvarchar是Unicode编码可变长 ...

  4. js中的字符替换

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. thinkphp带查询条件的分页

    <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...

  6. window.onload的加载和$(document).read()

    1.执行时机: window.onload :必须等到网页中所有的内容加载完之后才执行. $(document).read():网页中所有的DOM结构执行完毕后.可能DOM元素并未加载完. 2.单个网 ...

  7. JavaSE中Collection集合框架学习笔记(1)——具有索引的List

    前言:因为最近要重新找工作,Collection(集合)是面试中出现频率非常高的基础考察点,所以好好恶补了一番. 复习过程中深感之前的学习不系统,而且不能再像刚毕业那样死背面试题,例如:String是 ...

  8. C# 中关于接口实现、显示实现接口以及继承

    先列出我写的代码: 接口以及抽象类.实现类 public interface IA { void H(); } public interface IB { void H(); } public abs ...

  9. Python查看MQ队列深度

    分享一段代码,很简单但是也很实用. #!/usr/bin/python #-*- coding:gb18030 -*- ''' Usage: mq.py [Qmgr] *get the queues' ...

  10. # nodejs模块学习: express 解析

    # nodejs模块学习: express 解析 nodejs 发展很快,从 npm 上面的包托管数量就可以看出来.不过从另一方面来看,也是反映了 nodejs 的基础不稳固,需要开发者创造大量的轮子 ...