嵌入式系统及其控制方法与流程

文档序号:12120247阅读:1239来源:国知局
嵌入式系统及其控制方法与流程

本发明涉及处理器芯片系统,更具体地,涉及嵌入式系统及其控制方法。



背景技术:

随着半导体技术的发展,嵌入式系统得到广泛应用。嵌入式系统包括微处理器、外围硬件设备、操作系统和用户应用程序。随着芯片制造技术的发展,在单个芯片上已经可以集成嵌入式系统的硬件和软件部分,形成片上系统(SOC)。SOC已经发展成为针对行业应用定制的各种上微小型系统。例如,在智能手机中普遍采用的应用处理器和基带处理器分别是不同的SOC系统。

在嵌入式系统中可能出现程序运行异常,比如因受到外界的干扰可能出现程序跑飞的现象,导致系统运行不正常。程序跑飞是指程序计数器的值偏离预定值,导致程序的运行结果出错。如图1所示,片上系统SOC可以包括中央处理单元CPU和数字看门狗WDT,从而在程序跑飞的异常情形发生时使系统复位,使得系统可以一直保持正常工作。

数字看门狗WDT包括计数器110。在系统运行期间,中央处理单元CPU运行驱动程序,对数字看门狗WDT进行初始化,配置计数器,开启计数。每隔一定时间对看门狗的计数器进行清零,称为喂狗。在正常情况下,中央处理单元CPU的喂狗时间间隔小于计数器的溢出时间,数字看门狗WDT不会进行系统复位。当系统异常时,中央处理单元CPU不能正常进行喂狗操作,超出设定的喂狗时间后,计数器溢出。数字看门狗WDT强制中央处理单元CPU复位。中央处理单元CPU重启之后,重新正常运行,从而保证嵌入式系统从软件、硬件的错误中恢复到正常的运行。

上述在SOC芯片内部集成看门狗的方案虽然结合了集成度高和灵活的优点,在常规的环境条件下,可以防止出现程序跑飞的异常。但当嵌入式系统需要应用到严苛的环境条件下,例如更高/低的工作温度,数字看门狗WDT自身的计数异常可能导致错误地频繁重启系统,从而不能满足实际应用的要求。此时可选的应用方案是使用工业级SOC,但工业级SOC芯片的价格高昂,导致成本大幅提升。

因此,期望可以低成本地提高嵌入式系统的可靠性。



技术实现要素:

鉴于上述问题,本发明的目的是提供一种利用外围监控芯片检测片上系统异常和重启系统的嵌入式系统及其控制方法。

根据本发明的一方面,提供一种嵌入式系统,包括:片上系统,所述片上系统包括中央处理单元和第一寄存器;以及监控芯片,所述监控芯片包括检测判断模块和第二寄存器,其中,所述监控芯片经由数据总线连接至所述片上系统,以及经由控制线连接至所述片上系统的复位端,所述片上系统在运行期间向所述监控芯片报告运行标识,所述监控芯片根据所述运行标识判断所述片上系统的运行状态,并且在所述片上系统出现异常时产生复位信号,以及将复位信号发送至所述复位端,使得所述片上系统重启。

优选地,在所述运行标识的变化与预期变化一致时,判断所述片上系统运行正常,在所述运行标识的变化与预期变化不一致时,判断所述片上系统运行异常。

优选地,所述片上系统的中央处理单元在运行期间定时在所述第一寄存器中写入所述运行标识的第一数值。

优选地,所述监控芯片在运行期间定时读取所述第一寄存器中存储的运行标识的第一数值,并且与所述第二寄存器中存储的运行标识的第二数值相比较,以及在比较之后将更新所述第二寄存器中存储的运行标识的第二数值。

优选地,所述运行标识为计数值,所述运行标识的预期变化为所述计数值递增或递减。

优选地,所述运行标识的数值周期性地在数值1和0之间变化,所述运行标识的预期变化为所述运行标志的变化频率等于预期频率。

根据本发明的另一方面,提供一种嵌入式系统的控制方法,所述嵌入式系统包括片上系统和监控芯片,所述方法包括:所述片上系统向所述监控芯片报告运行标识;所述监控芯片根据所述运行标识判断所述片上系统的运行状态;所述监控芯片在所述片上系统出现异常时产生复位信号;以及所述监控芯片将复位信号提供至所述片上系统使其重启。

优选地,在所述运行标识的变化与预期变化一致时,判断所述片上系统运行正常,在所述运行标识的变化与预期变化不一致时,判断所述片上系统运行异常。

优选地,所述片上系统的中央处理单元在运行期间定时在所述第一寄存器中写入所述运行标识的第一数值。

优选地,所述监控芯片在运行期间定时读取所述第一寄存器中存储的运行标识的第一数值,并且与第二寄存器中存储的运行标识的第二数值相比较,以及在比较之后将更新所述第二寄存器中存储的运行标识的第二数值。

优选地,所述运行标识为计数值,所述运行标识的预期变化为所述计数值递增或递减。

优选地,所述运行标识的数值周期性地在数值1和0之间变化,所述运行标识的预期变化为所述运行标志的变化频率等于预期频率。

根据本发明实施例的嵌入式系统及其控制方法,利用外围监控芯片检测片上系统异常和重启系统,可以在未明显增加系统成本的基础上,大幅提高嵌入式系统的可靠性,使其能在更为苛刻的环境下工作。

附图说明

通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:

图1示出根据现有技术的片上系统的示意性框图;

图2示出在本发明实施例中使用的片上系统的示意性框图;

图3示出根据本发明实施例的嵌入式系统的示意性框图。

具体实施方式

以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。

图2示出在本发明实施例中使用的片上系统的示意性框图。该片上系统SOC中省去了数字看门狗WDT。替代地,该片上系统SOC包括中央处理单元CPU和寄存器120。由于片上系统普遍包括寄存器,因此该片上系统SOC可以采用现有的低成本消费级芯片。

图3示出根据本发明实施例的嵌入式系统的示意性框图。该嵌入式系统包括如图2所示的片上系统SOC,以及外围的监控芯片200。如上所述,片上系统SOC可以采用现有的低成本消费级芯片。在该实施例中,监控芯片200可以选用可以工作于严苛环境条件的工业级芯片。

监控芯片200包括检测判断模块210和寄存器220。检测判断模块210经由内部总线与寄存器220相连接,从而对后者进行读写操作。此外,检测判断模块210经由外部数据总线与片上系统SOC的寄存器120相连接,从而对后者进行读操作。检测判断模块210还经由控制线连接至片上系统SOC的复位端。

在工作中,片上系统SOC的中央处理单元SOC定时对寄存器120进行写操作,以更新寄存器120的值。监控芯片200的检测判断模块210定时读取片上系统SOC中的寄存器120的计数值。将读取的计数值与寄存器220中的存储值进行比较,以及在比较之后,将读取的计数值写入寄存器220中以更新寄存器220的存储值。

在上述的步骤中,如果比较结果表明片上系统SOC的中央处理单元CPU按照预期的方式更新寄存器120,例如计数值递增,则判断SOC芯片运行正常。如果比较结果表明片上系统SOC的中央处理单元CPU未能在预定时间更新寄存器120,或者更新寄存器120的方式与预期的方式不同,则判断SOC芯片运行异常。

在判断SOC芯片运行异常的情形下,监控芯片200的检测判断模块210向片上系统SOC的复位端发送复位信号,使得片上系统SOC重启后恢复正常运行。

在该实施例中,监控芯片200为独立于片上系统SOC的外围芯片。例如,可以采用工业级的51单片机可以作为监控芯片。该监控芯片200包括检测判断模块210和寄存器220,并且设计和封装成高可靠性的工业级芯片。在严苛的环境条件下,监控芯片200自身的运行保持稳定,因此可以避免自身的寄存器错误导致片上系统SOC频繁重启系统。即使片上系统SOC采用低成本的消费级芯片,片上系统SOC和监控芯片200共同组成的嵌入式系统也可以可靠地检测片上系统中的异常和重启系统,从而可以低成本地提高嵌入式系统的可靠性。

在上述的实施例中,描述了片上系统SOC的寄存器120和监控芯片200的寄存器220分别存储片上系统SOC的中央处理单元CPU触发的计数值的当前数据和历史数据,根据计数值的变化是否与预期变化一致来判断片上系统SOC是否出现运行异常。

在一个替代的实施例中,片上系统SOC的寄存器120和监控芯片200的寄存器220可以分别存储片上系统SOC的中央处理单元CPU的任意运行标志的当前数据和历史数据,根据运行标志的变化是否与预期变化一致来判断片上系统SOC是否出现运行异常。例如该运行标志周期性地在数值1和0之间变化。检测判断模块在连续的读取操作中,根据运行标志的变化频率是否与预期频率一致来判断片上系统SOC是否出现运行异常。

依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明的保护范围应当以本发明权利要求所界定的范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1