一种单板系统的运行信息获取方法和装置的制造方法

xiaoxiao2020-10-23  21

一种单板系统的运行信息获取方法和装置的制造方法
【技术领域】
[0001]本发明涉及电学技术领域,特别是涉及一种单板系统的运行信息获取方法和装置。
【背景技术】
[0002]目前,当单板系统处于初期开发过程时,一般都会使用调试手段,对开发过程中系统运行的问题进行分析定位,比如开发人员通过LINUX系统的内核调试(Kernel-Debug,KDB)功能中断当前系统,查看并分析当前系统的运行信息,从而对出现的问题进行快速定位,提尚开发效率。
[0003]另外,为了能够在软件运行故障时修复故障,电路系统一般都会设置看门狗定时器(Watchdog Timer, WDT),看门狗定时器是一种硬件定时器,通过在超时时触发非屏蔽中断(Nonmaskable interrupt,NMI)复位CPU,达到复位电路系统以修复故障的目的。
[0004]具体地,如果电路系统正常运行,则在WDT超时之前CPU会向看门狗定时器发送喂狗信号,触发看门狗定时器重新计时,因此,如果电路系统正常运行,就能够避免看门狗定时器超时,从而避免复位电路系统,反之,如果电路系统出现故障、或者处于中断模式,无法发送喂狗信号,则看门狗定时器将超时从而复位电路系统。
[0005]因此,当单板系统处于初期开发过程时,如果当前开发人员正在通过KDB功能中断单板系统,从而查看单板系统的当前运行信息,由于单板系统处于中断模式时无法发送喂狗信号,因此看门狗定时器将超时从而复位系统,导致系统运行信息全部被清除,如果系统复位时通过KDB还没有获取足够的系统运行信息,将难以定位问题。
[0006]因此,在单板系统的开发过程中,为了能够充分的查看问题现场,通常会关闭看门狗,这样在出现系统故障时,能够通过中断进入KDB模式,查看系统运行的现场,避免由于看门狗超时复位系统影响系统运行信息的获取,从而能够获取足够的系统运行信息,方便问题的定位。
[0007]然而,在某些情况下,需要关闭可屏蔽的中断,避免系统在运行过程中被中断,在这种情况下,如果出现故障,导致无法使用KDB功能来查看系统运行信息,由于此时看门狗处于关闭状态,从而无法触发看门狗产生非屏蔽中断,导致无法获取CPU运行现场的寄存器值等运行信息。最终只能通过电源开关下电设备,重启系统,加载调试版本复现问题。在问题难以复现、或者复现周期长、或者组网和操作复杂等情况下,问题复现将非常困难,导致定位问题变得异常困难。

【发明内容】

[0008]有鉴于此,本发明提出了一种单板系统的运行信息获取方法和装置,能够在单板系统的开发过程中方便问题的定位。
[0009]本发明提出的技术方案是:
[0010]一种单板系统的运行信息获取方法,该方法包括:
[0011]接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件;
[0012]在所述持续时间满足预定条件时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号;
[0013]所述CPU在接收到用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。
[0014]一种单板系统的运行信息获取装置,该装置包括计时模块和非屏蔽中断触发信号输出模块;
[0015]所述计时模块,用于接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件;
[0016]所述非屏蔽中断触发信号输出模块,用于在所述持续时间满足预定条件时,向所述单板系统上的CPU输出非屏蔽中断用于触发非屏蔽中断的信号,使得所述CPU在接收到所述用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。
[0017]由上述技术方案可见,本发明实施例中,通过检测手动复位按键的触发信号的持续时间,在所述持续时间达到预定条件时,不复位系统,而向单板系统上的CPU输出用于触发非屏蔽中断的信号,由于所述CPU能够在接收到所述用于触发非屏蔽中断的信号时,输出所述CPU的运行信息,因此,使得通过单板系统上的手动复位按键,可以手动触发产生看门狗定时器超时时产生的用于触发非屏蔽中断的信号,因此,开发人员可以根据需要手动触发产生所述用于触发非屏蔽中断的信号,使得单板系统的CPU响应所述用于触发非屏蔽中断的信号而产生非屏蔽中断,输出运行信息,从而便于定位问题。
【附图说明】
[0018]图1是本发明实施例提供的单板系统的运行信息获取方法流程图。
[0019]图2是本发明实施例提供的运行信息获取装置的第一结构示意图。
[0020]图3是本发明实施例提供的运行信息获取装置的第二结构示意图。
[0021]图4是本发明实施例提供的基于CPLD实现的运行信息获取装置的原理示意图。
[0022]图5是本发明实施例提供的在看门狗定时器启动时看门狗定时器触发多核CPU的两个以上的核输出运行信息的流程图。
【具体实施方式】
[0023]本发明提供的实施例中,将涉及以下技术术语,下面分别给予解释:
[0024]看门狗定时器,是一种硬件定时器,监控处理器所运行的软件是否产生错误时,从而在处理器所运行的软件产生错误时重启系统。
[0025]设备检查中断输入信号(Machinecheck input signal asserted,MCP),通常是在CPU运行故障时触发该MCP信号,使得所述CPU根据该MCP信号进入非屏蔽中断模式,换言之,该MCP信号用于触发CPU产生非屏蔽中断。
[0026]非屏蔽中断,不受中断标志位影响的中断。
[0027]图1是本发明实施例提供的单板系统的运行信息获取方法流程图。
[0028]如图1所示,该流程包括:
[0029]步骤101,接收手动复位按键的触发信号,记录所述触发信号的持续时间。
[0030]步骤102,判断所述持续时间是否满足预定条件,如果是,执行步骤103,否则,执行步骤105。
[0031]步骤103,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号。
[0032]步骤104,所述CPU在接收到所述用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息,结束本流程。
[0033]步骤105,复位单板系统,结束本流程。
[0034]可见,图1所示方法中,通过检测手动复位按键的触发信号的持续时间,在所述持续时间达到预定条件时,不复位系统,而是向单板系统上的CPU输出用于触发非屏蔽中断的信号,使得通过单板系统上的手动复位按键,可以触发产生用于触发非屏蔽中断的信号,因此,开发人员可以根据需要手动产生用于触发非屏蔽中断的信号,使得单板系统的CPU产生非屏蔽中断,输出运行信息,从而便于定位问题。
[0035]目前,一般设备只要接收到单板系统上的手动复位信号,所述单板系统就会被复位,本发明实施例中,单板系统在接收到诸如按下等手动复位按键的触发信号以后,确定所述触发信号的持续时间,判断所述触发信号的持续时间是否满足预定 条件,只有在所述持续时间不满足预定条件时才重启单板系统,如果所述持续时间满足预定条件,则向CPU输出用于触发非屏蔽中断的信号,使得CPU能够产生非屏蔽中断,输出当前的运行信息。
[0036]其中,为了不改变用户对手动复位按键的使用体验,优选地,可以判断手动复位按键的按下时长是否达到第一预设时长,比如是否大于或等于4s,如果达到第一预设时长,则向CPU输出用于触发非屏蔽中断的信号,否则,重启所述单板系统。
[0037]另外,当单板系统上的CPU是多核CPU时,如果单板系统出现故障,可能需要查看两个以上的核的运行信息,从而定位问题,比如,当有两个以上的核都运行控制程序时,需要这些运行控制程序的核(简称控制核)在单板系统出现故障时输出运行信息,从而方便问题的定位,因此,本发明实施例提出,当通过手动复位按键控制输出用于触发非屏蔽中断的信号时,如果有单板系统上的CPU是多核CPU,则可以向该CPU的两个以上的核输出用于触发非屏蔽中断的信号,通过向两个以上的核输出用于触发非屏蔽中断的信号,可以使得两个以上的核输出各自的运行信息,从而获取更多的运行信息,使得问题的定位更加准确。
[0038]进一步,在向多核CPU的两个以上的核输出用于触发非屏蔽中断的信号时,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,使得每个接收到用于触发非屏蔽中断的信号的核都有足够的时间输出自身的运行信息,从而避免不同的CPU输出的运行信息相互混淆,难以区分出每个核的运行信息,导致输出的运行信息不可用。
[0039]其中,关于如何确定每个核需要多长的时间输出自身的运行信息,通常根据需要输出的信息量、以及信息的输出速度来确定,或者,由于调试阶段对于故障恢复时间没有过于严格的要求,也可以根据经验设置每个核输出自身运行信息所需的时间,比如设置为2秒钟、或者更长一点的时间。
[0040]在通过手动复位按键触发CPU产生非屏蔽中断时,如果需要在CPU输出运行信息以后,复位单板系统,则可以通过再次触发所述手动复位按键,使得手动复位按键的触发信号的持续时间不满足触发CPU产生非屏蔽中断的预定条件,比如,所述持续时间小于预定时长,触发单板系统的复位芯片输出复位信号,从而复位单板系统。比如,当触发CPU产生非屏蔽中断的预定条件是手动复位按键的触发信号的持续时间达到预定时长时,对于通过手动复位按键触发单核CPU产生非屏蔽中断的情况,在所述单核CPU输出运行信息后,触发手动复位按键并使其触发信号的持续时间小于所述预定时长,从而复位单板系统,对于通过手动复位按键触发多核CPU产生非屏蔽中断的情况,在多核CPU中所有收到用于触发非屏蔽中断的信号的核都输出运行信息后,触发手动复位按键并使其触发信号的持续时间小于所述预定时长,从而复位所述单板系统。
[0041]进一步,上述向多核CPU的两个以上的核输出用于触发非屏蔽中断的信号的方法,也可以应用在通过看门狗定时器触发CPU产生非屏蔽中断的场景中,具体地,本发明实施例提出,可以对看门狗定时器进行改造,使得看门狗定时器在预定时长内没有收到喂狗信号而产生狗叫信号时,能够触发多核CPU的两个以上的核输出各自的运行信息,且输出的运行信息相互不会混淆。
[0042]具体地,当开启看门狗功能时,判断没有收到喂狗信号的时间是否达到第三预定时长,如果是,向单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,使得每个收到用于触发非屏蔽中断的信号的核都有足够的时间输出自身的运行信息,并且,从没有收到喂狗信号的时间达到第三预定时长起,再延时第四预定时长,使得在该再延时的第四预定时长内,所有收到用于触发非屏蔽中断的信号的核都拥有足够的时间输出运行信息,在该再延时的第四预定时长到达时,复位所述单板系统。
[0043]针对上述方法,本发明实施例还公开了一种单板系统,该单板系统中包括运行信息获取装置。
[0044]图2是本发明实施例提供的运行信息获取装置的第一结构示意图。
[0045]如图2所示,该装置包括计时模块201和非屏蔽中断触发信号输出模块202。
[0046]计时模块201,用于接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件。
[0047]非屏蔽中断触发信号输出模块202,用于在所述持续时间满足预定条件时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号,使得所述CPU在接收到所述用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。
[0048]其中,该装置还可以包括复位信号触发模块,具体请参见图3。
[0049]图3是本发明实施例提供的运行信息获取装置的第二结构示意图。
[0050]图3所示的运行信息获取装置在图2所示的运行信息获取装置的基础上,进一步包括了复位信号触发模块,如图3所示,该装置包括计时模块201、非屏蔽中断触发信号输出模块202和复位信号触发模块303,其中:
[0051]计时模块201,具体可以用于判断所述触发信号的持续时间是否大于或等于第一预设时长。
[0052]非屏蔽中断触发信号输出模块202,具体可以用于在所述持续时间大于或等于第一预设时长时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号。
[0053]复位信号触发模块303,用于当所述触发信号的持续时间小于所述第一预设时长时,触发复位信号的输出,使得所述单板系统复位。
[0054]其中,当所述单板系统上为多核CPU时,非屏蔽中断触发信号输出模块202,具体可以用于向所述单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,使得每个接收到用于触发非屏蔽中断的信号的核都有足够的时间输出自身的运行信息。
[0055]具体地,非屏蔽中断触发信号输出模块202可以包括多个屏蔽位,通过预先设置屏蔽位的取值,可以在手动复位按键的触发信号满足预定条件时,对多核CPU中接收非屏蔽中断触发信号的目标核进行选择,即向哪些核输出非屏蔽中断触发信号,换言之,由哪些核产生非屏蔽中断,从而,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,以便查看相应核的运行信息。
[0056]该装置还可以包括看门狗模块,且单板系统上的CPU为多核CPU。
[0057]所述看门狗模块,用于在处于开启状态时,判断没有收到喂狗信号的时间是否达到第三预定时长,如果是,向所述单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,从没有收到喂狗信号的时间达到第三预定时长时起,再延时第四预定时长,使得在该再延 时的第四预定时长内,所有收到用于触发非屏蔽中断的信号的核都拥有足够的时间输出运行信息,在该再延时的第四预定时长到达时,复位所述单板系统。
[0058]在一实施例中,本发明实施例所述的运行信息获取装置,可以通过复杂可编程逻辑器件(Complex Programmable Logical Device,CPLD)来实现,下面对基于 CPLD 实现的运行信息获取装置进行示例性介绍。
[0059]图4是本发明实施例提供的基于CPLD实现的运行信息获取装置的原理示意图。
[0060]图4示意性地示出了单板系统中的CPU和部分外围控制电路,如图4所示,所述外围控制电路包括复位芯片以及基于CPLD实现的其它控制电路,诸如看门狗定时器、计数器、与门电路和非屏蔽中断触发信号输出模块。
[0061]如图4所示,运行信息获取装置中的计时模块具体可以为计时器。
[0062]所述计时器与非屏蔽中断触发信号输出模块和复位信号触发模块相连,用于接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件,在手动复位按键的触发信号的持续时间满足预定条件时,比如在达到4秒时,向所述非屏蔽中断触发信号输出模块输出第一通知信号,在手动复位按键的触发信号的持续时间不满足所述预定条件时,比如不足4秒时,向所述复位信号触发模块输出第二通知信号。
[0063]所述非屏蔽中断触发信号输出模块,用于在接收到第一通知信号时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号,使得所述CPU在接收到所述用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。
[0064]复位信号触发模块具体可以包括与门电路,所述与门电路的一个输入端与所述计时器相连,用于接收所述第二通知信号,所述与门电路的输出端与复位芯片相连,用于在所述与门电路接收到所述第二通知信号时,触发所述复位芯片输出复位信号。
[0065]其中,对于多核CPU,该多核CPU中的每个核即每个虚拟CPU(VCPU)都提供一个MCP管脚,该MCP管脚只触发与该MCP管脚相连的VCPU产生非屏蔽中断,如果使用尽可能多的MCP管脚,就能够触发尽可能多的VCPU产生非屏蔽中断,每个产生非屏蔽中断的VCPU都输出自身当前的运行信息。
[0066]因此,图4中的运行信息获取装置输出的用于触发非屏蔽中断的信号可以连接到(PU提供的多个MCP管脚(图4未示出),从而触发多个VCPU产生非屏蔽中断并输出自身的运行信息。
[0067]进一步,图4中的运行信息获取装置顺序地触发各个VCPU产生非屏蔽中断,即,每次只触发一个VCPU产生非屏蔽中断,在当前触发的VCPU产生非屏蔽中断第二预定时长之后,再触发下一个VCPU产生非屏蔽中断,以使得每个产生非屏蔽中断的VCPU都能够有足够的时间输出自身的运行信息。具体地,运行信息获取装置的非屏蔽中断触发信号输出模块可以包括多个屏蔽位,通过预先设置屏蔽位的取值,可以先将一个VCPU的MCP管脚置为非屏蔽中断的有效信号,使该VCPU产生非屏蔽中断,延时第二预定时长之后,再将另一个VCPU的MCP管脚置为非屏蔽中断的有效信号,使该另一个VCPU产生非屏蔽中断。
[0068]图4中的运行信息获取装置通过顺序地触发各个VCPU产生非屏蔽中断,可以使得各个VCPU输出的运行信息相互分离,从而避免不同的CPU输出的运行信息相互混淆,难以区分出每个核的运行信息,导致输出的运行信息不可用。
[0069]如图4所示,CPU的外围控制电路中还包括看门狗定时器,当看门狗定时器处于开启状态时,如果CPU运行正常,则CPU会定时向看门狗定时器发送喂狗信号,如果CPU的运行出现了异常,导致看门狗定时器在预定时长内例如32秒内没有收到CPU发来的喂狗信号,即产生32秒溢出,则看门狗定时器将触发CPU产生非屏蔽中断,使得CPU输出调用栈、通用寄存器等运行信息。
[0070]其中,在看门狗定时器触发CPU产生非屏蔽中断一段时间之后,看门狗定时器向复位芯片输出信号以屏蔽发给复位芯片的看门狗输入端(Watchdog Input,WDI)的喂狗时钟信号,复位芯片如果在预设时间内收不到WDI信号,将通过看门狗输出端(WatchdogOnput, WDO)输出信号到与门电路以产生手动复位(Manual Reset,MR)信号,MR信号输入到复位芯片使得复位芯片输出复位信号复位单板系统。
[0071]其中,在现有技术中,当看门狗定时器处于开启状态时,看门狗定时器在预定时长内例如32秒内没有收到CPU发来的喂狗信号时,只触发一个CPU或多核CPU的一个核产生非屏蔽中断,相应地,看门狗定时器是需要延时足够一个核输出运行信息的时长,例如4秒,然后再向复位芯片输出信号以屏蔽发给复位芯片的WDI端的喂狗时钟信号,进而使得复位芯片输出复位信号复位单板系统。
[0072]对于本发明实施例提出的针对多核CPU中的多个核输出非屏蔽中断触发信号的方案,也可以应用于看门狗定时器。
[0073]具体地,对于多核CPU,图4中的看门狗定时器可以顺序地触发各个多核CPU中的多个核即多个VCPU产生非屏蔽中断,当看门狗定时器触发越多的VCPU产生非屏蔽中断时,输出中断现场的运行信息就需要越多的时间,因此,需要延长WDI信号的屏蔽时长,图4中38秒溢出是示例性地针对触发两个VCPU产生非屏蔽中断时的延时时长。
[0074]图5是本发明实施例提供的在看门狗定时器启动时看门狗定时器触发多核CPU的两个以上的核输出运行信息的流程图,此处,以两个核,VCPUO,VCPUl为例,VCPUO与MCPO相连,VCPUl与MCPl相连。
[0075]如图5所示,该流程包括:
[0076]步骤501,当看门狗定时器在第三预定时长内没有收到喂狗信号时,并行执行步骤502-503的流程和步骤504-506。
[0077]步骤502,将多核CPU的MCPO管脚设置为低电平,使得与MCPO管脚相连的VCPUO产生非屏蔽中断从而输出VCPUO的运行信息。延时2-3秒以后,执行步骤503。
[0078]其中,执行步骤503之前延时的时间长度依据VCPUO输出运行信息所需要的时长来确定,只要能够保证产生非屏蔽中断的VCPUO有足够的时间输出运行信息即可。
[0079]步骤503,将MCPl管脚设置为低电平,使得与MCPl管脚相连的VCPUl产生非屏蔽中断从而输出VCPUl的运行信息。
[0080]步骤504,启动第四预定时长计时器开始计时。
[0081]步骤505,判断第四预定时长计时器的取值是否已达到第四预定时长,如果是,执行步骤506,否则第四预定时长计时器继续计时,并返回步骤505。
[0082]步骤506,触发复位芯片输出复位信号,复位单板系统。
[0083]通过上述实施例可见,本发明实施例利用单板系统上的手动复位按键,向CPU输出用于触发非屏蔽中断的信号,触发该CPU产生非屏蔽中断从而输出运行信息,因此能够根据需要随时手动触发CPU产生非屏蔽中断,输出当 前的运行信息,以便抓取问题现场信息,丰富了单板系统开发阶段定位问题的手段,提高了问题定位效率。而且,通过手动复位按键使得CPU产生非屏蔽中断的流程和由看门狗定时器超时触发CPU产生非屏蔽中断的流程可以复用,相应电路也可以复用,从而简化了处理过程、也节省了硬件资源。
[0084]当触发多核CPU上的两个以上核产生非屏蔽中断时,通过顺序触发各个核产生非屏蔽中断,还可以避免各个核输出的运行信息相互混淆,保持各个核输出的运行信息的可用性。
[0085]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1.一种单板系统的运行信息获取方法,其特征在于,该方法包括: 接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件; 在所述持续时间满足预定条件时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号; 所述CPU在接收到用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。2.根据权利要求1所述的方法,其特征在于,判断所述持续时间是否满足预定条件包括: 判断所述触发信号的持续时间是否大于或等于第一预设时长,当所述持续时间大于或等于第一预设时长时,为满足预定条件; 该方法还包括:当所述触发信号的持续时间小于所述第一预设时长时,输出复位信号,复位所述单板系统。3.根据权利要求1所述的方法,其特征在于,所述单板系统上的CPU为多核CPU,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号包括: 向所述单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,使得每个接收到用于触发非屏蔽中断的信号的核都有足够的时间输出自身的运行信息。4.根据权利要求1所述的方法,其特征在于,该方法还包括: 当开启看门狗功能时,判断没有收到喂狗信号的时间是否达到第三预设时长,如果是,向所述单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,使得每个接收到用于触发非屏蔽中断的信号的核都有足够的时间输出自身的运行信息,并且,从没有收到喂狗信号的时间达到第三预设时长起,延时第四预设时长,使得在第四预设时长内,所有收到用于触发非屏蔽中断的信号的核都拥有足够的时间输出运行信息,在所述第四预设时长到达时,复位所述单板系统。5.—种单板系统的运行信息获取装置,其特征在于,该装置包括计时模块和非屏蔽中断触发信号输出模块; 所述计时模块,用于接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件; 所述非屏蔽中断触发信号输出模块,用于在所述持续时间满足预定条件时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号,使得所述CPU在接收到所述用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。6.根据权利要求5所述的装置,其特征在于,该装置还包括复位信号触发模块; 所述计时模块,用于判断所述触发信号的持续时间是否大于或等于第一预设时长,当所述持续时间大于或等于第一预设时长时,为满足预定条件; 所述非屏蔽中断触发信号输出模块,用于在所述持续时间大于或等于第一预设时长时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号; 所述复位信号触发模块,用于当所述触发信号的持续时间小于所述第一预设时长时,触发复位信号的输出,使得所述单板系统复位。7.根据权利要求6所述的装置,其特征在于,该装置还包括复位芯片,所述计时模块具体包括计时器,所述复位信号触发模块具体包括与门电路,所述与门电路的一个输入端与所述计时器相连,所述与门电路的输出端与复位芯片相连; 所述计时器的输入端与手动复位按键相连、输出端分别与非屏蔽中断触发信号输出模块和复位信号触发模块的与门电路相连,具体用于接收手动复位按键的触发信号,记录所述手动复位按键的触发信号的持续时间,在所述持续时间满足预定条件时,向所述非屏蔽中断触发信号输出模块输出第一通知信号,在所述持续时间不满足所述预定条件时,向所述复位信号触发模块的与门电路输出第二通知信号; 所述非屏蔽中断触发信号输出模块,具体用于在接收到第一通知信号时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号; 所述与门电路的一个输入端与所述计时器相连,用于接收所述第二通知信号,所述与门电路的输出端与复位芯片相连,用于在所述与门电路接收到所述第二通知信号时,触发所述复位芯片输出复位信号。8.根据权利要求5所述的装置,其特征在于,单板系统上的CPU为多核CPU; 所述非屏蔽中断触发信号输出模块,用于向所述单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,使得每个接收到用于触发非屏蔽中断的信号的核都有足够的时间输出自身的运行信息。9.根据权利要求8所述的装置,其特征在于, 所述非屏蔽中断触发信号输出模块具体包括多个屏蔽位,通过预先设置所述屏蔽位的取值,在手动复位按键的触发信号满足预定条件时,对多核CPU中接收非屏蔽中断触发信号的目标核进行选择,从而,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第二预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号。10.根据权利要求5所述的装置,其特征在于,该装置还包括看门狗模块,且单板系统上的CPU为多核CPU ; 所述看门狗模块,用于在处于开启状态时,判断没有收到喂狗信号的时间是否达到第三预设时长,如果是,向所述单板系统上的多核CPU的两个以上的核输出用于触发非屏蔽中断的信号,并且,一次只向一个核输出用于触发非屏蔽中断的信号,在延时第一预设时长之后,再向另一个核输出用于触发非屏蔽中断的信号,从没有收到喂狗信号的时间达到第三预设时长时起,延时第四预设时长,使得在第四预设时长内,所有收到用于触发非屏蔽中断的信号的核都拥有足够的时间输出运行信息,在所述第四预设时长到达时,复位所述单板系统。
【专利摘要】本发明公开了一种单板系统的运行信息获取方法和装置。该方法包括:接收手动复位按键的触发信号,记录所述触发信号的持续时间,判断所述持续时间是否满足预定条件;在所述持续时间满足预定条件时,向所述单板系统上的CPU输出用于触发非屏蔽中断的信号;所述CPU在接收到用于触发非屏蔽中断的信号时,产生非屏蔽中断,输出所述CPU的运行信息。应用本发明实施例能够在单板系统的开发过程中方便问题的定位。
【IPC分类】G06F1/24, G06F11/30
【公开号】CN104899125
【申请号】CN201510304256
【发明人】李军军, 张灿
【申请人】杭州华三通信技术有限公司
【公开日】2015年9月9日
【申请日】2015年6月4日

最新回复(0)