CN117950346A - 硬件处理器***监测方法、装置、设备及存储介质 - Google Patents
硬件处理器***监测方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117950346A CN117950346A CN202311824669.8A CN202311824669A CN117950346A CN 117950346 A CN117950346 A CN 117950346A CN 202311824669 A CN202311824669 A CN 202311824669A CN 117950346 A CN117950346 A CN 117950346A
- Authority
- CN
- China
- Prior art keywords
- hardware processor
- processor system
- programmable device
- monitoring
- hardware
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 125
- 238000012544 monitoring process Methods 0.000 title claims abstract description 80
- 230000008569 process Effects 0.000 claims abstract description 73
- 230000015654 memory Effects 0.000 claims abstract description 43
- 230000004044 response Effects 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 15
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24215—Scada supervisory control and data acquisition
-
- 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)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种硬件处理器***监测方法、装置、设备及存储介质,包括:接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号确定硬件处理器***是否出现宕机,响应于硬件处理器***出现宕机,通过***芯片处理器的外部存储器接口对硬件处理器***进行数据读写,并存储硬件处理器***的开机日志,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,若监测到硬件处理器***的心跳信号,确定硬件处理器***完成开机。本发明通过***芯片处理器和可编程器件对硬件处理器***的并行监测,保证在HPS发生宕机时SOC处理器能够正常获取到宕机时刻的HPS日志,实现及时处理HPS的开机宕机问题。
Description
技术领域
本发明涉及硬件测试技术领域,特别是涉及一种硬件处理器***监测方法、装置、设备及存储介质
背景技术
硬件处理器***(Hard Processor System,HPS)和现场可编程门阵列(Field-Programmable Gate Array,FPGA)是嵌入式***常见的组件,HPS通常与FPGA相结合使用,可以集成在FPGA中,提供在FPGA上运行操作***和软件的能力,使FPGA可以与SOC处理器进行通信和数据交互。
然而,一旦硬件处理器***HPS发生故障宕机,硬件处理器***上的串口既没有输入也没有输出,则其他***无法直接进入FPGA的HPS***,也就无法查看硬件处理器***发生卡死时的日志记录内容,由于无法对宕机时刻HPS的状态进行分析处理,影响嵌入式***对硬件处理器***开机的功能性需求。
发明内容
有鉴于此,本发明旨在提出一种硬件处理器***监测方法、装置、设备及存储介质,解决硬件处理器***开机宕机时无法访问HPS,影响***功能的问题,实现及时对宕机的硬件处理器***监测处理,保证硬件处理器***开机。
依据本发明的第一方面,提供了一种硬件处理器***监测方法,应用于***芯片处理器,所述***芯片处理器与可编程器件通信连接,所述可编程器件上集成有硬件处理器***,所述方法包括:
接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机;
响应于所述硬件处理器***出现宕机,通过所述***芯片处理器的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志;
采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确定所述硬件处理器***完成开机。
可选地,所述接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机,包括:
判断第一预设时间内是否监测到所述可编程器件的上电标志信号;
在所述可编程器件上电的情况下,接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号;
获取所述开机完成标志信号的电平,根据电平高低确定所述硬件处理器***是否出现宕机。
可选地,所述响应于所述硬件处理器***出现宕机,通过所述***芯片处理器的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志,包括:
预先配置设备树,其中,所述设备树包括所述硬件处理器***和所述可编程器件的地址映射关系;
根据所述地址映射关系,对所述硬件处理器***和所述可编程器件进行并行访问;
响应于所述硬件处理器***出现宕机,将所述可编程器件的接口映射为接口文件,访问所述可编程器件的接口文件;
通过所述接口文件发送数据读取和写入指令至所述可编程器件,采用所述***芯片处理器的外部存储器接口对所述硬件处理器***的开机日志进行读写;
将获取的所述硬件处理器***的开机日志存储至所述***芯片处理器的存储区域,以使在所述存储区域查看所述硬件处理器***的开机日志。
可选地,所述采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确认所述硬件处理器***完成开机,包括:
采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,其中,所述看门狗进程包括定时器;
基于所述看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号;
若接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***完成开机。
可选地,所述基于所述看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号之后,还包括:
若未接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***开机失败,控制所述硬件处理器***下电并重新上电开机。
可选地,所述采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确认所述硬件处理器***完成开机之前,还包括:
预先在所述可编程器件中配置所述硬件处理器***对应的看门狗进程;
响应于所述可编程器件上电的复位信号,判断所述可编程器件上电时序是否正常;
若所述可编程器件上电时序正常,则启动所述硬件处理器***对应的看门狗进程。
可选地,所述响应于所述可编程器件上电的复位信号,判断所述可编程器件上电时序是否正常之后,还包括:
若所述可编程器件上电时序存在异常,控制所述可编程器件下电重新上电;
响应于所述可编程器件上电时序正常,将所述看门狗进程的定时器重置。
依据本发明的第二方面,提供了一种硬件处理器***监测装置,应用于***芯片处理器,所述***芯片处理器与可编程器件通信连接,所述可编程器件上集成有硬件处理器***,所述装置包括:
确定状态模块,用于接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机;
数据读写模块,用于响应于所述硬件处理器***出现宕机,通过所述***芯片的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志;
监测***模块,用于采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确定所述硬件处理器***完成开机。
依据本发明的又一方面,还提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上所述的硬件处理器***监测方法。
依据本发明的又一方面,还提供一种可读存储介质,所述可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的硬件处理器***监测方法的步骤。
本发明实施例提供的硬件处理器***监测方法,通过接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号确定硬件处理器***是否出现宕机,响应于硬件处理器***出现宕机,通过***芯片处理器的外部存储器接口对硬件处理器***进行数据读写,并存储硬件处理器***的开机日志,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,若监测到硬件处理器***的心跳信号,确定硬件处理器***完成开机。本发明采用***芯片处理器对硬件处理器***的开机状态进行判断,在硬件处理器***宕机的情况下通过***芯片处理器的外部存储器接口对硬件处理器***数据读写,实现在硬件处理器***宕机时能够在***芯片处理器中查看硬件处理器***的开机日志等信息,并利用看门狗进程实时监测硬件处理器***,以保证监测硬件处理器***完成开机,通过***芯片SOC处理器和可编程器件对硬件处理器***HPS的并行监测,保证在HPS发生宕机卡死时SOC处理器正常获取到宕机时刻的HPS日志,实现及时处理HPS的开机宕机问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例提供的一种硬件处理器***监测方法的步骤流程图;
图2是图1中本发明实施例提供的硬件处理器***监测方法中步骤101的流程图;
图3是图1中本发明实施例提供的硬件处理器***监测方法中步骤102的流程图;
图4是图1中本发明实施例提供的硬件处理器***监测方法中步骤103的流程图;
图5是本发明实施例提供的另一种硬件处理器***监测方法的步骤流程图;
图6是本发明实施例提供的硬件处理器***监测方法的应用场景示意图一;
图7是本发明实施例提供的硬件处理器***监测方法的应用场景示意图二;
图8是本发明实施例提供的硬件处理器***监测方法的信号示意图;
图9是本发明实施例提供的一种硬件处理器***监测装置的结构示意图;
图10是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
参照图1,示出了本发明实施例提供的硬件处理器***监测方法的步骤流程图,应用于***芯片处理器,***芯片处理器与可编程器件通信连接,可编程器件上集成有硬件处理器***,所述方法可以包括:
步骤101,接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号确定硬件处理器***是否出现宕机。
本发明实施例中,为解决可编程器件中硬件处理器***发生宕机时无法访问到硬件处理器***的日志信息,无法处理硬件处理器***的宕机故障,从而影响硬件处理器***开机的问题,本实施例采用***芯片处理器,***芯片处理器与可编程器件通信连接,可编程器件上集成有硬件处理器***,采用***芯片处理器SOC处理器对可编程器件中的硬件处理器***进行数据读写和开机监测,保证硬件处理器***发生宕机嵌入式***无法直接进入时,将HPS的日志信息读写复制SOC处理器进行查看,实现对HPS开机宕机的有效监测和及时处理。
需要说明的是,参照图6至图7,示出了本发明实施例提供的硬件处理器***监测方法的应用场景示意图,嵌入式***中集成的SOC***芯片处理器和可编程器件之间通信,HPS是在FPGA中集成的硬件处理器***,通常是ARM Cortex-A系列的处理器核心,在嵌入式***中使用SOC和FPGA实现硬件加速和并行处理的功能,SOC***芯片处理器和可编辑器件能够并行访问硬件处理器***,其中,SOC处理器的外部存储器接口能够实现在linux平台下SOC处理器与FPGA的HPS***进行通信,进一步实现HPS发生宕机时对其***进行实时监控处理。
具体的,由于HPS的功能强大,当HPS发生宕机时无法进入FPGA***,也无法使用相应的软件工具进行操作,则HPS失去其功能性需求,本实施例采用***芯片处理器接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号确定硬件处理器***是否出现宕机,可编程器件在完成***上电后,***芯片处理器能够接收到硬件处理器***通过可编程器件发送的开机完成标志信号,表明硬件处理器***完成开机加载,因此,若***芯片处理器未接收到开机完成标志信号,表明硬件处理器***开机失败,若***芯片处理器接收到开机完成标志信号,则根据开机完成标志信号的电平值,判断并确定硬件处理器***是否出现开机宕机的问题,以便进一步处理硬件处理器***的宕机问题。
步骤102,响应于硬件处理器***出现宕机,通过***芯片处理器的外部存储器接口对硬件处理器***进行数据读写,并存储硬件处理器***的开机日志。
本发明实施例中响应于硬件处理器***出现宕机,***芯片处理器通过其外部存储器接口,对硬件处理器***进行数据读写,得到硬件处理器***的开机日志并存储至***芯片处理器。
需要说明的是,SOC处理器的外部存储器接口EMIF与FPGA芯片的IO引脚电气连接,FPGA芯片包括EMIF控制模块和DBRAM分布式块随机存储器,EMIF控制模块用于进行SOC处理器与FPGA芯片中的分布式块随机存储器模块的序匹配,分布式块随机存储器用于缓存FPGA和SOC处理器的交换数据。此外,SOC处理器的外部存储器接口的引脚包括输入引脚、片选信号引脚、写数据信号引脚、读数据信号引脚、读写使能信号引脚等,SOC处理器通过控制外部存储器接口实现异步数据读写,通过SOC处理器对HPS的读写操作,打断HPS下正在运行的脚本以及人为修改无法打断的执行命令,有利于更好操作HPS的操作***。
具体的,外部存储器接口用于***芯片处理器与外部存储器设备之间的数据传输和操作,SOC处理器根据读取和写入命令,通过EMIF接口和高速总线协议与外部存储器设备进行快速的读写操作。本实施例***芯片处理器响应于硬件处理器***出现宕机,将可编程器件的接口映射为接口文件,访问可编程器件的接口文件,通过接口文件发送数据读取和写入指令至可编程器件,采用外部存储器接口对硬件处理器***的开机日志进行读写,将获取的硬件处理器***的开机日志存储至***芯片处理器的存储区域,以使在存储区域查看硬件处理器***的开机日志。
步骤103,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,若监测到硬件处理器***的心跳信号,确定硬件处理器***完成开机。
本发明实施例中***芯片处理器采用可编程器件上预先配置的看门狗进程监测硬件处理器***,其中,看门狗进程预先配置在可编程器件中,用于监视HPS的运行状况并在HPS停滞或故障时进行重启。需要说明的是,看门狗进程预先在硬件设计及软件层面进行配置,定期生成一个重置信号以保持***处于正常运行状态,针对HPS的看门狗进程的检测设置需要通过相应的驱动程序或操作***接口来进行配置,包括设置看门狗进程的计时周期、启用和禁用看门狗以及执行重启操作等,本实施例可以使用Linux***的ioctl函数在用户空间配置HPS看门狗定时器,也可以使用设备树(device tree)对HPS看门狗进程进行配置,可以根据实际情况进行调整,另外,在实际的应用中还需要考虑错误处理、定时器复位、异常情况下的重启等问题进行配置,在此不作一一赘述。
具体的,在嵌入式***中,利用看门狗进程的使能信号控制看门狗进程的应用,常用于***监控、***测试以及软件复位等应用场景,本实施例***芯片处理器采用可编程器件上预先配置的看门狗进程监测硬件处理器***,若监测到硬件处理器***的心跳信号,确定硬件处理器***完成开机,其中,硬件处理器***的心跳信号用于表征硬件处理器***的开机运行是否正常,若***芯片处理器接收到心跳信号,则确认HPS完成开机,若***芯片处理器未接收到心跳信号,则确认HPS未完成开机,可以控制***进行下电,并重新开始上电加载。
本发明实施例提供的硬件处理器***监测方法,采用***芯片处理器对硬件处理器***的开机状态进行判断,在硬件处理器***宕机的情况下通过***芯片处理器的外部存储器接口对硬件处理器***数据读写,实现在硬件处理器***宕机时能够在***芯片处理器中查看硬件处理器***的开机日志等信息,并利用看门狗进程实时监测硬件处理器***,以保证监测硬件处理器***完成开机,通过***芯片SOC处理器和可编程器件对硬件处理器***HPS的并行监测,保证在HPS发生宕机卡死时SOC处理器正常获取到宕机时刻的HPS日志,实现及时处理HPS的开机宕机问题。
进一步的,参照图2,示出了图1提供的一种硬件处理器***监测方法中步骤101的流程图,该方法与本发明的第一实施例提供的硬件处理器***监测方法基本相同,步骤101可以包括:
步骤201,判断第一预设时间内是否监测到可编程器件的上电标志信号。
本发明实施例中由于HPS通过FPGA实现与SOC处理器的通信,因此,SOC处理器在第一预设时间内判断是否接收到FPGA完成***上电标志信号,在可编程器件的上电完成的情况下,才能得到HPS经由FPGA发给SOC的开机完成标志信号,其中,上电标志信号用于表明FPGA的上电情况,开机完成标志信号可以通过标志位显示HPS的开机状态,本实施例中对第一预设时间的具体数值不作具体限定,可以根据实际监测需求预先设定,在此不作具体限定。
步骤202,在可编程器件上电的情况下,接收硬件处理器***通过可编程器件发送的开机完成标志信号。
本发明实施例中,在可编程器件上电的情况下,***芯片处理器根据是否接收硬件处理器***通过可编程器件发送的开机完成标志信号确定硬件处理器***状态,具体的,若接收到开机完成标志信号,则确认硬件处理器***完成开机;若未接收到开机完成标志信号,则硬件处理器***未完成开机。
步骤203,获取开机完成标志信号的电平,根据电平高低确定硬件处理器***是否出现宕机。
本发明实施例中获取开机完成标志信号的电平,根据电平高低确定硬件处理器***是否出现宕机,实现根据开机完成标志信号确认硬件处理器***未完成开机,则表明硬件处理器***出现开机卡死宕机,具体的,参照图8所示本发明实施例提供的信号电平的示意图,写数据信号EM_WE为低有效、读数据信号引脚EM_OE也为低有效、读写使能信号引脚EM_R/W中高电平为读、低电平为写,根据电平高低确定硬件处理器***是否出现宕机,当电平有效,则表明硬件处理器***正常开机,当电平无效,则表明硬件处理器***出现宕机。
本发明实施例通过在可编程器件上电的情况下,接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号的电平高低确定硬件处理器***是否出现宕机,以便快速、准确锁定硬件处理器***的宕机状态,从而及时对硬件处理器***的开机宕机问题进行处理。
进一步的,参照图3,示出了图1提供的一种硬件处理器***监测方法中步骤102的流程图,该方法与本发明的第一实施例提供的硬件处理器***监测方法基本相同,步骤102可以包括:
步骤301,预先配置设备树,其中,设备树包括硬件处理器***和可编程器件的地址映射关系。
具体的,Linux***中访问SOC处理器和FPGA中的HPS可以采取设备树描述硬件的结构数据,因此预先配置设备树,设备树是Linux内核中用于描述硬件设备信息和布局的一种数据结构,通过设备树的配置,可以描述硬件处理器***与FPGA的连接以及相应的地址映射关系,SOC处理器可以通过设备树的配置对HPS与FPGA的并行访问。
需要说明的是,通过设备树配置可以定义设备的地址、中断、时钟和其他相关信息,使SOC和FPGA进行通信,通过SOC与FPGA之间的地址映射关系来实现驱动程序的开发,能够通过驱动程序来管理和访问SOC和FPGA中的设备。此外,在linux***中也可以实现用户空间编程,在应用程序中直接访问硬件处理器***和FPGA的寄存器或内存映射空间以实现并行访问,通过后台的配置,实现对地址映射和访问权限进行详细的管理和配置,以确保并行访问的正确性和安全性。
步骤302,根据地址映射关系,对硬件处理器***和可编程器件进行并行访问。
步骤303,响应于硬件处理器***出现宕机,将可编程器件的接口映射为接口文件,访问可编程器件的接口文件。
具体的,SOC处理器响应于硬件处理器***出现宕机,将可编程器件的接口映射为接口文件,访问可编程器件的接口文件,具体可以将FPGA暴露的接口或设备映射为特定的文件,通过读写这些文件来实现与FPGA的数据交换和控制。
步骤304,通过接口文件发送数据读取和写入指令至可编程器件,采用***芯片处理器的外部存储器接口对硬件处理器***的开机日志进行读写。
本实施例中***芯片处理器通过接口文件发送数据读取和写入指令至可编程器件,并采用外部存储器接口对硬件处理器***的开机日志进行读写,以获取硬件处理器***的开机日志。
步骤305,将获取的硬件处理器***的开机日志存储至***芯片处理器的存储区域,以使在存储区域查看硬件处理器***的开机日志。
本发明实施例中***芯片处理器采用外部存储器接口对硬件处理器***的开机日志进行读写,实现在硬件处理器***宕机时能够在***芯片处理器中查看硬件处理器***的开机日志等信息,通过***芯片SOC处理器和可编程器件对硬件处理器***HPS的并行监测,保证在HPS发生宕机卡死时SOC处理器正常获取到宕机时刻的HPS日志,以便及时处理HPS的开机宕机问题。
进一步的,参照图4,示出了图1提供的一种硬件处理器***监测方法中步骤103的流程图,该方法与本发明的第一实施例提供的硬件处理器***监测方法基本相同,步骤103可以包括:
步骤401,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,其中,看门狗进程包括定时器。
步骤402,基于看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号
本实施例采用可编程器件上预先配置的看门狗进程,监测间隔第二预设时间是否接收到硬件处理器***的心跳信号,其中,看门狗进程的定时器能够控制看门狗进程的监测周期,当触发超时时,看门狗进程重新计时监测,本实施例中对第二预设时间的具体数值不作具体限定,可以根据实际监测需求预先设定。
步骤403,若接收到硬件处理器***的心跳信号,则确认硬件处理器***完成开机。
本发明实施例上述步骤中,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,需要说明的是,获取操作***的应用场景,可以根据应用场景判断是否关闭看门狗,若关闭看门狗,则HPS操作***继续运行;若开启关门狗,则监测是否接收来自HPS操作***的心跳信号。
本发明实施例中采用可编程器件上预先配置的看门狗进程,监测间隔时间内是否接收到硬件处理器***的心跳信号,以保证监测硬件处理器***完成开机,通过***芯片SOC处理器和可编程器件对硬件处理器***HPS的并行监测,保证在HPS发生宕机卡死时SOC处理器正常获取到宕机时刻的HPS日志,实现及时处理HPS的开机宕机问题。
具体的,步骤402基于所述看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号之后,还包括:
若未接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***开机失败,控制所述硬件处理器***下电并重新上电开机。
需要说明的是,通过看门狗进程的定时器,每隔预设时间判断***芯片处理器是否接收到心跳信号,若接收到心跳信号,则确认硬件处理器***完成开机,若未接收到心跳信号,则硬件处理器***未完成开机,控制硬件处理器***进行下电,并重新开始上电加载。
参照图5,示出了本发明实施例提供的另一种硬件处理器***监测方法的步骤流程图,该方法与本发明的第一实施例提供的硬件处理器***监测方法基本相同,区别在于,所述方法还可以包括:
步骤104,预先在可编程器件中配置硬件处理器***对应的看门狗进程。
具体的,预先在可编程器件中配置硬件处理器***对应的看门狗进程,本实施例可以使用Linux***的ioctl函数在用户空间配置HPS看门狗定时器,也可以使用设备树对HPS看门狗进程进行配置,可以根据实际情况进行调整,在实际的应用中还可以考虑错误处理、定时器复位、异常情况下的重启等问题进行配置。
步骤105,响应于可编程器件上电的复位信号,判断可编程器件上电时序是否正常。
本发明实施例中,对于可编程器件,当板卡***触发宕机时,可以依据复位信号触发WTD并使能其功能,因此,响应于可编程器件上电的复位信号,依据上电的复位信号,可以直接判断可编程器件上电时序是否正常。
步骤106,若可编程器件上电时序正常,则启动硬件处理器***对应的看门狗进程。
步骤101,接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号确定硬件处理器***是否出现宕机。
步骤102,响应于硬件处理器***出现宕机,通过***芯片处理器的外部存储器接口对硬件处理器***进行数据读写,并存储硬件处理器***的开机日志。
步骤103,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,若监测到硬件处理器***的心跳信号,确定硬件处理器***完成开机。
上述步骤101至步骤103参照前序所述,在此不再赘述。
本发明实施例相较于现有技术,在实现本发明第一实施例有益效果的基础上,即利用看门狗进程实时监测硬件处理器***,保证在HPS发生宕机卡死时SOC处理器正常获取到宕机时刻的HPS日志,实现及时处理HPS的开机宕机问题,通过预先在可编程器件中配置硬件处理器***对应的看门狗进程,依据可编程器件上电时序确定启动硬件处理器***对应的看门狗进程,避免可编程器件等硬件设备问题影响对硬件处理器***的监测效果,保证本发明实施例对硬件处理器***的监测准确度,进一步提高本发明的实用性。
具体的,步骤105响应于所述可编程器件上电的复位信号,判断所述可编程器件上电时序是否正常之后,还包括:
若所述可编程器件上电时序存在异常,控制所述可编程器件下电重新上电;
响应于所述可编程器件上电时序正常,将所述看门狗进程的定时器重置。
需要说明的是,上述步骤中若可编程器件上电时序存在异常,则控制可编程器件下电重新上电,直至可编程器件上电时序正常后将看门狗进程的定时器重置,避免可编程器件等硬件设备问题影响对硬件处理器***的监测效果,确保看门狗进程对硬件处理器***的准确监测。
参照图9,示出了本发明实施例提供的一种硬件处理器***监测装置的结构示意图,应用于***芯片处理器,所述***芯片处理器与可编程器件通信连接,所述可编程器件上集成有硬件处理器***,所述装置包括:
确定状态模块501,用于接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机;
数据读写模块502,用于响应于所述硬件处理器***出现宕机,通过所述***芯片的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志;
监测***模块503,用于采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确定所述硬件处理器***完成开机。
进一步的,所述确定状态模块501包括:
判断子模块,用于判断第一预设时间内是否监测到所述可编程器件的上电标志信号;
接收子模块,用于在所述可编程器件上电的情况下,接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号;
第一确定子模块,用于获取所述开机完成标志信号的电平,根据电平高低确定所述硬件处理器***是否出现宕机。
进一步的,所述数据读写模块502包括:
配置子模块,用于预先配置设备树,其中,所述设备树包括所述硬件处理器***和所述可编程器件的地址映射关系;
第一访问子模块,用于根据所述地址映射关系,对所述硬件处理器***和所述可编程器件进行并行访问;
第二访问子模块,用于响应于所述硬件处理器***出现宕机,将所述可编程器件的接口映射为接口文件,访问所述可编程器件的接口文件;
读写子模块,用于通过所述接口文件发送数据读取和写入指令至所述可编程器件,采用所述***芯片处理器的外部存储器接口对所述硬件处理器***的开机日志进行读写;
存储子模块,用于将获取的所述硬件处理器***的开机日志存储至所述***芯片处理器的存储区域,以使在所述存储区域查看所述硬件处理器***的开机日志。
进一步的,所述监测***模块503包括:
第一监测子模块,用于采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,其中,所述看门狗进程包括定时器;
第二监测子模块,用于基于所述看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号;
第二确定子模块,用于若接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***完成开机。
进一步的,所述监测***模块503还包括:
控制子模块,用于若未接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***开机失败,控制所述硬件处理器***下电并重新上电开机。
进一步的,所述装置还包括:
配置监测进程模块,用于预先在所述可编程器件中配置所述硬件处理器***对应的看门狗进程;
判断上电模块,用于响应于所述可编程器件上电的复位信号,判断所述可编程器件上电时序是否正常;
进程启动模块,用于若所述可编程器件上电时序正常,则启动所述硬件处理器***对应的看门狗进程。
进一步的,所述装置还包括:
控制上下电模块,用于若所述可编程器件上电时序存在异常,控制所述可编程器件下电重新上电;
进程控制模块,用于响应于所述可编程器件上电时序正常,将所述看门狗进程的定时器重置。
本发明实施例提供的硬件处理器***监测装置,通过接收硬件处理器***通过可编程器件发送的开机完成标志信号,根据开机完成标志信号确定硬件处理器***是否出现宕机,响应于硬件处理器***出现宕机,通过***芯片处理器的外部存储器接口对硬件处理器***进行数据读写,并存储硬件处理器***的开机日志,采用可编程器件上预先配置的看门狗进程监测硬件处理器***,若监测到硬件处理器***的心跳信号,确定硬件处理器***完成开机。本发明采用***芯片处理器对硬件处理器***的开机状态进行判断,在硬件处理器***宕机的情况下通过***芯片处理器的外部存储器接口对硬件处理器***数据读写,实现在硬件处理器***宕机时能够在***芯片处理器中查看硬件处理器***的开机日志等信息,并利用看门狗进程实时监测硬件处理器***,以保证监测硬件处理器***完成开机,通过***芯片SOC处理器和可编程器件对硬件处理器***HPS的并行监测,保证在HPS发生宕机卡死时SOC处理器正常获取到宕机时刻的HPS日志,实现及时处理HPS的开机宕机问题。
参照图10,本发明实施例还提供了一种电子设备,如图10所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:
接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机;
响应于所述硬件处理器***出现宕机,通过所述***芯片处理器的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志;
采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确定所述硬件处理器***完成开机。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的硬件处理器***监测方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种硬件处理器***监测方法,其特征在于,应用于***芯片处理器,所述***芯片处理器与可编程器件通信连接,所述可编程器件上集成有硬件处理器***,所述方法包括:
接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机;
响应于所述硬件处理器***出现宕机,通过所述***芯片处理器的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志;
采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确定所述硬件处理器***完成开机。
2.根据权利要求1所述的方法,其特征在于,所述接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机,包括:
判断第一预设时间内是否监测到所述可编程器件的上电标志信号;
在所述可编程器件上电的情况下,接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号;
获取所述开机完成标志信号的电平,根据电平高低确定所述硬件处理器***是否出现宕机。
3.根据权利要求1所述的方法,其特征在于,所述响应于所述硬件处理器***出现宕机,通过所述***芯片处理器的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志,包括:
预先配置设备树,其中,所述设备树包括所述硬件处理器***和所述可编程器件的地址映射关系;
根据所述地址映射关系,对所述硬件处理器***和所述可编程器件进行并行访问;
响应于所述硬件处理器***出现宕机,将所述可编程器件的接口映射为接口文件,访问所述可编程器件的接口文件;
通过所述接口文件发送数据读取和写入指令至所述可编程器件,采用所述***芯片处理器的外部存储器接口对所述硬件处理器***的开机日志进行读写;
将获取的所述硬件处理器***的开机日志存储至所述***芯片处理器的存储区域,以使在所述存储区域查看所述硬件处理器***的开机日志。
4.根据权利要求1所述的方法,其特征在于,所述采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确认所述硬件处理器***完成开机,包括:
采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,其中,所述看门狗进程包括定时器;
基于所述看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号;
若接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***完成开机。
5.根据权利要求4所述的方法,其特征在于,所述基于所述看门狗进程的定时器,监测间隔第二预设时间是否接收到所述硬件处理器***的心跳信号之后,还包括:
若未接收到所述硬件处理器***的心跳信号,则确认所述硬件处理器***开机失败,控制所述硬件处理器***下电并重新上电开机。
6.根据权利要求1所述的方法,其特征在于,所述采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确认所述硬件处理器***完成开机之前,还包括:
预先在所述可编程器件中配置所述硬件处理器***对应的看门狗进程;
响应于所述可编程器件上电的复位信号,判断所述可编程器件上电时序是否正常;
若所述可编程器件上电时序正常,则启动所述硬件处理器***对应的看门狗进程。
7.根据权利要求6所述的方法,其特征在于,所述响应于所述可编程器件上电的复位信号,判断所述可编程器件上电时序是否正常之后,还包括:
若所述可编程器件上电时序存在异常,控制所述可编程器件下电重新上电;
响应于所述可编程器件上电时序正常,将所述看门狗进程的定时器重置。
8.一种硬件处理器***监测装置,其特征在于,应用于***芯片处理器,所述***芯片处理器与可编程器件通信连接,所述可编程器件上集成有硬件处理器***,所述装置包括:
确定状态模块,用于接收所述硬件处理器***通过所述可编程器件发送的开机完成标志信号,根据所述开机完成标志信号确定所述硬件处理器***是否出现宕机;
数据读写模块,用于响应于所述硬件处理器***出现宕机,通过所述***芯片的外部存储器接口对所述硬件处理器***进行数据读写,并存储所述硬件处理器***的开机日志;
监测***模块,用于采用所述可编程器件上预先配置的看门狗进程监测所述硬件处理器***,若监测到所述硬件处理器***的心跳信号,确定所述硬件处理器***完成开机。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的硬件处理器***监测方法。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的硬件处理器***监测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311824669.8A CN117950346A (zh) | 2023-12-27 | 2023-12-27 | 硬件处理器***监测方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311824669.8A CN117950346A (zh) | 2023-12-27 | 2023-12-27 | 硬件处理器***监测方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117950346A true CN117950346A (zh) | 2024-04-30 |
Family
ID=90801020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311824669.8A Pending CN117950346A (zh) | 2023-12-27 | 2023-12-27 | 硬件处理器***监测方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117950346A (zh) |
-
2023
- 2023-12-27 CN CN202311824669.8A patent/CN117950346A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5540155B2 (ja) | プラットフォーム独立メモリ論理の提供 | |
TWI470420B (zh) | 除錯方法及電腦系統 | |
US8935509B2 (en) | Method for controlling BMC having customized SDR | |
US20140047224A1 (en) | Method of flashing bios using service processor and computer system using the same | |
US20200250313A1 (en) | Bios recovery and update | |
US10606677B2 (en) | Method of retrieving debugging data in UEFI and computer system thereof | |
US9405717B2 (en) | Memory device debugging on host platforms | |
CN113254286B (zh) | 一种服务器的日志输出方法、***及相关装置 | |
CN114003445B (zh) | Bmc的i2c监控功能测试方法、***、终端及存储介质 | |
CN112231005A (zh) | 一种基于uboot管理fpga版本的方法 | |
JP2019204488A (ja) | リモートユーティリティによるファームウェアの更新 | |
CN114721493B (zh) | 芯片启动方法、计算机设备及可读存储介质 | |
US10922150B2 (en) | Deep hardware access and policy engine | |
CN115756984A (zh) | 内存测试方法、装置、设备及存储介质 | |
CN117707884A (zh) | 一种监控电源管理芯片的方法、***、设备和介质 | |
US11354259B1 (en) | Computer system configurations based on accessing data elements presented by baseboard management controllers | |
US11586536B1 (en) | Remote configuration of multi-mode DIMMs through a baseboard management controller | |
CN117950346A (zh) | 硬件处理器***监测方法、装置、设备及存储介质 | |
WO2022199622A1 (zh) | 一种电子设备的启动程序的运行方法和电子设备 | |
US10509656B2 (en) | Techniques of providing policy options to enable and disable system components | |
US11204704B1 (en) | Updating multi-mode DIMM inventory data maintained by a baseboard management controller | |
US11169740B1 (en) | Simultaneous initiation of multiple commands for configuring multi-mode DIMMS using a BMC | |
US10922023B2 (en) | Method for accessing code SRAM and electronic device | |
US12045478B1 (en) | Remote configuration of multi-mode DIMMs through firmware | |
CN107451035B (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 |