
PCIe转M.2(NVMe协议)转接卡
简介
简单的PCIe转M.2转接卡
简介:简单的PCIe转M.2转接卡开源协议
:GPL 3.0
描述
一、简介
PCI-E是什么呢?
简而言之,PCI-E是英特尔在2001年提出的一种取代以前的PCI、AGP的计算机内部互联总线标准。特点是串行(以前的ISA、PCI、AGP等都是并行的),并且支持1到32条通道(然而常见的最长的就是显卡上最常用的X16),速度见下表。
由于PCI-E传输的信号是差分信号,所以这里有必要讲解一下差分线的定义:
相位信号和单端信号对比:传统的单端信号通过相对于地线的电势差的高低来传递,所以只需要一根地线就可以,传递几路信号只需要相应数量的信号线就可以了;而差分信号使用一根公共地线(电势为0),传输一路信号时,需要两根信号线,一根相对于地线的电压是正的(电势为正),另一根电压为负的(电势为负),绝对值相同(相位相差180度),用两根信号线的电势差高低来传递信号,只不过传递两个信号,假如一根信号线为3.3V,另一根信号线就是-3.3V,地线是0。这种看似浪费线的传输方式其实有很多优势:第一,因为地线是可以控制的,所以不会因为线长带来的压降而导致地线的差异,进而可以降低传输的电压来降低功耗(早期的AGP 2X的工作电压高达5V,而现在的PCI-E已经低于1.5V了);第二,因为电磁干扰对差分信号两根信号线的影响几乎相同,即使有干扰,高电势依然相对于低电势高,而单端信号则可能因为干扰而将低电势变成高电势,导致传输错误,因此差分信号抗干扰性强。现在,大多数高速串行接口都采用了差分信号,比如USB3.0/3.1、PCI-E、HDMI、以太网等。
二、接口定义
1.PCI-E
插槽
有4种接口尺寸 每种接口的1到11对引脚都是一样的 剩下的是差分数据线和时钟数据线数量不同对应的PCIe尺寸也不一样
引脚功能定义
2.M.2接口
M.2接口有SATA和PCIE两种总线,协议分别是AHCI/NVME,非易失性内存主机控制器接口规范(Non-Volatile Memory express),是一个逻辑设备接口规范。
机械结构
M.2连接器用PIN的缺口位置来表示Key,这个概念用于标明该模组提供支持的接口/协议。目前的规范中有定义的是A、B、E、F、M五种key位,这其中又以B和M两种key位最为常见
典型应用
A-Key:主要应用于无线连接,如WiFi,蓝牙,NFC,Wigig。卡的类型包括1630,2230和3030。
B-Key:主要应用于WWAN,GNSS,SSD。卡的类型包括3042,2230,2242,2260,2280和22110。
E-Key:主要应用于无线连接,如WiFi,蓝牙,NFC,GNSS。卡的类型包括1630,2230和3030。
M-Key:主要应用于支持PCIe或SATA协议的主机界面,通常为SSD。
特别的:M.2的连接器共有三种Socket(Socket1、2、3),因Socket1全部采用焊接方式且仅适用于1216,2226和3026尺寸,故常见M.2设备连接器多为Socket2和Socket3两种。
B-Key的模组,其PIN缺口位于第1219号位,提供对PCIe x2、SATA、USB 3.0、I2C、HSIC等的支持。66号位,提供对PCIe x4、SATA和SMBus的支持。
M-Key的模组,其PIN缺口位于59
M.2 SSD几乎都是“B & M”Key的,也就是有两个缺口。其中,支持SATA或PCIe x2的配置叫做“Socket 2”配置,支持PCIe x4的配置叫做“Socket 3”配置。
引脚功能定义
M.2 PCIE SSD是M-Key
SATA SSD包括B-Key & M-Key
三、设计要点
1.阻抗控制
PCIe规范中给出的差分阻抗为100Ω,单端阻抗为50Ω。但大家一定见过下面这样的描述:
PCI Express link traces must maintain 100Ω differential /60Ω single-ended impedance for 4-layer or 6-layer boards; and 85Ω differential/ 55Ω single-ended impedance for 8-layer or 10-layer boards.
具体解释如下:
因为电路板层数越多,走线离参考平面就越近,阻抗就会越小,因此,为了阻抗匹配,设计的目标阻抗值就应该减小。同时,多层板密度也会增大,线宽会减小,线宽越小阻抗就会越大,传输损耗就会增加,因此,层数越多,走线长度就会要求越短(为了控制传输损耗)。
2.金手指和连接器的注意事项
- 参考平面的边缘手指垫应予删除,以满足阻抗的目标。
- 应去掉沿整个长度手指的边缘部分。
- 这两个痕迹的差分对线路应该成为一个领域的连接器引脚从同一层。
- 为了满足阻抗目标,在边缘金手指下面的参考平面应该被删除掉。
- 而且整个金手指下面的参考片面都要完全删除掉。差分对的2个信号应该在同一层上布线连接到连接器的管脚上。
3.其他注意事项
- 差分对反相满足3W间距,同相满足5W间距。
- PCI-E差分线的正负两条线长度要满足匹配要求,但是差分线之间的长度并不需要匹配。
- 极性确保相反。
- PCI-E并不支持LANE的翻转。
- PCI-E芯片,尤其是PCIE信号线的PCB反面,应尽量避免走高频信号线,最好全GND地铺铜。
- 在PCB设计时,应该在PCIE芯片的每对电源管脚附近放置一个0.1uF左右的高频退藕电容,离芯片不能太远。
- 连接PCIE芯片的电源或者GND走线上的过孔使用大过孔、双过孔或者双回路电源。
- 将PCIE的PESET#引脚信号的金手指设计与PRSNT1#长度差不多的金手指。
- 金手指部分不允许铺铜覆盖,要每一层都进行挖铜处理。
四、实物测试
拿个笔记本拆机盘凑合一下(现在拿来当移动硬盘用)
海力士 BC711(OEM版) 512G(几乎满盘)
写入有点逊 可八成是满盘的缘故 对比主板自带接口区别不大
下次有闲置的PCIe4.0的空盘再试试(懒得拆机)
五、其它
1.PCI-E叠层和参考平面
一般的PC主板设计成4层叠层,而服务器,工作站和移动系统主板多使用6层或是更多层的叠层。
插卡可以使用4层或是6层叠层。使用0.5OZ的镀铜微带线和1OZ的铜带状线。
插卡的整体电路板的厚度必须是 0.062inch。移动平台的PCB厚度可以是0.062inch或是0.050inch。
为了尽可能的减少损耗和抖动预算,最重要的考虑因素是设计的目标阻抗,而且要保持阻抗的公差足够小。更厚的介质层和更宽的走线将会减少损耗。微带差分线会比带状差分线产生更大的阻抗变化。
信号对应避免参考平面的不连续,譬如分割和空隙。当信号线变化层时,地信号的过孔应放得靠近信号过孔。对每对信号的建议是至少放 1 到 3 个地信号过孔。还有永远不要让走线跨过平面的分割。
2.关于AC耦合电容
实测速度影响不大(或许是没尝试4.0?) 且PCIe与M.2直接就是直连 没有过芯片 干脆就删掉了
如果想了解一下可以往下看看引用的第6条原文(M.2接口电路设计) 我这里就不赘述了
3.关于M.2接口
一定要买M-Key 不然无法接M.2硬盘
且M-Key在一定程度上可代替B-Key 适用性更广
例如SATA协议的M.2硬盘 不是一定要用B-Key的
另外就是M.2接口可能会比较难焊接 吸锡线应该会有点帮助
上电前记得检查M.2接口是否有虚焊 连锡等
整理自------
设计图

BOM


评论