一种FPGA异构加速卡的监控装置的制作方法

文档序号:16134338发布日期:2018-12-01 00:44阅读:159来源:国知局

本发明涉及fpga异构加速卡领域,特别涉及一种fpga异构加速卡的监控装置。

背景技术

fpga异构加速卡主要为人工智能、图像处理、大规模数据压缩提供高性能的计算能力,这对fpga异构加速卡长时间稳定运行提出了要求,迫切需要对加速卡的健康状态进行监测,对其各类异常进行预警,并能够一定程度的进行自动处置。

fpga异构加速卡一般被部署在服务器机房中,或者直接在普通pc机上使用。上述两种使用方式中fpga异构加速卡均通过设备的pci-e插槽与设备相连,但其主要区别是服务器可通过bmc模块对加速卡进行状态监控及管理,而普通的pc机却没有bmc模块,这也给fpga异构加速卡的状态监控带来新的问题。

现有的一种远程监控异构加速卡的方法,利用服务器的bmc模块与fpga异构加速卡进行通信,通过读取fpga异构加速卡的运行参数,来实现监控的目的。

但是该方法存在两个问题:一是当用户使用不包含bmc模块的普通pc或者工作站,则无法对fpga异构加速卡进行监控。二是fpga异构加速卡利用fpga异构加速卡的计算能力提供加速,而fpga异构加速卡作为一种可编程的器件,会根据用户的不同需求对fpga异构加速卡的工程进行重新加载,这就造成fpga异构加速卡无法与bmc进行通信,从而无法对fpga异构加速卡进行监控。此外,该方法利用fpga异构加速卡的gpio接口连接fpga异构加速卡的温度传感器、电压传感器和电流传感器,其面临的问题与上述问题一致,当fpga异构加速卡加载其它工程时,gpio接口可能无法正常采集数据,而且当需要监测数据增加时会大量浪费fpga异构加速卡的gpio接口资源。

综上,对于fpga异构加速卡在fpga重新加载工程时无法进行正常监控、且不包括bmc模块的设备无法对fpga异构加速卡开展监控的问题,亟待本领域技术人员的解决。



技术实现要素:

本发明的目的是提供一种fpga异构加速卡的监控装置,用以解决fpga异构加速卡在fpga重新加载工程时无法进行正常监控、且不包括bmc模块的设备无法对fpga异构加速卡开展监控的问题。

为解决上述技术问题,本发明提供了一种fpga异构加速卡的监控装置,包括:分别与所述fpga异构加速卡上的多个待监控模块相连接的mcu,分别与所述mcu相连接的pcie的smbus接口和串口;

其中,当所述mcu通过所述pcie的smbus接口连接服务器时,所述mcu用于通过所述pcie的smbus接口接收所述服务器发送的监测指令,并根据所述监测指令对所述待监控模块进行监测,得到监测数据,进而将所述监测数据通过所述pcie的smbus接口发送到所述服务器;

当所述mcu通过所述串口连接主机端时,所述mcu用于通过所述串口接收所述主机端发送的监测指令,并根据所述监测指令对所述待监控模块进行监测,得到监测数据,进而将所述监测数据通过所述串口发送到所述主机端。

优选的,所述待监控模块具体通过挂载到与所述mcu相连接的第一i2c总线与所述mcu相连接,所述pcie的smbus接口具体通过第二i2c总线与所述mcu相连接。

优选的,所述监测指令包括地址信息,所述mcu用于根据所述监测指令监测与所述地址信息对应的待监控模块。

优选的,所述mcu具体用于根据所述监测指令获取所述待监控模块的运行参数,并判断所述运行参数是否在预设阈值范围内,得到判断结果。

优选的,所述mcu具体用于以轮询的方式获取所述待监控模块的所述运行参数。

优选的,所述mcu还用于根据所述运行参数生成运行日志。

优选的,所述待监控模块包括电源芯片、ddr4内存、eeprom、风扇、fpga异构加速卡中的任意一项或多项。

优选的,当所述地址信息为所述电源芯片的地址信息时,所述mcu具体用于根据所述电源芯片的地址信息获取所述电源芯片的pgood信号。

优选的,当所述地址信息为所述异构加速卡的地址信息时,所述mcu具体用于根据所述异构加速卡的地址信息获取所述异构加速卡的温度值。

本发明所提供的一种fpga异构加速卡的监控装置,包括分别与fpga异构加速卡上的多个待监控模块相连接的mcu,分别与mcu相连接的串口和pcie的smbus接口;其中,当mcu通过pcie的smbus接口或串口连接服务器或主机端时,mcu通过pcie的smbus接口或串口接收监测指令,并根据监测指令对待监控模块进行监测,得到监测数据,进而将监测数据通过pcie的smbus接口或串口发送到服务器或主机端,以实现监控的目的。可见,本发明提供的监控装置利用与fpga异构加速卡相独立的mcu进行监控,避免了用户对fpga异构加速卡重新加载工程导致监控无法正常进行的问题,另外还提供了分别用于连接服务器和主机端的两种接口,实现了无论带bmc模块的服务器还是不带bmc模块的主机端均能够对fpga加速卡实现监控的目的。

附图说明

为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种fpga异构加速卡的监控装置实施例一的结构框图;

图2为本发明提供的一种fpga异构加速卡的监控装置实施例二的结构框图;

图3为本发明提供的一种fpga异构加速卡的监控装置的监控流程图。

具体实施方式

本发明的核心是提供一种fpga异构加速卡的监控装置,避免了用户对fpga异构加速卡重新加载工程导致监控无法正常进行的问题,另外还实现了无论带bmc模块的服务器还是不带bmc模块的主机端均能够对fpga异构加速卡实现监控的目的。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面对本发明提供的一种fpga异构加速卡的监控装置实施例进行介绍,参见图1,该实施例包括:

分别与所述fpga异构加速卡上的多个待监控模块相连接的mcu100,分别与所述mcu相连接的pcie的smbus接口200和串口300。

其中,当所述mcu100通过所述pcie的smbus接口200连接服务器时,所述mcu100用于通过所述pcie的smbus接口200接收所述服务器发送的监测指令,并根据所述监测指令对所述待监控模块进行监测,得到监测数据,进而将所述监测数据通过所述pcie的smbus接口200发送到所述服务器;当所述mcu100通过所述串口300连接主机端时,所述mcu100用于通过所述串口300接收所述主机端发送的监测指令,并根据所述监测指令对所述待监控模块进行监测,得到监测数据,进而将所述监测数据通过所述串口300发送到所述主机端。

mcu100,作为fpga异构加速卡的监控控制核心,对上可以有两条通路与主机设备相连,一是通过pcie的smbus接口200与服务器的bmc模块相连,另外一种通过串口300与不包括bmc模块的主机端相连。对下可以通过i2c总线与各个待监控模块进行相连,因此可以最大程度的减少io口的开销。具体的,pcie的smbus接口200具体可以通过i2c总线与mcu100相连接。

需要说明的是,本实施例中主机端指的是不包含bmc模块的普通pc,服务器指的是包含bmc模块的服务器,服务器和主机端在本实施例中统称为主机设备。本实施例中,主机设备或通过pcie的smbus接口200与mcu相连接,或通过串口300与mcu相连接。

值得一提的是,本实施例中的mcu100所实现的监控管理功能独立于异构加速卡的其它业务,因此不受fpga异构加速卡加载工程的影响,mcu100在上电后就可以实现自动运行。

下面对mcu的功能模块进行介绍,如图2所示,mcu100的功能模块主要包括i2cmaster模块、uart模块、i2cslave模块以及风扇控制模块。下面对各个模块的功能进行简要介绍:

i2cslave模块,用于接收服务器中bmc模块的读写请求,bmc模块通过i2c协议经pcie的smbus接口200与mcu100的i2cslave模块相连。

i2cmaster模块,用于读写i2c总线上挂载的各种待监控模块,包括电源管理芯片、温度监测芯片、ddr、eeprom以及光模块。

uart模块,该模块与i2cslave模块类似,其直接与主机端的串口相连,或者通过串口转usb接口与主机端的usb接口相连,用于接收主机端的读写请求。

风扇控制模块,mcu100具体可以通过产生pwm脉冲来控制风扇转速。

本实施例中,主机设备通过pcie的smbus接口200或串口300对fpga异构加速卡进行监控管理,下面对整体的工作流程进行介绍,参见图3,具体包括:

步骤s301:mcu接收并解析来自主机设备的监测指令。

具体的,所述监测指令可以包括地址信息或者寄存器地址,然后mcu100可以根据地址信息或寄存器地址来确定具体访问对象。

步骤s302:mcu根据监测指令确定待监控模块,并对该模块进行监测并得到监测数据。

具体的,可以获取该模块的运行参数,在此基础之上,可以进一步判断所述运行参数是否在预设阈值范围内,得到判断结果。最终的监测数据可以为运行参数,也可以为上述判断结果,还可以同时包含二者。

在得到判断结果之后,对于正常状态的待监控模块不断重复上述步骤,对于异常状态的待监控模块,执行异常告警和异常处理,保护fpga异构加速卡和主机设备。

作为一种优选方式,mcu100可以按照业务逻辑,采用轮询方式不断读取待监控模块的运行参数,此外,mcu100还可以根据所述运行参数生成运行日志。

具体的,所述待监控模块包括电源芯片、ddr4内存、eeprom、风扇、fpga异构加速卡中的任意一项或多项。

步骤s303:将监测数据发送给主机设备。

综上,本实施例提供的一种fpga异构加速卡的监控装置将mcu作为监控核心,通过mcu上的i2c总线与fpga异构加速卡上需要监控的模块相连,且mcu独立于fpga异构加速卡业务程序,上电自动运行。该监控装置还设置有两条通路分别用于服务器bmc模块或者不具有bmc模块的主机端相连。因此避免了用户对fpga异构加速卡重新加载工程导致监控无法正常进行的问题,实现了无论带bmc模块的服务器还是不带bmc模块的主机端均能够实时监控的目的。

待监控模块pcie的smbus接口pcie的smbus接口

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的一种fpga异构加速卡的监控装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1