一种多核芯片的程序更新方法及系统技术方案

技术编号:27461511 阅读:28 留言:0更新日期:2021-02-25 05:21
本发明专利技术公开了一种多核芯片的程序更新方法及系统。该多核芯片的程序更新方法,包括对多核芯片进行更新,所述对多核芯片进行更新包括如下步骤:A、所述多核芯片通知监测器芯片进入程序更新阶段;B、所述多核芯片接收到所述监测器芯片返回的第一监测信号后开启看门狗;C、依次对所述多核芯片的多个内核进行程序更新;及D、所述多核芯片接收到所述监测器芯片在判定更新过程完成后返回的第二监测信号后由看门狗进行复位操作。本发明专利技术其有效降低了由多核芯片自身程序更新而死机的现象。芯片自身程序更新而死机的现象。芯片自身程序更新而死机的现象。

【技术实现步骤摘要】
一种多核芯片的程序更新方法及系统


[0001]本专利技术属于嵌入式系统
,涉及一种多核芯片的程序更新方法及系统。

技术介绍

[0002]电源行业尤其是逆变器行业,为了应对安全规范,通常使用双芯片结构,一个用作主控芯片,性能高价格贵;另一个副芯片性能弱价格低,主要用作冗余检测。当前主控芯片已经沿着应用多核芯片的方向发展,在程序更新维护上少有安全可靠的监测更新装置与方法。在多核芯片的程序更新过程中需要对多个内核进行程序改写,该改写过程极易出错,可能出现程序不能正确运行的“死机”现象,而且开发者往往不能准确知道卡死在程序更新的哪一步骤。

技术实现思路

[0003]为了解决上述技术问题,本专利技术的目是提供一种多核芯片的程序更新方法及系统,其有效降低了由多核芯片自身程序更新而死机的现象。
[0004]为达到上述目的,本专利技术采用的一种技术方案为:
[0005]一种多核芯片的程序更新方法,包括对多核芯片进行更新,所述对多核芯片进行更新包括如下步骤:
[0006]A、所述多核芯片通知监测器芯片进入程序更新阶段;
[0007]B、所述多核芯片接收到所述监测器芯片返回的第一监测信号后开启看门狗;
[0008]C、依次对所述多核芯片的多个内核进行程序更新;及
[0009]D、所述多核芯片接收到所述监测器芯片在判定更新过程完成后返回的第二监测信号后由看门狗进行复位操作。
[0010]在一优选的实施例中,所述步骤A中,通过所述多核芯片的输出管脚IO_out依据t1低电平t2高电平向所述监测器芯片的输入管脚Det_in连续发送n个周期通知所述监测器芯片进入程序更新阶段,t1表示低电平的持续时间,t2表示高电平的持续时间,n大于1。
[0011]在一优选的实施例中,所述步骤B中,所述监测器芯片的输出管脚Det_out由低电平变为高电平,所述多核芯片具有与所述输出管脚Det_out连接的输入管脚IO_in,所述多核芯片检测到所述输入管脚IO_in的信号为高电平,则开启看门狗。
[0012]在一优选的实施例中,所述步骤C中,所述多核芯片进行某一内核的程序更新,更新完成后,所述多核芯片的输出管脚IO_out向所述监测器芯片的输入管脚Det_in输出该内核的程序更新完成信息标志,进行下一内核的程序更新。
[0013]进一步地,所述监测器芯片依据自所述多核芯片的输出管脚IO_out接收的信号判别当前程序更新所处的阶段。
[0014]在一优选的实施例中,所述步骤D中,所述多核芯片的输出管脚IO_out输出程序更新结束标志,所述监测器芯片检测到程序更新结束标志并监测到所述多核芯片的输出管脚IO_out的输出持续超出t3时间为低电平,则判定程序更新完成。
[0015]在一优选且具体的实施例中,所述对多核芯片进行更新具体实施如下:
[0016]S1、进入所述多核芯片的第一内核的第一boot程序,驱动所述多核芯片的输出管脚IO_out1、IO_out2及IO_out3依据t1低电平t2高电平连续发送n个周期,通知监测器芯片进入程序更新阶段;
[0017]S2、所述监测器芯片的输出管脚Det_out1由低电平变为高电平,所述多核芯片依据监测到与所述输出管脚Det_out1相连的输入管脚IO_in1的信号为高电平,则开启内部看门狗;
[0018]S3、第一内核由第一boot程序进入第二boot程序,进行程序更新;
[0019]S4、控制输出管脚IO_out1、IO_out2及IO_out3依据设定的起始数据采集条件及结束条件进行数据采集,所述监测器芯片依据接收到的来自输出管脚IO_out3的数据进行当前程序更新所处在的阶段判别;
[0020]S5、将程序更新数据传递到第一内核的程序区;
[0021]S6、若第一内核的程序更新数据传递完成,则输出管脚IO_out3输出第一内核的程序更新完成信息标志;随即进入下一内核的程序数据传递过程;
[0022]S7、跳转到所述多核芯片的下一内核的第一boot程序,进行程序数据传递;
[0023]S8、控制输出管脚IO_out1、IO_out2及IO_out3依据设定的起始数据采集条件及结束条件进行数据采集,所述监测器芯片依据接收到的来自输出管脚IO_out3的数据进行当前程序更新所处在的阶段判别;
[0024]S9、若该内核的程序更新数据传递完成,则输出管脚IO_out3输出该内核的程序更新完成信息标志;
[0025]S10、重复步骤S7至S9,直至完成对所有内核的程序更新;
[0026]S11、在输出管脚IO_out3输出结束标志后,将输出管脚IO_out1、IO_out2及IO_out3的输出同时设置为低;
[0027]S12、所述监测器芯片检测到程序更新结束标志,且监测出输出管脚IO_out1、IO_out2及IO_out3的输出持续超出t3时间为低电平,则判定程序更新过程完成;监测器芯片将其输出管脚Det_out1的输出设定为低电平,则多核芯片会由内部看门狗进行复位操作。
[0028]在一优选的实施例中,若在程序更新过程中检测到某一步骤执行时间异常,或所述多核芯片的输出管脚的数据错乱,或程序更新文件异常,则由所述监测器芯片对所述多核芯片进行复位。
[0029]在一优选的实施例中,所述程序更新方法还包括如下步骤:
[0030]所述多核芯片的外部数据接口接收程序更新文件并将所述程序更新文件传递到外扩存储器的对应区域;
[0031]所述多核芯片获取所述外扩存储器的数据状态信息;
[0032]若获取到所述数据状态信息标识为所述外扩存储器的程序未烧录,则对多核芯片进行更新。
[0033]本专利技术还采用如下技术方案:
[0034]一种多核芯片的程序更新系统,搭载如上所述的程序更新方法,所述程序更新系统包括:多核芯片、监测器芯片及用于储存程序更新文件的外扩存储器;
[0035]所述多核芯片包括:
[0036]控制交互总线;
[0037]n个内核,各所述内核分别和所述控制交互总线电性连接;
[0038]对外数据接口,其用于从外部获取程序更新文件,所述对外数据接口和所述控制交互总线电性连接;
[0039]通讯接口,其用于和所述外扩存储器进行信息交互;
[0040]数字IO模块,其用于和所述监测器芯片进行信息交互,所述数字IO模块和所述控制交互总线电性连接,所述数字IO模块具有用于向所述监测器芯片发送信息的输出管脚IO_out及用于接收来自所述监测器芯片的输入管脚IO_in;及
[0041]看门狗,其与所述控制交互总线电性连接;
[0042]所述监测器芯片具有与所述输出管脚IO_out电性连接的输入管脚Det_in及与所述输入管脚IO_in电性连接的输出管脚Det_out。
[0043]本专利技术采用以上方案,相比现有技术具有如下优点:
[004本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多核芯片的程序更新方法,其特征在于,包括对多核芯片进行更新,所述对多核芯片进行更新包括如下步骤:A、所述多核芯片通知监测器芯片进入程序更新阶段;B、所述多核芯片接收到所述监测器芯片返回的第一监测信号后开启看门狗;C、依次对所述多核芯片的多个内核进行程序更新;及D、所述多核芯片接收到所述监测器芯片在判定更新过程完成后返回的第二监测信号后由看门狗进行复位操作。2.根据权利要求1所述的程序更新方法,其特征在于,所述步骤A中,通过所述多核芯片的输出管脚IO_out依据t1低电平t2高电平向所述监测器芯片的输入管脚Det_in连续发送n个周期通知所述监测器芯片进入程序更新阶段,t1表示低电平的持续时间,t2表示高电平的持续时间,n大于1。3.根据权利要求1所述的程序更新方法,其特征在于,所述步骤B中,所述监测器芯片的输出管脚Det_out由低电平变为高电平,所述多核芯片具有与所述输出管脚Det_out连接的输入管脚IO_in,所述多核芯片检测到所述输入管脚IO_in的信号为高电平,则开启看门狗。4.根据权利要求1所述的程序更新方法,其特征在于,所述步骤C中,所述多核芯片进行某一内核的程序更新,更新完成后,所述多核芯片的输出管脚IO_out向所述监测器芯片的输入管脚Det_in输出该内核的程序更新完成信息标志,进行下一内核的程序更新。5.根据权利要求4所述的程序更新方法,其特征在于,所述监测器芯片依据自所述多核芯片的输出管脚IO_out接收的信号判别当前程序更新所处的阶段。6.根据权利要求1所述的程序更新方法,其特征在于,所述步骤D中,所述多核芯片的输出管脚IO_out输出程序更新结束标志,所述监测器芯片检测到程序更新结束标志并监测到所述多核芯片的输出管脚IO_out的输出持续超出t3时间为低电平,则判定程序更新完成。7.根据权利要求1所述的程序更新方法,其特征在于,所述对多核芯片进行更新具体实施如下:S1、进入所述多核芯片的第一内核的第一boot程序,驱动所述多核芯片的输出管脚IO_out1、IO_out2及IO_out3依据t1低电平t2高电平连续发送n个周期,通知监测器芯片进入程序更新阶段;S2、所述监测器芯片的输出管脚Det_out1由低电平变为高电平,所述多核芯片依据监测到与所述输出管脚Det_out1相连的输入管脚IO_in1的信号为高电平,则开启内部看门狗;S3、第一内核由第一boot程序进入第二boot程序,进行程序更新;S4、控制输出管脚IO_out1、IO_out2及IO_out3依据设定的起始数据采集条件及结束条件进行数据采集,所述监测器芯片依据接收到的来自输出管脚IO_out3的数据进行当前程序更新所处在的阶段判别;S5、将...

【专利技术属性】
技术研发人员:王进城
申请(专利权)人:爱士惟新能源技术扬中有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1