CN111857303B - 一种fpga复位方法、装置、系统和电子设备 - Google Patents

一种fpga复位方法、装置、系统和电子设备 Download PDF

Info

Publication number
CN111857303B
CN111857303B CN202010616589.3A CN202010616589A CN111857303B CN 111857303 B CN111857303 B CN 111857303B CN 202010616589 A CN202010616589 A CN 202010616589A CN 111857303 B CN111857303 B CN 111857303B
Authority
CN
China
Prior art keywords
fpga
server
information
reset
mcu
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
Application number
CN202010616589.3A
Other languages
English (en)
Other versions
CN111857303A (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.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry 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 Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN202010616589.3A priority Critical patent/CN111857303B/zh
Publication of CN111857303A publication Critical patent/CN111857303A/zh
Application granted granted Critical
Publication of CN111857303B publication Critical patent/CN111857303B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种FPGA复位方法,包括:判断服务器与FPGA的通信状态是否是异常状态;若通信状态是异常状态,则卸载FPGA驱动;发送重置指令至MCU,以使MCU将对应的镜像文件传输至FPGA,实现FPGA的复位。可见,本申请中通过在服务器与FPGA的通信状态是异常状态后,卸载FPGA驱动,避免了重置前后FPGA的驱动信息不一致的情况,解决了由于变动引起的服务器重启的问题,然后发送重置指令至MCU,以使MCU将镜像文件传输至FPGA,加载镜像文件使FPGA复位。本申请同时还提供了一种FPGA复位装置、电子设备和FPGA复位系统,均具有上述有益效果。

Description

一种FPGA复位方法、装置、系统和电子设备
技术领域
本申请涉及FPGA复位技术领域,特别涉及一种FPGA复位方法、装置、系统和电子设备。
背景技术
FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)板卡的监控采用FPGA硬件看门狗,由FPGA程序定时喂狗,超时后,FPGA复位重新从flash中加载镜像。FPGA硬件看门狗仅仅是简单的FPGA重配置。但是,重配置FPGA板卡带来另一个风险,FPGA重加载过程会引起pcie(peripheral component interconnect express,高速串行计算机扩展总线)接口的变动,导致服务器重启。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本申请的目的是提供一种FPGA复位方法、装置、系统和电子设备,能够解决由于变动引起的服务器重启的问题。其具体方案如下:
本申请提供了一种FPGA复位方法,包括:
判断服务器与FPGA的通信状态是否是异常状态;
若所述通信状态是所述异常状态,则卸载FPGA驱动;
发送重置指令至MCU,以使所述MCU将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位。
优选的,所述判断服务器与FPGA的通信状态是否是异常状态之前,还包括:
获取所述MCU中存储的标记信息;
判断所述标记信息中是否包括置位信息;
若包括所述置位信息,则执行所述判断服务器与FPGA的通信状态是否是异常状态的步骤;
其中,所述置位信息是所述MCU与所述FPGA通信失败后标记的信息。
优选的,所述发送重置指令至MCU,以使所述MCU将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位之后,还包括:
获取所述MCU中存储的所述标记信息;
判断所述标记信息中是否包括重置成功信息;
若包括所述重置成功信息,则重新加载所述FPGA驱动。
本申请提供了一种FPGA复位装置,包括:
判断模块,用于判断服务器与FPGA的通信状态是否是异常状态;
卸载模块,用于若所述通信状态是所述异常状态,则卸载FPGA驱动;
重置指令发送模块,用于发送重置指令至MCU,以使所述MCU将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位。
本申请提供了一种FPGA复位方法,包括:
获取服务器发送的重置指令,其中所述重置指令是当服务器卸载FPGA驱动后发送的,所述卸载FPGA驱动的操作是所述服务器确定与FPGA的通信状态是异常状态后执行的操作;
根据所述重置指令将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位。
优选的,所述根据所述重置指令将对应的镜像文件传输至所述FPGA,包括:
根据所述重置指令将最小FPGA镜像文件通过模拟JTAG接口发送至所述FPGA。
优选的,所述获取服务器发送的重置指令之前,还包括:
判断MCU与所述FPGA的第二通信状态是否是所述异常状态;
若所述第二通信状态是所述异常状态,则在标记信息中记录置位信息;
接收到所述服务器发送的标记信息获取指令后,发送标记信息至所述服务器,以使所述服务器根据所述标记信息中的所述置位信息,确定与所述FPGA的通信状态。
本申请提供了一种FPGA复位装置,包括:
重置指令获取模块,用于获取服务器发送的重置指令,其中所述重置指令是当服务器卸载FPGA驱动后发送的,所述卸载FPGA驱动的操作是所述服务器确定与FPGA的通信状态是异常状态后执行的操作;
镜像文件传输模块,用于根据所述重置指令将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位。
本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述FPGA复位方法的步骤。
本申请提供了一种FPGA复位系统,包括:
服务器,用于判断所述服务器与FPGA的通信状态是否是异常状态;若所述通信状态是所述异常状态,则卸载FPGA驱动;发送重置指令至MCU;
所述MCU,用于根据所述重置指令将对应的镜像文件传输至所述FPGA;
所述FPGA,用于加载所述镜像文件。
本申请提供一种FPGA复位方法,包括:判断服务器与FPGA的通信状态是否是异常状态;若通信状态是异常状态,则卸载FPGA驱动;发送重置指令至MCU,以使MCU将对应的镜像文件传输至FPGA,实现FPGA的复位。
可见,本申请中通过在服务器与FPGA的通信状态是异常状态后,卸载FPGA驱动,避免了重置前后FPGA的驱动信息不一致的情况,解决了由于变动引起的服务器重启的问题,然后发送重置指令至MCU,以使MCU将镜像文件传输至FPGA,加载镜像文件使FPGA复位。
本申请同时还提供了一种FPGA复位装置、电子设备和FPGA复位系统,均具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种FPGA复位方法的流程图;
图2为本申请实施例所提供的一种FPGA复位装置的结构示意图;
图3为本申请实施例所提供的另一种FPGA复位方法的流程图;
图4为本申请实施例所提供的一种FPGA复位装置的结构示意图;
图5为本申请实施例提供的一种FPGA复位系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)板卡的监控采用FPGA硬件看门狗,由FPGA程序定时喂狗,超时后,FPGA复位重新从flash中加载镜像。FPGA硬件看门狗仅仅是简单的FPGA重配置。但是,重配置FPGA板卡带来另一个风险,FPGA重加载过程会引起PCIE(peripheral component interconnect express,高速串行计算机扩展总线)接口的变动,导致服务器重启。基于上述技术问题,本实施例提供一种FPGA复位方法,能够解决服务器重启问题,具体请参考图1,图1为本申请实施例所提供的一种FPGA复位方法的流程图,具体包括:
S101、判断服务器与FPGA的通信状态是否是异常状态;
本实施例的执行主体为服务器。本步骤的目的是为了判断服务器与FPGA的通信状态是否是异常状态。
其中,该异常状态包括但是不限定于:通信超时、通信内容错误、不能通信。在一种可实现的实施方式中,服务器通过PCIE尝试发送通信请求至FPGA,若接收到FPGA发送的反馈信息,判断反馈信息是否是标准反馈信息,若不是标准反馈信息则确定是异常状态;若是标准反馈信息则判断通信时长是否大于预设时间,若大于预设时间,则确定为异常状态,若不大于预设时间则确定正常状态;没有接收到FPGA发送的反馈信息,则确定为异常状态。在另一种可实现的实施方式中,服务器通过PCIE尝试发送通信请求至FPGA,若接收到的FPGA发送的反馈信息不是标准反馈信息,则确定是异常状态,若接收到的FPGA发送的反馈信息是标准反馈信息,则确定是正常状态。在另一种可实现的实施方式中,服务器通过PCIE尝试发送通信请求至FPGA,若通信时长大于预设时间,则确定是异常状态;若通信时长不大于预设时间,则确定是正常状态。在另一种可实现的实施方式中,服务器通过PCIE尝试发送通信请求至FPGA,若没有收到FPGA发送的反馈信息,则确定是异常状态;若收到FPGA发送的反馈信息,则确定是正常状态。可以理解的是,该通信请求可以是心跳包,对应的反馈信息可以是心跳响应包。
进一步的,为了进一步确定FPGA异常,保证有效的FPGA复位的情况,步骤S101之前,还包括:获取MCU中存储的标记信息;判断标记信息中是否包括置位信息;若包括置位信息,则执行判断服务器与FPGA的通信状态是否是异常状态的步骤;其中,置位信息是MCU与FPGA通信失败后标记的信息。
本步骤的目的是为了实现两次FPGA状态的确认,第一次确认是MCU与FPGA进行通信后确认的,只有当MCU与FPGA通信失败后,才执行步骤S101,实现第二次的通信确认。只有满足两种情况下均通信状态为异常状态后,才执行FPGA的复位。
其中,MCU上电初始化I2C和模拟接口,模拟接口可以是模拟JTAG接口,当然还可以是其他的接口,只要是能够实现本实施例的目的即可。MCU定时与FPGA进行通信,当与FPGA的通信状态是异常状态时,置位相关标记,在标记信息中记录置位信息。服务器会定时通过BMC采集MCU中的标记信息,判断标记信息中是否包括置位信息,若包括置位信息,则判断服务器与FPGA的通信状态是否是异常状态。在本实施例中,FPGA与服务器的通信状态中的异常状态可以与FPGA与MCU的通信状态中的异常状态相同,还可以不同,用户可自定义设置只要是能够实现本实施例的目的即可。例如,FPGA与服务器的通信状态中的异常状态可以包括情况a、情况b、情况c中的任意一种或者多种,FPGA与MCU的通信状态中的异常状态可以包括情况a、情况b、情况c中的任意一种或者多种;再如,FPGA与服务器的通信状态中的异常状态可以包括情况a、情况b、情况c中的任意一种或者多种,FPGA与MCU的通信状态中的异常状态可以包括情况d、情况e、情况f中的任意一种或者多种;再如,FPGA与服务器的通信状态中的异常状态可以包括情况a、情况b、情况c中的任意一种或者多种,FPGA与MCU的通信状态中的异常状态可以包括情况a、情况b中的任意一种或者多种。
其中标记信息包括但是不限定于:置位信息、置位成功信息、置位失败信息、正常信息。其中正常信息是通信状态为正常状态对应的信息,可以用0表示,置位信息是通信状态为异常状态对应的信息,可以用1表示。
可见,本实施例中通过二次通信状态为异常状态的确定,能够减少在通信状态下进行了FPGA重置的情况的发生。
S102、若通信状态是异常状态,则卸载FPGA驱动;
本步骤的目的是在服务器与FPGA的通信状态为异常状态时,卸载服务器中的FPGA驱动,以便释放FPGA的相关资源,该资源包括但是不限定于:PCIE信息、中断信息、内存信息等,通过本步骤能够避免重置前后FPGA的驱动信息不一致的情况的发生,解决了由于变动引起的服务器重启的问题。
进一步的,若通信状态是正常状态,则继续执行步骤S101,直至接收到停止命令。
S103、发送重置指令至MCU,以使MCU将对应的镜像文件传输至FPGA,实现FPGA的复位。
在服务器卸载FPGA驱动后,发送重置指令至MCU,以使MCU将对应的镜像文件传输至FPGA。其中镜像文件可以是能够启动FPGA的最小FPGA镜像文件,还可以是从Flash中加载得到的全部的镜像文件,用户可自定义设置,只要是能够实现本实施例的目的即可。
可以理解的是,当FPGA复位后,服务器需要重新加载FPGA驱动,以便能够实现与FPGA的通信。
在一种可实现的实施方式中,发送重置指令至MCU后,服务器基于首次得到的与镜像文件的版本信息对应的FPGA驱动重新进行加载。
在另一种可实现的实施方式中,当FPGA置位成功后,FPGA发送FPGA驱动至服务器,以使服务器加载该FPGA驱动。
在另一种可实现的实施方式中,服务器获取MCU中存储的标记信息;判断标记信息中是否包括重置成功信息;若包括重置成功信息,则重新加载FPGA驱动。具体的,MCU检测到FPGA重置成功后,在存储重置成功信息,服务器定时读取标记信息,读取到重置成功信息后,重新加载FPGA驱动,该FPGA驱动可以是服务器中存储的驱动。可见,本实施例只有在FPGA重置成功后才加载FPGA驱动,避免了重置失败也加载造成的资源的浪费的问题。
基于上述技术方案,本实施例通过在服务器与FPGA的通信状态是异常状态后,卸载FPGA驱动,避免了重置前后FPGA的驱动信息不一致的情况,解决了由于变动引起的服务器重启的问题,然后发送重置指令至MCU,以使MCU将镜像文件传输至FPGA,加载镜像文件使FPGA复位。
下面对本申请实施例提供的一种FPGA复位装置进行介绍,下文描述的装置与上文描述的方法可相互对应参照,相关模块均设置于服务器中,参考图2,图2为本申请实施例所提供的一种FPGA复位装置的结构示意图,包括:
判断模块201,用于判断服务器与FPGA的通信状态是否是异常状态;
卸载模块202,用于若通信状态是异常状态,则卸载FPGA驱动;
重置指令发送模块203,用于发送重置指令至MCU,以使MCU将对应的镜像文件传输至FPGA,实现FPGA的复位。
优选的,还包括:
第一标记信息获取模块,用于获取MCU中存储的标记信息;
第一标记信息判断模块,用于判断标记信息中是否包括置位信息;
执行模块,用于若包括置位信息,则执行判断服务器与FPGA的通信状态是否是异常状态的步骤;
其中,置位信息是MCU与FPGA通信失败后标记的信息。
优选的,还包括:
第二标记信息获取模块,用于获取MCU中存储的标记信息;
第二标记信息判断模块,用于判断标记信息中是否包括重置成功信息;
加载模块,用于若包括重置成功信息,则重新加载FPGA驱动。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
请参考图3,图3为本申请实施例所提供的另一种FPGA复位方法的流程图,具体包括:
S301、获取服务器发送的重置指令,其中重置指令是当服务器卸载FPGA驱动后发送的,卸载FPGA驱动的操作是服务器确定与FPGA的通信状态是异常状态后执行的操作。
进一步的,步骤S301之前,还包括:判断MCU与FPGA的第二通信状态是否是异常状态;若第二通信状态是异常状态,则在标记信息中记录置位信息;接收到服务器发送的标记信息获取指令后,发送标记信息至服务器,以使服务器根据标记信息中的置位信息,确定与FPGA的通信状态。具体请参考上述实施例,本实施例不再进行赘述。
S302、根据重置指令将对应的镜像文件传输至FPGA,实现FPGA的复位。
本实施例中可以是基于模拟接口将对应的镜像文件传输至FPGA,模拟接口可以是模拟JTAG接口,当然还可以是其他的接口,只要是能够实现本实施例的目的即可。
进一步的,步骤S302包括:根据重置指令将最小FPGA镜像文件通过模拟JTAG接口发送至FPGA。通过MCU模拟JTAG接口下载最小FPGA镜像文件,避免了FPGA镜像从FLASH中加载失败的问题。
基于上述技术方案,本实施例通过在服务器与FPGA的通信状态是异常状态后,卸载FPGA驱动,避免了重置前后FPGA的驱动信息不一致的情况,解决了由于变动引起的服务器重启的问题,然后发送重置指令至MCU,以使MCU将镜像文件传输至FPGA,加载镜像文件使FPGA复位。
下面对本申请实施例提供的一种FPGA复位装置进行介绍,下文描述的装置与上文描述的方法可相互对应参照,相关模块均设置于MCU中,参考图4,图4为本申请实施例所提供的一种FPGA复位装置的结构示意图,包括:
重置指令获取模块401,用于获取服务器发送的重置指令,其中重置指令是当服务器卸载FPGA驱动后发送的,卸载FPGA驱动的操作是服务器确定与FPGA的通信状态是异常状态后执行的操作;
镜像文件传输模块402,用于根据重置指令将对应的镜像文件传输至FPGA,实现FPGA的复位。
优选的,镜像文件传输模块402,包括:
镜像文件传输单元,用于根据重置指令将最小FPGA镜像文件通过模拟JTAG接口发送至FPGA。
优选的,还包括:
状态判断模块,用于判断MCU与FPGA的第二通信状态是否是异常状态;
标记模块,用于若第二通信状态是异常状态,则在标记信息中记录置位信息;
发送模块,用于接收到服务器发送的标记信息获取指令后,发送标记信息至服务器,以使服务器根据标记信息中的置位信息,确定与FPGA的通信状态。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
基于上述任一实施例,本实施例提供一种具体的FPGA监控的方法,包括:
1、MCU上电初始化I2C、模拟JTAG接口;
2、MCU定时与FPGA通信;
3、当MCU与FPGA的通信状态为异常状态,例如,通信超时、通信内容错误时,由MCU置位相关标记,即保存置位信息;
4、服务器Host定时通过BMC采集MCU中保存的标记信息;
5、当服务器Host检测到标记被置位时,通过PCIE尝试与FPGA进行通信一次;
6、服务器Host确认PCIE通信失败后,卸载FPGA驱动,并对MCU下发重置指令;
7、MCU收到重置指令后,通过模拟JTAG接口将FPGA的最小镜像文件下载到FPGA,并置位重置成功标记;
8、服务器Host读取到重置成功标记后,重新加载板卡驱动。
基于上述实施例,从应用层覆盖了FPGA各种异常问题,极大提高了FPGA在实际业务环境中的高可用性。整个装置硬件成本较低,在完成上述工作同时也可接管原有电压、温度、IO等监控任务以及后续扩展任务,使FPGA整体更加智能。通过与BMC技术联动在FPGA异常时,由应用层先卸载驱动,释放FPGA相关的资源(包括PCIE信息、中断信息、内存信息等),解决了PCIE变动引起的服务器复位问题。避免在底层由看门狗直接重置FPGA镜像。而是通过BMC上报状态后,由服务器先卸载相关资源,由BMC通过模拟JTAG接口重置FPGA中的程序。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的电子设备与上文描述的方法可相互对应参照。
实施例提供的一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述FPGA复位方法的步骤。
在一种可实现的实施方式中,该电子设备可以是服务器,对应的,处理器,用于执行计算机程序时实现下述步骤:
判断服务器与FPGA的通信状态是否是异常状态;若通信状态是异常状态,则卸载FPGA驱动;发送重置指令至MCU,以使MCU将对应的镜像文件传输至FPGA,实现FPGA的复位。
优选地,处理器,用于执行计算机程序时还可以实现下述步骤:获取MCU中存储的标记信息;判断标记信息中是否包括置位信息;若包括置位信息,则执行判断服务器与FPGA的通信状态是否是异常状态的步骤;其中,置位信息是MCU与FPGA通信失败后标记的信息。
优选地,处理器,用于执行计算机程序时还可以实现下述步骤:获取MCU中存储的标记信息;判断标记信息中是否包括重置成功信息;若包括重置成功信息,则重新加载FPGA驱动。
在另一种可实现的实施方式中,该电子设备可以是MCU,对应的,处理器,用于执行计算机程序时实现下述步骤:获取服务器发送的重置指令,其中重置指令是当服务器卸载FPGA驱动后发送的,卸载FPGA驱动的操作是服务器确定与FPGA的通信状态是异常状态后执行的操作;根据重置指令将对应的镜像文件传输至FPGA,实现FPGA的复位。
优选地,处理器,用于执行计算机程序时还可以实现下述步骤:根据重置指令将最小FPGA镜像文件通过模拟JTAG接口发送至FPGA。
优选地,处理器,用于执行计算机程序时还可以实现下述步骤:判断MCU与FPGA的第二通信状态是否是异常状态;若第二通信状态是异常状态,则在标记信息中记录置位信息;接收到服务器发送的标记信息获取指令后,发送标记信息至服务器,以使服务器根据标记信息中的置位信息,确定与FPGA的通信状态。
电子设备还可以包括:输入输出接口,网络端口。其中,存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。处理器为电子设备提供计算和控制能力,执行存储器中保存的计算机程序时,可以实现显示方法的步骤。输入输出接口,用于获取外部导入的计算机程序、参数和指令,经处理器控制保存至存储器中。该输入输出接口可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。具体的,在本实施例中,用户可以通过输入输出接口启动显示方法。网络端口,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。具体的,在本实施例中,在正常联网的情况下,可以通过网络端口与手机或者平板电脑进行交互实现认证。
由于电子设备部分的实施例与方法部分的实施例相互对应,因此电子设备部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
下面对本申请实施例提供的一种FPGA复位系统进行介绍,下文描述的FPGA复位系统与上文描述的方法可相互对应参照。
请参考图5,图5为本申请实施例提供的一种FPGA复位系统的结构示意图,包括:
服务器501,用于判断服务器与FPGA的通信状态是否是异常状态;若通信状态是异常状态,则卸载FPGA驱动;发送重置指令至MCU;
MCU502,用于根据重置指令将对应的镜像文件传输至FPGA;
FPGA 503,用于加载镜像文件。
由于FPGA复位系统部分的实施例与方法部分的实施例相互对应,因此FPGA复位系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种FPGA复位方法、装置、电子设备和系统进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (8)

1.一种FPGA复位方法,其特征在于,包括:
判断服务器与FPGA的通信状态是否是异常状态;
若所述通信状态是所述异常状态,则卸载FPGA驱动,以释放所述服务器中所述FPGA的资源,所述资源包括PCIe信息、中断信息、内存信息;
发送重置指令至MCU,以使所述MCU将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位;
所述判断服务器与FPGA的通信状态是否是异常状态之前,还包括:
获取所述MCU中存储的标记信息;
判断所述标记信息中是否包括置位信息;
若包括所述置位信息,则执行所述判断服务器与FPGA的通信状态是否是异常状态的步骤;
其中,所述置位信息是所述MCU与所述FPGA通信失败后标记的信息。
2.根据权利要求1所述的FPGA复位方法,其特征在于,所述发送重置指令至MCU,以使所述MCU将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位之后,还包括:
获取所述MCU中存储的所述标记信息;
判断所述标记信息中是否包括重置成功信息;
若包括所述重置成功信息,则重新加载所述FPGA驱动。
3.一种FPGA复位装置,其特征在于,包括:
判断模块,用于判断服务器与FPGA的通信状态是否是异常状态;
卸载模块,用于若所述通信状态是所述异常状态,则卸载FPGA驱动,以释放所述服务器中所述FPGA的资源,所述资源包括PCIe信息、中断信息、内存信息;
重置指令发送模块,用于发送重置指令至MCU,以使所述MCU将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位;
所述判断模块还用于所述判断服务器与FPGA的通信状态是否是异常状态之前,执行以下操作:
获取所述MCU中存储的标记信息;
判断所述标记信息中是否包括置位信息;
若包括所述置位信息,则执行所述判断服务器与FPGA的通信状态是否是异常状态的步骤;
其中,所述置位信息是所述MCU与所述FPGA通信失败后标记的信息。
4.一种FPGA复位方法,其特征在于,包括:
获取服务器发送的重置指令,其中所述重置指令是当服务器卸载FPGA驱动后发送的,所述卸载FPGA驱动的操作是所述服务器确定与FPGA的通信状态是异常状态后执行的操作,以释放所述服务器中所述FPGA的资源,所述资源包括PCIe信息、中断信息、内存信息;
根据所述重置指令将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位;
所述获取服务器发送的重置指令之前,还包括:
判断MCU与所述FPGA的第二通信状态是否是所述异常状态;
若所述第二通信状态是所述异常状态,则在标记信息中记录置位信息;
接收到所述服务器发送的标记信息获取指令后,发送标记信息至所述服务器,以使所述服务器根据所述标记信息中的所述置位信息,确定与所述FPGA的通信状态。
5.根据权利要求4所述的FPGA复位方法,其特征在于,所述根据所述重置指令将对应的镜像文件传输至所述FPGA,包括:
根据所述重置指令将最小FPGA镜像文件通过模拟JTAG接口发送至所述FPGA。
6.一种FPGA复位装置,其特征在于,包括:
重置指令获取模块,用于获取服务器发送的重置指令,其中所述重置指令是当服务器卸载FPGA驱动后发送的,所述卸载FPGA驱动的操作是所述服务器确定与FPGA的通信状态是异常状态后执行的操作,以释放所述服务器中所述FPGA的资源,所述资源包括PCIe信息、中断信息、内存信息;
镜像文件传输模块,用于根据所述重置指令将对应的镜像文件传输至所述FPGA,实现所述FPGA的复位;
所述重置指令获取模块还用于获取服务器发送的重置指令之前,判断MCU与所述FPGA的第二通信状态是否是所述异常状态;
若所述第二通信状态是所述异常状态,则在标记信息中记录置位信息;
接收到所述服务器发送的标记信息获取指令后,发送标记信息至所述服务器,以使所述服务器根据所述标记信息中的所述置位信息,确定与所述FPGA的通信状态。
7.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至2任一项和/或4至5任一项所述FPGA复位方法的步骤。
8.一种FPGA复位系统,其特征在于,包括:
服务器,用于判断所述服务器与FPGA的通信状态是否是异常状态;若所述通信状态是所述异常状态,则卸载FPGA驱动,以释放所述服务器中所述FPGA的资源,所述资源包括PCIe信息、中断信息、内存信息;发送重置指令至MCU;
所述MCU,用于根据所述重置指令将对应的镜像文件传输至所述FPGA;
所述FPGA,用于加载所述镜像文件;
所述服务器在判断服务器与FPGA的通信状态是否是异常状态之前,还包括:
获取所述MCU中存储的标记信息;
判断所述标记信息中是否包括置位信息;
若包括所述置位信息,则执行所述判断服务器与FPGA的通信状态是否是异常状态的步骤;
其中,所述置位信息是所述MCU与所述FPGA通信失败后标记的信息。
CN202010616589.3A 2020-06-30 2020-06-30 一种fpga复位方法、装置、系统和电子设备 Active CN111857303B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010616589.3A CN111857303B (zh) 2020-06-30 2020-06-30 一种fpga复位方法、装置、系统和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010616589.3A CN111857303B (zh) 2020-06-30 2020-06-30 一种fpga复位方法、装置、系统和电子设备

Publications (2)

Publication Number Publication Date
CN111857303A CN111857303A (zh) 2020-10-30
CN111857303B true CN111857303B (zh) 2022-05-17

Family

ID=72989220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010616589.3A Active CN111857303B (zh) 2020-06-30 2020-06-30 一种fpga复位方法、装置、系统和电子设备

Country Status (1)

Country Link
CN (1) CN111857303B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112558742A (zh) * 2020-12-15 2021-03-26 深兰人工智能(深圳)有限公司 上电控制方法、可编程逻辑器件及上电控制系统
CN114153761B (zh) * 2021-11-29 2024-07-05 中汽创智科技有限公司 一种外部设备互联总线接口设备的探测方法及系统
CN114115499A (zh) * 2021-11-30 2022-03-01 中汽创智科技有限公司 外部设备互联总线接口的热复位方法、装置和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6742139B1 (en) * 2000-10-19 2004-05-25 International Business Machines Corporation Service processor reset/reload
CN101145986A (zh) * 2007-06-18 2008-03-19 中兴通讯股份有限公司 一种通讯系统中板间通信状态检测方法
CN110069366A (zh) * 2018-01-24 2019-07-30 阿里巴巴集团控股有限公司 一种重加载方法、装置及服务器
CN110290547A (zh) * 2019-06-28 2019-09-27 深圳市元征科技股份有限公司 一种WiFi模块故障恢复方法、系统及电子设备和存储介质
CN111273923A (zh) * 2018-12-05 2020-06-12 华为技术有限公司 基于PCIe接口的FPGA升级方法
CN111309521A (zh) * 2020-01-19 2020-06-19 深圳市恒扬数据股份有限公司 Fpga重加载方法、fpga卡式设备和主机

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10216598B2 (en) * 2017-07-11 2019-02-26 Stratus Technologies Bermuda Ltd. Method for dirty-page tracking and full memory mirroring redundancy in a fault-tolerant server
CN110727528A (zh) * 2019-08-22 2020-01-24 深圳市元征科技股份有限公司 存储器故障恢复方法、装置、电子设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6742139B1 (en) * 2000-10-19 2004-05-25 International Business Machines Corporation Service processor reset/reload
CN101145986A (zh) * 2007-06-18 2008-03-19 中兴通讯股份有限公司 一种通讯系统中板间通信状态检测方法
CN110069366A (zh) * 2018-01-24 2019-07-30 阿里巴巴集团控股有限公司 一种重加载方法、装置及服务器
CN111273923A (zh) * 2018-12-05 2020-06-12 华为技术有限公司 基于PCIe接口的FPGA升级方法
CN110290547A (zh) * 2019-06-28 2019-09-27 深圳市元征科技股份有限公司 一种WiFi模块故障恢复方法、系统及电子设备和存储介质
CN111309521A (zh) * 2020-01-19 2020-06-19 深圳市恒扬数据股份有限公司 Fpga重加载方法、fpga卡式设备和主机

Also Published As

Publication number Publication date
CN111857303A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN111857303B (zh) 一种fpga复位方法、装置、系统和电子设备
US9122810B2 (en) System and method for providing input/output functionality to a processing node
US8904160B2 (en) Electronic device which automatically sets up multiple operating systems for a test system by generating an emptied boot record status and loading a target operating system according to the emptied boot record status
US10721309B2 (en) System and method for supporting data communication in a heterogeneous environment
CN104185836A (zh) 用于在系统改变之后验证计算设备的适当操作的方法和系统
RU2614569C2 (ru) Стойка с функцией автоматического восстановления и способ автоматического восстановления для этой стойки
WO2014015732A1 (zh) 一种终端能力描述信息的生成方法及系统
CN116521209B (zh) 操作系统的升级方法及装置、存储介质及电子设备
WO2023124328A1 (zh) 无线通信模组及其功能恢复方法、电子设备和存储介质
CN114817105A (zh) 设备枚举的方法、装置、计算机设备以及存储介质
WO2012094853A1 (zh) 终端软件的安装方法、装置和系统
KR102705465B1 (ko) 이상 처리 방법, 단말 기기 및 저장 매체
CN116881929B (zh) 安全防护方法、装置、电子设备以及基板控制器芯片
WO2024041283A1 (zh) 一种客户端升级方法、装置、终端设备及存储介质
CN112118567A (zh) 设备升级方法、电子设备和介质
CN113254062B (zh) 一种bmc参数配置及生效的方法、装置、设备和介质
CN112463446B (zh) 一种PCIe设备恢复方法、系统及电子设备和存储介质
US20180059640A1 (en) Techniques for event driven scheduling in a welding or cutting system
CN111158760B (zh) 一种板卡配置文件的加载方法、装置以及电子设备
CN111694587A (zh) 服务器pnor固件升级方法、装置、设备及存储介质
CN106445571B (zh) 主机板及开机的方法
CN112000381B (zh) 一种资源加载方法、装置、电子设备和介质
CN114238946B (zh) 设备管理方法、装置、电子设备及计算机可读存储介质
CN118227277A (zh) 芯片上操作的执行方法、装置、存储介质和电子设备
CN115694679A (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