一种接口拓展方法、装置、管理系统和相关设备转让专利

申请号 : CN202210340123.4

文献号 : CN114443545B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘付东陈才范里政

申请人 : 飞腾信息技术有限公司

摘要 :

本发明提供了一种接口拓展方法、装置、管理系统和相关设备,其中应用于包括多个接口的第一设备的接口拓展方法包括:接收第二设备发送的命令,该命令用于控制执行第二设备与目标接口之间的数据传输操作;确定与目标接口具有映射关系的目标寄存器;该映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应;对目标寄存器执行读写操作,以执行第二设备与目标接口之间的数据传输操作,从而可以使得第一设备的接口实现与第二设备的接口相同的数据传输功能,进而可以通过第一设备对第二设备进行接口拓展,解决第二设备自带的接口数量无法满足需求的问题,此外还可以保证第二设备与目标接口之间数据传输的准确性和正确性。

权利要求 :

1.一种接口拓展方法,其特征在于,应用于第一设备,所述第一设备与第二设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展方法包括:接收所述第二设备发送的命令,所述命令用于控制执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;

确定与所述目标接口具有映射关系的目标寄存器;所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应;其中,所述使所述目标寄存器的数据与所述目标接口传输的数据相互对应包括:若所述目标寄存器或所述目标寄存器任一比特位的数据发生变化,则控制对应的所述目标接口传输的数据发生相应变化;若所述目标接口传输的数据发生变化,则控制对应的所述目标寄存器或所述目标寄存器对应比特位的数据发生相应变化;

对所述目标寄存器执行读操作或写操作,以执行所述第二设备与所述目标接口之间的数据传输操作。

2.根据权利要求1所述的接口拓展方法,其特征在于,所述确定与所述目标接口具有映射关系的目标寄存器包括:确定对应比特位的数据与所述目标接口的传输数据相互对应的目标寄存器;其中,所述目标寄存器的不同比特位的数据与不同接口的传输数据相互对应。

3.根据权利要求2所述的接口拓展方法,其特征在于,所述比特位的数据与所述目标接口的传输数据相互对应包括:若所述比特位的数据为第一数据,则所述目标接口的输出数据为第二数据;若所述比特位的数据为第三数据,则所述目标接口的输出数据为第四数据;

若所述目标接口的输入数据为第二数据,则所述比特位的数据为第一数据;若所述目标接口的输入数据为第四数据,则所述比特位的数据为第三数据。

4.根据权利要求3所述的接口拓展方法,其特征在于,所述第一数据包括逻辑1,所述第二数据包括高电平数据,所述第三数据包括逻辑0,所述第四数据包括低电平数据。

5.根据权利要求1所述的接口拓展方法,其特征在于,所述对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作包括:对所述目标寄存器执行写操作,将所述第二设备发送的数据写入所述目标寄存器,以执行将所述第二设备发送的数据传输至所述目标接口,并使所述目标接口输出对应数据的第一数据传输操作。

6.根据权利要求1所述的接口拓展方法,其特征在于,所述对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作包括:对所述目标寄存器执行读操作,以读取与所述目标接口的输入数据对应的数据,并将读取的数据发送至所述第二设备,以执行将所述目标接口的输入数据传输至所述第二设备的第二数据传输操作。

7.根据权利要求1所述的接口拓展方法,其特征在于,还包括:

检测任一所述接口的输入数据,所述接口与第三设备连接;

若所述接口的输入数据包括异常数据,向所述第二设备发送反馈信息,以使所述第二设备获取所述输入数据,并根据所述输入数据,确定与所述接口连接的第三设备的状态。

8.根据权利要求7所述的接口拓展方法,其特征在于,所述异常数据包括表征所述接口的管脚信号异常的数据或者表征所述第三设备的工作状态异常的数据。

9.一种接口拓展方法,其特征在于,应用于第二设备,所述第二设备与第一设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展方法包括:生成命令,所述命令用于控制所述第一设备执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;

向所述第一设备发送所述命令,以使所述第一设备确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读操作或写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应,所述使所述目标寄存器的数据与所述目标接口传输的数据相互对应包括:若所述目标寄存器或所述目标寄存器任一比特位的数据发生变化,则控制对应的所述目标接口传输的数据发生相应变化;若所述目标接口传输的数据发生变化,则控制对应的所述目标寄存器或所述目标寄存器对应比特位的数据发生相应变化。

10.根据权利要求9所述的接口拓展方法,其特征在于,还包括:

接收所述第一设备发送的反馈信息;

根据所述反馈信息获取所述第一设备中对应接口的输入数据,以根据所述输入数据,确定与所述接口连接的第三设备的状态。

11.一种接口拓展装置,其特征在于,应用于第一设备,所述第一设备与第二设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展装置包括:第一传输模块,用于接收所述第二设备发送的命令,所述命令用于控制执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;

第一控制模块,用于确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读操作或写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应,所述使所述目标寄存器的数据与所述目标接口传输的数据相互对应包括:若所述目标寄存器或所述目标寄存器任一比特位的数据发生变化,则控制对应的所述目标接口传输的数据发生相应变化;若所述目标接口传输的数据发生变化,则控制对应的所述目标寄存器或所述目标寄存器对应比特位的数据发生相应变化。

12.一种接口拓展装置,其特征在于,应用于第二设备,所述第二设备与第一设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展装置包括:第二控制模块,用于生成命令,所述命令用于控制所述第一设备执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;

第二传输模块,用于向所述第一设备发送所述命令,以使所述第一设备确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读操作或写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应,所述使所述目标寄存器的数据与所述目标接口传输的数据相互对应包括:若所述目标寄存器或所述目标寄存器任一比特位的数据发生变化,则控制对应的所述目标接口传输的数据发生相应变化;若所述目标接口传输的数据发生变化,则控制对应的所述目标寄存器或所述目标寄存器对应比特位的数据发生相应变化。

13.一种管理系统,其特征在于,包括第一设备和第二设备,所述第一设备与所述第二设备连接,所述第一设备包括多个接口和寄存器;所述第二设备用于生成命令,并将所述命令发送至所述第一设备,所述命令用于控制执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;所述目标接口与第三设备连接;

所述第一设备用于确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读操作或写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应,所述使所述目标寄存器的数据与所述目标接口传输的数据相互对应包括:若所述目标寄存器或所述目标寄存器任一比特位的数据发生变化,则控制对应的所述目标接口传输的数据发生相应变化;若所述目标接口传输的数据发生变化,则控制对应的所述目标寄存器或所述目标寄存器对应比特位的数据发生相应变化。

14.根据权利要求13所述的管理系统,其特征在于,所述第一设备还用于检测任一所述接口的输入数据,若所述接口的输入数据包括异常数据,向所述第二设备发送反馈信息;

所述第二设备还用于根据所述反馈信息获取所述第一设备中对应接口的输入数据,以根据所述输入数据,确定与所述接口连接的第三设备的状态。

15.根据权利要求13所述的管理系统,其特征在于,所述第一设备包括可编程逻辑器件;所述第二设备包括基板管理控制器;所述第三设备包括服务器系统中的节点设备。

16.一种电子设备,其特征在于,包括:

存储器,用于存储至少一组指令;

处理器,用于执行所述至少一组指令,以执行如权利要求1至8任一项所述的接口拓展方法,或者,执行如权利要求9至10任一项所述的接口拓展方法。

17.一种可读存储介质,其特征在于,所述可读存储介质存储至少一组指令,所述至少一组指令用于使处理器执行如权利要求1至8任一项所述的接口拓展方法,或者,执行如权利要求9至10任一项所述的接口拓展方法。

说明书 :

一种接口拓展方法、装置、管理系统和相关设备

技术领域

[0001] 本发明涉及计算机技术领域,具体涉及一种接口拓展方法、装置、管理系统和相关设备。

背景技术

[0002] 在复杂集成电路中,芯片自带的接口数量经常无法满足需求。例如,基板管理控制器(Baseboard Management Controller,简称BMC)芯片,通常采用自带的接口(如I/O接口)与服务器系统的每个计算节点中的节点设备连接,以实现对服务器系统的远程安装、管理、监控和重启等。但是,随着计算节点计算能力的提升以及服务器计算密度的提高,BMC芯片自带的接口的数量已经无法满足需求。

发明内容

[0003] 有鉴于此,本发明致力于提供一种接口拓展方法、装置、管理系统和相关设备,以解决芯片自带的接口无法满足需求的问题。
[0004] 第一方面,本发明提供了一种接口拓展方法,应用于第一设备,所述第一设备与第二设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展方法包括:
[0005] 接收所述第二设备发送的命令,所述命令用于控制执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;
[0006] 确定与所述目标接口具有映射关系的目标寄存器;所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应;
[0007] 对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作。
[0008] 第二方面,本发明提供了一种接口拓展方法,应用于第二设备,所述第二设备与第一设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展方法包括:
[0009] 生成命令,所述命令用于控制所述第一设备执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;
[0010] 向所述第一设备发送所述命令,以使所述第一设备确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应。
[0011] 第三方面,本发明提供了一种接口拓展装置,应用于第一设备,所述第一设备与第二设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展装置包括:
[0012] 第一传输模块,用于接收所述第二设备发送的命令,所述命令用于控制执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;
[0013] 第一控制模块,用于确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应。
[0014] 第四方面,本发明提供了一种接口拓展装置,应用于第二设备,所述第二设备与第一设备连接,所述第一设备包括多个接口和寄存器,所述接口拓展装置包括:
[0015] 第二控制模块,用于生成命令,所述命令用于控制所述第一设备执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;
[0016] 第二传输模块,用于向所述第一设备发送所述命令,以使所述第一设备确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应。
[0017] 第五方面,本发明提供了一种管理系统,包括第一设备和第二设备,所述第一设备与所述第二设备连接,所述第一设备包括多个接口和寄存器;
[0018] 所述第二设备用于生成命令,并将所述命令发送至所述第一设备,所述命令用于控制执行所述第二设备与目标接口之间的数据传输操作,所述目标接口为所述多个接口中的任意接口;所述目标接口与第三设备连接;
[0019] 所述第一设备用于确定与所述目标接口具有映射关系的目标寄存器,对所述目标寄存器执行读写操作,以执行所述第二设备与所述目标接口之间的数据传输操作;其中,所述映射关系用于使所述目标寄存器的数据与所述目标接口传输的数据相互对应。
[0020] 第六方面,本发明提供了一种电子设备,包括:
[0021] 存储器,用于存储至少一组指令;
[0022] 处理器,用于执行所述至少一组指令,以执行如上任一项所述的接口拓展方法。
[0023] 第七方面,本发明提供了一种可读存储介质,所述可读存储介质存储至少一组指令,所述至少一组指令用于使处理器执行如上任一项所述的接口拓展方法。
[0024] 本发明提供的接口拓展方法、装置、管理系统和相关设备,使具有多个接口的第一设备与第二设备连接,并使第一设备根据第二设备发送的命令,执行第二设备与目标接口之间的数据传输操作,以使得第一设备的接口实现与第二设备的接口相同的数据传输功能,从而可以通过第一设备对第二设备进行接口拓展,解决第二设备自带的接口数量无法满足需求的问题。
[0025] 并且,由于目标寄存器与目标接口具有映射关系,该映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应,因此,第一设备确定与目标接口具有映射关系的目标寄存器之后,可以通过对目标寄存器执行读写操作,来执行第二设备与目标接口之间的数据传输操作,从而可以保证第二设备与目标接口之间数据传输的准确性和正确性。

附图说明

[0026] 通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
[0027] 图1为一种BMC芯片与服务器系统中的节点设备的连接关系示意图。
[0028] 图2为本发明一个实施例提供的第一设备和第二设备的连接关系示意图。
[0029] 图3为本发明一个实施例提供的接口拓展方法的流程图。
[0030] 图4为本发明另一个实施例提供的接口拓展方法的流程图。
[0031] 图5为本发明另一个实施例提供的接口拓展方法的流程图。
[0032] 图6为本发明一个实施例提供的接口拓展装置的结构示意图。
[0033] 图7为本发明另一个实施例提供的接口拓展装置的结构示意图。

具体实施方式

[0034] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0035] 图1为一种BMC芯片与服务器系统中的节点设备的连接关系示意图,如图1所示,BMC芯片通过自带的多个I/O接口(即输入/输出接口)10与服务器系统中的多个节点设备11分别连接。也就是说,BMC芯片可以通过自带的多个I/O接口与服务器系统中一个计算节点的多个节点设备连接,以实现BMC芯片对一个计算节点中的多个节点设备的监控管理。
[0036] 其中,BMC芯片可以通过I/O接口向节点设备发送命令,来实现BMC芯片与节点设备的数据传输。例如,BMC芯片可以通过I/O接口10向节点设备11输出数据获取命令,节点设备11响应数据获取命令后,会将自身的状态数据通过I/O接口10输入至BMC芯片,以便BMC芯片根据状态数据,实现对节点设备11的监控和管理。
[0037] 在服务器系统的计算密度不高时,由于每个计算节点需要管理的节点设备的数量较少,因此,BMC芯片通过自带的I/O接口就可以满足对单个计算节点的监管要求。但是,随着计算节点计算能力的提升以及服务器计算密度的提高,单个计算节点的节点设备如电源设备、散热设备等会变得越来越复杂,单个计算节点中需要管理的节点设备的数量会越来越多,导致BMC芯片自带的I/O接口的数量已经无法满足单个计算节点的连接需求。
[0038] 基于此,本发明实施例提供了一种接口拓展方案,以通过具有多个接口(如I/O接口)的第一设备与第二设备(如BMC芯片)连接,来对第二设备(如BMC芯片)进行接口拓展,使得第二设备(如BMC芯片)能够满足接口的数量需求。
[0039] 作为本发明公开内容的一种可选实现,本发明实施例提供了一种接口拓展方法,该接口拓展方法可以应用于第一设备,以通过第一设备实现对第二设备(如BMC芯片)的接口拓展。
[0040] 如图2所示,图2为本发明一个实施例提供的第一设备和第二设备的连接关系示意图,第一设备21与第二设备22连接,第一设备21包括多个接口211和寄存器210,多个接口211可以与多个第三设备23分别连接。
[0041] 本发明一些实施例中,多个接口211可以全部为I/O接口,但是,本发明并不仅限于此,在另一些实施例中,多个接口211还可以为其他数据传输接口,如USB接口等。其中,第一设备21与第二设备22之间可以通过SPI、IIC等接口实现连接,在此不再赘述。
[0042] 在一些可选示例中,第一设备21与第二设备22通过IIC接口连接,第二设备22会通过IIC数据总线向第一设备21下发命令。而第一设备21或者第一设备21内部的处理器或控制模块可以是IIC的从设备,以执行第二设备22下发的命令。
[0043] 本发明一些实施例中,第二设备22包括BMC芯片,第一设备21包括可编程逻辑器件,如CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)或FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)等,第三设备23包括服务器系统中的节点设备,该节点设备可以包括刀片服务器、电源模块和风扇模块等。
[0044] 其中,不同接口211连接的第三设备23可以是不同的设备,如,其中一个接口211连接的第三设备23为电源模块,另一个接口211连接的第三设备23可以为风扇模块。
[0045] 当然,本发明并不仅限于此,在另一些实施例中,第二设备22还可以是其他需要拓展接口的设备,如处理器芯片等,第一设备21也可以是其他处理器、微处理器或单片机等,第三设备23也可以是其他需要与第二设备22进行数据传输的设备或接口等。
[0046] 图3为本发明一个实施例提供的接口拓展方法的流程图,如图3所示,该接口拓展方法包括:
[0047] S301:接收第二设备22发送的命令,该命令用于控制执行第二设备22与目标接口之间的数据传输操作,该目标接口为多个接口中的任意接口;
[0048] 参考图2以及图4,图4为本发明另一个实施例提供的接口拓展方法的流程图,第二设备22需要向目标设备发送数据或需要获取目标设备的数据时,如图4中步骤S401所示,第二设备22会向第一设备21发送命令,该命令用于控制第一设备21执行第二设备22与目标接口之间的数据传输操作。其中,目标设备为任意一个或多个第三设备23,目标接口为多个接口211中与目标设备连接的接口。
[0049] 可以理解的是,若多个接口211都为I/O接口,则数据传输操作包括第一数据传输操作和第二数据传输操作,第一数据传输操作用于将第二设备22发送的数据传输至目标接口,以通过目标接口将数据传输至与其连接的第三设备23,第二数据传输操作用于将目标接口输入的数据传输至第二设备22,其中,目标接口输入的数据为与其连接的第三设备23的数据。
[0050] 例如,第二设备22需要向第三设备23发送数据时,第二设备22会向第一设备21发送控制第一设备21执行第二设备22与目标接口即接口211的第一数据传输操作的命令;第二设备22需要获取第三设备23的数据时,第二设备22会向第一设备21发送控制第一设备21执行第二设备22与目标接口即接口211的第二数据传输操作的命令。
[0051] S302:确定与目标接口具有映射关系的目标寄存器;映射关系用于使目标寄存器存储的数据与目标接口传输的数据相互对应;
[0052] 第一设备21接收到第二设备22发送的命令之后,会对命令进行解析,根据解析结果确定目标接口,然后如图4中步骤S402所示,确定与目标接口具有映射关系的目标寄存器。该映射关系用于使目标寄存器存储的数据与目标接口传输的数据相互对应。其中,目标寄存器可以为寄存器210。
[0053] 需要说明的是,目标寄存器与目标接口的映射关系是预先设置好的。在一些可选示例中,可以通过第一设备21中的控制模块控制该映射关系的执行。例如,若目标寄存器存储的数据发生变化,则控制模块会控制目标接口传输的数据发生相应变化;若目标接口传输的数据发生变化,则控制模块会控制目标寄存器存储的数据发生相应变化,以使目标寄存器存储的数据与目标接口传输的数据相互对应。
[0054] 可以理解的是,该控制模块可以是预先集成在第一设备21的处理器中的程序或指令集等。该控制模块可以基于Map协议实现目标接口与目标寄存器之间数据的相互对应。
[0055] S303:对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作。
[0056] 确定与目标接口具有映射关系的目标寄存器之后,如图4中步骤S403所示,第一设备21可以根据命令解析结果,确定对目标寄存器执行写操作或读操作。
[0057] 若确定对目标寄存器执行写操作,则如图4中步骤S404所示,第一设备21通过向目标寄存器写入新的数据,来改变目标寄存器存储的数据,然后基于映射关系改变相应的目标接口输出的数据。之后,如图4中步骤S405所示,目标接口可以将对应的数据传输至与其连接的第三设备23。基于此,可以实现将第二设备22发送的数据传输至目标接口的第一数据传输操作。
[0058] 其中,向目标寄存器写入的新的数据可以是通过对第二设备22发送的命令进行解析获得的。当然,向目标寄存器写入的新的数据也可以是和命令捆绑发送的,即不需要对命令进行解析,也可以获得向目标寄存器写入的新的数据。
[0059] 若确定对目标寄存器执行读操作,则如图4中步骤S406所示,第一设备21会读取目标寄存器中存储的数据。由于目标寄存器与目标接口具有映射关系,因此,目标寄存器存储的数据与目标接口的输入数据对应,即第一设备21读取的是与目标接口的输入数据对应的数据,该输入数据为目标接口输入的第三设备23的数据。之后,如图4中步骤S407所示,第一设备21可以将读取的数据发送至第二设备22,以使第二设备22根据该读取的数据获得目标接口的输入数据,进而获得与目标接口连接的第三设备23的数据。基于此,可以实现将目标接口输入的数据传输至第二设备22的第二数据传输操作。
[0060] 其中,第一设备21可以直接将读取的目标寄存器的数据发送给第二设备22,也可以将读取的目标寄存器的数据转换为目标接口的输入数据之后,再将目标接口的输入数据发送至第二设备22,在此不再赘述。
[0061] 基于此,本发明一些实施例中,对目标寄存器执行读写操作,以执行第二设备与目标接口之间的数据传输操作包括:对目标寄存器执行写操作,将第二设备22发送的数据写入目标寄存器,以执行将第二设备22发送的数据传输至目标接口,并使目标接口输出对应数据的第一数据传输操作。
[0062] 在此基础上,本发明另一些实施例中,对目标寄存器执行读写操作,以执行第二设备与目标接口之间的数据传输操作包括:对目标寄存器执行读操作,以读取与目标接口的输入数据对应的数据,并将读取的数据发送至第二设备22,以执行将目标接口的输入数据传输至第二设备22的第二数据传输操作。
[0063] 由于第一设备21可以根据第二设备22发送的命令,执行第二设备22与目标接口之间的数据传输操作,因此,可以使得第一设备21的接口实现与第二设备22的接口相同的数据传输功能,从而可以通过第一设备21对第二设备22的接口进行拓展,进而可以解决第二设备22自带的接口数量无法满足需求的问题,进而不需要对第二设备22进行开发来拓展接口,不仅可以降低开发成本,还可以扩展第二设备22的应用范围。例如,可以将通过第一设备21拓展接口后的BMC芯片应用至双路、四路、八路等高集成度的服务器架构中。
[0064] 并且,由于目标寄存器与目标接口具有映射关系,该映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应,因此,第一设备21确定与目标接口具有映射关系的目标寄存器之后,可以通过对目标寄存器执行读写操作,来执行第二设备22与目标接口之间的数据传输操作。由于目标接口的传输数据是实时变化的,因此,与直接获取目标接口的传输数据相比,获取目标寄存器缓存的目标接口对应的数据,可以保证数据的准确性和正确性,从而可以保证第二设备22与目标接口之间数据传输的准确性和正确性。
[0065] 需要说明的是,第一设备21还可以根据第二设备22发送的命令,控制目标接口的输入输出状态。例如,若第二设备22发送的命令用于控制第一设备21执行将第二设备22发送的数据传输至目标接口的第一数据传输操作,则第一设备21会控制目标接口的数据传输模式为输出模式。若第二设备22发送的命令用于控制第一设备21执行将目标接口的数据传输至第二设备22的第二数据传输操作,则第一设备21会控制目标接口的数据传输模式为输入模式。
[0066] 当然,本发明并不仅限于此,在另一些实施例中,第一设备21也可以仅在目标接口输出第二设备22发送的数据的过程中,控制目标接口的数据传输模式为输出模式,在目标接口传输完成之后的其他时段,都控制目标接口的数据传输模式变为输入模式。
[0067] 本发明一些实施例中,可以令不同的目标接口与不同的目标寄存器具有映射关系,即,可以使第一设备21的多个接口的传输数据与第一设备21内部的多个寄存器的数据分别对应,但是,本发明并不仅限于此,在另一些可选实施例中,也可以令不同的目标接口与同一目标寄存器的不同比特位具有映射关系,即,可以使第一设备21的多个接口的传输数据与第一设备21内部的一个寄存器的多个比特位的数据分别对应。
[0068] 基于此,本发明一些实施例中,确定与目标接口具有映射关系的目标寄存器包括:确定对应比特位的数据与目标接口的传输数据相互对应的目标寄存器;其中,目标寄存器的不同比特位的数据与不同接口的传输数据相互对应。也就是说,确定目标接口之后,若一个寄存器中相应比特位的数据与该目标接口的传输数据相互对应,则可以确定该寄存器为目标寄存器。
[0069] 需要说明的是,在一些可选实施例中,可以是一个比特位的数据与一个接口的传输数据对应,也可以是多个比特位的数据与一个接口的传输数据对应。本发明实施例中,仅以一个比特位的数据与一个接口的传输数据对应进行说明,但并不仅限于此。
[0070] 在一些可选实施例中,一个比特位的数据与目标接口的传输数据相互对应包括:若该比特位的数据为第一数据,则该目标接口的输出数据为第二数据;若该比特位的数据为第三数据,则该目标接口的输出数据为第四数据;若该目标接口的输入数据为第二数据,则该比特位的数据为第一数据;若该目标接口的输入数据为第四数据,则该比特位的数据为第三数据。
[0071] 其中,第一数据可以包括逻辑1,第二数据可以包括高电平数据,第三数据可以包括逻辑0,第四数据可以包括低电平数据。当然,本发明并不仅限于此,在另一些可选示例中,第一数据也可以包括逻辑1,第二数据也可以包括低电平数据,第三数据也可以包括逻辑0,第四数据也可以包括高电平数据,在此不再赘述。
[0072] 在第一数据为逻辑1、第二数据为高电平数据、第三数据为逻辑0、第四数据为低电平数据的情况下,若将逻辑1写入目标寄存器对应的比特位,则第一设备21会控制与该比特位具有映射关系的目标接口输出高电平数据,若将逻辑0写入目标寄存器对应的比特位,则第一设备21会控制与该比特位具有映射关系的目标接口输出低电平数据。
[0073] 若从目标寄存器对应的比特位读取的数据为逻辑1,则第二设备22可以确定与该比特位具有映射关系的目标接口当前传输的数据为高电平数据,若从目标寄存器对应的比特位读取的数据为逻辑0,则第二设备22可以确定与该比特位具有映射关系的目标接口当前传输的数据为低电平数据。
[0074] 本发明实施例中,不仅可以实现第二设备22与第三设备23的正常数据传输,还可以通过对与第三设备23连接的接口进行监控,来监控第三设备23的状态。在此基础上,本发明一些实施例中的接口拓展方法还包括:
[0075] 检测任一接口的输入数据,该接口与第三设备23连接;
[0076] 若接口的输入数据包括异常数据,向第二设备22发送反馈信息,以使第二设备22获取接口的输入数据,并根据输入数据,确定与接口连接的第三设备23的状态。
[0077] 其中,异常数据包括表征接口的管脚信号异常的数据或者表征第三设备23的工作状态异常的数据。也就是说,在第三设备23正常工作的过程中,与第三设备23连接的接口的输入数据是正常的。例如,在第三设备23正常工作的过程中,与其连接的接口的输入数据始终为高电平数据或低电平数据。若接口的输入数据由高电平数据变为低电平数据,或者,由低电平数据变为高电平数据,或者,接口没有输入数据,则说明接口的输入数据包括异常数据,该异常数据可能表征接口的管脚信号异常,也可能表征第三设备23的工作状态异常。
[0078] 第一设备21向第二设备22发送反馈信息之后,第二设备22会向第一设备21发送命令,控制第一设备21将接口的包括异常数据的输入数据发送至第二设备22,以便第二设备22根据输入数据中的异常数据确定异常情况,并进行管理。其中,反馈信息可以是中断指令等。
[0079] 基于此,在第三设备23工作的过程中,第一设备21可以通过检测接口的输入数据,并判断输入数据是否包括异常数据,协助第二设备22对第三设备23的状态进行监控。
[0080] 需要说明的是,虽然目标寄存器中的数据与目标接口的传输数据相互对应,但是,在目标接口的传输数据包含异常数据时,传输数据是不断变化的,因此,目标寄存器中的数据会不断被新的数据覆盖。基于此,第一设备21检测到接口的输入数据中包含异常数据之后,可以将该包含异常数据的输入数据保存到存储器或其他寄存器中,以便后续获取调用。
[0081] 作为本发明公开内容的另一种可选实现,本发明实施例还提供了一种接口拓展方法,该接口拓展方法可以应用于第二设备22。其中,第二设备22与第一设备21的连接关系可以参考图2以及相关描述,在此不再赘述。
[0082] 图5为本发明另一个实施例提供的接口拓展方法的流程图,如图5所示,该接口拓展方法包括:
[0083] S501:生成命令,命令用于控制第一设备21执行第二设备22与目标接口之间的数据传输操作,目标接口为多个接口中的任意接口;
[0084] 其中,可以预先对第二设备22进行设置,使得第二设备22在特定情况下,生成相应的命令,也可以使得第二设备22定期生成命令,以定期向第三设备23发送数据或定期获取第三设备23的数据。此外,工作人员也可以通过与第二设备相连的主机等向第二设备22发送指令,以使第二设备22生成相应的命令。
[0085] S502:向第一设备21发送命令,以使第一设备21确定与目标接口具有映射关系的目标寄存器,对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作;其中,映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应。
[0086] 第二设备22生成命令之后,会将命令发送至第一设备21。之后,第一设备21会确定与目标接口具有映射关系的目标寄存器,对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作;其中,映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应。
[0087] 需要说明的是,第一设备21确定与目标接口具有映射关系的目标寄存器,以及对目标寄存器执行读写操作的步骤在上述实施例中已经详细描述,在此不再一一赘述。
[0088] 本发明一些实施例中,接口拓展方法还包括:
[0089] 接收第一设备发送的反馈信息;
[0090] 根据反馈信息获取第一设备中对应接口的输入数据,以根据输入数据,确定与接口连接的第三设备23的状态。
[0091] 也就是说,第一设备21检测其具有的任一接口的输入数据的过程中,若发现一个或多个接口的输入数据包括异常数据,则第一设备21会向第二设备22发送反馈信息。第二设备22接收第一设备21发送的反馈信息之后,会根据反馈信息获取第一设备21中对应接口的包括异常数据的输入数据,以根据包括异常数据的输入数据,确定与接口连接的第三设备23的状态。
[0092] 基于此,第二设备22只需向第一设备21发送命令,控制第一设备21执行第二设备22与目标接口之间的数据传输操作,即可使得第一设备21的接口实现与第二设备22的接口相同的数据传输功能,解决第二设备22自带的接口数量无法满足需求的问题,从而不需要对第二设备22进行开发来拓展接口,不仅可以降低开发成本,还可以扩展第二设备22的应用范围。
[0093] 作为本发明公开内容的另一种可选实现,本发明实施例提供了一种接口拓展装置,该接口拓展装置可以应用于第一设备21。同样,第二设备22与第一设备21的连接关系可以参考图2以及相关描述,在此不再赘述。
[0094] 图6为本发明一个实施例提供的接口拓展装置的结构示意图,如图6所示,该接口拓展装置包括:
[0095] 第一传输模块601,用于接收第二设备22发送的命令,命令用于控制执行第二设备22与目标接口之间的数据传输操作,目标接口为多个接口中的任意接口;
[0096] 第一控制模块602,用于确定与目标接口具有映射关系的目标寄存器,对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作;其中,映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应。
[0097] 本发明一些实施例中,第一控制模块602确定与目标接口具有映射关系的目标寄存器包括:第一控制模块602确定对应比特位的数据与目标接口的传输数据相互对应的目标寄存器;其中,目标寄存器的不同比特位的数据与不同接口的传输数据相互对应。
[0098] 本发明一些实施例中,比特位的数据与目标接口的传输数据相互对应包括:若比特位的数据为第一数据,则目标接口的输出数据为第二数据;若比特位的数据为第三数据,则目标接口的输出数据为第四数据;若目标接口的输入数据为第二数据,则比特位的数据为第一数据;若目标接口的输入数据为第四数据,则比特位的数据为第三数据。
[0099] 本发明一些实施例中,第一数据包括逻辑1,第二数据包括高电平数据,第三数据包括逻辑0,第四数据包括低电平数据。
[0100] 本发明一些实施例中,第一控制模块602对目标寄存器执行读写操作,以执行第二设备与目标接口之间的数据传输操作包括:
[0101] 第一控制模块602对目标寄存器执行写操作,将第二设备22发送的数据写入目标寄存器,以执行将第二设备22发送的数据传输至目标接口,并使目标接口输出对应数据的第一数据传输操作。
[0102] 本发明一些实施例中,第一控制模块602对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作包括:
[0103] 第一控制模块602对目标寄存器执行读操作,以读取与目标接口的输入数据对应的数据,并将读取的数据发送至第二设备22,以执行将目标接口的输入数据传输至第二设备22的第二数据传输操作。
[0104] 本发明一些实施例中,第一控制模块602还用于检测任一接口的输入数据,接口与第三设备23连接;若接口的输入数据包括异常数据,向第二设备22发送反馈信息,以使第二设备22获取输入数据,并根据输入数据,确定与接口连接的第三设备23的状态。
[0105] 本发明一些实施例中,异常数据包括表征接口的管脚信号异常的数据或者表征第三设备23的工作状态异常的数据。
[0106] 作为本发明公开内容的另一种可选实现,本发明实施例提供了一种接口拓展装置,该接口拓展装置可以应用于第二设备22。同样,第二设备22与第一设备21的连接关系可以参考图2以及相关描述,在此不再赘述。
[0107] 图7为本发明另一个实施例提供的接口拓展装置的结构示意图,如图7所示,该接口拓展装置包括:
[0108] 第二控制模块701,用于生成命令,命令用于控制第一设备21执行第二设备22与目标接口之间的数据传输操作,目标接口为多个接口中的任意接口;
[0109] 第二传输模块702,用于向第一设备21发送命令,以使第一设备21确定与目标接口具有映射关系的目标寄存器,对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作;其中,映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应。
[0110] 本发明一些实施例中,第二传输模块702还用于接收第一设备21发送的反馈信息;第二控制模块701还用于根据反馈信息获取第一设备21中对应接口的输入数据,以根据输入数据,确定与接口连接的第三设备23的状态。
[0111] 作为本发明公开内容的另一种可选实现,本发明实施例提供了一种管理系统,参考图2,包括第一设备21和第二设备22,第一设备21与第二设备22连接,第一设备21包括多个接口和寄存器;
[0112] 第二设备22用于生成命令,并将命令发送至第一设备21,命令用于控制执行第二设备22与目标接口之间的数据传输操作,目标接口为多个接口中的任意接口;目标接口与第三设备23连接;
[0113] 第一设备21用于确定与目标接口具有映射关系的目标寄存器,对目标寄存器执行读写操作,以执行第二设备22与目标接口之间的数据传输操作;其中,映射关系用于使目标寄存器的数据与目标接口传输的数据相互对应。
[0114] 本发明一些实施例中,第一设备21还用于检测任一接口的输入数据,若接口的输入数据包括异常数据,向第二设备22发送反馈信息;第二设备22还用于根据反馈信息获取第一设备21中对应接口的输入数据,以根据输入数据,确定与接口连接的第三设备23的状态。
[0115] 本发明一些实施例中,第一设备21包括可编程逻辑器件,如CPLD或FPGA;第二设备22包括基板管理控制器,如BMC芯片;第三设备23包括服务器系统中的节点设备,该节点设备可以包括刀片服务器、电源模块和风扇模块等。
[0116] 作为本发明公开内容的另一种可选实现,本发明实施例提供了一种电子设备,包括:存储器,用于存储至少一组指令;
[0117] 处理器,用于执行至少一组指令,以执行如上任一实施例提供的接口拓展方法。
[0118] 其中,该电子设备可以是第一设备,也可以是第二设备。当然,本发明并不仅限于此,该电子设备也可以是终端设备或服务器设备等。
[0119] 作为本发明公开内容的另一种可选实现,本发明实施例提供了一种可读存储介质,可读存储介质存储至少一组指令,至少一组指令用于使处理器执行如上任一实施例提供的接口拓展方法。
[0120] 本发明实施例的可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是主机可读指令、数据结构、程序的模块或其他数据。主机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD‑ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0121] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。