CN112925730A - 一种PCIe设备链路训练控制方法及系统 - Google Patents

一种PCIe设备链路训练控制方法及系统 Download PDF

Info

Publication number
CN112925730A
CN112925730A CN202110319060.XA CN202110319060A CN112925730A CN 112925730 A CN112925730 A CN 112925730A CN 202110319060 A CN202110319060 A CN 202110319060A CN 112925730 A CN112925730 A CN 112925730A
Authority
CN
China
Prior art keywords
pcie
register
link training
reset
setting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110319060.XA
Other languages
English (en)
Other versions
CN112925730B (zh
Inventor
刘海亮
施楠
陈黎明
刘洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Goke Microelectronics Co Ltd
Original Assignee
Hunan Goke Microelectronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hunan Goke Microelectronics Co Ltd filed Critical Hunan Goke Microelectronics Co Ltd
Priority to CN202110319060.XA priority Critical patent/CN112925730B/zh
Publication of CN112925730A publication Critical patent/CN112925730A/zh
Application granted granted Critical
Publication of CN112925730B publication Critical patent/CN112925730B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Communication Control (AREA)

Abstract

本申请公开了一种PCIe设备链路训练控制方法及系统,该方法包括:将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;当收到所述链路训练成功的信息,中断所述链路训练。本申请通过PCIe设备可自行完成主机端和PCIe设备之间的链路训练,对主机类型的要求降低,提高了PCIe设备对不同主机的兼容性。

Description

一种PCIe设备链路训练控制方法及系统
技术领域
本发明涉及PCIe设备领域,特别涉及一种PCIe设备链路训练控制方法及系统。
背景技术
PCIe(Peripheral Component Interconnect Express,最新的总线和接口标准)是一种高速串行计算机扩展总线,以传输速度快、端到端的可靠性传输、支持热拔插、低功耗管理及服务质量等特性,在个人计算机、服务器、固态硬盘、数据中心,网卡等领域得到了广泛应用,并助力该领域快速发展。
根据PCIe协议,PCIe复位类型中冷复位和温和复位需要使用旁路信号基本复位,复位时间较长,需要重新进行链路训练。根据PCIe协议,如果主机端提供基本复位信号,那么该信号应满足PCIe协议规定的时序要求,但协议并没有规定主机端不提供基本复位信号时如何进行复位,当主机端PCIe接口不提供基本复位信号时PCIe设备无法完成链路训练和复位。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种PCIe设备链路训练控制方法及系统。其具体方案如下:一种PCIe设备链路训练控制方法,包括:
将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;
当收到所述链路训练成功的信息,中断所述链路训练。
优选的,若所述PCIe设备的复位为掉电复位,所述将PCIe上电复位寄存器置为无效,以释放PCIe上电复位信号之前,还包括:
当收到PCIe D3状态冷复位中断,在中断处理函数中将基本复位中断使能信号置0,并将应用层L23设定完毕寄存器置1;
当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作。
优选的,所述当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作之前,还包括:
轮询读取链路训练状态机状态寄存器的值,以判断所述PCIe设备是否已进入所述链路状态L2和L3。
优选的,所述当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作之前,还包括:
将中断状态寄存器清0;
所述当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作的过程,包括:
当收到所述PCIe设备已进入链路状态L2和L3的中断信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作。
优选的,所述当收到所述链路训练成功的信息,中断所述链路训练的过程,包括:
当收到所述链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
优选的,所述当收到所述链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断的过程,具体包括:
轮询读取对应链路训练成功的第五寄存器的值;
若所述第五寄存器的值为1,则判定所述链路训练成功,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
优选的,所述当收到所述链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断的过程,具体包括:
当收到所述链路训练成功的中断,则判定所述链路训练成功,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
优选的,所述分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器的过程,包括:
配置对应PCIe PHY的不同通道和初始化的第一寄存器;
配置对应PCIe控制器的空间位置的第二寄存器;
配置对应PCIe应用层的协议的第三寄存器。
相应的,本申请公开了一种PCIe设备链路训练控制系统,包括:
第一动作模块,用于将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
第二动作模块,用于分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
第三动作模块,用于轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;
第四动作模块,用于当收到所述链路训练成功的信息,中断所述链路训练。
优选的,所述PCIe设备链路训练控制系统还包括:
温和复位动作模块,用于当收到PCIe D3状态冷复位中断,在中断处理函数中将基本复位中断使能信号置0,并将应用层L23设定完毕寄存器置1,还用于当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作。
本申请公开了一种PCIe设备链路训练控制方法,包括:将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;当收到所述链路训练成功的信息,中断所述链路训练。本申请不需要主机端发送基本复位信号,通过PCIe设备可自行完成主机端和PCIe设备之间的链路训练,对主机类型的要求降低,提高了PCIe设备对不同主机的兼容性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例中一种PCIe设备链路训练控制方法的步骤流程图;
图2为本发明实施例中一种具体的PCIe设备链路训练控制方法的步骤流程图;
图3为本发明实施例中一种PCIe设备链路训练控制系统的结构分布图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前PCIe协议并没有规定主机端不提供基本复位信号时如何进行复位,当主机端PCIe接口不提供基本复位旁带信号时PCIe设备无法完成链路训练和复位。本申请不需要主机端发送基本复位信号,通过PCIe设备可自行完成主机端和PCIe设备之间的链路训练,对主机类型的要求降低,提高了PCIe设备对不同主机的兼容性。
本发明实施例公开了一种PCIe设备链路训练控制方法,参见图1所示,该方法包括:
S11:将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
可以理解的是,本实施例的主要目的是使PCIe设备上电复位,步骤S11中之所以将上电复位信号设置为无效,是因为上电后复位寄存器的默认状态为有效,所以需要将复位撤离,才能进行PCIe初始化及链路训练,以建立进行数据传输的链路。
S12:分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
可以理解的是,在完成S12的具体配置以后,主机端即可开始链路训练。
S13:轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;第四寄存器为链路训练和状态机使能寄存器app_ltssm_en;
具体的,此处接收端空闲寄存器指设备端接收端电器空闲寄存器,其值为rxelecidle,指PCIe设备端的接收端空闲状态,当这个信号值为0,表示接收端处于非空闲状态,即主机端已经发送了链路训练的码流。
S14:当收到链路训练成功的信息,中断链路训练。
具体的,该步骤的实施包括:当收到链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
可以理解的是,本实施例的方法可以直接应用在冷复位中,当PCIe设备电源上电后,SSD(Solid State Disk,固态硬盘)控制器的CPU正常上电,PCIe设备的CPU开始进行PCIe设备端的初始化配置,也即本实施例中PCIe设备链路训练控制方法的步骤,该方法的实施主体为PCIe设备的CPU,涉及到CPU与PCIe设备中各寄存器、主机端等的信息交互。
具体的,步骤S11的目的是释放PCIe上电复位信号,具体措施为将PCIe上电复位寄存器置为无效,如果PCIe上电复位信号是低有效,则无效对应置1,反之则置0,根据具体的应用环境设定。
进一步的,不同的PCIe设备在步骤S12中配置的具体寄存器可能不同,但必须是对应关系正确的第一寄存器、第二寄存器和第三寄存器。具体的,步骤S12具体包括:配置对应PCIe PHY的不同通道和初始化的第一寄存器;配置对应PCIe控制器的空间位置的第二寄存器;配置对应PCIe应用层的协议的第三寄存器。因此,第一寄存器主要包括PHY的不同通道的控制配置、PHY不同通道复位释放配置和PHY初始化配置等相关寄存器,第二寄存器主要包括PCIe配置空间寄存器和PCIe控制器内部的IP寄存器,第三寄存器主要包括PCIe应用层协议如NVMe相关的寄存器等。可以理解的是,步骤S13中接收端空闲寄存器又称rxelecidle寄存器,该寄存器的位宽和PCIe设备通道lane的个数一致,如果该寄存器的值不是全1,则说明PCIe设备端已经有数据在传输,主机端已经开始链路训练,此时通过第四寄存器开启链路训练的使能信号,也即将链路训练和状态机使能寄存器写为1,使PCIe设备开始与主机端的链路训练。
最后,步骤S14中确定链路训练成功后,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断,至此上电复位操作执行完毕。具体的,步骤S14确定链路训练成功的方法包括两种,其中:
第一种方式下当收到链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断的过程,具体包括:
轮询读取对应链路训练成功的第五寄存器的值;
若第五寄存器的值为1,则判定链路训练成功,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
第二种方式向当收到链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断的过程,具体包括:
当收到PCIe链路训练成功的中断,则判定链路训练成功,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
进一步的,在收到中断判定链路训练成功后,查看中断使能寄存器的值,如果是0,则置1并清中断状态寄存器,如果是1,则不需要置1,直接清中断状态寄存器即可。
本申请公开了一种PCIe设备链路训练控制方法,包括:将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;当收到所述链路训练成功的信息,中断所述链路训练。本申请实施例不需要主机端发送基本复位信号,通过PCIe设备可自行完成主机端和PCIe设备之间的链路训练,对主机类型的要求降低,提高了PCIe设备对不同主机的兼容性。
本发明实施例公开了一种具体的PCIe设备链路训练控制方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的,参见图2所示,若PCIe设备的复位为掉电复位,PCIe设备链路训练控制方法包括:
S21:当收到PCIe D3状态冷复位中断,在中断处理函数中将基本复位中断使能信号置0,并将应用层L23设定完毕寄存器置1;
S22:当收到PCIe设备已进入链路状态L2和L3的信息,将PCIe上电复位寄存器置为有效,以对PCIe设备进行全局复位操作。
S23:将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
S24:分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
S25:轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启PCIe设备的链路训练的使能信号;
S26:当收到链路训练成功的信息,中断链路训练。
可以理解的是,本实施例中的方案应用于温和复位的情况下。常规情况下,主机端进行关机(Shutdown)、重启(Rboot)或复位(Reset)操作时,会将PCIe设备端的链路训练状态机(Link Training and Status State Machine,LTSSM)引导到链路状态L2和L3,如果PCIe设备端支持辅助电源,则链路训练状态机会被引导到链路状态L2和L3,并启动辅助电源;如果PCIe设备端不支持辅助电源,则链路训练状态机会被引导到链路状态L2和L3,并做好掉电准备。接下来如果是关机命令,则SSD就会掉电;如果是重启或复位,则在主机端提供基本复位信号的情况下,主机端会发生基本复位,如果主机端未提供基本复位的情况下,则需要PCIe设备端自行产生基本复位等效的功能并进行复位,也即本实施例中的方案。
其中,步骤21中目的在于通知PCIe电路,CPU已做好准备可以进入掉电状态;接着步骤S22收到PCIe设备已进入链路状态L2和L3的信息的途径,包括通过中断方式的是还是通过轮询读链路训练状态机状态寄存器得知,因此分为以下两种情况:
第一种情况下,当收到PCIe设备已进入链路状态L2和L3的信息,将PCIe上电复位寄存器置为有效,以对PCIe设备进行全局复位操作之前,还包括:
轮询读取链路训练状态机状态寄存器的值,以判断PCIe设备是否已进入链路状态L2和L3。
第二种情况下,当收到PCIe设备已进入链路状态L2和L3的信息,将PCIe上电复位寄存器置为有效,以对PCIe设备进行全局复位操作之前,还包括:
将中断状态寄存器清0;
步骤S22的过程包括:
当收到PCIe设备进入链路状态L2和L3的中断信息,将PCIe上电复位寄存器置为有效,以对PCIe设备进行全局复位操作。
之后执行步骤S23-S26,即在PCIe设备进入链路状态L2和L3后,不论主机是否发送基本复位信号,PCIe设备端都可使用本地CPU产生的基本复位逻辑对PCIe设备端进行复位操作,CPU操作流程统一,通过软硬件协同的方法提高了对不同主机的兼容性。
相应的,本申请实施例还公开了一种PCIe设备链路训练控制系统,参见图3所示,该系统包括:
第一动作模块1,用于将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
第二动作模块2,用于分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
第三动作模块3,用于轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;
第四动作模块4,用于当收到链路训练成功的信息,中断所述链路训练。
进一步的,PCIe设备链路训练控制系统还可以包括:
温和复位动作模块,用于当收到PCIe D3状态冷复位中断,在中断处理函数中将基本复位中断使能信号置0,并将应用层L23设定完毕寄存器置1,还用于当收到PCIe设备已进入链路状态L2和L3的信息,将PCIe上电复位寄存器置为有效,以对PCIe设备进行全局复位操作。
本申请实施例不需要主机端发送基本复位信号,通过PCIe设备可自行完成主机端和PCIe设备之间的链路训练,对主机类型的要求降低,提高了PCIe设备对不同主机的兼容性。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种PCIe设备链路训练控制方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种PCIe设备链路训练控制方法,其特征在于,包括:
将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;
当收到所述链路训练成功的信息,中断所述链路训练。
2.根据权利要求1所述PCIe设备链路训练控制方法,其特征在于,若所述PCIe设备的复位为掉电复位,所述将PCIe上电复位寄存器置为无效,以释放PCIe上电复位信号之前,还包括:
当收到PCIe D3状态冷复位中断,在中断处理函数中将基本复位中断使能信号置0,并将应用层L23设定完毕寄存器置1;
当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作。
3.根据权利要求2所述PCIe设备链路训练控制方法,其特征在于,所述当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作之前,还包括:
轮询读取链路训练状态机状态寄存器的值,以判断所述PCIe设备是否已进入所述链路状态L2和L3。
4.根据权利要求2所述PCIe设备链路训练控制方法,其特征在于,所述当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作之前,还包括:
将中断状态寄存器清0;
所述当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作的过程,包括:
当收到所述PCIe设备已进入链路状态L2和L3的中断信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作。
5.根据权利要求1-4任一项所述PCIe设备链路训练控制方法,其特征在于,所述当收到所述链路训练成功的信息,中断所述链路训练的过程,包括:
当收到所述链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
6.根据权利要求5所述PCIe设备链路训练方法,其特征在于,所述当收到所述链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断的过程,具体包括:
轮询读取对应链路训练成功的第五寄存器的值;
若所述第五寄存器的值为1,则判定所述链路训练成功,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
7.根据权利要求5所述PCIe设备链路训练控制方法,其特征在于,所述当收到所述链路训练成功的信息,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断的过程,具体包括:
当收到所述链路训练成功的中断,则判定所述链路训练成功,将基本复位信号对应的中断使能寄存器的值置1,以使能基本复位信号中断。
8.根据权利要求5所述PCIe设备链路训练控制方法,其特征在于,所述分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器的过程,包括:
配置对应PCIe PHY的不同通道和初始化的第一寄存器;
配置对应PCIe控制器的空间位置的第二寄存器;
配置对应PCIe应用层的协议的第三寄存器。
9.一种PCIe设备链路训练控制系统,其特征在于,包括:
第一动作模块,用于将PCIe设备的上电复位寄存器置为无效,以释放PCIe上电复位信号;
第二动作模块,用于分别配置对应PCIe PHY的第一寄存器、对应PCIe控制器的第二寄存器和对应PCIe应用层的第三寄存器;
第三动作模块,用于轮询读取接收端空闲寄存器的值,以判断主机端是否开始链路训练,若是,通过第四寄存器开启所述PCIe设备的链路训练的使能信号;所述第四寄存器为链路训练和状态机使能寄存器;
第四动作模块,用于当收到所述链路训练成功的信息,中断所述链路训练。
10.根据权利要求9所述PCIe设备链路训练控制系统,其特征在于,还包括:
温和复位动作模块,用于当收到PCIe D3状态冷复位中断,在中断处理函数中将基本复位中断使能信号置0,并将应用层L23设定完毕寄存器置1,还用于当收到所述PCIe设备已进入链路状态L2和L3的信息,将所述PCIe上电复位寄存器置为有效,以对所述PCIe设备进行全局复位操作。
CN202110319060.XA 2021-03-25 2021-03-25 一种PCIe设备链路训练控制方法及系统 Active CN112925730B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110319060.XA CN112925730B (zh) 2021-03-25 2021-03-25 一种PCIe设备链路训练控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110319060.XA CN112925730B (zh) 2021-03-25 2021-03-25 一种PCIe设备链路训练控制方法及系统

Publications (2)

Publication Number Publication Date
CN112925730A true CN112925730A (zh) 2021-06-08
CN112925730B CN112925730B (zh) 2023-06-09

Family

ID=76175942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110319060.XA Active CN112925730B (zh) 2021-03-25 2021-03-25 一种PCIe设备链路训练控制方法及系统

Country Status (1)

Country Link
CN (1) CN112925730B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016114873A1 (en) * 2015-01-16 2016-07-21 Qualcomm Incorporated Fast link training in embedded systems
US20170116071A1 (en) * 2015-10-26 2017-04-27 International Business Machines Corporation Multiple reset modes for a pci host bridge
CN110647486A (zh) * 2019-09-29 2020-01-03 江苏芯盛智能科技有限公司 一种PCIe链路训练方法、端设备及通讯系统
CN111984582A (zh) * 2020-08-21 2020-11-24 苏州浪潮智能科技有限公司 一种pcie链路训练方法、设备以及介质
CN112256496A (zh) * 2020-10-23 2021-01-22 苏州浪潮智能科技有限公司 一种pcie链路冗余设计方法、装置终端及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016114873A1 (en) * 2015-01-16 2016-07-21 Qualcomm Incorporated Fast link training in embedded systems
US20170116071A1 (en) * 2015-10-26 2017-04-27 International Business Machines Corporation Multiple reset modes for a pci host bridge
CN110647486A (zh) * 2019-09-29 2020-01-03 江苏芯盛智能科技有限公司 一种PCIe链路训练方法、端设备及通讯系统
CN111984582A (zh) * 2020-08-21 2020-11-24 苏州浪潮智能科技有限公司 一种pcie链路训练方法、设备以及介质
CN112256496A (zh) * 2020-10-23 2021-01-22 苏州浪潮智能科技有限公司 一种pcie链路冗余设计方法、装置终端及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FELIX: ""PCIe扫盲——复位机制介绍(Fundamental & Hot)", 《HTTP://BLOG.CHINAAET.COM/JUSTLXY/P/5100057779》 *

Also Published As

Publication number Publication date
CN112925730B (zh) 2023-06-09

Similar Documents

Publication Publication Date Title
CN107885686B (zh) 一种采用bmc控制单个硬盘重启的系统及方法
US7739487B2 (en) Method for booting a host device from an MMC/SD device, a host device bootable from an MMC/SD device and an MMC/SD device method a host device may booted from
US8443126B2 (en) Hot plug process in a distributed interconnect bus
US9015458B2 (en) Computer system and method for updating basic input/output system by switching between local mode and bypass mode through baseboard management controller
CN102880527B (zh) 一种基板管理控制器的数据恢复方法
US8169939B2 (en) Mobile computation device and data packet reception method thereof
CN114116378A (zh) 获取PCIe设备温度的方法、系统、终端及存储介质
TWI796260B (zh) 主機裝置
US9092334B2 (en) Method for shortening enumeration of tightly coupled USB device
CN107145198B (zh) 一种提升服务器对硬盘兼容能力的方法及其主板
CN115904520A (zh) 基于pcie拓扑状态变更的配置保存方法及相关设备
KR0182632B1 (ko) 클라이언트 서버 시스템 및 그 제어 방법
CN112925730B (zh) 一种PCIe设备链路训练控制方法及系统
KR100605031B1 (ko) Usb 메모리 장치를 이용한 임베디드 시스템의 장애복구 및 업그레이드 방법
CN115407941A (zh) 一种vmd功能启动方法及其相关组件
CN115098342A (zh) 系统日志收集方法、系统、终端及存储介质
CN113946530A (zh) 扩展卡的控制方法及装置、非易失性存储介质
CN112445744B (zh) I2c通信
US20060206644A1 (en) Method of hot switching data transfer rate on bus
CN117009162B (zh) 一种三模raid卡芯片识别硬盘的方法
CN109165099B (zh) 一种电子设备、内存拷贝方法及装置
TWI757923B (zh) 預啟動執行環境判斷系統及其方法
CN216014148U (zh) 一种服务器和服务器背板
CN110362349B (zh) 虚拟输入管理装置及其管理方法
CN115237836A (zh) 一种视频转码卡连接方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant