做老笔记本升级或者台式机折腾我手上最常出现的三样东西PCI-Express、MiniPCIe、ExpressCard。平时它们各管一摊但一旦你想把旧笔记本里拆下来的MiniPCIe无线网卡装到台式机上或者想把ExpressCard接口的USB3.0卡用到别的机器上就绕不开接口转换这四个字。更麻烦的是很多人拿了转接板回来发现没用问题多半出在引脚定义和收发关系上而不是转接板本身坏了。这篇文章就把这三种接口的引脚互换关系彻底讲清楚顺便把我踩过的坑一起写出来。适用人群很明确折腾旧硬件、做小型工控机、给软路由扩展网口、或者单纯想把手头闲置卡用起来的朋友都能从这套引脚对照里找到答案。1. 三种接口到底是什么从协议到物理形态1.1 都是PCIe一个标准多个外壳要理解转接先把底层协议说透。PCI-Express本质是一套高速串行总线协议数据通过“差分对”传输一对线发、一对线收所以一个PCIe通道x1至少需要两对差分信号线分别叫TX和RX。早期的PCIe 1.0是2.5GT/s也就是每通道约250MB/s单向带宽PCIe 2.0翻倍到5GT/sPCIe 3.0再到8GT/s。外加100MHz的差分参考时钟、复位信号、电源和一堆管理用边带信号一套完整的PCIe链路就成型了。MiniPCIe和ExpressCard只是把同一套PCIe协议塞进了不同物理外壳。MiniPCIe走52针金手指ExpressCard走26针接口。它们的核心信号——差分数据对、REFCLK、PERST复位——本质上和台式机主板上那个长相粗壮的PCIe x1插槽完全一致。所以转接板做的事情不是什么“协议转换芯片”它只是一个引脚翻译器把同一份电气信号从一种物理形态搬到另一种。1.2 MiniPCIe在哪个战场MiniPCIe最常见于2010年代前后的笔记本用来插无线网卡、3G/4G上网模块、固态硬盘转接卡。它有全高和半高两种物理尺寸接口间距0.8mm金手指52针。供电以3.3V为主少数引脚还会提供1.5V辅助电压。MiniPCIe最坑人的地方在于同一张卡座引脚功能是“分场景复用”的。比如PCIe无线网卡用的是PCIe差分对加REFCLK而WWAN上网卡往往会走USB信号通道Pin36/Pin38甚至有的WWAN卡还引出SIM卡信号。这意味着你拿一张MiniPCIe上网卡想通过PCIe转接板插到台式机光靠PCIe数据线是点不亮的必须把USB信号也一起引出来。1.3 ExpressCard的兴衰ExpressCard是PCMCIA的接班人常见于2005到2012年的商务本和专业移动工作站上。卡分ExpressCard/34和ExpressCard/54两种宽度接口协议内置PCIe x1和USB 2.0两套信号。主机端通过一个26针连接器跟卡通信电源只提供3.3V没有12V。这个接口后来被雷电口抢了饭碗现在市面上已很少见但它的价值在于大量专业扩展卡比如eSATA控制器、USB3.0控制器、电视采集卡、音频卡曾经出过ExpressCard版本。你要是手头正好有这类卡又不想让它们吃灰就绕不开跟PCIe和MiniPCIe的引脚互转。三种接口的关键差异可以看这个表项目PCIe x1插槽MiniPCIeExpressCard物理引脚36针每面1852针金手指26针协议PCIe x1PCIe x1或USB2.0PCIe x1 USB2.0主供电12V / 3.3V3.3V3.3V参考时钟主机提供主机提供主机提供热插拔支持大部分不支持不支持支持典型应用显卡、网卡、阵列卡无线网卡、WWAN、SSD扩展卡、采集卡、USB3.02. 为什么能互相转转接的本质和兼容边界2.1 转接板不是协议转换器是引脚翻译器很多人一听转接就以为里面有芯片在干活实际上绝大多数PCIe/MiniPCIe/ExpressCard互转板就是一块纯PCB上面只有走线、电源稳压和必要的上下拉电阻。原因很简单三种接口的电气协议都是PCIeExpressCard额外带USB信号速率和电平标准一致不需要物理层转换芯片。真正需要“翻译”的只是物理引脚排列。比如PCIe x1插槽里槽位发送数据的引脚在B16/B17而MiniPCIe卡那边对应的是接收引脚Pin25/Pin23。转接板要做的就是把B16送到Pin25把B17送到Pin23同时把REFCLK、PERST、电源和地线都接对。凡是信号断错的板子卡插上去之后要么完全不识别要么链路反复训练失败。2.2 能不能用的判断标准五组信号必须全对我判断一个转接方案是否可行只看五组信号第一组是电源。PCIe插槽提供12V和3.3V但MiniPCIe和ExpressCard只认3.3V所以从PCIe转过去时要么直接用插槽的3.3V脚要么加一片12V转3.3V的稳压。第二组是差分数据对收发必须交叉这部分上面提过下面会专门讲。第三组是参考时钟REFCLK三边都是100MHz差分时钟直接对接即可但要小心有的转接板把时钟线做成单端或者漏接。第四组是复位PERST低有效必须保证在电源稳定后再释放否则设备启动时序乱掉。第五组是边带信号包括CLKREQ#、WAKE#、SMBus虽然有些设备只接数据也能跑但不接全的话会引发休眠唤醒异常或链路节能异常。五组都满足这块卡基本就能稳定工作。少任何一组问题不是当时就出现就是过一会儿冒出来。2.3 兼容性边界不是所有设备都能转协议相同不等于万物皆可转。最常见的翻车案例是USB-only设备。MiniPCIe的WWAN上网卡、部分无线网卡里的蓝牙功能走的都是USB 2.0那对信号MiniPCIe Pin36/Pin38而不是PCIe数据通道。如果你只把PCIe差分对接过去网卡的WiFi或许能用蓝牙铁定消失因为蓝牙那部分在系统看来就是一个USB设备。反过来ExpressCard里面的设备也分PCIe和USB两派。有些ExpressCard读卡器实际是USB控制器内部走USB信号这种卡转成PCIe接台式机时还得把转接板上的USB信号接到主板USB接口上。所以做任何转接前先确认目标设备的主数据通道。最可靠的办法是查设备的主控型号再搜规格书看它挂的是PCIe还是USB总线。查不到就分两步试先接PCIe再补USB。3. 引脚定义与引脚互换关系3.1 PCIe x1金手指引脚速查台式机PCIe x1插槽很短单面只有18个触点A面和B面各有一套。下面这张表是整个x1段最关键的部分也是所有转接方案里“源头”信号的位置A面引脚信号B面引脚信号A1PRSNT#在位检测B112VA212VB212VA312VB312V部分板为保留A4GNDB4GNDA5TCKJTAGB5SMCLKA6TDIJTAGB6SMDATAA7TDOJTAGB7GNDA8TMSJTAGB83.3VA93.3VB93.3VA103.3VB10GNDA11PERST#复位B11WAKE#A12GNDB12GNDA13REFCLKB13CLKREQ#A14REFCLK-B14GND视主板设计A15GNDB15GNDA16PERp0槽位接收B16PETp0槽位发送A17PERn0槽位接收-B17PETn0槽位发送-A18GNDB18GND注意A面的PER和B面的PET名字都是站在主机槽位角度命名的PET是主机发出去的PER是主机收进来的。3.2 MiniPCIe 52针引脚速查MiniPCIe虽然52个引脚但真正跟PCIe数据相关的就集中在几个特定位置。我按信号功能整理了一份精简版方便转接时对照引脚信号功能说明Pin1WAKE#唤醒低有效Pin2 / 24 / 39 / 41 / 523.3V主供电Pin7CLKREQ#时钟请求Pin11 / 13REFCLK- / REFCLK100MHz差分时钟Pin22PERST#复位低有效Pin23 / 25PERn0 / PERp0卡的接收差分对主机发往卡Pin30 / 32SMB_CLK / SMB_DATASMBus管理总线Pin31 / 33PETn0 / PETp0卡的发送差分对卡发往主机Pin36 / 38USB_D- / USB_DUSB2.0信号Pin20W_DISABLE#无线禁用部分卡这张表的关键点在于Pin23/25的PER和Pin31/33的PET都是从“MiniPCIe卡自己”的角度命名的。所以主机发过来的数据要进卡上的PER卡发回去的数据从PET出去。3.3 ExpressCard 26针引脚速查ExpressCard接口引脚少核心信号也不复杂。网上能搜到的规范版本之间有差异但主流的26针定义整理如下引脚信号功能说明Pin1 / 4 / 8 / 11 / 14 / 17GND地Pin2 / 3USB_D / USB_D-USB2.0信号Pin5WAKE#唤醒低有效Pin6 / 7REFCLK / REFCLK-100MHz差分时钟Pin9CLKREQ#时钟请求Pin10PERST#复位低有效Pin12 / 13PERn0 / PERp0卡的接收差分对主机发往卡Pin15 / 16PETp0 / PETn0卡的发送差分对卡发往主机Pin18CPUSB#USB过流指示Pin19 / 20SMB_DATA / SMB_CLKSMBus复用Pin21 - 263.3V / GND供电与地ExpressCard只提供3.3V所以在处理转接板电源时比PCIe转MiniPCIe简单也比反过来转时要小心。3.4 三边直接对照表引脚互换关系把上面三张表合成一张“信号名对信号名”的对照表转接时照着这张表焊线、查板子基本不会出错功能PCIe x1槽位信号MiniPCIe引脚ExpressCard引脚主机发送到卡接收B16 PETp0Pin25 PERp0Pin13 PERp0主机发送-到卡接收-B17 PETn0Pin23 PERn0Pin12 PERn0主机接收来自卡发送A16 PERp0Pin33 PETp0Pin15 PETp0主机接收-来自卡发送-A17 PERn0Pin31 PETn0Pin16 PETn0参考时钟A13 REFCLKPin13Pin6参考时钟-A14 REFCLK-Pin11Pin7复位低有效A11 PERST#Pin22Pin10时钟请求低有效B13 CLKREQ#Pin7Pin9唤醒低有效B11 WAKE#Pin1Pin5SMBus时钟B5 SMCLKPin30Pin20SMBus数据B6 SMDATAPin32Pin19USB D无Pin38Pin2USB D-无Pin36Pin33.3VA9/A10/B8/B92/24/39/41/5221-26GNDA4/A12/A15/A18等多引脚多引脚这里要特别强调“收发交叉”这件事。我在帮人排查转接板问题时最常见的错误就是有人把PCIe槽的PETp0接到了MiniPCIe的PETp0上。从引脚编号看这两头都叫PET名字一样但一个代表主机发送一个代表卡发送接上之后主机往自己的接收终端里送去了一股本来要发给卡的数据链路自然训练不起来。正确做法是主机的发送脚永远接卡的接收脚也就是对照表里第二行到第三行画出来的交叉关系。4. 转接实操三种最常见的改装玩法4.1 MiniPCIe转PCIe x1给台式机续命WiFi和蓝牙这是出现频率最高的一种玩法。老笔记本升级之后手头剩下一块Intel 7260HMW、BCM94352之类MiniPCIe无线网卡扔了可惜就可以通过转接板插到台式机主板上当成千兆无线网卡用。操作步骤如下第一步准备一块MiniPCIe转PCIe x1转接板。这类板子上通常自带一个3.3V稳压芯片从PCIe槽的12V取电降压后供给MiniPCIe卡。选板子的时候重点看三个地方有没有把3.3V稳压做好有没有引出一路USB信号接口供电电流能不能支撑一张网卡加蓝牙同时工作。第二步把网卡插到转接板的MiniPCIe卡座上注意缺口方向和半高卡的挡板。第三步把转接板插到主板PCIe x1槽里。如果你的主板PCIe槽旁边空间窄先检查转接板上有没有电容、电感会卡到旁边设备。第四步天线处理。MiniPCIe网卡上的IPEX天线接口通常要接一根IPEX转SMA跳线再通过机箱挡板拉出天线。很多老网卡是2x2 MIMO有两个IPEX口都要接天线否则信号会掉一半。第五步蓝牙信号。这类无线网卡的蓝牙功能走MiniPCIe的USB引脚。所以转接板上会有一个USB排针或者线头把它接到主板USB 2.0扩展针上。不接的话蓝牙在系统里完全不出现这几乎是新手翻车率最高的地方。我在实际改装中遇到过一个问题转接板上的3.3V稳压芯片质量参差有的空载是3.3V一带载就掉到2.8V网卡表现为频繁断连。后来换了张带完整DC-DC降压的转接板才稳定。4.2 PCIe x1转MiniPCIe给软路由和工控机扩展反过来很多软路由、NAS主板或者工控机主板上只有MiniPCIe插槽但你想插一张标准PCIe接口的四口网卡或SATA扩展卡这时候就需要PCIe x1转MiniPCIe的方向。不过这里要给大家泼一盆冷水这个方向的水很深。MiniPCIe插座在物理上只能承载MiniPCIe形态的卡要插标准PCIe卡就得用一条转接线把MiniPCIe信号拉出来再插到独立的PCIe x1挡板上。转接线一长差分信号质量就容易出问题尤其PCIe Gen2以上速率时线长超过10厘米就得慎重。我实测过的情况是用一根20厘米的MiniPCIe转PCIe x1延长线把一块Intel I350四口网卡接在工控机MiniPCIe槽上主板能识别但吞吐率不稳定大流量时掉包率明显上升。后来换成10厘米以内的短转接线并尽量让转接线远离高频干扰源情况才有明显改善。关键参数上转接线里的差分对必须是双绞或者严格等长的平行走线REFCLK和数据对之间要尽量保持同样长度。很多便宜的延长线只是普通排线一对差分线在排线里面隔了老远这种线只能碰运气。能用PCB直插转接板就别用软排线转接器。4.3 ExpressCard设备的两种互转方向ExpressCard转PCIe x1是最容易实现的方案。比如你手头有一块ExpressCard接口的USB3.0扩展卡主控是NEC/Renesas µPD720202在台式机上通过转接板插进PCIe槽就能用。做法跟MiniPCIe转PCIe几乎一样只是转接板的卡座换成ExpressCard座。电源只涉及3.3V不太需要额外稳压。反过来PCIe设备转ExpressCard也就是把一块标准PCIe卡插到笔记本ExpressCard口上理论可行但实操限制很多。最大的问题是ExpressCard槽位能供给的电流极其有限3.3V通常只有500mA左右带一块普通网卡可能还行带专业声卡或者阵列卡就带不动。而且ExpressCard内部空间封闭标准PCIe卡的挡板、散热片都装不下只能依赖外置接线盒的方式这已经脱离了简单转接板的范畴。所以我的个人建议是以ExpressCard为“源设备”、往PCIe转是成熟方案值得折腾从PCIe往ExpressCard转除非有现成外壳和独立供电否则别轻易趟雷。5. 信号完整性和电气细节实测5.1 差分对等长、扭绞、85欧姆PCIe的差分信号是高频链路MiniPCIe和PCIe插槽本身都按85欧姆差分阻抗设计。自制转接线时不可能保证完美阻抗但至少要做到两件事第一同一对差分线的长度差控制在2mm以内越短越好第二两根线要紧贴并尽量绞合减少共模干扰。我见过有人图省事直接用杜邦线把PERp0和PERn0分开插两根线各走各的结果不仅链路训练失败还把对端主板的PCIe控制器搞出异常报错。差分信号线一旦分开环路面积变大噪声会直接盖过信号。哪怕你手里只有普通排线也要保证同一对线在排线里是相邻的最好是“信号-地-信号”的走法。5.2 时钟模式Common Clock和SRIS要分清PCIe有三种时钟架构Common Clock共同时钟、Data Clocked RxDCR和Separate Reference Clock with Independent SpreadSRIS。目前绝大多数台式机和笔记本都是Common Clock也就是主机把100MHz参考时钟通过REFCLK脚直接送给设备。做转接时最简单也最稳的做法就是把REFCLK/REFCLK-按对照表直连。但有些新的网卡支持SRIS模式理论上可以不要外部参考时钟依靠数据时钟恢复。问题是SRIS模式需要软件和BIOS配合协商转接板没有这个能力所以绝不能让REFCLK悬空。在排查不识别问题时我会用示波器量一下转接板末端REFCLK有没有100MHz波形没有波形十有八九是时钟线断了或者短路。还有一点要特别注意REFCLK的摆幅很小切不能把3.3V电源和REFCLK线碰在一起。一旦短路会把主板的时钟缓冲器烧掉那就不是换一张转接板能解决的事了。5.3 复位时序、热插拔与SMBus如何处理PERST#必须等电源稳定之后再释放。PCIe规范要求复位释放前电源稳定至少100ms。大多数转接板直接把槽位的PERST#透传过去主板BIOS会管好时序这点不用额外操心。但自制延长线或者旧式转接板如果串了电容、做了RC延时要确认延时参数别太离谱。ExpressCard原生支持热插拔所以它的PRSNT、WAKE、CLKREQ等信号全都有规范定义。但转接到PCIe槽后热插拔能力基本丧失。原因很简单台式机PCIe槽位本来就不支持热插拔转接板也做不出这个逻辑。所以任何转接方案按“冷插拔”对待插卡前断电这才是安全习惯。SMBus在MiniPCIe和ExpressCard上都有但很多无线网卡和扩展卡并不依赖它工作只用于电源管理或者读取温度。转接时接不接SMBus都能跑但如果你想在Linux下用lspci查看完整的链路状态或者让卡的功耗管理生效最好把SMB_CLK/SMB_DATA也接上。5.4 电源处理12V转3.3V和电流估算从PCIe转MiniPCIe或ExpressCard时最常见的问题是3.3V供电能力。PCIe插槽表面上有3.3V引脚但不同主板提供给槽位的3.3V电流差别很大有些低端主板x1槽的3.3V甚至只够跑个诊断卡。MiniPCIe无线网卡加蓝牙模块瞬时电流可以到1A-1.5A直接从插槽3.3V脚取电并不保险。稳妥的方案是用转接板上的12V转3.3V DC-DC或LDO给MiniPCIe卡供电。LDO便宜、纹波小但效率低12V降到3.3V时1A电流意味着8.7W热功耗对一张小板子是很大的散热压力。DC-DC效率高但选型要看纹波指标高频纹波对PCIe数据眼图有干扰。我实测下来质量好一点的同步降压方案在轻载时纹波控制在50mV以内完全不影响使用。反过来从MiniPCIe槽转PCIe设备时电源方向变成了“MiniPCIe槽给标准PCIe设备供电”MiniPCIe槽的3.3V能力通常只有几百毫安所以只有当目标PCIe设备功耗很低时才可行。6. 常见问题与排查技巧实录6.1 转接后系统完全不识别这是最多人遇到的情况。排查思路按顺序来先量电压。用万用表量MiniPCIe卡座的3.3V引脚比如Pin2、Pin24确认转接板供电正常。再测PERST#Pin22在开机过程中有没有从低变高如果一直是低电平说明复位信号没释放。再用示波器或逻辑分析仪看REFCLKPin11/Pin13有没有100MHz波形。三样都正常才进一步怀疑数据线接反或者差分线断线。如果是自己焊的转接线九成问题出在收发交叉上重新核对第三部分的对照表尤其是B16/A16和Pin25/Pin33的对应关系。如果是成品转接板优先怀疑卡本身不支持。6.2 能识别但速度只有一半PCIe链路速度异常通常不是转接板的引脚接错而是信号质量差导致链路训练只能降到较低速率。MiniPCIe老网卡支持PCIe 2.0但转接线太长或者差分对没有等长协商速率就会掉到2.5GT/s也就是PCIe 1.0的速度。解决方法是缩短转接线长度避免转接板压在CPU供电散热片附近。还有一个容易被忽略的点有的转接板没有给CLKREQ#做正确的上下拉导致链路老是在节能状态之间切换吞吐率忽高忽低。把CLKREQ#接上或者做10kΩ上拉通常能解决。6.3 供电不足导致掉卡、蓝屏无线网卡在高速传输时电流波动大如果供电跟不上就会出现“设备已删除”之类报错或者Windows直接蓝屏。我遇到过一块BCM94352在待机时一切正常一跑Speedtest就丢卡后来发现是转接板上的3.3V稳压管过热保护换了大电流DC-DC转接板后问题消失。排查时可以摸一下转接板上的降压芯片烫到不能碰就是供电余量不够。也可以外接一个3.3V稳压电源把MiniPCIe卡的3.3V直接接到外部电源上看问题是否复现以此判断是转接板供电问题还是卡本身问题。6.4 休眠唤醒后设备消失这种问题几乎都出在WAKE#和PERST#信号处理不完整上。系统进入睡眠后PCIe链路会挂起如果WAKE#没有正确连接或者CLKREQ#悬空设备在唤醒时无法重新加入链路。用转接板时尽量选把WAKE#和CLKREQ#都引出来的板子。如果手头板子没引全可以在系统里禁用睡眠和快速启动或者设置电源管理不允许系统关闭此设备。这不是治本之策但能保住设备稳定可用。为了方便快速排查我把这几类问题整理成速查表故障表现优先检查项常见原因完全不识别3.3V、PERST#、REFCLK、收发交叉供电缺失、复位拉低、时钟断线、差分对接错速度跑不满转接线长度、差分对等长、CLKREQ#信号质量差、链路降速、节能状态抖动频繁掉卡/蓝屏降压芯片温度、3.3V电流供电余量不足、稳压芯片过热休眠唤醒后消失WAKE#、CLKREQ#边带信号缺失、电源管理策略冲突蓝牙不出现MiniPCIe USB_D/D-USB信号没接入系统最后再分享一个我觉得很实用的小技巧买转接板前先看卡的主控型号。只要主控确定了基本就能判断这块卡吃的是PCIe还是USB数据通道这在三种接口之间互转时是决定成败的“第一性原理”。我自己吃过的亏是买了一块号称支持PCIe的MiniPCIe SATA卡结果主控实际走USB路径折腾两天才发现是选错了卡。接口转换本身不难难的是搞清楚你手上那块卡到底靠哪一路信号活着。把这一条想通剩下的引脚对照表其实就是照着接线的功夫活。