CN101271415B - 嵌入式设备中监控看门狗的实现方法 - Google Patents

嵌入式设备中监控看门狗的实现方法 Download PDF

Info

Publication number
CN101271415B
CN101271415B CN200810066973XA CN200810066973A CN101271415B CN 101271415 B CN101271415 B CN 101271415B CN 200810066973X A CN200810066973X A CN 200810066973XA CN 200810066973 A CN200810066973 A CN 200810066973A CN 101271415 B CN101271415 B CN 101271415B
Authority
CN
China
Prior art keywords
register
cpu
fpga
breg
monitoring
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.)
Active
Application number
CN200810066973XA
Other languages
English (en)
Other versions
CN101271415A (zh
Inventor
张明生
吴饶金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Guoren Wireless Communication Co Ltd
Original Assignee
Shenzhen Guoren Communication Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Guoren Communication Co Ltd filed Critical Shenzhen Guoren Communication Co Ltd
Priority to CN200810066973XA priority Critical patent/CN101271415B/zh
Publication of CN101271415A publication Critical patent/CN101271415A/zh
Application granted granted Critical
Publication of CN101271415B publication Critical patent/CN101271415B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种嵌入式设备中监控看门狗的实现方法,包括步骤:1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当发现另一方未更新写入的寄存器,则对另一方进行复位。通过软件硬件相互结合的上电握手和监控方式,在同一个系统中FPGA与CPU相互监控,出异常后互相能够复位对方。本发明还在同时使用外部硬复位芯片的情况下实现软件复位的功能,提高了设备系统运行的可靠性,实现FPGA和CPU的相互防呆功能。

Description

嵌入式设备中监控看门狗的实现方法
技术领域
本发明涉及通信技术领域,涉及一种嵌入式系统中FPGA模块与CPU模块上电启动握手与相互监控的实现方法。
背景技术
嵌入式系统设备中传统的监控看门狗方式基本有两种方式,(1)利用硬件看门狗监控软件的运行,即软件如果没有在固定的时间内喂狗(一般是写特定寄存器实现),硬件则复位整个系统,起到软件防呆功能;(2)软件看门狗实现,专门开一个看门狗任务,与系统中其它的任务固定时间内进行消息通信,传统的Windows平台软件看门狗一般都是通过窗口消息机制来实现看门狗与被控资源(被控资源通常情况下是以操作系统物理进程的方式存在)之间的交互,具体做法是:看门狗向被控资源发送一条监控请求消息,被控资源收到该消息后立即返回一条监控应答消息,如果看门狗在T时间段(监控超时时限)内没有收到被控资源返回的监控应答消息,此时看门狗则认为被控资源出现异常。
以上传统方式存在着缺陷,(1)仅仅能实现硬件看门狗的功能,对系统出现异常时的各状态量不能很好的记录与备份,为以后的系统维护和查找问题的原因带来了困难;(2)Windows窗口消息机制的具体实现为每个窗口由系统提供一个存放待处理消息的消息队列,看门狗向被控资源发送监控请求消息其实就是向被控资源的主窗口消息队列中加入并拷贝该条消息内容,被控资源主窗口从消息队列中取出监控请求消息进行处理,在被控资源负荷比较重的情况下(如处理的业务量很大),主窗口消息队列中会堆积很多待处理消息,看门狗监控请求消息夹杂在其中可能会长时间得不到处理,而引起看门狗对被监控资源的误判断;其次按照基于Windows窗口消息机制设计出来的看门狗程序在跨平台移植上就会具备较大的困难,因为UNIX、LINUX等平台不支持Windows的窗口消息机制;再次进行消息通信的软件任务可能本身出现问题,此时完全失去看门狗的作用。
发明内容
本发明解决的技术问题是提供一种通信系统设备中监控看门狗的实现方法,通过软件硬件相互结合的上电握手和监控方式,在同一个系统中FPGA与CPU相互监控,出异常后互相能够复位对方。
为解决上述技术问题,本发明提出以下的技术方案:
一种嵌入式设备中监控看门狗的实现方法,包括以下处理步骤:
1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;
2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当一方发现另一方未更新写入的寄存器,则对另一方进行复位。
优选的,在FPGA启动过程中FPGA读取到的寄存器bReg的状态信息始终为初始状态时,对CPU进行复位。
优选的,在正常工作模式下,CPU以向寄存器bReg写入RESET0,再写入RESET1的方式启动系统硬复位,FPGA读取信息后复位CPU同时复位自身。
优选的,在正常工作模式下,FPGA和CPU其中一方的复位过程不影响另一方的正常运行。
优选的,所述步骤1)具体包括以下处理过程:
11)CPU启动后,读寄存器aReg,如果其状态信息是sta1,则CPU认为FPGA就绪,开始配置功能芯片,CPU调用功能芯片的配置文件,对芯片进行配置;
12)CPU完成配置后,在寄存器bReg写入状态信息sta2,并通知FPGA,功能芯片配置完成;
13)FPGA向寄存器aReg写入状态信息sta3,CPU读到寄存器aReg中的状态信息为sta3后向寄存器bReg写入状态信息sta3,FPGA进入正常工作模式;
上述的状态信息sta1、sta2、sta3为各不相同的状态值。
优选的,所述步骤2)具体包括以下处理过程:
21)正常工作模式下,FPGA每N1f秒更新一次寄存器aReg,若CPU检测到FPGA在N2f时间内没有更新该寄存器则复位FPGA;
22)正常工作模式下,CPU每N1c秒更新一次寄存器bReg,若FPGA检测到CPU在N2c时间内没有更新该寄存器则复位CPU。
优选的,所述CPU检测寄存器的时间周期N2f大于FPGA更新寄存器的时间周期N1f;所述FPGA检测寄存器的时间周期N2c大于CPU更新寄存器的时间周期N1c。
优选的,正常工作模式下,所述FPGA与CPU分别更新寄存器aReg与寄存器bReg的值不同。
采用本发明提出的监控看门狗的实现方法能同时解决背景技术中提到的缺陷,提高了嵌入式通信设备系统运行的可靠性,实现了FPGA和CPU的相互防呆功能。
(1)由于FPGA或CPU均属于高速微控制器芯片,不仅只起到硬件看门狗作用,出现异常时均可以记录发生异常时状态信息,起到保护发生异常的状态信息。比如系统发生内存耗尽异常时,系统中各任务因申请不到内存而导致中止运行,此时CPU可借助操作系统中成熟稳定的内存机制,在系统运行死机前,朝用户预留内存空间中写入异常时刻点的各任务状态和各异常码,并且该内存块可被设置为上电启动初始化时不初始的属性,之后用户在系统重启后访问该内存块,即可大致判断上一次系统发生异常的原因。FPGA发生异常前能够保留各模块和寄存器状态,因此可通过点指示灯的手段大致指示异常状态。(2)本发明提供的一种嵌入式设备中监控看门狗的实现方法,基于寄存器内容的读写进行判断的机制,解决软件看门狗监控问题,能够达到高效、准确的效果。看门狗程序和被控资源对各阶段寄存器的存取操作都是可靠、高效和安全的。既保证看门狗能够准确地获取出被控资源的状态,又不受被控资源本身负荷的影响,并且按照此监控机制编制出来的看门狗程序和被控资源软件可以非常平滑地进行跨平台移植,因为目前各主流操作系统均支持寄存器内存机制。
附图说明
图1是本发明嵌入式设备监控看门狗的实现流程图;
图2是本发明硬件复位系统框图;
图3是本发明优选实施例中系统启动与监控处理流程图。
具体实施方式
下面结合具体实例对本发明的技术方案进行详细描述。
本发明提供一种通信设备系统中FPGA与CPU上电握手和相互监控的方法,如图1所示,主要包括FPGA与CPU上电初始化握手流程、进入正常模式后的相互监控、出现异常状态时FPGA或CPU各自复位对方三个阶段:
(一)初始化过程:FPGA与CPU上电初始化、配置功能芯片的握手流程;
(二)正常模式:进入正常模式后的相互“喂狗”及监控;
(三)异常状态:FPGA或CPU复位对方的条件。
第一阶段,如图1所示,包括如下步骤:
S101、CPU初始化系统,并配置与FPGA相关的总线接口,之后检测FPGA是否处于就绪阶段,即CPU读取寄存器aReg的信息,当其状态信息为sta1时,表示FPGA就绪,可以开始配置功能芯片;
S102、FPGA就绪后,CPU配置FPGA相关功能芯片,包括Afe8406等;CPU完成配置后,在寄存器bReg写入状态信息sta2,并通知FPGA,功能芯片配置完成
S103、FPGA检测到CPU配置完功能芯片后,向寄存器aReg写入sta3;
S104、CPU读到寄存器aReg为sta3后向寄存器bReg写入sta3,之后CPU与FPGA进入正常工作模式。
第二阶段,如图1所示,包括如下步骤:
S201、FPGA每N1f秒更新一次寄存器aReg;
S202、CPU每N1c秒更新一次寄存器bReg;
FPGA与CPU各自更新寄存器的值可以不同,例如FPGA将寄存器aReg从Af更新为Bf再更新为Af,CPU将寄存器bReg从Ac更新为Bc再更新为Ac,循环反复,必须Af不等于Bf,Ac不等于Bc,但Af与Ac之间、Bf与Bc之间没有限制。
第三阶段,图1所示,包括如下步骤:
S301、如果FPGA连续N2f时间内未更新寄存器aReg,CPU复位FPGA;
S302、如果CPU连续N2c时间内未更新寄存器bReg,FPGA复位CPU;
上述FPGA与CPU更新寄存器的时间间隔和判断是否复位的时间间隔也可以不同,例如分别为N1f,N1c,N2f,N2c,只要保证N1f小于N2f,以及N1c小于N2c就可以。也可以将FPGA与CPU更新寄存器的时间间隔设为N1,FPGA与CPU判断是否复位的时间间隔设为N2,只要保证N1小于N2即可,图1就是采用这样的设置方式。
如图2所示硬件复位系统框图,嵌入式通信设备A中包括FPGA模块、CPU模块以及FPGA与CPU关联的复位模块。在以下状态下FPGA通过HD_CPU_RST信号复位CPU。
(1)如果FPGA启动过程中连续N2时间内读到寄存器bReg内容始终为0x0000;即在FPGA启动过程中FPGA读取到的寄存器bReg的状态信息始终为初始状态;
(2)如果系统正常工作后,CPU在N2时间内没有更新寄存器bReg内容;
(3)CPU启动系统硬复位,即CPU向寄存器bReg写入RESET0,再写入RESET1,FPGA会复位CPU并同时复位自己。
下面结合图3并通过系统启动与监控处理流程对本发明的实现过程进行详细说明。
在上电启动时,FPGA先启动并初始化自己相关的IO口等,CPU启动时初始化相关的软件模块,之后初始化配置与FPGA相关的总线接口。
CPU检测FPGA是否处于就绪阶段,FPGA就绪后,CPU配置FPGA功能芯片,包括Afe8406等。配置完成后向寄存器bReg写入sta2,通知FPGA配置完成。
FPGA检测到CPU配置完功能芯片后,向寄存器aReg写入sta3,CPU读到寄存器aReg为sta3后向寄存器bReg写入sta3,FPGA进入正常工作模式。
正常工作模式下,FPGA每N1秒更新一次寄存器aReg;CPU每N1秒更新一次寄存器bReg;
如果FPGA或CPU连续N2时间内没有更新相应的寄存器aReg或寄存器bReg,则复位对方。
FPGA复位CPU的情况如下:(1)如果FPGA启动过程中连续N2时间内读到寄存器bReg内容始终为sta0,即寄存器bReg始终为初始状态;(2)如果系统正常工作后,CPU在N2时间内没有更新寄存器bReg内容;(3)如果CPU启动系统硬复位,即CPU向寄存器bReg写入RESET0,再写入RESET1,FPGA会复位CPU并同时复位自己。
系统正常情况下FPGA与CPU各自复位遵循以下原则:
(1)CPU自身复位不应影响FPGA的正常运行;
(2)FPGA自身的复位也不应影响CPU的正常运行;
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (8)

1. 一种嵌入式设备中监控看门狗的实现方法,其特征在于,所述方法包括以下处理步骤:
1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;
2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当一方发现另一方未更新写入的寄存器,则对另一方进行复位。
2. 根据权利要求1所述的嵌入式设备中监控看门狗的实现方法,其特征在于,在FPGA启动过程中FPGA读取到的寄存器bReg的状态信息始终为初始状态时,对CPU进行复位。
3. 根据权利要求1所述的嵌入式设备中监控看门狗的实现方法,其特征在于,在正常工作模式下,CPU以向寄存器bReg写入RESET0,再写入RESET1的方式启动系统硬复位,FPGA读取信息后复位CPU同时复位自身。
4. 根据权利要求1所述的嵌入式设备中监控看门狗的实现方法,其特征在于,在正常工作模式下,FPGA和CPU其中一方的复位过程不影响另一方的正常运行。
5. 根据权利要求1-4任一项所述的嵌入式设备中监控看门狗的实现方法,其特征在于,所述步骤1)具体包括以下处理过程:
11)CPU启动后,读寄存器aReg,如果其状态信息是sta1,则CPU认为FPGA就绪,开始配置功能芯片,CPU调用功能芯片的配置文件,对芯片进行配置;
12)CPU完成配置后,在寄存器bReg写入状态信息sta2,并通知FPGA,功能芯片配置完成;
13)FPGA向寄存器aReg写入状态信息sta3,CPU读到寄存器aReg中的状态信息为sta3后向寄存器bReg写入状态信息sta3,FPGA进入正常工作模式;
上述的状态信息sta1、sta2、sta3为各不相同的状态值。
6. 根据权利要求1-4任一项所述的嵌入式设备中监控看门狗的实现方法,其特征在于,所述步骤2)具体包括以下处理过程:
21)正常工作模式下,FPGA每N1f秒更新一次寄存器aReg,若CPU检测到FPGA在N2f时间内没有更新该寄存器则复位FPGA;
22)正常工作模式下,CPU每N1c秒更新一次寄存器bReg,若FPGA检测到CPU在N2c时间内没有更新该寄存器则复位CPU。
7. 根据权利要求6所述的嵌入式设备中监控看门狗的实现方法,其特征在于,所述CPU检测寄存器的时间周期N2f大于FPGA更新寄存器的时间周期N1f;所述FPGA检测寄存器的时间周期N2c大于CPU更新寄存器的时间周期N1c。
8. 根据权利要求6所述的嵌入式设备中监控看门狗的实现方法,其特征在于,正常工作模式下,所述FPGA与CPU分别更新寄存器aReg与寄存器bReg的值不同。
CN200810066973XA 2008-05-07 2008-05-07 嵌入式设备中监控看门狗的实现方法 Active CN101271415B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810066973XA CN101271415B (zh) 2008-05-07 2008-05-07 嵌入式设备中监控看门狗的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810066973XA CN101271415B (zh) 2008-05-07 2008-05-07 嵌入式设备中监控看门狗的实现方法

Publications (2)

Publication Number Publication Date
CN101271415A CN101271415A (zh) 2008-09-24
CN101271415B true CN101271415B (zh) 2011-10-12

Family

ID=40005403

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810066973XA Active CN101271415B (zh) 2008-05-07 2008-05-07 嵌入式设备中监控看门狗的实现方法

Country Status (1)

Country Link
CN (1) CN101271415B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103631674B (zh) * 2012-08-24 2016-05-04 京信通信系统(中国)有限公司 嵌入cpu的fpga及其启动方法
CN103595728B (zh) * 2013-11-25 2016-08-24 浙江大学城市学院 一种保障网络设备安全可靠的系统和方法
CN105279037B (zh) * 2014-06-30 2019-01-11 惠州市伟乐科技股份有限公司 看门狗监控方法和系统
CN104216813B (zh) * 2014-09-02 2017-06-27 迈普通信技术股份有限公司 一种从核状态的监控方法及装置
CN105426263B (zh) * 2015-10-30 2018-08-07 中国印钞造币总公司 一种实现金库系统安全运行的方法及系统
CN107484078A (zh) * 2017-09-29 2017-12-15 奇瑞汽车股份有限公司 汽车音响系统及其启动控制方法
CN109032883A (zh) * 2018-03-15 2018-12-18 山东超越数控电子股份有限公司 一种应用于机架模块的软硬件看门狗结构及实现方法
CN109062028A (zh) * 2018-09-04 2018-12-21 北京实干兴邦科技有限公司 一种飞控计算机的多余度控制系统
CN111625075A (zh) * 2020-05-20 2020-09-04 天津芯海创科技有限公司 一种软件可配置的复位装置和方法
CN111651325A (zh) * 2020-06-02 2020-09-11 中电科航空电子有限公司 一种机载设备任务监控系统及方法
CN112214373B (zh) * 2020-09-17 2022-04-12 上海金仕达软件科技有限公司 硬件监控方法、装置及电子设备
CN112506689B (zh) * 2020-12-10 2023-08-11 盛立安元科技(杭州)股份有限公司 一种异构柜台系统风险监控方法、装置、设备及介质
CN116955093B (zh) * 2023-09-21 2024-01-30 紫光恒越技术有限公司 一种cpu状态监控方法、装置、系统、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6237479B1 (en) * 1997-03-31 2001-05-29 Komatsu Ltd. Servo press controller

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6237479B1 (en) * 1997-03-31 2001-05-29 Komatsu Ltd. Servo press controller

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JP昭63-75843A 1988.04.06
JP特开平5-112250A 1993.05.07

Also Published As

Publication number Publication date
CN101271415A (zh) 2008-09-24

Similar Documents

Publication Publication Date Title
CN101271415B (zh) 嵌入式设备中监控看门狗的实现方法
EP2189901B1 (en) Method and system to enable fast platform restart
JP5497923B2 (ja) システム管理モードにおけるプロセッサ間割り込みの再方向付け
US7904708B2 (en) Remote management of UEFI BIOS settings and configuration
CA2861257C (en) Fault tolerance for complex distributed computing operations
US7584374B2 (en) Driver/variable cache and batch reading system and method for fast resume
US20140129818A1 (en) Electronic device and booting method
US20110202778A1 (en) Method and apparatus for managing power from a sequestered partition of a processing system
CN106201527B (zh) 一种基于逻辑分区的应用程序容器系统
WO2019028854A1 (zh) 一种虚拟机的状态管理方法、装置和智能终端
CN102147763A (zh) 一种网络日志的记录方法、系统及计算机
CN103257922B (zh) 一种快速测试bios与os接口代码可靠性的方法
CN116521209B (zh) 操作系统的升级方法及装置、存储介质及电子设备
US8185913B1 (en) Manageability platform in an unified system
CN116302141B (zh) 串口切换方法、芯片及串口切换系统
CN109690496B (zh) 存储器监视器
CN105159722B (zh) Rtc唤醒系统的方法及计算机
US8543803B2 (en) Apparatus, system, and method for accurate automated scheduling of computer suspend and resume
US20140025903A1 (en) Multi-core processor system
US6826701B1 (en) Re-running general purpose event control methods in a computer system
KR101100894B1 (ko) 임베디드 장치의 오류검출 및 복구방법
EP2691853B1 (en) Supervisor system resuming control
CN103186403A (zh) 节点置换处理方法与使用该方法的服务器系统
WO2018045887A1 (zh) 机顶盒的强制待机方法及装置
CN110377446A (zh) 一种异构混合内存系统异常恢复方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SHENZHEN GUOREN COMMUNICATION CO., LTD.

Free format text: FORMER OWNER: GUOREN COMMUNICATION CO LTD., SHENZHEN

Effective date: 20150810

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150810

Address after: 518000 Guangdong city of Shenzhen province Nanshan District high tech park of science and technology in three Chinese central road building A building room 13F1303

Patentee after: Shenzhen compatriots limited company that communicates by letter

Address before: 8 building, 518057 building, three road, Nanshan District science and Technology Park, Shenzhen, Guangdong

Patentee before: Guoren Communication Co., Ltd., Shenzhen

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191012

Address after: Room 1403, building a, Guoren building, No. 5, Keji Zhongsan Road, gaoxinyuan Middle District, Maling community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Guoren Wireless Communication Co., Ltd.

Address before: 518000 Guangdong city of Shenzhen province Nanshan District high tech park of science and technology in three Chinese central road building A building room 13F1303

Patentee before: Shenzhen compatriots limited company that communicates by letter