CN1821972A - 用于响应控制模块故障的方法 - Google Patents

用于响应控制模块故障的方法 Download PDF

Info

Publication number
CN1821972A
CN1821972A CNA2006100046941A CN200610004694A CN1821972A CN 1821972 A CN1821972 A CN 1821972A CN A2006100046941 A CNA2006100046941 A CN A2006100046941A CN 200610004694 A CN200610004694 A CN 200610004694A CN 1821972 A CN1821972 A CN 1821972A
Authority
CN
China
Prior art keywords
control module
resetting
memory
caused
unscheduled event
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.)
Granted
Application number
CNA2006100046941A
Other languages
English (en)
Other versions
CN100397354C (zh
Inventor
T·A·罗宾逊
J·H·斯图尔特
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.)
Motors Liquidation Co
Original Assignee
Motors Liquidation Co
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 Motors Liquidation Co filed Critical Motors Liquidation Co
Publication of CN1821972A publication Critical patent/CN1821972A/zh
Application granted granted Critical
Publication of CN100397354C publication Critical patent/CN100397354C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering

Abstract

提供了一种方法,用来在硬件或软件出现故障使得处理器复位之后,立刻保存系统信息。在故障逼近之后且在处理器允许复位发生之前,该处理器被指示把除了能够用来确定复位原因的任何处理器寄存器以外的固定数量的系统堆栈SRAM拷贝到SRAM的保存区中。在初始化序列期间,SRAM的保存区被检测,但是不被重写。这使得可以利用所有保存的SRAM数据进行分析,该所保存的SRAM数据包括故障发生时的先前的堆栈内容和寄存器设置。

Description

用于响应控制模块故障的方法
技术领域
本发明涉及到一种用于诊断和分析控制模块故障的方法。
背景技术
当软件或硬件故障使得控制模块处理器复位时,除非连接外部逻辑分析或调试设备来预测这些故障,否则与复位原因有关的数据在复位的过程中通常会丢失。而对大多数问题来说,由于设备的成本和复杂性原因,连接到外部逻辑分析和调试设备是不可行的。此外,外部逻辑分析和调试设备经常减慢控制模块的处理速度,并产生不必要的电子干扰。最后,对每个车辆来说,都连接外部逻辑分析或调试设备将是不实际的。
发明内容
根据本发明的一个优选实施例,提供了一种方法,用于在硬件或软件出现故障使得处理器复位之后,立刻保存系统信息。在故障逼近之后且在处理器允许复位发生之前,该处理器被指示把固定数量的系统堆栈SRAM(除了能够被用来确定复位原因的任何处理器寄存器以外)拷贝到SRAM的保存区。
在初始化序列期间,SRAM的保存区被检测,但是不被重写。这使得应用程序可以利用所有保存的SRAM数据,该所保存的SRAM数据包括故障发生时的先前的堆栈内容和寄存器设置。该应用程序然后在初始化期间把这些内容存储到非易失性存储器中。用于诊断故障原因的外部工具也可以利用这个区。外部工具能够读取所保存的SRAM数据的内容,并重构故障之前被执行的命令的序列。
因此,用于诊断、分析和响应控制模块故障的方法包括初始化控制模块;确定控制模块的复位是否由意外的事件导致;如果复位是由意外的事件导致,那么从第一存储器中把在控制模块复位之前所记录的数据拷贝到第二非易失性存储器中;并把在控制模块复位之前所记录的数据传送到一个外部工具中用来分析。
附图说明
从下面为实现本发明的最佳模式的详细描述中,并结合附图,本发明的上述特征和优点以及其他特征和优点将是显而易见的。
图1是根据本发明的一个方面的一个维修系统的示意图;
图2是一个方框图,描述了根据本发明的一个优选实施例的方法;
图3是一个方框图,描述了图2中方法的一个步骤;
图4是一个方框图,描述了图2中方法的一个步骤;和
图5是一个方框图,描述了图4中方法的一个步骤。
具体实施方式
参照图,其中同样的参考数字指的是同样的元件。图1示出控制模块10,其具有微处理器12、存储器14、存储器16和一个或多个输入/输出端口18。该控制模块10在下文中将被描述为控制一个车辆系统(未示出)。这样的系统可以包括(但不限于):制动系统;燃料存储系统;发动机;加热,通风和空气调节系统;传动系统等。存储器14和16在下文中将分别被描述为SRAM 14和ROM 16。不过,应该意识到任何数量的可替代的存储器是可以想象到的。
图2-5描述了本发明的方法。更准确的说,图2-5示出了一系列表示微处理器12执行的步骤的方框图。
参照图2,示出了用于诊断和分析控制模块故障的方法50(这里也指算法50)。在步骤52,算法50检测车辆的点火装置(未示出)是否已经点着,这一点优选地由车辆点火信号的接收来指示。如果点火装置没有点着,那么步骤52被重复。如果点火装置已经点着,那么算法50进行到步骤54。在步骤54,资源被初始化,这一点将在下文中详细描述。在步骤56,运行应用软件,这一点也将在下文中详细描述。
参照图3,其中资源被初始化的步骤54被详细示出。在步骤58,硬件设备、诸如微处理器12、RAM 14和ROM 16被初始化。在步骤60,算法50确定最后的复位是否由意外事件导致。对本公开的发明来说,“意外事件”包括不在预料事件的预定列表中的任何事件,例如关闭车辆。如果最后的复位是由意外事件导致的,那么算法50进行到步骤62。在步骤62,把在最近复位之前所记录的来自SRAM 14的保存区的数据拷贝到非易失性存储器、诸ROM 16中,并且随后算法50进行到步骤62。SRAM 14的保存区是预定的存储器位置,这一点将在下文中详细描述。当车辆的点火装置被关闭时,拷贝到非易失性存储器的数据不会丢失,并且可以由外部工具、诸如维修工具、计算机、诊断设备等利用来进行分析。
参照图4,其中运行应用软件的步骤56被更详细地示出。在步骤64,运行周期性的任务过程。周期性的任务过程特指每一种控制模块,但是例如可以包括控制换档、保持发动机输出速度、监控节流阀的位置等。当运行周期性的任务过程时,在意外事件之前所记录的数据能够从非易失性存储器、诸如ROM 16传送到外部工具。该外部工具然后读取所记录的数据并且重构意外事件之前被执行的命令的序列。在步骤66,运行事件处理。“事件处理”包括分析每次复位,以确定它是否由意外事件导致。在步骤68,算法50确定,是否已命令停止运行。如果没有命令停止运行,那么算法50返回到步骤64。
参照图5,运行事件处理的步骤66被更详细地示出。在步骤70,算法50确定,是否最近的复位是由意外事件导致。如果最近的复位不是由意外事件导致的,那么算法50进行到步骤72,其中运行定义的逻辑程序。当运行定义的逻辑时,停止处理,从而算法50可以响应于导致复位的预料事件。定义的逻辑可以例如包括仅在复位之前传送的接收和处理发动机指令。如果最后的复位是由意外事件导致的,那么算法50进行到步骤74。在步骤74,把在复位之前所记录的堆栈数据从第一SRAM 14存储器位置拷贝到SRAM 14的保存区,并把最近复位之前所记录的寄存器数据从微处理器12拷贝到SRAM 14的保存区。SRAM 14的保存区是预定的存储器位置,该存储器位置可以被检测但是不会被重写。因此,在最近复位之前所记录的且在SRAM 14的保存区中保存的数据临时是安全的,并可以在后来被拷贝到非易失性存储器、诸如ROM 16中或者由外部工具分析。在步骤76,控制模块10被复位。
图1-5所示中的且其中所描述的步骤不必按所示的顺序执行,除非其中另外所指示的。
虽然用来实现本发明的最好模式已经被详细地描述了,但是那些熟悉本发明相关领域的人将意识到用于实践本发明的各种各样的替代设计和实施例都在所附权利要求的范围内。

Claims (16)

1.用于响应控制模块故障的方法,其包括:
初始化控制模块;
确定控制模块的复位是否由意外事件导致;和
如果所述复位是由意外事件导致,那么把在控制模块的所述复位之前所记录的数据从第一存储器的第一存储器位置拷贝到第一存储器的第二存储器位置。
2.权利要求1的方法,还包括把在控制模块的所述复位之前所记录的数据传送到外部工具中用来分析。
3.权利要求1的方法,还包括运行控制模块的周期性的任务过程。
4.权利要求1的方法,还包括,如果所述复位是由意外事件导致,那么把在控制模块的所述复位之前所记录的数据从第一存储器拷贝到第二非易失性存储器。
5.权利要求4的方法,其中所述把数据从第一存储器拷贝到第二非易失性存储器包括把数据从SRAM设备拷贝到ROM设备。
6.权利要求1的方法,还包括,如果所述复位是由意外事件导致,那么把数据从微处理器拷贝到第一存储器。
7.权利要求1的方法,还包括在把数据从第一存储器的第一存储器位置拷贝到第一存储器的第二存储器位置的所述步骤之后,复位控制模块。
8.权利要求1的方法,还包括,如果所述复位不是由意外事件导致,那么在所述确定步骤之后运行定义的逻辑程序。
9.权利要求1的方法,还包括接收到车辆点火信号。
10.用于响应控制模块故障的方法,其包括:
初始化控制模块;
确定控制模块的复位是否由意外事件导致;
在所述确定步骤之后,如果该复位是由意外事件导致,那么把在控制模块的所述复位之前所记录的数据从第一存储器拷贝到第二非易失性存储器;
把在控制模块的所述复位之前所记录的数据传送到外部工具中用来分析;
运行控制模块的周期性的任务过程;和
在所述确定步骤之后,如果所述复位是由意外事件导致,那么把在控制模块的所述复位之前所记录的数据从第一存储器的第一存储器位置拷贝到第一存储器的第二存储器位置。
11.权利要求10的方法,其中所述把数据从SRAM设备拷贝到非易失性存储器包括把数据从SRAM设备拷贝到ROM设备。
12.权利要求10的方法,还包括,如果所述复位是由意外事件导致,那么把数据从微处理器拷贝到SRAM设备。
13.权利要求10的方法,还包括在把数据从SRAM设备的第一存储器位置拷贝到SRAM设备的第二存储器位置的所述步骤之后,复位所述控制模块。
14.权利要求10的方法,还包括,如果所述复位不是由意外事件导致,那么在所述确定步骤之后运行定义的逻辑程序。
15.权利要求10的方法,还包括接收到车辆点火信号。
16.用于响应控制模块故障的方法,其包括:
接收到车辆点火信号;
初始化控制模块;
确定控制模块的复位是否由意外事件导致;
在所述确定步骤之后,如果所述复位是由意外事件导致,那么把在控制模块的所述复位之前所记录的数据从SRAM设备拷贝到非易失性存储器;
把在控制模块的所述复位之前所记录的数据传送到外部工具中用来分析;
运行控制模块的周期性的任务过程;和
在所述确定步骤之后,如果所述复位是由意外事件导致,那么把在控制模块的所述复位之前所记录的数据从SRAM设备的第一存储器位置拷贝到SRAM设备的所保护的存储器位置;
在所述确定步骤之后,如果所述复位不是由意外事件导致,那么运行定义的逻辑程序;和
复位控制模块。
CNB2006100046941A 2005-02-15 2006-02-15 用于响应控制模块故障的方法 Active CN100397354C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/058503 2005-02-15
US11/058,503 US7406624B2 (en) 2005-02-15 2005-02-15 Method for responding to a control module failure

Publications (2)

Publication Number Publication Date
CN1821972A true CN1821972A (zh) 2006-08-23
CN100397354C CN100397354C (zh) 2008-06-25

Family

ID=36817029

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100046941A Active CN100397354C (zh) 2005-02-15 2006-02-15 用于响应控制模块故障的方法

Country Status (3)

Country Link
US (1) US7406624B2 (zh)
CN (1) CN100397354C (zh)
DE (1) DE102006006843B4 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7502673B2 (en) * 2004-08-26 2009-03-10 General Motors Corporation Method and apparatus for remote vehicle communication
TW201348948A (zh) * 2012-05-22 2013-12-01 Hon Hai Prec Ind Co Ltd 用於記錄筆記型電腦關機資訊的方法及系統
US9141505B1 (en) * 2012-09-27 2015-09-22 Emc Corporation Adaptive failure survivability in a storage system using save time and data transfer after power loss
FR3021430B1 (fr) * 2014-05-20 2016-05-13 Bull Sas Procede d'obtention d'informations stockees dans des registres de module(s) de traitement d'un calculateur juste apres la survenue d'une erreur fatale

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2999016B2 (ja) * 1991-05-17 2000-01-17 アスコ株式会社 車両安全装置の制御システム
US5327435A (en) * 1992-11-13 1994-07-05 Digital Equipment Corporation Method for testing a processor module in a computer system
JP3561002B2 (ja) * 1994-05-18 2004-09-02 富士通株式会社 ディスク装置
JPH08132992A (ja) * 1994-11-10 1996-05-28 Mitsubishi Electric Corp 車載用制御装置
JP3166634B2 (ja) * 1996-11-07 2001-05-14 日産自動車株式会社 車両用制御装置の故障記憶装置
JP3701776B2 (ja) * 1997-08-05 2005-10-05 アルプス電気株式会社 マイクロコンピュータ搭載の車載電装機器
US6141771A (en) * 1998-02-06 2000-10-31 International Business Machines Corporation Method and system for providing a trusted machine state
DE19836126A1 (de) * 1998-08-10 2000-02-24 Siemens Ag Steuergerät
US6738898B1 (en) * 1999-03-08 2004-05-18 Seiko Epson Corporation Information processor, method for saving/loading data, and information recorded
US6728907B1 (en) * 2000-04-14 2004-04-27 Microsoft Corporation System and method for self-diagnosing system crashes
CN1400529A (zh) * 2001-07-30 2003-03-05 华为技术有限公司 一种实时嵌入系统的故障定位方法
US7085886B2 (en) * 2003-05-28 2006-08-01 International Buisness Machines Corporation Autonomic power loss recovery for a multi-cluster storage sub-system
US7254744B2 (en) * 2003-08-19 2007-08-07 Intel Corporation BIOS for saving and restoring operational state in the absence of AC power
US7308609B2 (en) * 2004-04-08 2007-12-11 International Business Machines Corporation Method, data processing system, and computer program product for collecting first failure data capture information

Also Published As

Publication number Publication date
CN100397354C (zh) 2008-06-25
DE102006006843B4 (de) 2018-02-08
US7406624B2 (en) 2008-07-29
US20060184827A1 (en) 2006-08-17
DE102006006843A1 (de) 2006-10-12

Similar Documents

Publication Publication Date Title
JP4476320B2 (ja) 監視制御回路を有する車載電子制御装置
US7706900B2 (en) Control apparatus with fast I/O function, and control method for control data thereof
US7818620B2 (en) Program failure analysis system, failure analysis method, and emulator device
RU2394276C2 (ru) Способ основанной на модели диагностики мехатронной системы
CN100397354C (zh) 用于响应控制模块故障的方法
CN112485010A (zh) 发动机电控执行器响应状态的检测方法及系统
CN100388234C (zh) 一种基于有限状态机的对内存变量改写进行监控的方法
US20090063907A1 (en) Debugging system, debugging apparatus and method
US10162324B2 (en) Method for manipulating a control program of a control device
JP2006338445A (ja) 異常情報格納装置
JP2009509256A (ja) データ処理装置および作動方法
CN101095119A (zh) 分析用于机动车内的安全关键计算机系统的嵌入式系统的装置和方法
CN1329839C (zh) 一种计算机cpu抗干扰的设计方法
US8171341B2 (en) Method for controlling an operating mechanism and a manipulation unit
CN100507872C (zh) 软硬件协调处理的自诊断系统和方法
JP4725240B2 (ja) データトレース方法およびトレースモジュール
JP4747683B2 (ja) 車載電子制御システム及びその故障診断方法、並びに車載電子制御装置
JPH11119992A (ja) ファームウェアのトレース制御装置
JP3576978B2 (ja) メモリポート、記憶装置、情報処理システム
JPH07190895A (ja) 車両の診断装置
JP3705848B2 (ja) バス制御モジュール
JPS6383843A (ja) トレ−ス情報の収集方式
WO2012137321A1 (ja) 情報処理装置、及びその方法
JP6631063B2 (ja) 電子装置
CN117891509A (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