通信方法、高速外围组件互连pcie芯片及pcie设备的制作方法
【专利摘要】本发明实施例提供了一种通信方法、高速外围组件互连PCIE芯片及PCIE设备。该方法应用于支持光缆传输的快速外设组件互联PCIE系统中。所述PCIE系统包括发送端PCIE设备、光传输器件以及接收端PCIE设备。该方法包括:当所述发送端PCIE设备需要与所述接收端PCIE设备建立通信连接时,所述发送端PCIE设备确定控制寄存器的检测状态位包含第一标识,所述第一标识用于表示禁止所述发送端PCIE设备执行负载检测;所述发送端PCIE设备通过所述光传输器件执行与所述接收端PCIE设备的链路协商流程,以与所述接收端PCIE设备建立所述通信连接。在支持光缆传输的应用场景中,本发明实施例提供的方法能够使发送端PCIE设备与接收端PCIE设备顺利建立通信连接。
【专利说明】通信方法、高速外围组件互连PCIE芯片及PCIE设备
【技术领域】
[0001]本发明涉及光通信领域,特别涉及一种通信方法、高速外围组件互连PCIE芯片及PCIE设备。
【背景技术】
[0002]高速外围组件互连(PeripheralComponent Interconnect Express, PCIE)标准是由英特尔公司提出的新一代总线技术。PCIE技术广泛应用于个人电脑、服务器和数据中心等PCIE设备中。由于电性传输距离短,并且损耗较大,极大的限制了 PCIE设备的应用。由于光缆传输具有损耗小且传输距离远的优点,因此,PCIE标准正在被逐步应用于光缆传输的应用场景中。
[0003]在PICE标准中,定义了一种检测状态(Detect state),该状态是指链路复位或加电后的初始状态。在检测状态中,要求PCIE芯片中的发送器中的检测部分检测链路接收端是否存在一个接收器。在检测状态中,若发送器检测到接收器,则该链路进入轮询状态,其中,轮询状态是检测状态的下一个状态。自轮询状态开始,发送器开始与接收器进行链路协商,以建立通信连接。若在检测状态中,发送器未检测到接收器,发送器将每12ms重复检测一次,无法进入轮询状态。在根据PCIE实现电缆传输的系统中,发送端PCIE设备可以通过发送共模电压实现对接收端PCIE设备的检测。
【发明内容】
[0004]本发明实施例提供了 一种通信方法、高速外围组件互连PCIE芯片及PCIE设备,能够在根据PCIE实现光缆传输的场景下,实现发送端PCIE设备与接收端PCIE设备的正常协商。
[0005]第一方面,本发明实施例提供了一种通信方法,该方法应用于支持光缆传输的快速外设组件互联PCIE系统中,所述PCIE系统包括发送端PCIE设备、光传输器件以及接收端PCIE设备,所述方法包括:当所述发送端PCIE设备需要与所述接收端PCIE设备建立通信连接时,所述发送端PCIE设备确定控制寄存器的检测状态位包含第一标识,所述第一标识用于表示禁止所述发送端PCIE设备执行负载检测;所述发送端PCIE设备通过所述光传输器件执行与所述接收端PCIE设备的链路协商流程,以与所述接收端PCIE设备建立所述通信连接。
[0006]在第一方面的第一种可能的实施方式中,所述方法还包括:当所述发送端PCIE设备与所述接收端PCIE设备在所述链路协商流程中协商的数据传输速率达到阈值时,所述发送端PCIE设备确定所述控制寄存器的均衡指示位包括第二标识,所述第二标识用于表示禁止所述发送端PCIE设备与所述接收端PCIE设备协商信号参数;所述发送端PCIE设备根据配置的所述信号参数通过所述通信连接向所述接收端PCIE设备传输数据。
[0007]结合第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述方法还包括:在系统初始化过程中,所述发送端PCIE设备配置所述信号参数。[0008]结合第一方面的第一种或者第二种可能的实施方式,在第三种可能的实施方式中,所述信号参数包括下述参数中的至少一项:发送端信号调整参数或接收端信号调整参数。
[0009]第二方面,本发明实施例提供了 一种快速外设组件互联PCIE芯片,所述PCIE芯片支持光缆传输,该PCIE芯片包括链路状态机和收发器,其中,所述链路状态机用于当需要与接收端PCIE芯片建立通信连接时,确定控制寄存器的检测状态位包含第一标识,所述第一标识用于表示禁止所述PCIE芯片执行负载检测。所述收发器用于通过光传输器件执行与所述接收端PCIE芯片的链路协商流程,以与所述接收端PCIE芯片建立所述通信连接。
[0010]在第二方面的第一种实施方式中,所述链路状态机还用于当所述PCIE芯片与所述接收端PCIE芯片在所述链路协商流程中协商的数据传输速率达到阈值时,确定所述控制寄存器的均衡指示位包括第二标识,其中,所述第二标识用于表示禁止所述PCIE芯片与所述接收端PCIE芯片协商信号参数。所述收发器还用于根据配置的信号参数通过所述通信连接向所述接收端PCIE芯片传输数据。
[0011]结合第二方面的第一种实施方式,在第二方面的第二种实施方式中,所述PCIE芯片还包括管理器,所述管理器用于在系统初始化过程中,配置所述信号参数。
[0012]结合第二方面的第一种或第二种实施方式,在第二方面的第三种实施方式中,所述信号参数包括下述参数中的至少一项:发送端信号调整参数或接收端信号调整参数。
[0013]第三方面,本发明实施例提供了一种快速外设组件互联PCIE设备,包括上述第二方面或第二方面的各种可能的实施方式所述的PCIE芯片。
[0014]在本发明实施例提供的通信方法中,当发送端PCIE设备需要与接收端PCIE设备建立通信连接时,发送端PCIE设备可以根据控制寄存器中预先设置的第一标识不执行负载检测,将链路的初始状态定向为轮询状态,以便能够直接与接收端PCIE设备进行链路协商。该方法能够避免因光传输器件的存在导致发送端PCIE设备无法检测到接收端PCIE设备在位而无法与接收端PCIE设备进行链路协商的问题。在支持光缆传输的应用场景中,本发明实施例提供的方法能够使发送端PCIE设备与接收端PCIE设备顺利建立通信连接。
【专利附图】
【附图说明】
[0015]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
[0016]图1为本发明实施例提供的一种PCIE设备通信连接示意图;
[0017]图2为本发明实施例提供的一种PCIE设备的应用场景示意图;
[0018]图3为本发明实施例提供的一种PCIE芯片的结构不意图;
[0019]图4为本发明实施例提供的一种通信方法流程图;
[0020]图5为本发明实施例提供的又一种通信方法流程图。
【具体实施方式】
[0021]为了使本【技术领域】的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。[0022]为了便于理解本方案,本发明实施例首先对根据快速外设组件互联总线(Peripheral Component Interconnect Express, PCIE)实现电缆传输的 PCIE 系统中,发送端PCIE设备及接收端PCIE设备如何建立通信连接的过程做一个简单的介绍。如图1所示,在该通信系统中,包括第一 PCIE设备10以及第二 PCIE设备20。其中,第一 PCIE设备10中包含有第一 PCIE芯片14,第二 PCIE设备20中包含有第二 PCIE芯片24。第一 PCIE设备10与第二 PCIE设备20之间通过电缆连接。
[0023]下面以作为发送端PCIE设备的第一 PCIE设备10与作为接收端PCIE设备的第二PCIE设备20建立通信连接的过程为例进行描述。根据PCIE标准的规定,当开机或复位后,第一 PCIE芯片14中的链路状态机将控制链路依次进入:检测状态——轮询(Polling)状态——配置(Configuration)状态——LO状态,以使第一 PCIE设备10与第二接收端PCIE设备20正常建立通信连接,并在LO状态期间,第一 PCIE设备10与第二 PCIE设备20可以进行处理层数据包(Transaction Layer Pocket, TLP)、数据链路层数据包(Data Link LayerPocket, DLLP)和物理层数据包(Physical Layer Pocket, PLP)的发送和接收。其中,物理层数据包也称为有序集。当然可以理解的是,第一 PCIE设备10也可以作为接收端PCIE设备,第二 PCIE设备20也可以作为发送端PCIE设备。
[0024]在上述第一 PCIE设备10与第二 PCIE设备20建立通信连接的过程中,第一 PCIE芯片14首先需要进入检测状态以检测链路接收端是否存在第二 PCIE芯片24。在本发明实施例中,也可以将检测状态中发送器检测链路接收端是否存在接收器的过程简称为执行负载检测。为了描述清楚,下面将对负载检测的过程做一个简单的介绍。在图1所示的通信系统中,第一 PCIE芯片14的发送器2082的两根差分线分别通过耦合电容Ctx与第二 PCIE芯片24的接收器2084的两根差分线相连。并且,接收器2084的两根差分线分别与两个端接电阻Zkx的一端相连,两个端接电阻Zkx的另一端均接地。当链路进入检测状态时,第一PCIE芯片14中的发送器2082从自身的两个端子D+和D-驱动一个与初始电压不同的共模电压。为了描述方便,在本发明实施例中,将初始电压称为第一电压,将发送器在检测状态驱动的与初始电压不同的一个共模电压称为第二电压。其中,初始电压可以是Vdd(3.6V)、地(Ground)或者是Vdd与地(Ground)之间的任意一个共模电压。第二电压为与初始电压不同的一个共模电压。在由第一电压变为第二电压的过程中,若发送器2082与接收器2084相连,则耦合电容Ctx、发送器2082差分线上的寄生电容以及接收端的端接电阻Zkx可以形成一个RC充电电路。由于具有较大的耦合电容Ctx,该RC充电电路的充电时间较长。若发送器2082与接收器2084没有相连,则耦合电容Ctx并没有起作用,充电时间就较短。从而,第一 PCIE芯片14可以根据充电时间的长短判断是否与第二 PCIE芯片24连接。或者,换一种表达方式,第一 PCIE芯片14可以根据充电时间的长短判断第二 PCIE芯片24是否在位。根据PCIE的规定,当第一 PCIE芯片14检测到第二 PCIE芯片24在位后,会进入轮询状态,开始链路协商。经过链路协商流程,第一 PCIE芯片14与第二 PCIE芯片24之间的通信链路可以正常连接(Link up)。
[0025]需要说明的是,为了清楚地描述PCIE芯片的负载检测过程,图1中只对第一 PCIE芯片14中的发送器2082以及第二 PCIE芯片24中的接收器2084进行了图示。可以理解的是,在第一 PCIE芯片14中也可以包括接收器2084,在第二 PCIE芯片24中也可以包括发送器2082。[0026]下面将对本发明实施例提供的通信方法的一种应用场景做一个简单介绍。本发明实施例提供的通信方法可以应用于根据PCIE实现光缆传输的通信系统中。如图2所示,在本发明实施例提供的一种根据PCIE实现光缆传输的通信系统中,在第一 PCIE设备10与第二 PCIE设备20之间连接有第一光模块(Optical Module) 12以及第二光模块22。第一PCIE设备10与第一光模块12之间通过电缆连接。第二光模块22与第二 PCIE设备20之间通过电缆连接。第一光模块12和第二光模块22之间通过光纤30连接。其中,第一光模块12和第二光模块22用于进行电信号与光信号的转换。
[0027]仍然以第一 PCIE设备10为发送端PCIE设备、第二 PCIE设备20为接收端PCIE设备为例。当第一 PCIE设备10与第二 PCIE设备20建立通信连接后,例如,在链路处于LO工作状态时,若第一 PCIE设备10向第二 PCIE设备20发送数据,与第一 PCIE设备10连接的第一光模块12会将第一 PCIE芯片14发送的电信号转换为光信号,并通过光纤30传输至与第二通信节点20连接的第二光模块22。第二光模块22将接收的光信号转换为电信号后,将电信号传输给第二 PCIE设备20中的第二 PCIE芯片24,从而能够实现第一 PCIE设备10以及第二 PCIE设备20之间的通信。可以理解的是,由于第一光模块12以及第二光模块22之间通过光纤30连接,因此,即使第一 PCIE设备10与第二 PCIE设备20的距离较远,也能够通过光纤30完成相互之间的通信。
[0028]需要说明的是,第一PCIE设备10和第一光模块12可以独立设置。例如,第一PCIE设备10可以是一个单板,第一光模块12可以通过对应的连接器连接在第一 PCIE设备10的边缘。第一 PCIE设备10和第一光模块12也可以集成在同一个通信设备中,例如,若第一 PCIE设备10是一个单板,第一光模块12也可以通过对应的连接器位于第一 PCIE设备10中。类似的,第二 PCIE设备20和第二光模块22可以独立设置,第二 PCIE设备20和第二光模块22也可以集成在同一个通信设备中。在此不做限定。并且,第一 PCIE设备10和第二 PCIE设备20可以分别位于不同设备中,也可以位于同一设备中。例如,第一 PCIE设备10和第二 PCIE设备20可以位于不同的主机中,也可以位于同一个主机中。在此也不做限定。
[0029]为了描述方便,在本发明实施例中,可以将第一光模块12、光纤30以及第二光模块22统称为光传输器件,用于实现第一 PCIE设备10及第二 PCIE设备20之间的信号传输。在光传输器件传输信号的过程中,光传输器件可以用于实现电信号和光信号之间的转换。光传输器件如何实现信号传输与现有技术类似,因此,本发明实施例中,对光传输器件如何实现光信号和电信号的转换和传输不做详细描述。需要说明的是,本发明实施例中所指的第一 PCIE设备10和第二 PCIE设备20均不包括光模块等光传输器件。
[0030]然而,在图2所示的通信系统中,第一 PCIE设备10与第二 PCIE设备20之间通过第一光模块(Optical Module) 12、光纤30以及第二光模块22等光传输器件进行连接。在链路进入检测状态时,由于光模块不能将用于检测第二 PCIE芯片24的共模电压信号转换为有效的光信号并传输至第二 PCIE芯片24,因此,当链路处于检测状态时,第一 PCIE芯片10无法根据PCIE标准实现对第二 PCIE芯片24的在位检测。使得链路无法从检测状态进入轮询(Polling)状态,第一 PCIE设备10不能第二 PCIE设备20进行链路协商,导致链路无法正常连接。
[0031]图3为本发明实施例提供的一种PCIE芯片的结构示意图,本发明实施例提供的PCIE芯片可以应用于根据PCIE实现光缆传输的场景中。如图3所示,图3所示的PCIE芯片20可以为图2中所示的第一 PCIE芯片14和第二 PCIE芯片24。如图3所示,PCIE芯片20可以包括:通信接口 202、链路状态机204、管理器206以及收发器208。其中,收发器208包括发送器2082以及接收器2084。管理器206包括配置模块2061以及监控电路2062。在根据PCIE实现光缆传输的应用场景中,PCIE芯片20可以通过端口连接器212与光模块进行连接。例如,当PCIE芯片20为图2中所示的第一 PCIE芯片14时,第一 PCIE芯片14可以通过端口连接器212与第一光模块12进行连接。其中:
[0032]通信接口 202具体可以为PCIE芯片20的物理层与上层的接口。其中,上层指的是PCIE芯片的物理层的上层,可以包括数据链路层(Data Link Layer)或处理层(Transaction Layer)等。物理层的模块可以通过通信接口 202与上层的模块进行通信。当PCIE芯片发送数据时,上层可以通过通信接口 202将待发送的数据传输给物理层的发送器210,由发送器210将数据发送出去。当PCIE芯片接收数据时,接收器212可以将接收的数据通过通信接口 202传输给上层进行处理。
[0033]链路状态机204,又可以称为链路训练和状况状态机(Link Training And StatusState Machine,LTSSM),链路状态机204是PCIE芯片20物理层的子部分,主要用于实现链路初始化和定向过程,控制链路的链接状态和链路的电源管理状态,使链路可以正常的传送数据包。实际应用中,链路状态机204可以通过通信接口 202接收上层的链路信息,根据上层传输的链路信息控制链路的状态。链路状态机204还可以通过监测发送器2082的发送情况来确定链路的状态。例如,若链路状态机204监测到发送器2082没有发送数据时,则可以确定链路需要进入电气空闲(Electrical Idle, EI)状态。链路状态机204还可以根据配置模块2061中的控制寄存器来确定链路状态。
[0034]管理器206用于实现对PCIE芯片的管理功能。管理器206可以包括配置模块2061以及监控电路2062。
[0035]配置模块2061具体可以包括控制寄存器、状态寄存器等各种寄存器。其中,控制寄存器用于控制链路状态和链路实现功能。例如,链路状态机204可以根据配置模块2061中的控制寄存器来定向链路状态,根据控制寄存器控制链路进入检测状态、轮询状态或LO状态等。状态寄存器可以包括链路状态寄存器,链路状态寄存器可以用于显示链路状态。状态寄存器还可以包括用于表示PCIE芯片20自身总线状态的状态寄存器,例如,用于表示线缆在位状况的状态寄存器。其中线缆可以包括电缆或光缆。可以理解的是,链路状态机204可以根据配置模块2061中的各寄存器的相应比特位的值来实现功能的控制或链路状况的确定。例如,链路状态机204可以通过读取寄存器中相应的比特位的值,以获取链路的状态信息或了解线缆在位情况。可以理解的是,控制寄存器或状态寄存器均可以有多个。
[0036]监控电路2062用于监控线缆的在位状态,并对配置模块2061中的寄存器进行相应的配置。实际应用中,监控电路2062可以通过对配置模块2061中的各个寄存器中的相应比特位进行设置,以实现对链路状态的设置。监控电路2062还可以通过获取端口连接器212的线缆在位信号,以判断端口连接器212是否连接有线缆。通常,当端口连接器212没有连接线缆时,线缆在位信号为一高电平,当端口连接器212连接有线缆时,该在位信号由高电平变为低电平。监控电路2062可以通过监测线缆在位信号的变化来判断端口连接器212是否连接有线缆。当监控电路2062判断线缆在位信号有效时,监控电路2062可以进一步的通过带外管理通道去读取线缆内部的非易失性存储信息,以获得该线缆的类型为电缆或光缆。其中,线缆在位信号有效是指端口连接器212连接有线缆,线缆内部的非易失性存储信息包括线缆类型、线缆长度等信息。例如,在根据PCIE实现光缆传输的应用场景中,PCIE芯片20在获得线缆在位信号有效时,可以根据带外管理通道进一步获取端口连接器212连接的线缆类型信息,以获得端口连接器212连接的是光缆。需要说明的是,这里的光缆是指与光模块连接的光缆。换一种表达方式,在根据PCIE实现光缆传输的应用场景中,PCIE芯片20可以根据带外管理通道获得端口连接器212连接有光模块。其中,带外管理通道可以包括内部集成线路(Inter — Integrated Circuit, I2C)通道。
[0037]收发器208用于执行与对端PCIE设备的协商流程,并实现与对端PCIE设备的数据传输。其中,所述协商流程是通过发送器2082向对端PCIE设备发送协商信号,并通过接收器2084接收所述对端PCIE设备的响应信号来实现的。所述数据传输包括通过发送器2082向对端PCIE设备发送上层通过通信接口 202传输的数据,还包括通过接收器2084接收对端PCIE设备发送的数据。需要说明的是,收发器208可以在链路状态机204的控制下与接收端PCIE设备执行链路协商流程或者向对端PCIE设备发送数据。收发器208具体可以包括发送器2082以及接收器2084。
[0038]发送器2082用于发送信息。PCIE芯片20的发送器2082具体可以为发送驱动电路。发送器2082发送的信息是以电信号的方式发送的。根据这种方式,发送器2082可以将上层通过通信接口 202传输的待发送数据转换为电脉冲波形发送出去。在支持光信号传输的PCIE系统中,发送器2082通常通过端口连接器212与光模块相连。发送器2082可以将数据以电信号的形式通过端口连接器212发送给光模块,发送器2082发送的电信号可以通过光模块转换为光信号后发送到接收端光模块。实际应用中,可以将待发送的数据进行编码、并串转换或去加重等处理后,再将处理后的数据通过发送器2082发送出去。其中,并串转换是指将上层传输的并行数据转换为串行数据。去加重是指发送端PCIE芯片通过预先提高信号中高频成分幅度的方式发送信号,以补偿传输线路对高频成分的衰减。其中,信号中高频成分幅度提高的具体数值可以根据信号调整参数(preset)来确定。
[0039]本领域技术人员可以知道,由于在根据PCIE标准传输数据的过程中,链路中廉价的PCB板材以及接插件对信号中的高频成分有很大的衰减。并且,当信号传输速率越高时,信号中的高频成分越多,衰减越厉害,无法保证信号质量。为了提高链路传输的可靠性,提高信号传输的质量,在发送端PCIE芯片和接收端PCIE芯片通常会采用去加重(De-emphasis)和均衡(Equalization)技术。
[0040]在PCIE1.0中采用了 -3.5dB的去加重,在PCIE2.0中采用了 -3.5dB和_6dB的去加重。在PCIE3.0中,由于信号速率更高,采用了更加复杂的2阶去加重技术,除了对信号中的高频成分增大幅度发送(De-emphasis)之外,对高频成分前I个bit的信号也增大幅度发送,这个增大的幅度通常叫做前置尖头信号(Preshoot)。在PCIE3.0中,规定了多种不同的Preshoot和De-emphasis的组合。在本发明实施例中,将Preshoot和De-emphasis的组合称为信号调整参数(preset)。发送端的Preset编码可以如表一所示:
[0041]
【权利要求】
1.一种通信方法,所述方法应用于支持光缆传输的快速外设组件互联PCIE系统中,所述PCIE系统包括发送端PCIE设备、光传输器件以及接收端PCIE设备,其特征在于,所述方法包括: 当所述发送端PCIE设备需要与所述接收端PCIE设备建立通信连接时,所述发送端PCIE设备确定控制寄存器的检测状态位包含第一标识,所述第一标识用于表示禁止所述发送端PCIE设备执行负载检测; 所述发送端PCIE设备通过所述光传输器件执行与所述接收端PCIE设备的链路协商流程,以与所述接收端PCIE设备建立所述通信连接。
2.根据权利要求1所述的通信方法,其特征在于,还包括: 当所述发送端PCIE设备与所述接收端PCIE设备在所述链路协商流程中协商的数据传输速率达到阈值时,所述发送端PCIE设备确定所述控制寄存器的均衡指示位包括第二标识,所述第二标识用于表示禁止所述发送端PCIE设备与所述接收端PCIE设备协商信号参数; 所述发送端PCIE设备根据配置的所述信号参数通过所述通信连接向所述接收端PCIE设备传输数据。
3.根据权利要求2所述的通信方法,其特征在于,所述方法还包括: 在系统初始化过程中,所述发送端PCIE设备配置所述信号参数。
4.根据权利要求2或3所述的通信方法,其特征在于,所述信号参数包括下述参数中的至少一项:发送端信号调整参数或接收端信号调整参数。
5.一种快速外设组件互联PCIE芯片,所述PCIE芯片支持光缆传输,其特征在于,包括: 链路状态机,用于当需要与接收端PCIE芯片建立通信连接时,确定控制寄存器的检测状态位包含第一标识,所述第一标识用于表示禁止所述PCIE芯片执行负载检测; 收发器,用于通过光传输器件执行与所述接收端PCIE芯片的链路协商流程,以与所述接收端PCIE芯片建立所述通信连接。
6.根据权利要求5所述的PCIE芯片,其特征在于: 所述链路状态机,还用于当所述PCIE芯片与所述接收端PCIE芯片在所述链路协商流程中协商的数据传输速率达到阈值时,确定所述控制寄存器的均衡指示位包括第二标识,其中,所述第二标识用于表示禁止所述PCIE芯片与所述接收端PCIE芯片协商信号参数; 所述收发器,还用于根据配置的信号参数通过所述通信连接向所述接收端PCIE芯片传输数据。
7.根据权利要求6所述的PCIE芯片,其特征在于,还包括: 管理器,用于在系统初始化过程中,配置所述信号参数。
8.根据权利要求6或7所述的PCIE芯片,其特征在于,所述信号参数包括下述参数中的至少一项:发送端信号调整参数或接收端信号调整参数。
9.一种快速外设组件互联PCIE设备,其特征在于,包括如权利要求5-8任意一项所述的PCIE芯片。
【文档编号】H04B10/25GK103797732SQ201380002272
【公开日】2014年5月14日 申请日期:2013年11月5日 优先权日:2013年11月5日
【发明者】张忠, 李胜 申请人:华为技术有限公司