<详细说明单元间复位顺序、Watchdog设计、复位单元加载顺序。如果提供局部及全局分级复位请说明其层次关系。需要给出图示和文字解释。给出单板复位、断电重启的流程图。并粗略估计各流程所需的时间。需要结合故障管理方案,考虑在故障情况下的复位重启要求> <复位重启时间指系统从运行状态,经历系统复位,重新恢复进入正常运行态的时间。复位类型通常包括:软件复位、硬件复位。主要考虑单板的软、硬件复位。复位一般包括基本的底层启动、自检、配置等。通常复位时间应在5min内。断电重启时间 指系统从运行状态,经历断电/通电,重新恢复进入正常运行态的时间。应考虑系统断电和单板断电重启,重启一般包括:基本的底层启动、自检、配置;系统通常重启时间在0.5小时之内。单板通常重启时间在10min之内。>

电路板复位机制分类(3种软复位1种硬复位)
4种复位机制:reboot、BSP_ResetBoard、BSP_PowerOff、硬件狗

  1.    BSP_ResetBoard 由底层软件BSP实现,实现机制是下拉CPU管脚复位CPU(软复位)。
    
  2.    reboot,OS系统默认实现机制是指令跳转,重新引导系统。但目前BSP通过注册钩子接管了reboot的复位行为,接管后的复位机制与BSP_ResetBoard一样,也是下拉CPU管脚(软复位)。
    
  3.    BSP_PowerOff 底层软件BSP实现,实现机制是下拉电源管脚复位硬件系统(掉电复位)。
    
  4.    硬件狗,复位机制由硬件实现,由软件定时喂狗来保活软件系统的正常运行,复位类型为CPU复位(软复位)。
    

可靠复位机制(软件复位和硬件狗复位的双重保护+设计关键点:记录复位原因前,首先停止喂狗)
上述4种复位机制中,reboot、BSP_ResetBoard、BSP_PowerOff是由软件实现的,因此存在机制失效的风险,硬件狗为硬件实现可以确保系统的复位。但是硬件狗复位无法通过软件主动记录复位定位信息,因此软件复位机制也是必要的。为了既能够主动记录完善的复位定位信息又能够确保复位的真正执行,设计采用下述双层复位机制。

可靠复位机制 上述设计的一个关键点是:在记录复位原因之前,首先要停止喂狗,如果在记录复位原因或者软件复位接口出现问题没有复位成功,至少可以确保系统在延迟一段时间后看门狗复位。

复位设计的时候,电路和软件设计不但需要支持各种机制的复位方式,同时需要支持复位原因的记录。需要在主动复位之前,先发送一个不可屏蔽中断让CPU做一些复位前的准备工作,同时让CPU做一些内容记录作为电路板复位或者下电前的临终遗言。