COM载板设计之七:PCIe

2023-11-02 09:40
文章标签 设计 com pcie 之七 载板

本文主要是介绍COM载板设计之七:PCIe,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2.2 PCIe一般介绍

PCIe提供了一种可裁减高速串行I/O点到点的总线连接。PCIe的LAN是一个全双工的通道,由一对接收差分对和一对发送差分对构成。PCIe的带宽可以通过增减LANE数来调整。PCIe规范定义了x1,x4,x8,x16和x32的连接宽度。每个LAN的原始数据传输速率是2.5Gbps @ 1.25GHz。

PCIe易于使用,但必须满足设计规则。最重要的规则是PCIe LAN必须以差分对形式布线。PCIe设计规则在PCB设计一节中有详细讨论。显然PCIe的布线要比PCI容易的多,因为线少多了。

2.2.1 COM Express A-B连接器和C-D连接器的PCIe组

COM Express类型2模块有两组PCIe LANE,一组PCIe由6个LANE构成,用于通用目的。另一组由16个LANE组成,用于图形显示接口,我们称之为PEG接口。某些PEG接口在不用作外部图形接口时可以作为通用PCIe接口使用,但是这样看COM模块的芯片集是否支持这种用法。

2.3 通用目的的PCIe通道

2.3.1 通用目的的PCIe信号定义

通用目的的PCIe接口由6个LANE组成,如表4:

信号

描述

I/O

注释

PCIE_RX0+

PCIE_RX0-

B68

B69

PCIe通道0,接收输入差分对

I PCIE

 

PCIE_TX0+

PCIE_TX0-

A68

A69

PCIe通道0,发送输出差分对

O PCIE

 

PCIE_RX1+

PCIE_RX1-

B64

B65

PCIe通道1,接收输入差分对

I PCIE

 

PCIE_TX1+

PCIE_TX1-

A64

A65

PCIe通道1,发送输出差分对

O PCIE

 

PCIE_RX2+

PCIE_RX2-

B61

B62

PCIe通道2,接收输入差分对

I PCIE

 

PCIE_TX2+

PCIE_TX2-

A61

A62

PCIe通道2,发送输出差分对

O PCIE

 

PCIE_RX3+

PCIE_RX3-

B58

B59

PCIe通道3,接收输入差分对

I PCIE

 

PCIE_TX3+

PCIE_TX3-

A58

A59

PCIe通道3,发送输出差分对

O PCIE

 

PCIE_RX4+

PCIE_RX4-

B55

B56

PCIe通道4,接收输入差分对

I PCIE

 

PCIE_TX4+

PCIE_TX4-

A55

A56

PCIe通道4,发送输出差分对

O PCIE

 

PCIE_RX5+

PCIE_RX5-

B52

B53

PCIe通道5,接收输入差分对

I PCIE

 

PCIE_TX5+

PCIE_TX5-

A52

A53

PCIe通道5,发送输出差分对

O PCIE

 

PCIE_CLK_REF+

PCIE_CLK_REF-

A88

A89

PCIe参考时钟,所有的LAN包括PEG

O PCIE

COM模块仅这一个参考时钟

EXCD0_CPPE#

A49

PCIe卡0能力请求,低有效

I CMOS

 

EXCD0_PERST#

A48

PCIe卡0复位,低有效

O CMOS

 

EXCD1_CPPE#

B48

PCIe卡1能力请求,低有效

I CMOS

 

EXCD1_PERST#

B47

PCIe卡1复位,低有效

O CMOS

 

CB_RESET#

B50

模板对载板的复位输出。低有效,由模板芯片集发出。可能是由于SYS_RESET#事件、PWR_OK事件、VCC_12V降到规定值以下事件、看门狗超时事件,软件发布的复位载板命令事件

O CMOS

 

PCI_RESET#

C23

PCI复位输出,低有效

O CMOS

Suspend

 

WAKE0#

B66

PCIe唤醒信号

I CMOS

 

2.3.2 PCIe LANE配置-按照COM Express规格

按照COM Express规范,PCIe LANE可以配置成6个x1的PCIe连接,或者是x1,x2,x4连接的组合。这些配置依赖于COM Express模块的芯片组性能。

COM Express规范定义了一个“fill order”规则,例如L规则要求x4的PCI连接必须映射到LAN0、1、2、3。

注:所有PCIe设备除了能工作在全速模式外,都要求能工作在x1模式,例如:一个x4的PCIe卡,可以使用在x4或x1模式,这种情况下的中间模式(x2)是可选的。

2.3.3 PCIe LANE配置-模块和芯片组间的依赖

PCIe接口的LANE配置方案取决于COM Express模块所用的芯片组。某些模块和芯片组允许软件配置连接宽度(x1,x4)。某些需要硬件来进行x4选项的配置。COM Express对此并没有规定,具体应该见厂家提供的模块用户手册

2.3.4 Device Up/Device Down及PCIe Rx/Tx耦合电容

图3:PCIe Rx耦合电容

“Device Down”指PCIe目标设备实现在载板上;“Device Up”指目标设备实现在插座上(或mini-PCIe卡、ExpressCard、AMC Card)。在“Device Down”和“Device up”实现上,有一些区别:

Device Down:

l  目标设备PCIe的TX线的耦合电容在载板上,尽可能距离设备的TX近。

l  在载板上允许的PCIe的线长度比Device Up长。见PCB布线规则。

Device Up:

l  目标设备PCIe的TX线的耦合电容在插卡上。

l  在载板上允许的PCIe的线长度比Device Down短,因为卡上还有一段PCIe线。见PCB布线规则。

耦合电容的大小应该符合COM Express规范。

2.3.5 参考设计
2.3.5.1 参考时钟缓冲

COM Express规范仅定义了一个PCIe的参考时钟,这个100MHz的差分时钟是的目标PCIe设备能够更快速地锁定到PCIe位流内嵌的时钟上。

如果载板上只有一个PCIe设备,那么直接把这个脚连过去就可以了,如果有多个PCIe设备,则需要通过“0延迟”缓冲来获得多个时钟。这样fed1芯片有IDT、Cypress等。

图4 PCIe参考时钟缓冲器

每个时钟对点到点地连接到插座上或中断设备上,布线规则按照差分信号布线规则。

推荐在ICS9DB102缓冲器的时钟输出脚最近处串联一个33欧姆电阻和一个49.9欧姆对地的终端电阻。

SMBUS软件能够使能和禁止时钟缓冲输出,以减少EMI。

CLKREQ0和CLKREQ1应该下拉以便允许时钟缓冲输出,对于功耗要求不严格的应用,时钟可以永久接到低电平,永久是能时钟输出。

2.3.5.2 复位

PCI接口和PCIe接口,共享PCI_RESET#信号。CB_RESET#信号也可以代替PCI_RESET#。对于类型1、4、5的COM Express模块,由于没有PCI_RESET#信号,所以只能用CB_RESET#。

2.3.5.3  x1插座例子

图5,PCIe x1插座例子:

上面的例子显示PCIe的LANE0连接到这个插座,别的LANE是否可以被使用取决于模板。

没有耦合电容,因为PCIe TX的耦合电容在COM模块上,PCIe的耦合电容在卡上。

插座的REFCLK+和REFCLK-由时钟缓冲驱动,见图4,如果仅这一个PCIe设备,则只需把COM Express模块的REFCLOCK接过来就可以。

插座的PWRGD信号有COM Express的PCI_RESET#信号驱动,CB_RESET#也能使用。如果载板仅一个或两个目标设备,PCI_RESET#或CB_RESET#可以直接使用。

PRSNT1#和PRSNT2#是热插拔机制的一部分,然而大部分系统并不支持完整的热插拔功能,如果使用,方案如下:PRSNT1#(A1)下拉,在卡上,被路由到PRSNT2#(B17),B17的状态由BIOS读回。如果有卡插入,B17为0,无卡,则为1。软件使用这个信息给卡加电。但是COM Express并没有做什么规范性的规定,也没有任何硬件上的支持。系统如果试着实现这个热插拔功能,也没有必要读回PRSNT2#的状态。因此,这在图5上仅仅是作为一个测试点。

SMB_CK和SMB_DAT源自COM Express模块的B13和B14。SMBUS支持卡的管理功能,SMBUS软件能保存卡进入Suspend状态前的上下文,报告错误,接收控制参数,返回状态信息和卡信息(如卡的序列号)。卡对SMBUS的支持是可选的。

JTAG一般不用。

2.3.5.4  x4插座的例子

图6 PCIe x4插座的例子

2.3.5.5 PCIe x1通用Device Down例子

图7 PCIe x1 通用 Device Down例子:

图5仅显示在全电源ON状态(S0)的信号。如果载板器件支持电源管理特征,那么还有一些信号要起作用,如:为了支持唤醒功能,载板器件必须可以断言WAKE0#。

某些具备电源管理能力的器件还有CLKREQ#信号,见图4。

载板PCIe设备还可能要求支持SMBUS,如果载板器件使用Suspend电源,那么器件的SMBUS脚可以直接路由到COM Express的SMBUS脚(SMB_CK, SMB_DAT, SMB)ALERT#),如果载板SMBUS脚不是由Suspend电源供电,那么必须使用FET或总线开关隔离。见SMBUS总线的介绍。

2.3.5.6 PCIe x4通用Device Down例子

图8 PCIe x4通用Device Down例子

图6仅显示在全电源ON状态(S0)的信号。如果载板器件支持电源管理特征,那么还有一些信号要起作用,如:为了支持唤醒功能,载板器件必须可以断言WAKE0#。

某些具备电源管理能力的器件还有CLKREQ#信号,见图4。

载板PCIe设备还可能要求支持SMBUS,如果载板器件使用Suspend电源,那么器件的SMBUS脚可以直接路由到COM Express的SMBUS脚(SMB_CK, SMB_DAT, SMB)ALERT#),如果载板SMBUS脚不是由Suspend电源供电,那么必须使用FET或总线开关隔离。见SMBUS总线的介绍。

2.3.5.7 PCIe Mini Card

PCIe Mini Card是一个小型的卡,用于移动计算或嵌入式平台,它不支持热交换能力。

PCIe Mini Card接口包括一个x1的PCIe连接和一个USB2.0通道,Host两个接口都应该支持。

         图9 PCI Mini Card尺寸:

         图10 PCIe Mini Card 连接器

         表5 PCIe Mini Card连接器管脚

信号

描述

信号

描述

1

WAKE#

唤醒信号

2

+3.3V

主电源3.3V

3

RSVD

保留

4

GND

5

RSVD

保留

6

+1.5V

第二电源1.5V

7

CLKREQ#

时钟请求

8

UIM_PWR

UIM用的电源

9

GND

10

UIM_DATA

UIM用的数据信号

11

REFCLK-

参考时钟-

12

UIM_CLK

UIM用的时钟

13

REFCLK+

参考时钟+

14

UIM_RESET

UIM用的复位

15

GND

16

UIM_VPP

UIM用的可变电压

定位KEY

17

RSVD

保留

18

GND

19

RSVD

保留

20

W_DISABLE

系统使用的禁止无线操作

21

GND

22

PERST#

PCIe复位

23

PERn0

LANE0接收差分对的-

24

3.3VVaux

辅助电源3.3V

25

PERp0

LANE0接收差分对的+

26

GND

27

GND

28

+1.5V

第二电源1.5V

29

GND

30

SMB_CLK

系统管理总线时钟

31

PETn0

LANE0发送差分对的-

32

SMB_DATA

系统管理总线数据

33

PETp0

LANE0发送差分对的+

34

GND

35

GND

36

USB_D-

USB数据-

37

RSVD

保留

38

USB_D+

USB数据+

39

RSVD

保留

40

GND

41

RSVD

保留

42

LED_WWAN#

系统提供的状态指示灯

43

RSVD

保留

44

LED_WLAN#

系统提供的状态指示灯

45

RSVD

保留

46

LED_WPAN#

系统提供的状态指示灯

47

RSVD

保留

48

+1.5V

第二电源1.5V

49

RSVD

保留

50

GND

51

RSVD

保留

52

+3.3V

主电源3.3V

 

         图11 PCIe Mini Card参考设计电路

图中使用了PCIe的LANE1和USB0。也可以使用别的端口,但是这要看模板。

如果不需要支持Suspend模式,那么3.3VAUX可以直接接到VCC_3V3,这种情况下,WAKE#脚应该悬空。

         PERST#可以使用CB_RESET#或PCI_RESET#,或者是这些信号缓冲后的信号。

2.3.5.8 ExpressCard

ExpressCard支持热插拔,体积也很小巧。可以通过x1的PCIe或者USB2.0接口。按照ExpressCard规范,作为HOST应该提供PCIe和USB连接。可以支持一个或者多个ExpressCard设备。COM Express有4个信号专用于支持2个ExpressCard插座

表6 ExpressCard支持的信号

信号

描述

I/O

EXCD0_CPPE#

A49

ExpressCard0请求

I 3.3V CMOS

EXCD1_CPPE#

B48

ExpressCard1请求

I 3.3V CMOS

EXCD0_PERST#

A48

ExpressCard0复位

O 3.3V CMOS

EXCD1_PERST#

B47

ExpressCard1复位

O 3.3V CMOS

图12 ExpressCard尺寸

图13 ExpressCard插座

图14 PCe:ExpressCard例子

图中使用了PCIe的LANE2和USB1,也可以使用其它通道,但要看模板情况。

PCIE_TX2+和PCIE_TX2-源自COM Express模块,这些线驱动ExpressCard上的PCIe接收器。载板上没有耦合电容,耦合电容在COM Express模块上。

PCIE_RX2+和PCIE_RX2-源自ExpressCard,载板上没有耦合电容,耦合电容在ExpressCard上。

PCIE_REF_CLK1+和PCIE_REF_CLK-源自PCIe的参考时钟缓冲器。

CPPE#在ExpressCard上被下拉,以表示卡存在并有一个PCIe接口。CPUSB#在ExpressCard上被下拉,以表示卡存在并有一个USB2.0接口。CPPE#或CPUSB#为低会引起TPS2231 ExpressCard电源控制芯片给ExpressCard供电。

TPS2231集成了一定数目的上拉电阻,其他解决方案可能需要外部上拉电阻。

CLKREQ#用作动态时钟管理,当这个信号为低的时候,表示不支持时钟动态管理功能。

ExpressCard PCIe复位信号,PERST#由TPS2231驱动,PERST#在电源超出规定范围的时候断言,或者如果COM Express 的EXCD0_PERST#为低的时候。

WAKE#由ExpressCard断言,会引起COM Express模块唤醒。WAKE0#在模块中是上拉的,其他WAKE0#源是“线或”关系。

SMBUS支持客户报警、无线RF管理、边带信号管理。这个功能在EXpressCard上是可选的。

2.3.6 PCIe布线考虑

PCIe信号是高速差分对,差分阻抗是100欧姆。布线时一定要以差分对形式走线,最好参考一个连续的地平面,做到过孔最少。

PCIe差分对的正负两个线长度的匹配要满足规定,但是差分对之间的长度并不需要匹配。

PCB设计请参考PCB设计指南。

2.3.6.1 极性反转

每个LANE都支持极性的反转,这就意味着布线的时候,不必去考虑两点之间的极性关系,意味着你可以将模块的PCIE_TX0+连接到插座的-脚,把PCIE_TX0-连接到插座的+脚。这样避免线的交叉,降低了按照规则布线的难度。

2.3.6.2 LANE反转

PCIe并不支持LANE的翻转。

这篇关于COM载板设计之七:PCIe的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/329718

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

怎么让1台电脑共享给7人同时流畅设计

在当今的创意设计与数字内容生产领域,图形工作站以其强大的计算能力、专业的图形处理能力和稳定的系统性能,成为了众多设计师、动画师、视频编辑师等创意工作者的必备工具。 设计团队面临资源有限,比如只有一台高性能电脑时,如何高效地让七人同时流畅地进行设计工作,便成为了一个亟待解决的问题。 一、硬件升级与配置 1.高性能处理器(CPU):选择多核、高线程的处理器,例如Intel的至强系列或AMD的Ry

基于51单片机的自动转向修复系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

SprinBoot+Vue网络商城海鲜市场的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍:CSDN认证博客专家,CSDN平台Java领域优质创作者,全网30w+

消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法

消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法   消除安卓SDK更新时的“https://dl-ssl.google.com refused”异常的方法 [转载]原地址:http://blog.csdn.net/x605940745/article/details/17911115 消除SDK更新时的“

单片机毕业设计基于单片机的智能门禁系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍程序代码部分参考 设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订

Spring的设计⽬标——《Spring技术内幕》

读《Spring技术内幕》第二版,计文柯著。 如果我们要简要地描述Spring的设计⽬标,可以这么说,Spring为开发者提供的是⼀个⼀站式的轻量级应⽤开发框架(平台)。 作为平台,Spring抽象了我们在 许多应⽤开发中遇到的共性问题;同时,作为⼀个轻量级的应⽤开发框架,Spring和传统的J2EE开发相⽐,有其⾃⾝的特点。 通过这些⾃⾝的特点,Spring充分体现了它的设计理念:在

开题报告中的研究方法设计:AI能帮你做什么?

AIPaperGPT,论文写作神器~ https://www.aipapergpt.com/ 大家都准备开题报告了吗?研究方法部分是不是已经让你头疼到抓狂? 别急,这可是大多数人都会遇到的难题!尤其是研究方法设计这一块,选定性还是定量,怎么搞才能符合老师的要求? 每次到这儿,头脑一片空白。 好消息是,现在AI工具火得一塌糊涂,比如ChatGPT,居然能帮你在研究方法这块儿上出点主意。是不

创业者该如何设计公司的股权架构

本文来自七八点联合IT橘子和车库咖啡的一系列关于设计公司股权结构的讲座。 主讲人何德文: 在公司发展的不同阶段,创业者都会面临公司股权架构设计问题: 1.合伙人合伙创业第一天,就会面临股权架构设计问题(合伙人股权设计); 2.公司早期要引入天使资金,会面临股权架构设计问题(天使融资); 3.公司有三五十号人,要激励中层管理与重要技术人员和公司长期走下去,会面临股权架构设计问题(员工股权激