来源:http://bbs.pceva.com.cn/thread-96050-1-1.html
NGFF M.2(以下下简称M2)和SATA Express(以下下简称SATAe)是用以替代当前MiniPCI-Express(以下下简称MIni PCIe)/mSATA和SATA的新一代接口。
M2接口和SATAe接口已经可以在部分新款笔记本电脑和Intel 9系列主板上见到了,因为易与现有的接口相混淆,在这里做一个简单介绍。
一、M2
M2是目前常见于无线网卡、3G网卡和部分小型SSD的Mini PCIe/mSATA的替代升级版,具备小尺寸、低高度、集成度更高的优势。
M2接口、板卡因尺寸规格(长宽高)和键位(Key)不同,分为多种规格。下面引用链接器制造商TE的一篇PDF,
简单说明。
可以看出,M2是以宽度长度-高度-键位,这4个参数来区分不同规格的。特别是最后一项键位,它特别区分了用途。
比如举例中的2242-D2-B-M,是一个宽度22mm长度 42mm双面各高1.35mm B+M键位的M2插卡,这块插卡应当是一块SSD,具备PCIe x2及SATA接口(当然任何M2设备只能用其中一种接口,具体使用哪个接口由主控决定)。
(上图分别是mSATA规格和M2 2280-D2-B-M规格的Intel 530 SSD)
(上图是2280-D2-M规格的三星XP941 SSD)
(上图分别是Mini PCIe半高规格和M2 2230-S3-A-E规格的Intel 7260无线网卡)
(上图是华硕Z97杜蕾斯,可以看到PCH散热器下方靠近SATAe端口旁边有一个M2 M键插槽,可以支持M2 2260和2280两种规格的SSD)
通过上面的例子可以看出M2插卡、插槽的用途可以通过键位来区分。同时,每种规格中也包含多组数据/信号通道,供不同用途使用。跟Mini PCIe/mSATA一样,M2接口的金手指也是两面交错排列的。这里为了说明,给几种常见规格的针脚定义。
(上图 M2-A,键位在pin8-pin15。具备PCIe x2、NFC、Display Port和USB 2.0通道等)
(上图 M2-B,键位在pin12-pin19。具备SIM卡、音频、PCIe 2.0、SATA及USB 3.0通道复用通道等)
(上图 M2-E,键位在pin24-pin31。具备PCIe x2、NFC、SDIO、PCM、USB 2.0通道等)
(上图 M2-M,键位在pin59-pin66。具备PCIe x4及SATA复用通道)
(上图 M2-1216 HMC规格,非插卡形式,主要用于通信模块)
(上图 M2-2226 HMC规格,非插卡形式,依然是通信模块)
(上图 M2接口金手指及键位布局,可以看到金手指是交错排列的)
从规格中我们可以看到除了A B E M四个键位以外,还有其他键位,但大部分尚未应用。
M2的键位设计的比较有迷惑性,像当年DDR内存一样,容易被强插导致插反。比如A和M键位,注意数一下两面剩余的金手指片数,一个是4/3,一个是5/4。另外就是碰见不熟悉的,不要强插,以免损坏。
从针脚定义图中可以发现A及E的针脚定义有一定的共通性,B及M的有一定共同性,但AE/BM二者之间差异较大。也就是说M2接口是通过不同的键位加以区别的,不能通过物理损坏的方式,强行将其他键位的插卡插入不合规格的插槽中。
跟Mini PCIe/mSATA接口类似,B M键位的M2接口的PCIe通道和SATA通道也是复用的,通过一组检测针脚来判断设备是走PCIe通道还是SATA通道,同一设备只能用其一。
M2接口也是只用3.3v为输入电压,如果未来会有向2.5"转接的设备,可能需要DC-DC转换或者要求直接3.3V输入。
点评:
M2接口在设计之时就考虑到了可用于多种用途,多种尺寸规格可以用在不同场合之中(不仅有前面介绍的22mm宽度和HMC模块形式,还有16mm和30mm宽度,在最后的资料中提供),而且未来还有进一步扩展的空间。
但就是因为规格太多,容易使人发生混淆和兼容性的障碍。就比如一台笔记本里面是2242规格的插槽,那么其他2260/2280规格的SSD就肯定无法使用;同样,如果2260规格的插槽在42mm位置没有预制螺丝孔,那么也没法使用2242规格的SSD。
现阶段M2规格的设备尚少,某些厂家走在了前列,或者同时推出M2和Mini PCIe/mSATA规格的设备。在购买时候一定要确定插槽的规格,以及设备的规格。除了尺寸和键位以外,还要注意SSD走的是PCIe通道还是SATA通道。如果同一款SSD既有mSATA规格又有M2规格的(比如Intel 530),那么肯定是走SATA通道的,不要被外形所迷惑。
二、SATAe
SATAe是目前SATA接口的升级版,有点类似于M2,也是PCIe x2及SATA的复用接口。
SATAe并不是全新设计的接口,它是在现有SATA接口上加以改造得来的,借鉴了一部分SAS接口的设计。
如上图所示:(a)是SATAe设备端插头;(b)是SATAe数据线设备端插口;(c)是SATAe热插拔背板设备端插口;(d)是SATAe主机端插口;(e)是SATAe数据线主机端插头。
这里我们跟现有的SATA接口和数据线插头找不同就可以了。如果手里有空闲不用的SATA硬盘和数据线/电源线(一体的最好),可以拿来进行对比。如果手里有SAS接口设备更佳。
先说设备端。
目前SATA设备的接口是分两段——数据线7pin和电源线15pin,有一个"7"或者"L"形的舌头或者缺口。在SATAe里面,"7"和"L"拐角处被连接起来,也就是舌头成了一个完整的平面,底下空缺。同时,在连接处的另一面多了7pin金手指。
不太形象?这里借用一下SAS接口用以说明(SAS接口跟SATAe的设备端接口具有很大的相似性)。
A段和C段是SATA、SATAe、SAS接口共有的部分,B段是SATAe和SAS接口独有的部分。SATAe接口和SAS接口B段的物理外形并不完全相同,结合最上方图(b)的就能发现SAS接口是B端下方整个掏空了,而SATAe接口B端下面依然有个突出。这也就保证SAS和包括SATA一体线缆无法插入SATAe设备中,反之,SATAe线缆可以插入SATA和SAS设备中。
换个视角。看你手里SATA硬盘的接口、最上方图(a)(b)和上图。SATA接口是"7"和"L"中间是断开的;SATAe接口是"7"和"L"拐角处被连接起来,但底下空缺一块;SAS接口是"7"和"L"拐角处整个连成一体。
再到主机端。
SATAe接口的主机端实际上就是两个SATA接口并排,再加上一个只有4pin的缩小版SATA接口。这是为了保证向下兼容性,毕竟SATAe接口是复用PCIe x2及2组SATA线路,如果不考虑兼容性的话,接口浪费会很严重,而且难以布局。
其实还有一种只有PCIe x2线路的SATAe接口,实在最上方图(d)的SATA接口中多了几个凸起,这样SATA数据线缆就无法插入这个接口,只能用专门的SATAe PCIe x2线缆。
也许有人要问,既然是用PCIe x2替代两组SATA线路,那么为什么还要多4pin接口?除了物理上加以区分以外,其中一个原因就是SATA是存储专用,但PCIe是外围通用,不仅要有数据pin,还要有时钟pin等。
SATAe我没有找到确切的针脚定义,但基本上可以推断出是PCIeTx+/Tx-/Rx+/Rx-与SATA Tx+/Tx-/Rx+/Rx-相复用,PCIe额外要用的针脚可能与其他针脚相复用。这也就导致SATAe线缆虽然能插进SAS设备中,但实际上没法用。
点评:
SATAe是为了解决目前标准2.5"和3.5"外形存储设备带宽而设计的,出发点是好的,但可能很快沦为鸡肋。
为了保证对SATA的向下兼容性,SATAe的接口占地面积过大。相对于M2小巧的接口,SATAe简直巨大,而且带宽只有M2 M键规格的一半(这还不算上M2可以用来自CPU的PCIe 3.0,但SATAe目前只能用PCH提供的PCIe 2.0的差异),在有更大带宽的设备时,新的瓶颈就会出现。所以SATAe很可能只是过度设备,或者只能作为消费级平台上的非固定存储设备。因为:
1 在不追求单一设备高带宽的情况下,有便宜量又足的SATA 6Gbps(半双工)。即使主板原生的不够用,还有低成本的PCIe SATA扩展卡。
2 在追求高可靠性和高可用性的情况下,有双端口SAS,单端口带宽就可达12Gbps(全双工)。可以通过SAS HBA和SAS Expender成规模扩展。
3 在追求高性能的情况下,有PCIe插卡形式的SSD(包括M2)。可以自主选择x2 x4 x8甚至更高的PCIe链路需求,以实现更高带宽。
4 在同时追求高性能和热插拔的情况下,有为下一代NVMe SSD设计的多功能接口 SFF-8639。包含6条数据通道,可用于PCIe 3.0 x4、SATAe x2、SAS 12Gbps、SATA 6Gbps,根据需要以分配。
SFF-8639,目前可见于Intel和三丧最新的2.5" PCIe NVMe SSD和DELL PowerEdge R920服务器上。
SFF-8639接口在SAS接口(SFF-8482)的两面上都排列了针脚,使其具备6条数据通道(复用):白色SATAe x2;白色及灰色SAS x4;黑色PCIe x4。
未来的SATAe设备接口可能会转向SFF-8639接口,以适应下一代需求。
由于Intel决定不在新的9系列平台上提供对SATAe的原生支持,所以目前计划推出的9系列新主板也只有部分高端型号加入了该接口,但PCH PCIe链路争抢严重,加之与CPU通信的DMI总线只有相当于PCIe 2.0 x4的带宽,所以即使有了新接口,但也难以发挥出优势。况且目前尚无量产的SATAe设备,主板上的接口只能暂时当一般的SATA接口使用,或者转接为标准PCIe 2.0 x2插槽使用。
下一代原生PCIe的SSD主控,比如SF-3700系列,前端同时提供PCIe x2和SATA两种接口,配合SATAe接口也许能发挥最大作用。
三、M2和SATAe带来了什么
显而易见的就是更高的带宽。PCIe 2.0 x2 10Gbps要比SATA 6Gbps快了66%,如果升级成PCIe 3.0 x4更是快了5倍以上。
但这是对目前最常见的SATA来说。在数据中心和其他有RAS要求的环境中广泛应用的SAS具备双端口功能,而且是全双工(SATA是半双工)。在SAS 6Gbps下,利用双端口就可以实现12Gbps的总带宽,已经可以超过目前大部分M2和SATAe设备的带宽。而且SAS已经进化到12Gbps,双端口也就是24Gbps的带宽,仅比PCIe 3.0 x4的32Gbps少了1/4。(其实不应该这么比,SAS的双端口很多时候是作为冗余用的,目的是防止单点故障;而且一个是企业级一个是消费级,设计思路是不同的)
存储接口纷纷拥抱PCIe的一个原因就是PCIe可以通过多通道轻松倍增带宽,x1-x2-x4-x8-x16。而SATA只能通过RAID的方式间接增加带宽,逻辑更复杂了,系统的不稳定因素也更多了。
但系统中的PCIe资源是有限的。Intel LGA1150 CPU只有16条PCIe通道,9系列芯片组可以拿出8条(其中1条必然要被集成网卡拿走),其中有多少资源可以供给M2和SATAe用?高端主板上排满了PCIe x16插槽和各种板载设备,还要留出空间给M2和SATAe,资源争抢非常严重。要知道先前提到的配备PCIe NVMe SSD的DELL PowerEdge R920是四路E7v2的服务器,总共有160条PCIe 3.0通道,因此分8x4条出来给存储用完全无压力。
当然主板厂商可以依靠老办法——PCIe通道切换开关和PLX桥接芯片来最大化PCIe布局。最后的结果可能是密密麻麻的一板子接口,大部分是摆设;或者一堆设备争抢一条窄路,看上去美,但用起来受罪。(合理应用PCIe开关和PLX桥接芯片可以最大化资源利用,但前提是合理;为确保使用体验,用户也应该知道哪些接口共用了一条通道;我不想再说说明书的重要性,但消费级主板厂家的说明书大都是摆设)
至于曾经提及的延迟问题,仅仅是从SATA转向PCIe并不会带来实质的进步。相反,转接过多的话,延迟会不降反增。这跟多卡SLI/CF,用PLX方案的性能要比原生通道拆分的低是一个道理。
也许主板厂商可以大胆地分配一路PCIe 3.0 x4给M2接口与最后一条PCIe x16接口共用,但这目前也是象征意义大于实际意义。直接用CPU的PCIe通道固然可以降低延迟提高性能,但这也限制了显卡的扩展,而且目前尚无PCIe 3.0 x4的M2 SSD。所以就实用来说,对主板厂商还是用户,都是一个两难境地。而这种尴尬局面也许需要更多的CPU PCIe通道(比如LGA2011平台)和未来新设备的发展才能解决。
mSATA接口是标准SATA的迷你版本,由于mSATA SSD占用体积比2.5寸标准更小,因而在不少笔记本中得到采用。同时mSATA接口的SSD可以方便固定在主板上成为一体,也开始受到不少台式机用户的喜爱。
mSATA接口与mini PCI-E接口的外观相同,并且物理引脚相容。但并不能直接互通使用。这给不少人带来了疑惑。有朋友买了mSATA SSD回来却发现安装后无法识别SSD。
mSATA接口的美光M4 64G,本站曾有测试: http://bbs.pceva.com.cn/thread-51870-1-1.html
mSATA的接口外观上虽然与mini PCI-E完全一样,但是数据信号需要连接到SATA控制器,而非PCI-E控制器上,二者因此不能兼容。大多数主板的此类接口只能使用其中一种功能。
要实现一个接口同时兼容mSATA与mini PCI-E,需要使用PCI-Express/SATA路由芯片来解决。这个芯片本质上就是一个双向多路复用器,以NXP CBTL02042芯片为例:
mSATA和mini PCI-E接口有着相同的外形和类似的引脚分配。CBTL02042通过第43针脚来识别当前插入到插槽中的是mSATA设备还是mini PCI-E设备:mini PCI-E设备的第43针被定义为no connect未连接,而mSATA的第43针定义是GND地线。
识别设备类型后,路由芯片就能够将接口导通到对应的通道,从而实现了一个接口兼容mSATA与mini PCI-E两种设备的目的。目前来看这是最完美的解决方案。
市面上提供mini PCI-E/mSATA插槽的主板大致分为4类:
只提供mini PCI-E:
多数主板属于此类。mini PCI-E接口主要就是用于安装无线网卡,提供板载Wifi功能。
技嘉GA-H77N WIFI提供了一个mini PCI-E插槽,搭配安装半高规格的无线网卡。
只提供mSATA:
技嘉的GA-B75-D3V,提供了一个mSATA插槽,专门用于mSATA SSD。
同时提供mini PCI-E与mSATA接口:
华擎Z77E-ITX同时具备mSATA(背面)与mini PIC-E(正面)插槽,论坛内的McLaren发过此型主板的开箱文展示:http://bbs.pceva.com.cn/thread-70944-1-1.html
正面的mini PCI-E插槽,用于安装无线网卡(附送)。
背面的mSATA插槽,用于安装mSATA接口的SSD(非标配):
双向多路复用,同时兼容mSATA/mini PCI-E:
微星Z77IA-E53(本站评测:http://www.pceva.com.cn/article-1353-2.html)
能够同时兼容半高与全高规格的设备:
总结
由于mSATA接口需要复用主板的SATA接口,目前多数主板的mSATA接口为3Gbps规格(SATA2.0)。6Gbps(SATA3.0)速率的mSATA更多的出现在笔记本上。
mSATA SSD的大小约为51mm*30mm,为全高mini PCI-E卡的长度。
mini PCI-E无线网卡多数为半高规格,约为27mm*30mm。当然了,也不能排除有Intel 3945这类全高规格的,不过半高规格还是占据了多数。
mSATA与mini PCI-E接口的外观相同,安装位的规格可以作为判断接口类型的一个参考。半高位的基本可以肯定是用来安装无线网卡的mini PCI-E插槽;而要判定插槽为mSATA,除了安装位需要是全高规格以外,最好还是查一下主板厂商的资料进行一下确认。多数支持mSATA的主板会进行明确的标注,而如果没有相关信息,则该插槽很可能是mini PCI-E标准的
mSATA引脚定义
Mini PCI-E引脚定义