CN112306938B - 一种ocp卡和多主机卡的热插拔方法及装置 - Google Patents
一种ocp卡和多主机卡的热插拔方法及装置 Download PDFInfo
- Publication number
- CN112306938B CN112306938B CN202011163728.8A CN202011163728A CN112306938B CN 112306938 B CN112306938 B CN 112306938B CN 202011163728 A CN202011163728 A CN 202011163728A CN 112306938 B CN112306938 B CN 112306938B
- Authority
- CN
- China
- Prior art keywords
- card
- expansion
- chip
- ocp
- hot plug
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000009471 action Effects 0.000 claims abstract description 13
- 230000008569 process Effects 0.000 claims abstract description 8
- 230000003287 optical effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000009977 dual effect Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 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
- G06F13/4081—Live connection to bus, e.g. hot-plugging
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种OCP卡和多主机卡的热插拔方法及装置,方法包括:第一步,定义主板与riser卡信号地址,CPLD检测服务器中装入的riser卡类型;第二步,CPLD根据riser卡类型将9555芯片中含有的ARRD0地址进行动态配置;第三步,若扩展板卡触发热插拔动作,则9555芯片将ARRD0地址以及9555芯片中IO寄存器对应的热插拔状态信息传递至CPU;第四步,CPU根据ARRD0地址和9555芯片中IO寄存器判断发生热插拔动作为哪路PCIE链路;第五步,CPU处理热插拔动作。本发明能够利用riser卡ID判断OCP卡类型,进而动态配置9555芯片地址来实现热插拔功能。
Description
技术领域
本发明涉及服务器系统设计领域,特别是涉及一种OCP卡和多主机卡的热插拔方法及装置。
背景技术
OCP开放计算项目(Open Compute Project),是由Facebook在2011年发起的组织,其目的就是为了实现开源和开放。
4路服务器作为一款安全可靠且配置灵活的通用服务器,为了满足不同应用场景以及冗余策略需要同时支持双OCP标卡或双OCP multihost卡,且为了在OCP卡出现问题时能够不关机直接替换,OCP标卡和OCP multihost卡均需要支持热插拔功能。OCP卡热插拔需要遵从intel的PCIE设备热插拔流程,挂接OCP卡的CPU通过VPP总线连接IO expander芯片(9555),然后通过读取9555芯片的寄存器来控制其IO接口,进而实现OCP卡的在位、供电使能、状态LED等信息的交互。双OCP标卡和双OCP multihost卡配置分别对应不同的应用场景,两种配置不存在混插情况。
见图1,当支持双OCP标卡时,两个OCP卡的X16 PCIE信号分别来自于CPU0/1的port0接口,并通过Riser转接卡连接到OCP标卡。
见图2,当支持双multihost卡时,每个multihost卡的pcie信号分别来自4个CPU,带宽为X4。在两种配置下CPU0/1需要支持3个PCIE port的热插拔功能,而9555芯片的IO分为IO_0和IO_1两组,每组包含8个IO,可用于控制一个PCIE port的热插拔动作。
见图3,在现有方案设计中,CPU0/1各采用两组9555芯片,其中9555_0的IO_0用于控制OCP标卡的热插拔,9555_1的IO_0用于控制multihost卡0的热插拔,9555_1的IO_1组控制multihost卡1的热插拔,由于每个CPU只有一组VPP信号,因此为了准确控制两个9555芯片,每个9555需采用不同的地址,9555_0的地址为000,9555_1的地址为001。CPU1的热插拔控制方案同CPU0,CPU2/3只需控制两个multihost卡的热插拔,只需外接1个9555芯片即可。
现有方法可以实现双OCP卡和双multihost卡的热插拔控制,但CPU0/1会用到多颗9555芯片,由于4路服务器主板器件较多,布局空间有限,使用多颗9555芯片存在无法摆放的风险,另外也增加了项目的开发成本。
发明内容
本发明主要解决的技术问题是提供一种OCP卡和多主机卡的热插拔方法及装置,能够利用riser卡ID地址来判定当前支持的OCP卡类型,进而动态配置9555地址来实现双OCP卡或双multihost卡的热插拔功能。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种OCP卡和多主机卡的热插拔方法,包括:第一步,定义扩展卡信号地址,可编程逻辑器件检测服务器中装入的扩展卡类型;第二步,可编程逻辑器件根据扩展卡类型将IO扩展芯片中的寄存器地址进行动态配置;第三步,若扩展板卡触发热插拔动作,则IO扩展芯片将寄存器地址以及IO扩展芯片中IO寄存器对应的热插拔状态信息传递至CPU;第四步,CPU根据寄存器地址和IO扩展芯片中IO寄存器判断哪路PCIE链路发生热插拔动作;第五步,CPU处理对应的PCIE链路热插拔动作。
进一步,所述扩展卡包括支持OCP扩展卡和支持多主机扩展卡;所述IO扩展芯片为9555芯片。
进一步,所述第一步中,所述定义扩展卡信号地址包括定义可编程逻辑器件和扩展卡互联的两个空余边带信号为第一信号与第二信号,所述第一信号与第二信号上拉,当扩展卡为支持OCP扩展卡时,所述第一信号与第二信号接地,所述第一信号与第二信号地址为低电平;当扩展卡为支持多主机扩展卡时,所述第一信号接地,地址为低电平;所述第二信号悬空,地址为高电平。
进一步,所述第一步中,所述可编程逻辑器件检测服务器中装入的扩展板卡类型包括:当可编程逻辑器件检测到扩展卡第一信号与第二信号为低电平时,当前装入的扩展卡为支持OCP扩展卡;当可编程逻辑器件检测到第一信号为低电平且第二信号为高电平时,当前装入的扩展卡为支持多主机扩展卡。
进一步,所述第二步中,所述可编程逻辑器件根据扩展卡类型将IO扩展芯片中含有的寄存器地址进行动态配置包括若装入的扩展卡支持多主机卡,则将IO扩展芯片的寄存器地址拉高,将IO扩展芯片寄存器地址配置为1;若装入的扩展卡类型支持OCP卡,则将IO扩展芯片的寄存器地址拉低,将IO扩展芯片的寄存器地址配置为0。
一种OCP卡和多主机卡的热插拔装置,包括:CPU、IO扩展芯片、riser卡、CPLD;所述riser卡中设有PCIE接口,电源接口以及OCP连接器;所述CPU通过VPP信号线连接所述IO扩展芯片;所述IO扩展芯片中ADDR0管脚连接所述CPLD;所述IO扩展芯片中ADDR1管脚与ADDR2管脚接地;所述CPLD连接所述riser卡;所述CPLD传输ID0与ID1信号至所述riser卡。
进一步,所述riser卡包括支持OCP的扩展卡与支持multihost的扩展卡。
进一步,所述IO扩展芯片为9555芯片。
进一步,当riser卡为支持OCP扩展卡时,riser卡中ID0信号为0,ID1信号为0;IO扩展芯片中00至07管脚为port0;CPLD控制ADDR0管脚为低电平。
进一步,当riser卡为支持multihost扩展卡时,riser卡中ID0信号为0,ID1信号为1;IO扩展芯片中00至07管脚为port1,10至17管脚为port2;CPLD控制ADDR0管脚为高电平。
本发明的有益效果是:本发明减少了服务器中9555芯片的使用,从而节省了服务器当中的空间,并且减少了项目开发成本。
附图说明
图1是支持双OCP标卡的PCIE互联拓扑图;
图2是支持双OCP multihost卡的PCIE互联拓扑图;
图3现有设计支持双OCP标卡和双multihost卡的热插拔图;
图4是本发明一种OCP卡和多主机卡的热插拔方法一较佳实施例的流程图;
图5是本发明一种OCP卡和多主机卡的热插拔方法中9555芯片中ADDR0地址动态配置表;
图6是本发明一种OCP卡和多主机卡的热插拔装置架构图;
图7是本发明一种OCP卡和多主机卡的热插拔装置中支持标准OCP卡的热插拔装置架构图;
图8是本发明一种OCP卡和多主机卡的热插拔装置中支持multihost卡的热插拔装置图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图4至图8,本发明实施例包括:
见图4,一种OCP卡和多主机卡的热插拔方法,包括:第一步,定义主板与riser卡信号地址,CPLD检测服务器中装入的riser卡类型;第二步,CPLD根据riser卡类型将9555芯片中含有的ARRD0地址进行动态配置;第三步,若扩展板卡触发热插拔动作,则9555芯片将ARRD0地址以及9555芯片中IO寄存器对应的热插拔状态信息传递至CPU;第四步,CPU根据ARRD0地址和9555芯片中IO寄存器判断发生热插拔动作为哪路PCIE链路,第五步,CPU处理对应的PCIE链路热插拔动作。
见图5,所述第一步中,所述定义主板与riser卡信号地址包括:
定义CPLD和riser卡互联的两个空余边带信号为ID0与ID1,CPLD端两个信号做上拉处理,标准OCP riser卡中ID0与ID1做接地处理,地址为低电平00;支持multihost的riser卡中ID1做接地处理,地址为低电平0;ID0做悬空处理,地址为高电平1。
所述CPLD检测服务器中装入的扩展板卡类型包括:
第一种,CPLD侦测到riser ID[1:0]=00,判断当前装入的riser卡类型支持标准OCP卡;
第二种,CPLD侦测到riser ID[1:0]=01,判断当前装入的riser卡类型支持multihost卡。
所述第二步中,所述CPLD根据riser卡类型将9555芯片中含有的ARRD0地址进行动态配置包括若装入的riser卡类型支持multihost卡,则将9555芯片的ADDR0地址做拉高处理,从而将9555芯片ADDR0地址配置为001;若装入的riser卡类型支持标准OCP卡,则将9555芯片的ADDR0地址做拉低处理,从而将9555芯片的ARRD0地址配置为000。
所述multihost卡为多主机卡。
所述第三步中,当标准OCP卡触发热插拔动作时,9555芯片会将地址000以及IO寄存器对应热插拔状态信息传递至CPU0,CPU0根据地址000判定为port0的PCIE链路发生了热插拔事件,进而处理port0对应的热插拔动作;
当multihost卡触发热插拔动作时,9555芯片会将地址001以及IO寄存器对应的热插拔状态信息传递至CPU0,CPU0根据地址001和IO寄存器判定为port1的PCIE链路发生了热插拔事件,进而处理port1对应的热插拔动作;
见图6,基于与前述实施例中一种OCP卡和多主机卡的热插拔方法同样的发明构思,本说明书实施例还提供一种OCP卡和多主机卡的热插拔装置,包括:CPU、9555芯片、riser卡、CPLD;所述riser卡中设有PCIE接口,电源接口以及OCP连接器;所述CPU通过VPP信号线连接所述9555芯片;所述9555芯片中ADDR0管脚连接所述CPLD;所述9555芯片中ADDR1管脚与ADDR2管脚接地;所述CPLD连接所述riser卡;所述CPLD传输ID0与ID1信号至所述riser卡。
所述riser卡包括支持标准OCP的扩展卡与支持multihost的扩展卡。
见图7,当riser卡为支持标准OCP卡时,riser卡ID信号为00;9555芯片中00-07管脚为port0;CPLD控制ADDR0管脚为低电平。
见图8,当riser卡为支持multihost卡时,riser卡ID信号为01;9555芯片中00-07管脚为port1,10-17管脚为port2;CPLD控制ADDR0管脚为高电平。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种OCP卡和多主机卡的热插拔方法,其特征在于,包括:第一步,定义扩展卡信号地址,可编程逻辑器件检测服务器中装入的扩展卡类型;第二步,可编程逻辑器件根据扩展卡类型将IO扩展芯片中的寄存器地址进行动态配置;第三步,若扩展板卡触发热插拔动作,则IO扩展芯片将寄存器地址以及IO扩展芯片中IO寄存器对应的热插拔状态信息传递至CPU;第四步,CPU根据寄存器地址和IO扩展芯片中IO寄存器判断哪路PCIE链路发生热插拔动作;第五步,CPU处理对应的PCIE链路热插拔动作;
所述扩展卡中设有PCIE接口、电源接口以及OCP连接器;所述CPU通过VPP信号线连接所述IO扩展芯片;所述IO扩展芯片中ADDR0管脚连接所述可编程逻辑器件;所述IO扩展芯片中ADDR1管脚与ADDR2管脚接地;所述可编程逻辑器件连接所述扩展卡;所述可编程逻辑器件传输第一信号与第二信号至所述扩展卡。
2.根据权利要求1所述的一种OCP卡和多主机卡的热插拔方法,其特征在于:所述扩展卡包括支持OCP扩展卡和支持多主机扩展卡;所述IO扩展芯片为9555芯片。
3.根据权利要求2所述的一种OCP卡和多主机卡的热插拔方法,其特征在于:所述第一步中,所述定义扩展卡信号地址包括定义可编程逻辑器件和扩展卡互联的两个空余边带信号为第一信号与第二信号,所述第一信号与第二信号上拉,当扩展卡为支持OCP扩展卡时,所述第一信号与第二信号接地,所述第一信号与第二信号地址为低电平;当扩展卡为支持多主机扩展卡时,所述第一信号接地,地址为低电平;所述第二信号悬空,地址为高电平。
4.根据权利要求3所述的一种OCP卡和多主机卡的热插拔方法,其特征在于:所述第一步中,所述可编程逻辑器件检测服务器中装入的扩展板卡类型包括:当可编程逻辑器件检测到扩展卡第一信号与第二信号为低电平时,当前装入的扩展卡为支持OCP扩展卡;当可编程逻辑器件检测到第一信号为低电平且第二信号为高电平时,当前装入的扩展卡为支持多主机扩展卡。
5.根据权利要求1所述的一种OCP卡和多主机卡的热插拔方法,其特征在于:所述第二步中,所述可编程逻辑器件根据扩展卡类型将IO扩展芯片中含有的寄存器地址进行动态配置包括若装入的扩展卡支持多主机卡,则将IO扩展芯片的寄存器地址拉高,将IO扩展芯片寄存器地址配置为1;若装入的扩展卡类型支持OCP卡,则将IO扩展芯片的寄存器地址拉低,将IO扩展芯片的寄存器地址配置为0。
6.一种OCP卡和多主机卡的热插拔装置,其特征在于,包括:CPU、IO扩展芯片、riser卡、CPLD;所述riser卡中设有PCIE接口,电源接口以及OCP连接器;所述CPU通过VPP信号线连接所述IO扩展芯片;所述IO扩展芯片中ADDR0管脚连接所述CPLD;所述IO扩展芯片中ADDR1管脚与ADDR2管脚接地;所述CPLD连接所述riser卡;所述CPLD传输ID0与ID1信号至所述riser卡。
7.根据权利要求6所述的一种OCP卡和多主机卡的热插拔装置,其特征在于:所述riser卡包括支持标准OCP的扩展卡与支持multihost的扩展卡。
8.根据权利要求6所述的一种OCP卡和多主机卡的热插拔装置,其特征在于:所述IO扩展芯片为9555芯片。
9.根据权利要求6所述的一种OCP卡和多主机卡的热插拔装置,其特征在于:当riser卡为支持标准OCP扩展卡时,riser卡中ID0信号为0,ID1信号为0;IO扩展芯片中00至07管脚为port0;CPLD控制ADDR0管脚为低电平。
10.根据权利要求6所述的一种OCP卡和多主机卡的热插拔装置,其特征在于:当riser卡为支持multihost扩展卡时,riser卡中ID0信号为0,ID1信号为1;IO扩展芯片中00至07管脚为port1,10至17管脚为port2;CPLD控制ADDR0管脚为高电平。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011163728.8A CN112306938B (zh) | 2020-10-27 | 2020-10-27 | 一种ocp卡和多主机卡的热插拔方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011163728.8A CN112306938B (zh) | 2020-10-27 | 2020-10-27 | 一种ocp卡和多主机卡的热插拔方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112306938A CN112306938A (zh) | 2021-02-02 |
CN112306938B true CN112306938B (zh) | 2023-01-10 |
Family
ID=74332064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011163728.8A Active CN112306938B (zh) | 2020-10-27 | 2020-10-27 | 一种ocp卡和多主机卡的热插拔方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112306938B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116032920A (zh) * | 2022-12-15 | 2023-04-28 | 浪潮(山东)计算机科技有限公司 | 一种互联装置及n路服务器系统 |
CN118132489B (zh) * | 2024-04-30 | 2024-07-02 | 苏州元脑智能科技有限公司 | 一种热拔插设备的设备信息更新方法、系统、设备及介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104133533A (zh) * | 2014-08-06 | 2014-11-05 | 浪潮(北京)电子信息产业有限公司 | 一种支持全长的pcie扩展卡板卡系统 |
CN205230036U (zh) * | 2015-12-22 | 2016-05-11 | 山东海量信息技术研究院 | 一种支持pcie卡热插拔的io扩展装置 |
CN106569557A (zh) * | 2016-11-01 | 2017-04-19 | 深圳市亿威尔信息技术股份有限公司 | 一种板卡Bypass智能控制系统及方法 |
-
2020
- 2020-10-27 CN CN202011163728.8A patent/CN112306938B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112306938A (zh) | 2021-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0962863A2 (en) | Dasd concurrent maintenance for a pci based dasd subsystem | |
CN211427190U (zh) | 一种基于飞腾处理器2000+的服务器电路和主板 | |
CN112306938B (zh) | 一种ocp卡和多主机卡的热插拔方法及装置 | |
CN102662903A (zh) | 一种通过cpld或fpga实现pcie设备热插拔的方法 | |
CN202421950U (zh) | 一种适用于pci总线板卡的外部扩展装置 | |
CN213365380U (zh) | 一种服务器主板及服务器 | |
CN109947682B (zh) | 一种服务器主板及服务器 | |
CN213276460U (zh) | 一种双路服务器主板及服务器 | |
CN110908475A (zh) | 一种申威1621cpu无ich2套片服务器主板 | |
CN211427338U (zh) | 基于申威处理器的服务器主板 | |
CN115167629A (zh) | 一种双路服务器cpu主板 | |
CN115981971A (zh) | 一种服务器硬盘的点灯方法及服务器 | |
CN100414526C (zh) | 自动调整总线宽度的方法及装置 | |
CN113190084B (zh) | 一种支持多种位宽硬盘的硬盘背板连接方法及装置 | |
CN213276461U (zh) | 一种双路服务器主板及服务器 | |
CN117349212A (zh) | 一种服务器主板及其固态硬盘插入检测方法 | |
CN111723037A (zh) | 一种pcie接口扩展系统及服务器 | |
CN216352292U (zh) | 服务器主板及服务器 | |
CN213276462U (zh) | 双路服务器主板及双路服务器 | |
CN213365381U (zh) | 主板 | |
CN213365379U (zh) | 服务器主板及单路服务器 | |
CN210924562U (zh) | 一种背板通讯装置 | |
CN213365438U (zh) | 一种双路服务器主板及服务器 | |
CN211787062U (zh) | Mctp设备测试装置 | |
CN211375594U (zh) | 一种基于sw421处理器的接口扩展机构 |
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 |