CN114911740A - PCIe拆分方法、装置、电子设备及可读存储介质 - Google Patents
PCIe拆分方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN114911740A CN114911740A CN202210625883.XA CN202210625883A CN114911740A CN 114911740 A CN114911740 A CN 114911740A CN 202210625883 A CN202210625883 A CN 202210625883A CN 114911740 A CN114911740 A CN 114911740A
- Authority
- CN
- China
- Prior art keywords
- pcie
- splitting
- connecting plate
- identity information
- current
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims description 11
- 230000003044 adaptive effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000035622 drinking Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明涉及一种PCIe拆分方法、装置、电子设备及可读存储介质,属于计算机链路配置技术领域,该方法包括:获取当前连接板的身份信息;确定与当前连接板的身份信息对应的PCIe拆分需求;识别PCIe拆分需求,并选择与其对应的PCIe拆分方式;基于PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。上述PCIe拆分方法、装置、电子设备及可读存储介质,在用户根据对外接PCIe设备的需求选择具有适配PCIe连接器的连接板后,通过读取连接板的身份信息,获取对应的拆分需求,进而按照与用户需求对应的拆分方式完成对PCIe的有效拆分,从而保证了用户连接外接PCIe设备后能够正常运行,避免了PCIe信号通道不匹配造成的外接PCIe设备无法正常运行和PCIe信号通道资源的浪费。
Description
技术领域
本发明涉及一种PCIe拆分方法、装置、电子设备及可读存储介质,属于计算机链路配置技术领域。
背景技术
PCIe(peripheral component interconnect express,高速串行计算机扩展总线标准)是一种高速串行计算机扩展总线标准。PCIe属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量(QOS)等功能。在计算机领域,PCIe信号是CPU输出的最重要的高速信号。通常,一个PCIe控制器出来的PCIe有多个信号通道,其中,16个通道(后续x16表示)是比较常见的。一个x16又可以拆分成两个x8(后续用x8x8表示),或x8x4x4,或x4x8x4,或x4x4x8,或x4x4x4x4多种组合信号通道。
外接不同的PCIe设备(如GPU卡,网卡,NVMe硬盘等),所需要的PCIe通道数是不一样的,比如,一张GPU卡,需要16个通道数;一张10G网卡,需要8个通道数;一块NVMe硬盘,需要4个通道数。故针对连接到的不同的PCIe设备,需要对PCIe进行拆分的通道数也不同。如果对PCIe拆分的通道数与外接的PCIe设备不匹配,就会造成外接的PCIe设备无法正常运行或者PCIe信号通道资源的浪费。
发明内容
为了解决上述问题至少之一,本发明第一个实施例提供一种PCIe拆分方法,包括:
获取当前连接板的身份信息;
确定与所述当前连接板的身份信息对应的PCIe拆分需求;
识别所述PCIe拆分需求,并选择与其对应的PCIe拆分方式;
基于所述PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。
例如,在本申请一些实施例提供的拆分方法中,所述获取当前连接板的身份信息,包括:
校验所述当前连接板的身份信息,以判断当前连接板是否经过授权;其中,所述连接板的身份信息存储于连接板的CPLD寄存器中;若是,则
确定所述当前连接板为有效连接板。
例如,在本申请一些实施例提供的拆分方法中,所述校验所述当前连接板的身份信息,以判断当前连接板是否经过授权,包括:
对所述当前连接板的身份信息进行偶校验,其中,连接板的身份信息定义为5bit二进制身份码,每个身份码配备1bit偶校验位;
判断偶校验是否成功;若是,则
对所述身份码取反值,并比对是否与预存的验证码一致;若是,则判断当前连接板已经经过授权。
例如,在本申请一些实施例提供的拆分方法中,所述确定与所述当前连接板的身份信息对应的PCIe拆分需求,包括:
将所述当前连接板的身份信息与拆分规则进行比对,获取PCIe拆分需求及其对应的赋值编号,其中,所述拆分规则存储于主板的BMC的数据库中,包括连接板身份信息以及与其对应的PCIe拆分需求和赋值编号;
将所述赋值编号保存至BMC寄存器中。
例如,在本申请一些实施例提供的拆分方法中,所述识别所述PCIe拆分需求,并选择与其对应的PCIe拆分方式,包括:
读取所述BMC寄存器中的赋值编号,以识别所述PCIe拆分需求;
将所述赋值编号与拆分对照规则进行比对,获得对应的拆分方式,其中,拆分对照规则存储于主板的BIOS的数据库中,包括拆分方式及其对应的分编号,所述分编号与所述赋值编号一一对应。
本发明第二个实施例提供一种应用如第一个实施例所述的PCIe拆分装置,包括获取模块,用于获取当前连接板的身份信息;
确定模块,用于确定与所述当前连接板的身份信息对应的PCIe拆分需求;
识别模块,用于识别所述PCIe拆分需求,并选择与其对应的PCIe拆分方式;与
拆分模块,用于基于所述PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。
例如,在本申请一些实施例提供的拆分装置中,所述装置还包括:
校验模块,用于校验当前连接板的身份信息,以判断当前连接板是否经过授权;其中,所述连接板的身份信息存储于连接板的CPLD寄存器中。
例如,在本申请一些实施例提供的拆分装置中,所述确定模块,具体用于:
将所述当前连接板的身份信息与拆分规则进行比对,获取PCIe拆分需求及其对应的赋值编号,其中,所述拆分规则存储于主板的BMC的数据库中,包括连接板身份信息以及与其对应的PCIe拆分需求和赋值编号;
将所述赋值编号保存至BMC寄存器中。
本发明第三个实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述所述的方法的步骤。
本发明第四个实施例提供一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述所述的方法的步骤。
本发明的有益效果如下:
本发明针对目前现有的问题,制定一种PCIe拆分方法、装置、电子设备及可读存储介质,在用户根据对外接PCIe设备的需求选择具有适配PCIe连接器的连接板后,通过读取连接板的身份信息,获取对应的拆分需求,进而按照与用户需求对应的拆分方式完成对PCIe的有效拆分,从而保证了用户连接外接PCIe设备后能够正常运行,避免了PCIe信号通道不匹配造成的外接PCIe设备无法正常运行和PCIe信号通道资源的浪费。
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本发明的一个实施例的PCIe拆分方法流程图;
图2示出本发明的一个实施例的连接板的示意图;
图3示出本发明的一个实施例的连接板与主板及PCIe设备的连接关系图;
图4示出本发明的一个实施例的获取当前连接板的身份信息的流程图;
图5示出本发明的一个实施例的PCIe拆分装置原理图;
图6示出本发明的一个实施例的电子设备的内部结构图。
具体实施方式
针对现有技术存在的问题,如图1所示,本发明的一个实施例提供了一种PCIe拆分方法,包括以下步骤:
步骤S110,获取当前连接板的身份信息。
其中,连接板与主板连接,以实现主板对连接板的身份信息的读取。连接板上设置至少一个PCIe连接器,用于对外连接到PCIe设备(如GPU卡,网卡,NVMe硬盘等),参见图2。PCIe连接器的接口不一定是固定的,比如接普通网卡,那么这个接口就是标准的PCIe槽。如果接的是NVMe硬盘,那么PCIe连接器的接口就是U.2接口。每个连接板都有一个独一无二的身份信息,通常,通过硬件电路,优选CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件),将不同的连接板的身份信息定义为不同的二进制身份码,比如,定义为5个bit的二进制身份码。
具体的,连接板可通过I2C总线连接主板上的BMC(Baseboard ManagerController,基板管理控制器),同时,主板上BIOS(Basic Input Output System,基本输入输出系统)通过LPC总线与BMC连接,参见图3。
步骤S120,确定与当前连接板的身份信息对应的PCIe拆分需求。
具体的,主板的BMC数据库中预存有PCIe拆分需求及其对应的二进制身份码。当主板与当前连接板连接后,BMC识别当前连接板存储的二进制身份码,从而确定当前连接板对CPU的PCIe拆分需求。
在一个实施例中,步骤S120,包括:
将当前连接板的身份信息与拆分规则进行比对,获取PCIe拆分需求及其对应的赋值编号,其中,拆分规则存储于BMC的数据库中,包括连接板身份信息以及与其对应的PCIe拆分需求和赋值编号;将赋值编号保存至BMC寄存器中。
具体的,以16通道的PCIe的拆分为例进行说明。参见表1,针对16通道的PCIe的拆分,连接板对CPU的PCIe的拆分需求包括x16、x8x8、x8x4x4、x4x8x4、x4x4x8和x4x4x4x4,分别对应的连接板名称为A、B、C、D、E、F,连接板的身份信息为5bit二进制身份码,依次为10000、10001、10010、10011、10100、10101。每个拆分需求分别对饮一个8bit的二进制赋值编号,依次为00000001、00000010、00000011、00000100、00000101和00000110。表1中的信息构成拆分规则,预存于BMC的数据库中。当BMC识别到当前连接板的身份码后,与数据库中的拆分规则做比对,确定对应的PCIe拆分需求,并按照所确定的拆分需求,按照拆分规则中对应的赋值编号给BMC寄存器赋值。
表1
连接板名称 | 身份信息 | PCIe拆分需求 | 赋值编号 |
连接板A | 10000 | x16 | 00000001 |
连接板B | 10001 | x8x8 | 00000010 |
连接板C | 10010 | x8x4x4 | 00000011 |
连接板D | 10011 | x4x8x4 | 00000100 |
连接板E | 10100 | x4x4x8 | 00000101 |
连接板F | 10101 | x4x4x4x4 | 00000110 |
由表1可知,当检测到连接板B时,可确认PCIe拆分需求为x8x8,故需要对BMC寄存器赋值为:00000010;当检测到连接板C时,可确认PCIe拆分需求为x8x4x4,故需要对BMC寄存器赋值为:00000011;检测到其它连接板同理按照表1对BMC寄存器进行赋值。
步骤S130,识别PCIe拆分需求,并选择与其对应的PCIe拆分方式。
在一个实施例中,步骤S130包括:
读取BMC寄存器中的赋值编号,以识别PCIe拆分需求;将赋值编号与拆分对照规则进行比对,获得对应的拆分方式,其中,拆分对照规则存储于BIOS的数据库中,包括拆分方式及其对应的分编号,分编号与赋值编号一一对应。
具体的,16通道的PCIe的拆分方式包括x16、x8x8、x8x4x4、x4x8x4、x4x4x8和x4x4x4x4,主板BIOS数据库里存储有与PCIe拆分方式对应的分编号,该分编号采用二进制编码,以便于主板进行识别,每种PCIe拆分方式对应一个8bit二进制的分编号,分别为00000001、00000010、00000011、00000100、00000101和00000110,如表2所示。当主板识别到二进制分编号时,将按照分编号对应的拆分方式对CPU的PCIe进行拆分。
表2
PCIe拆分方式 | 分编号(8bit) |
X16 | 00000001 |
X8X8 | 00000010 |
X8X4X4 | 00000011 |
X4X8X4 | 00000100 |
X4X4X8 | 00000101 |
X4X4X4X4 | 00000110 |
步骤S140,基于PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。
具体的,在拆分时,BIOS初始化,通过LPC总线读取BMC寄存器中与拆分需求对应的赋值编号,并与BIOS数据库中预存的拆分对照规则进行对比,获取连接板所需要PCIe拆分方式,并完成对PCIe的拆分,且将拆分后的信号通道分配给连接板。由表2可知,如果BIOS读取BMC寄存器的PCIe拆分需求对应的赋值编号为00000001,则CPU的PCIe则会拆分为一个16通道数(x16);如果BIOS读取BMC寄存器的PCIe拆分需求对应的赋值编号为00000010,则CPUPCIe则会拆分为一个16通道数(x8x8);其它拆分方式同理。
上述PCIe拆分方法,在用户根据对外接PCIe设备的需求选择具有适配PCIe连接器的连接板后,通过读取连接板的身份信息,获取对应的拆分需求,进而按照与用户需求对应的拆分方式完成对PCIe的有效拆分,从而保证了用户连接外接PCIe设备后能够正常运行,避免了PCIe信号通道不匹配造成的外接PCIe设备无法正常运行和PCIe信号通道资源的浪费。
如图4所示,在一个实施例中,获取当前连接板的身份信息,包括:
步骤S112,校验当前连接板的身份信息,以判断当前连接板是否经过授权;其中,连接板的身份信息存储于连接板的CPLD寄存器中。若是,则进入步骤S114。
其中,步骤S112包括:
对当前连接板的身份信息进行偶校验,其中,连接板的身份信息定义为5bit二进制身份码,每个身份码配备1bit偶校验位;判断偶校验是否成功,若是,则对身份码取反值,并比对是否与预存的验证码一致;若是,则判断当前连接板已经经过授权。
具体的,通过编程,将所有可能连接的连接板的身份信息写到连接板CPLD的寄存器a中,同时将身份码取反,并保存在寄存器b里。如表3所示。
表3
寄存器 | Bit7 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 |
a | 保留位 | 保留位 | 1 | 0 | 0 | 0 | 0 | 1 |
寄存器 | Bit7 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 |
b | 保留位 | 保留位 | 0 | 1 | 1 | 1 | 1 | 0 |
身份信息以10000为例对寄存器进行说明:
寄存器a采用8bit,bit 7~6为保留位,后续可对身份信息进行扩展;bit5~1为身份信息,如表3的身份信息为10000;bit0为偶检验位,即要求身份信息加上偶检验位的总数必须为偶数,如身份信息10000每个位加起来的1(是奇数),所以偶检验位必须为1,这样总数才能为偶数。
寄存器b采用8bit,其中,bit 7~bit 6为保留位,后续可对身份信息进行扩展;bit5~bit 0存放的是寄存器a中bit5~bit 0的取反值,如寄存器a的bit5~bit 0的值为10000,那么寄存器b的bit5~bit 0的值为01111。
整个过程是,主板上的BMC通过I2C总线,连接到连接板上的CPLD上。通过读取CPLD上寄存器a的编码信息,来获取身份信息,并进行偶校验;偶校验成功后,再对寄存器b的取反值进行核对,核对成功后,BMC最后将身份信息传给BIOS,进行PCIe拆分。
步骤S114,确定当前连接板为有效连接板。
在判定连接板是否是经过授权的连接板的过程中,通过偶校验,避免极小概率误读导致PCIe拆分错误的情况,如果校验失败,需重新校验,直到成功;通过对寄存器b的取反值进行核对,避免了让非授权的连接板开机,只有核对成功的连接板才允许BIOS正常启动,否则,不允许主板上电,BIOS无法启动。
在一个实施例中,PCIe拆分方法的拆分的工作过程:首先,主板插上电源后,主板BMC完成初始化后,通过I2C读取连接到主板的当前连接板的身份信息。其次,BMC根据当前连接板的身份信息,通过与BMC数据库进行对比校验,得到当前连接板所需要PCIe拆分需求,并根据此对寄存器进行赋值。再次,通过开机键或BMC指令可对主板进行开机。最后,BIOS初始化,并通过LPC总线读取BMC寄存器的值,并与BIOS数据库进行对比校验,最终获取连接板所需要PCIe拆分方式,并完成对PCIe的拆分,从而可对PCIe设备进行正确识别,保证外接PCIe设备的正常运行。
此外,还提供了一种PCIe拆分装置,用于实现上述PCIe拆分方法。
如图5所示,在一个实施例中,一种PCIe拆分装置,包括获取模块510、确定模块520、识别模块530、和拆分模块540。
获取模块510,用于获取当前连接板的身份信息。
确定模块520,用于确定与当前连接板的身份信息对应的PCIe拆分需求。
识别模块530,用于识别PCIe拆分需求,并选择与其对应的PCIe拆分方式。
拆分模块540,用于基于PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。
在一个实施例中,获取模块510还用于校验当前连接板的身份信息,以判断当前连接板是否经过授权;其中,连接板的身份信息存储于连接板的CPLD寄存器中;若是,则确定当前连接板为有效连接板。
在一个实施例中,获取模块510还用于对当前连接板的身份信息进行偶校验,其中,连接板的身份信息定义为5bit二进制身份码,每个身份码配备1bit偶校验位;判断偶校验是否成功;若是,则对身份码取反值,并比对是否与预存的验证码一致;若是,则判断当前连接板已经经过授权。
在一个实施例中,确定模块还用于将当前连接板的身份信息与拆分规则进行比对,获取PCIe拆分需求及其对应的赋值编号,其中,拆分规则存储于BMC的数据库中,包括连接板身份信息以及与其对应的PCIe拆分需求和赋值编号;将赋值编号保存至BMC寄存器中。
在一个实施例中,识别模块还用于读取所述BMC寄存器中的赋值编号,以识别PCIe拆分需求;将赋值编号与拆分对照规则进行比对,获得对应的拆分方式,其中,拆分对照规则存储于BIOS的数据库中,包括拆分方式及其对应的分编号,分编号与所述赋值编号一一对应。
关于PCIe拆分装置的具体限定可以参见上文中对于PCIe拆分方法的限定,在此不再赘述。上述PCIe拆分装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备中的处理器中,也可以以软件形式存储于电子设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种电子设备,该电子设备可以是智能终端,其内部结构图可以如图6所示。该电子设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种PCIe拆分方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,一种电子设备,包括存储器和处理器,存储器存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。在一个实施例中,一种计算机存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
Claims (10)
1.一种PCIe拆分方法,其特征在于,所述方法包括:
获取当前连接板的身份信息;
确定与所述当前连接板的身份信息对应的PCIe拆分需求;
识别所述PCIe拆分需求,并选择与其对应的PCIe拆分方式;
基于所述PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。
2.根据权利要求1所述的PCIe拆分方法,其特征在于,所述获取当前连接板的身份信息,包括:
校验所述当前连接板的身份信息,以判断当前连接板是否经过授权,其中,所述连接板的身份信息存储于连接板的CPLD寄存器中;若是,则
确定所述当前连接板为有效连接板。
3.根据权利要求2所述的PCIe拆分方法,其特征在于,所述校验所述当前连接板的身份信息,以判断当前连接板是否经过授权,包括:
对所述当前连接板的身份信息进行偶校验,其中,连接板的身份信息定义为5bit二进制身份码,每个身份码配备1bit偶校验位;
判断偶校验是否成功;若是,则
对所述身份码取反值,并比对是否与预存的验证码一致;若是,则判断当前连接板已经经过授权。
4.根据权利要求1所述的PCIe拆分方法,其特征在于,所述确定与所述当前连接板的身份信息对应的PCIe拆分需求,包括:
将所述当前连接板的身份信息与拆分规则进行比对,获取PCIe拆分需求及其对应的赋值编号,其中,所述拆分规则存储于主板的BMC的数据库中,包括连接板身份信息以及与其对应的PCIe拆分需求和赋值编号;
将所述赋值编号保存至BMC寄存器中。
5.根据权利要求4所述的PCIe拆分方法,其特征在于,所述识别所述PCIe拆分需求,并选择与其对应的PCIe拆分方式,包括:
读取所述BMC寄存器中的赋值编号,以识别所述PCIe拆分需求;
将所述赋值编号与拆分对照规则进行比对,获得对应的拆分方式,其中,拆分对照规则存储于主板的BIOS的数据库中,包括拆分方式及其对应的分编号,所述分编号与所述赋值编号一一对应。
6.一种PCIe拆分装置,其特征在于,所述装置包括:
获取模块,用于获取当前连接板的身份信息;
确定模块,用于确定与所述当前连接板的身份信息对应的PCIe拆分需求;
识别模块,用于识别所述PCIe拆分需求,并选择与其对应的PCIe拆分方式;与
拆分模块,用于基于所述PCIe拆分方式对CPU的PCIe进行拆分,且将拆分后的PCIe信号通道分配给当前连接板上的PCIe连接器。
7.根据权利要求6所述的PCIe拆分装置,其特征在于,所述装置还包括:
校验模块,用于校验当前连接板的身份信息,以判断当前连接板是否经过授权;其中,所述连接板的身份信息存储于连接板的CPLD寄存器中。
8.根据权利要求6所述的PCIe拆分装置,其特征在于,所述确定模块,具体用于:
将所述当前连接板的身份信息与拆分规则进行比对,获取PCIe拆分需求及其对应的赋值编号,其中,所述拆分规则存储于主板的BMC的数据库中,包括连接板身份信息以及与其对应的PCIe拆分需求和赋值编号;
将所述赋值编号保存至BMC寄存器中。
9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210625883.XA CN114911740B (zh) | 2022-06-02 | 2022-06-02 | PCIe拆分方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210625883.XA CN114911740B (zh) | 2022-06-02 | 2022-06-02 | PCIe拆分方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114911740A true CN114911740A (zh) | 2022-08-16 |
CN114911740B CN114911740B (zh) | 2024-06-28 |
Family
ID=82769770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210625883.XA Active CN114911740B (zh) | 2022-06-02 | 2022-06-02 | PCIe拆分方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114911740B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116150073A (zh) * | 2023-04-21 | 2023-05-23 | 杭州鸿钧微电子科技有限公司 | PCIe通道拆分自动识别电路与方法 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030094865A (ko) * | 2002-06-08 | 2003-12-18 | 엘지산전 주식회사 | 병렬 버스를 사용하는 백플레인의 통신 고속화 장치 및신뢰성 향상 방법 |
US20080148104A1 (en) * | 2006-09-01 | 2008-06-19 | Brinkman Michael G | Detecting an Agent Generating a Parity Error on a PCI-Compatible Bus |
CN106444468A (zh) * | 2016-05-03 | 2017-02-22 | 重庆青年职业技术学院 | 一种信息机适配器检测系统及方法 |
US20180246840A1 (en) * | 2017-02-27 | 2018-08-30 | International Business Machines Corporation | Intelligent Certificate Discovery in Physical and Virtualized Networks |
CN109472172A (zh) * | 2017-09-08 | 2019-03-15 | 恩智浦有限公司 | 用于防止来自存储器的未授权数据访问的方法 |
CN111079438A (zh) * | 2019-12-04 | 2020-04-28 | 北京声智科技有限公司 | 身份验证方法、装置、电子设备及存储介质 |
CN111200440A (zh) * | 2018-11-19 | 2020-05-26 | 爱思开海力士有限公司 | Ldpc解码器、半导体存储器系统及其操作方法 |
WO2020125364A1 (zh) * | 2018-12-17 | 2020-06-25 | 深圳壹账通智能科技有限公司 | 信息校验输入方法、装置、计算机设备和存储介质 |
CN111813731A (zh) * | 2020-06-11 | 2020-10-23 | 中国长城科技集团股份有限公司 | 一种内存信息的读取方法、装置、服务器及介质 |
CN112015477A (zh) * | 2020-08-06 | 2020-12-01 | 苏州浪潮智能科技有限公司 | 一种pcie链路的拆分方法、系统及扩展装置 |
CN112131163A (zh) * | 2020-09-18 | 2020-12-25 | 浪潮电子信息产业股份有限公司 | 一种pcie资源自动拆分电路及方法 |
CN112559425A (zh) * | 2020-11-27 | 2021-03-26 | 山东云海国创云计算装备产业创新中心有限公司 | 一种pcie端口的拆分方法、装置、设备及介质 |
US20210200689A1 (en) * | 2019-12-31 | 2021-07-01 | Western Digital Technologies, Inc. | Storage System and Method for Secure Host Controller Memory Buffer Access |
CN113632069A (zh) * | 2019-03-27 | 2021-11-09 | 赛灵思公司 | 自适应集成可编程设备平台 |
CN113867812A (zh) * | 2021-08-30 | 2021-12-31 | 苏州浪潮智能科技有限公司 | 一种bmc获取链路信息的方法、系统、设备以及介质 |
CN113986796A (zh) * | 2021-10-24 | 2022-01-28 | 苏州浪潮智能科技有限公司 | 一种PCIe链路宽度的动态配置方法、装置、设备及可读介质 |
-
2022
- 2022-06-02 CN CN202210625883.XA patent/CN114911740B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030094865A (ko) * | 2002-06-08 | 2003-12-18 | 엘지산전 주식회사 | 병렬 버스를 사용하는 백플레인의 통신 고속화 장치 및신뢰성 향상 방법 |
US20080148104A1 (en) * | 2006-09-01 | 2008-06-19 | Brinkman Michael G | Detecting an Agent Generating a Parity Error on a PCI-Compatible Bus |
CN106444468A (zh) * | 2016-05-03 | 2017-02-22 | 重庆青年职业技术学院 | 一种信息机适配器检测系统及方法 |
US20180246840A1 (en) * | 2017-02-27 | 2018-08-30 | International Business Machines Corporation | Intelligent Certificate Discovery in Physical and Virtualized Networks |
CN109472172A (zh) * | 2017-09-08 | 2019-03-15 | 恩智浦有限公司 | 用于防止来自存储器的未授权数据访问的方法 |
CN111200440A (zh) * | 2018-11-19 | 2020-05-26 | 爱思开海力士有限公司 | Ldpc解码器、半导体存储器系统及其操作方法 |
WO2020125364A1 (zh) * | 2018-12-17 | 2020-06-25 | 深圳壹账通智能科技有限公司 | 信息校验输入方法、装置、计算机设备和存储介质 |
CN113632069A (zh) * | 2019-03-27 | 2021-11-09 | 赛灵思公司 | 自适应集成可编程设备平台 |
CN111079438A (zh) * | 2019-12-04 | 2020-04-28 | 北京声智科技有限公司 | 身份验证方法、装置、电子设备及存储介质 |
US20210200689A1 (en) * | 2019-12-31 | 2021-07-01 | Western Digital Technologies, Inc. | Storage System and Method for Secure Host Controller Memory Buffer Access |
CN111813731A (zh) * | 2020-06-11 | 2020-10-23 | 中国长城科技集团股份有限公司 | 一种内存信息的读取方法、装置、服务器及介质 |
CN112015477A (zh) * | 2020-08-06 | 2020-12-01 | 苏州浪潮智能科技有限公司 | 一种pcie链路的拆分方法、系统及扩展装置 |
CN112131163A (zh) * | 2020-09-18 | 2020-12-25 | 浪潮电子信息产业股份有限公司 | 一种pcie资源自动拆分电路及方法 |
CN112559425A (zh) * | 2020-11-27 | 2021-03-26 | 山东云海国创云计算装备产业创新中心有限公司 | 一种pcie端口的拆分方法、装置、设备及介质 |
CN113867812A (zh) * | 2021-08-30 | 2021-12-31 | 苏州浪潮智能科技有限公司 | 一种bmc获取链路信息的方法、系统、设备以及介质 |
CN113986796A (zh) * | 2021-10-24 | 2022-01-28 | 苏州浪潮智能科技有限公司 | 一种PCIe链路宽度的动态配置方法、装置、设备及可读介质 |
Non-Patent Citations (3)
Title |
---|
史森茂;邵翠萍;龚龙庆;: "一种PCI总线Master模块接口设计", 计算机技术与发展, no. 07, 10 July 2012 (2012-07-10), pages 213 - 216 * |
崔丹丹;宫永生;: "NVMe高速存储的FPGA实现", 微电子学与计算机, no. 06, 5 June 2019 (2019-06-05), pages 32 - 36 * |
曹素芝;张善从;: "基于无源光网络的高速光纤总线技术研究", 宇航学报, no. 05, 30 May 2011 (2011-05-30), pages 204 - 210 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116150073A (zh) * | 2023-04-21 | 2023-05-23 | 杭州鸿钧微电子科技有限公司 | PCIe通道拆分自动识别电路与方法 |
CN116150073B (zh) * | 2023-04-21 | 2023-12-15 | 杭州鸿钧微电子科技有限公司 | PCIe通道拆分自动识别电路与方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114911740B (zh) | 2024-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE49643E1 (en) | Card and host device | |
CN111880740B (zh) | 数据处理方法、装置、计算机系统及可读存储介质 | |
CN113688087B (zh) | 一种pcie设备枚举方法、系统、存储介质及设备 | |
CN112737836B (zh) | PCIe外插卡的带宽分配方法、装置、设备及存储介质 | |
US20180364911A1 (en) | Protection of user data in data storage devices using preemptive health reporting | |
CN101369240A (zh) | 用于在信息处理系统中管理存储错误的系统和方法 | |
US9665448B2 (en) | Semiconductor integrated circuit | |
CN114911740A (zh) | PCIe拆分方法、装置、电子设备及可读存储介质 | |
CN112667446B (zh) | Mlc nand的数据备份方法、装置及闪存系统 | |
CN113672270A (zh) | 升级方法,计算机系统和远端升级设备 | |
CN111722803A (zh) | 固态硬盘的数据写入方法、装置、计算机设备和存储介质 | |
CN114627959A (zh) | 闪存检测方法、闪存检测装置、设备及介质 | |
CN112463621B (zh) | 回归测试管理方法、存储介质管理方法、装置、设备及介质 | |
CN114741350A (zh) | 一种多个nvme硬盘背板级联方法、系统、设备及介质 | |
CN114297120A (zh) | 一种带宽分配方法、装置及系统 | |
US8140921B2 (en) | System for elevator electronic safety device | |
CN114327864B (zh) | 一种bus号分配方法、系统、装置及介质 | |
CN111930660B (zh) | Pcie通路配置方法、装置、终端和介质 | |
CN110740009B (zh) | 数据传输校验装置及方法 | |
US20240095115A1 (en) | Predicting an unsuccessful error correction code condition using a dynamic read threashold table | |
CN110471818B (zh) | 一种对闪存出错物理地址的标记方法和装置以及设备 | |
CN112346922B (zh) | 服务器装置及其通讯协议方法 | |
CN115114207A (zh) | PCIe带宽分配系统和方法 | |
CN115857977A (zh) | 一次性可编程存储器的烧写方法、装置、终端及存储介质 | |
CN115168270A (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 |