好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

PCIE总线基础知识.docx

12页
  • 卖家[上传人]:m****
  • 文档编号:493209556
  • 上传时间:2023-06-17
  • 文档格式:DOCX
  • 文档大小:180.07KB
  • / 12 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 与PCI总线不同,PCIe总线使用端到端的连接方式,在一条PCIe链路的两端只能各连接 一个设备,这两个设备互为是数据发送端和数据接收端PCIe总线除了总线链路外,还具 有多个层次,发送端发送数据时将通过这些层次,而接收端接收数据时也使用这些层次 PCIe总线使用的层次结构与网络协议栈较为类似4.1.1端到端的数据传递PCIe链路使用“端到端的数据传送方式”,发送端和接收端中都含有TX(发送逻辑)和RX(接 收逻辑),其结构如图4-1所示由上图所示,在PCIe总线的物理链路的一个数据通路(Lane)中,由两组差分信号,共4根 信号线组成其中发送端的TX部件与接收端的RX部件使用一组差分信号连接,该链路也 被称为发送端的发送链路,也是接收端的接收链路;而发送端的RX部件与接收端的TX部 件使用另一组差分信号连接,该链路也被称为发送端的接收链路,也是接收端的发送链路 一个PCIe链路可以由多个Lane组成高速差分信号电气规范要求其发送端串接一个电容,以进行AC耦合该电容也被称为AC耦合电容PCIe链路使用差分信号进行数据传送,一个差分信号由D+和D-两根信号组成,信号接收端通过比较这两个信号的差值,判断发送端发送的是逻辑T还是逻辑“0”。

      与单端信号相比,差分信号抗干扰的能力更强,因为差分信号在布线时要求等长”、“等宽”、 “贴近”,而且在同层因此外部干扰噪声将被“同值”而且“同时”加载到D+和D-两根信号上, 其差值在理想情况下为0,对信号的逻辑值产生的影响较小因此差分信号可以使用更高的 总线频率此外使用差分信号能有效抑制电磁干扰EMI(Electro Magnetic Interferenee)由于差分信号D+与D-距离很近而且信号幅值相等、极性相反这两根线与地线间耦合电磁场的幅值相等, 将相互抵消,因此差分信号对外界的电磁干扰较小当然差分信号的缺点也是显而易见的, 一是差分信号使用两根信号传送一位数据;二是差分信号的布线相对严格一些PCIe链路可以由多条Lane组成,目前PCIe链路可以支持1、2、4、8、12、16和32个 Lane,即"、辺、x4> x8> "2、x16和x32宽度的PCIe链路每一个Lane上使用的总 线频率与PCIe总线使用的版本相关第1个PCIe总线规范为V1.0,之后依次为Vl.Oa, V1.1, V2.0和V2.1目前PCIe总线 的最新规范为V2.1,而V3.0正在开发过程中,预计在2010年发布。

      不同的PCIe总线规 范所定义的总线频率和链路编码方式并不相同,如表4-1所示表4-1PCIe总线规范与总线频率和编码的关系PCIe总线规范总线频率[1]单Lane的峰值带宽编码方式1.x1.25GHz2.5GT/s8/10b编码2.x2.5GHz5GT/s8/10b编码3.04GHz8GT/s128/130b 编码如上表所示,不同的PCIe总线规范使用的总线频率并不相同,其使用的数据编码方式也不 相同PCIe总线V1.x和V2.0规范在物理层中使用8/10b编码,即在PCIe链路上的10 bit 中含有8 bit的有效数据;而V3.0规范使用128/130b编码方式,即在PCIe链路上的130 bit 中含有128 bit的有效数据由上表所示,V3.0规范使用的总线频率虽然只有4GHz,但是其有效带宽是V2.X的两倍 下文将以V2.X规范为例,说明不同宽度PCIe链路所能提供的峰值带宽,如表4-2所示表4-2PCIe总线的峰值带宽PCIe总线的数据位宽x1x2x4x8x12x16x32峰值带宽(GT/s)51020406080160由上表所示,x32的PCIe链路可以提供160GT/S的链路带宽,远高于PCI/PCI-X总线所 能提供的峰值带宽。

      而即将推出的PCIe V3.0规范使用4GHz的总线频率,将进一步提高 PCIe链路的峰值带宽在PCIe总线中,使用GT(Gigatransfer)计算PCIe链路的峰值带宽GT是在PCIe链路上传递的峰值带宽,其计算公式为总线频率X数据位宽x2o在PCIe总线中,影响有效带宽的因素有很多,因而其有效带宽较难计算,这部分内容详见 第8.4.1节尽管如此,PCIe总线提供的有效带宽还是远高于PCI总线PCIe总线也有其 弱点,其中最突出的问题是传送延时PCIe链路使用串行方式进行数据传送,然而在芯片内部,数据总线仍然是并行的,因此PCIe 链路接口需要进行串并转换,这种串并转换将产生较大的延时除此之外PCIe总线的数据 报文需要经过事务层、数据链路层和物理层,这些数据报文在穿越这些层次时,也将带来延 时本书将在第8.4节详细讨论PCIe总线的延时与带宽之间的联系在基于PCIe总线的设备中,x1的PCIe链路最为常见,而x12的PCIe链路极少出现,x4 和x8的PCIe设备也不多见Intel通常在ICH中集成了多个x1的PCIe链路用来连接低速 外设,而在MCH中集成了一个x16的PCIe链路用于连接显卡控制器。

      而PowerPC处理 器通常能够支持x8、x4、x2和x1的PCIe链路PCIe总线物理链路间的数据传送使用基于时钟的同步传送机制,但是在物理链路上并没有 时钟线,PCIe总线的接收端含有时钟恢复模块CDR(Clock Data Recovery),CDR将从接 收报文中提取接收时钟,从而进行同步数据传递值得注意的是,在一个PCIe设备中除了需要从报文中提取时钟外,还使用了 REFCLK+和 REFCLK-信号对作为本地参考时钟,这个信号对的描述见下文4・1・2 PCIe总线使用的信号PCIe设备使用两种电源信号供电,分别是V与V ,其额定电压为3.3V其中V为主cc aux cc电源,PCIe设备使用的主要逻辑模块均使用V供电,而一些与电源管理相关的逻辑使用ccV 供电在PCIe设备中,一些特殊的寄存器通常使用V 供电,如Sticky Register,此 aux au时即使PCIe设备的V被移除,这些与电源管理相关的逻辑状态和这些特殊寄存器的内容 cc也不会发生改变在PCIe总线中,使用Va的主要原因是为了降低功耗和缩短系统恢复时间因为Va在多aux aux数情况下并不会被移除,因此当PCIe设备的V恢复后,该设备不用重新恢复使用V 供 cc aux电的逻辑,从而设备可以很快地恢复到正常工作状状态。

      PCIe链路的最大宽度为x32,但是在实际应用中,x32的链路宽度极少使用在一个处理 器系统中,一般提供x16的PCIe插槽,并使用PETpO~15、PETn0~15和PERpO~15、 PERn0~15共64根信号线组成32对差分信号,其中16对PETxx信号用于发送链路,另 外16对PERxx信号用于接收链路除此之外PCIe总线还使用了下列辅助信号1 PERST#信号该信号为全局复位信号,由处理器系统提供,处理器系统需要为PCIe插槽和PCIe设备提 供该复位信号PCIe设备使用该信号复位内部逻辑当该信号有效时,PCIe设备将进行复 位操作PCIe总线定义了多种复位方式,其中Cold Reset和Warm Reset这两种复位方式 的实现与该信号有关,详见第4.1.5节2 REFCLK+和 REFCLK-信号在一个处理器系统中,可能含有许多PCIe设备,这些设备可以作为Add-In卡与PCIe插槽 连接,也可以作为内置模块,与处理器系统提供的PCIe链路直接相连,而不需要经过PCIe 插槽PCIe设备与PCIe插槽都具有REFCLK+和REFCLK-信号,其中PCIe插槽使用这 组信号与处理器系统同步。

      在一个处理器系统中,通常采用专用逻辑向PCIe插槽提供REFCLK+和REFCLK-信号,如图4-2所示其中100Mhz的时钟源由晶振提供,并经过一个'一推多”的差分时钟驱动器生成多个同相位的时钟源,与PCIe插槽 对应连接PCIe插槽需要使用参考时钟,其频率范围为100MHz±300ppm处理器系统需要为每一个PCIe插槽、MCH、ICH和Switch提供参考时钟而且要求在一个处理器系统中,时钟驱 动器产生的参考时钟信号到每一个PCIe插槽(MCH、ICH和Swith)的距离差在15英寸之内 通常信号的传播速度接近光速,约为6英寸/ns,由此可见,不同PCIe插槽间REFCLK+ 和REFCLK-信号的传送延时差约为2.5ns当PCIe设备作为Add-In卡连接在PCIe插槽时,可以直接使用PCIe插槽提供的REFCLK+ 和REFCLK-信号,也可以使用独立的参考时钟,只要这个参考时钟在100MHz±300ppm范 围内即可内置的PCIe设备与Add-In卡在处理REFCLK+和REFCLK-信号时使用的方法 类似,但是PCIe设备可以使用独立的参考时钟,而不使用REFCLK+和REFCLK-信号。

      在 PCIe 设备配置空间的 LinkControl Register 中,含有一个"Common Clock Configuration” 位当该位为1时,表示该设备与PCIe链路的对端设备使用“同相位”的参考时钟;如果为 0,表示该设备与PCIe链路的对端设备使用的参考时钟是异步的在PCIe设备中,"Common Clock Configuration”位的缺省值为0,此时PCIe设备使用的参 考时钟与对端设备没有任何联系,PCIe链路两端设备使用的参考时钟可以异步设置这个 异步时钟设置方法对于使用PCIe链路进行远程连接时尤为重要在一个处理器系统中,如果使用PCIe链路进行机箱到机箱间的互连,因为参考时钟可以异 步设置,机箱到机箱之间进行数据传送时仅需要差分信号线即可,而不需要参考时钟,从而 极大降低了连接难度3 WAKE#信号当PCIe设备进入休眠状态,主电源已经停止供电时,PCIe设备使用该信号向处理器系统 提交唤醒请求,使处理器系统重新为该PCIe设备提供主电源V在PCIe总线中,WAKE#CC信号是可选的,因此使用WAKE#信号唤醒PCIe设备的机制也是可选的值得注意的是产 生该信号的硬件逻辑必须使用辅助电源V 供电。

      auxWAKE#是一个Open Drain信号,一个处理器的所有PCIe设备可以将WAKE#信号进行线 与后,统一发送给处理器系统的电源控制器当某个PCIe设备需要被唤醒时,该设备首先 置WAKE#信号有效,然后在经过一段延时之后,处理器系统开始为该设备提供主电源V ,CC 并使用PERST#信号对该设备进行复位操作此时WAKE#信号需要始终保持为低,当主电 源V上电完成之后,PERST#信号也将置为无效并结束复位,WAKE#信号也将随之置为CC无效,结束整个唤醒过程PCIe设备除了可以使用WAKE#信号实现唤醒功能外,还可以使用Beacon信号实现唤醒 功能与WAKE#信号实现唤醒功能不同,Beacon使用In-band信号,即差分信号D+和 D-实现唤醒功能Beacon信号DC平衡,由一组通过D+和D-信号生成的脉冲信号组成 这些脉冲信号宽度的最小值为2ns,最大值为16us当PCIe设备准备退出L2状态(该状态 为PCIe设备使用的一种低功耗状态)时,可以使用Beacon信号,提交唤醒请求4 SMCLK 和 SMDAT 信号SMCLK 和 SMDAT 信号与 x86 处理器的 SMBus(System Mangement Bus)相关。

      SMBus 于1995年由Intel提出,。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.