CN113341924A - 一种ecu下电方法、装置、设备及存储介质 - Google Patents
一种ecu下电方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113341924A CN113341924A CN202110642383.2A CN202110642383A CN113341924A CN 113341924 A CN113341924 A CN 113341924A CN 202110642383 A CN202110642383 A CN 202110642383A CN 113341924 A CN113341924 A CN 113341924A
- Authority
- CN
- China
- Prior art keywords
- memory
- data
- flash
- ecu
- power
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 230000008569 process Effects 0.000 claims abstract description 40
- 230000008439 repair process Effects 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 9
- 238000013500 data storage Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 239000013307 optical fiber Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种ECU下电方法、装置、设备及存储介质。该方法包括:接收到下电请求后,读取受保护缓存PRAM中的目标数据;根据所述目标数据判断是否存在内存故障;若存在内存故障,则擦除Flash进行错误修复,通过本发明的技术方案,以实现能够在AUTOSAR架构的ECUM模块管理的下电流程的基础上,增加了数据完整性校验以及内存故障状态检查,保证ECU下电过程中可将数据存入安全的数据存储区域,并进行了备份存储。
Description
技术领域
本发明实施例涉及车辆技术领域,尤其涉及一种ECU下电方法、装置、设备及存储介质。
背景技术
目前车用控制器在收到下电指令,满足下电条件后,会进入固定的下电流程。现有的基于AUTOSAR架构的ECU下电流程,均是由BswM模块和EcuM模块处理。其中,BswM模块属于模式管理的一部分,其主要功能为模式仲裁、模式控制,模式仲裁是接收来自SWC或其他BSW模块的模式请求和通知。先由BswM对基础软件各模块的调度状态进行修改,停止周期任务,将关键数据写入NvM(NonVolatile Memory,固定存储器)。完成NvM写入后,BswM模块将权限交由EcuM模块,由EcuM模块完成芯片的下电处理。EcuM模块会对各模块进行Deinit操作后,关闭操作系统,并完成用户一些关闭操作系统的定制化任务,最后使芯片断电。ECU再次上电后,上电流程中将从Flash中读取上次存储数据。在全部操作流程中,没有记录是否安全有效完成全部下电流程;在ECU的下一运行周期中,也没有对flash数据进行任何有效性的校验。
在下电写NvM操作Flash的时候,如因外部原因断电,芯片内存ECC校验将无法通过,芯片会锁定该Flash区域。上电后访问此区域时,将会触发系统错误,系统无法有效运行,同时也将丢失历史有效数据。
当前实现内存校验的方案均由OS模块负责处理,当访问到失效的Flash区域后,OS会触发进入系统错误处理函数,并将Flash区域擦除进行修复。而擦除修复Flash需要时间较长,需要几百毫秒甚至数秒,在部分控制器中无法满足实时性要求。
发明内容
本发明实施例提供一种ECU下电方法、装置、设备及存储介质,以实现能够在AUTOSAR架构的ECUM模块管理的下电流程的基础上,增加了数据完整性校验以及内存故障状态检查,保证ECU下电过程中可将数据存入安全的数据存储区域,并进行了备份存储。若Flash出现异常,芯片内存出现ECC故障,数据被破坏时,ECU可读取外部存储中的数据备份执行程序,保证ECU在本运行周期中使用的参数均为可信的有效参数。修复Flash的动作在下电时进行,并可随时由唤醒源信号中断,保证ECU工作时可在规定时间内做出应答,解决了当前修复故障时间过长导致ECU启动后长时间无法正常运行的问题。
第一方面,本发明实施例提供了一种ECU下电方法,包括:
接收到下电请求后,读取受保护缓存PRAM中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则擦除Flash进行错误修复。
进一步的,还包括:
在擦除Flash期间,判断是否存在有效唤醒源;
若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
进一步的,对有效唤醒源做出响应包括:
在下电时将运行数据存储至片外存储设备;
存储完成之后,控制ECU重启。
进一步的,根据所述目标数据判断是否存在内存故障,包括:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
进一步的,还包括:
若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
进一步的,还包括:
接受到上电请求后,读取受保护缓存中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则读取片外存储设备中备份的运行数据;
读取完成后,禁用Flash;
控制ECU正常上电进入初始化流程。
进一步的,在根据所述目标数据判断是否存在内存故障之后,还包括:
若不存在内存故障,则读取Flash中存储的运行数据;
若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
第二方面,本发明实施例还提供了一种ECU下电装置,该装置包括:
第一读取模块,用于接收到下电请求后,读取受保护缓存PRAM中的目标数据;
第一判断模块,用于根据所述目标数据判断是否存在内存故障;
擦除模块,用于若存在内存故障,则擦除Flash进行错误修复。
进一步的,还包括:
有效唤醒源判断模块,用于在擦除Flash期间,判断是否存在有效唤醒源;
响应模块,用于若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
进一步的,所述响应模块具体用于:
在下电时将运行数据存储至片外存储设备;
存储完成之后,控制ECU重启。
进一步的,所述第一判断模块具体用于:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
进一步的,还包括:
第一备份模块,用于若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
进一步的,还包括:
第二读取模块,用于接受到上电请求后,读取受保护缓存中的目标数据;
第二判断模块,用于根据所述目标数据判断是否存在内存故障;
第二备份模块,用于若存在内存故障,则读取片外存储设备中备份的运行数据;
禁用模块,用于读取完成后,禁用Flash;
控制模块,用于控制ECU正常上电进入初始化流程。
进一步的,还包括:
第三读取模块,用于在根据所述目标数据判断是否存在内存故障之后,若不存在内存故障,则读取Flash中存储的运行数据;
获取模块,用于若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
写入模块,用于若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例中任一所述的ECU下电方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中任一所述的ECU下电方法。
本发明实施例通过接收到下电请求后,读取受保护缓存PRAM中的目标数据;根据所述目标数据判断是否存在内存故障;若存在内存故障,则擦除Flash进行错误修复,以实现能够在AUTOSAR架构的ECUM模块管理的下电流程的基础上,增加了数据完整性校验以及内存故障状态检查,保证ECU下电过程中可将数据存入安全的数据存储区域,并进行了备份存储。若Flash出现异常,芯片内存出现ECC故障,数据被破坏时,ECU可读取外部存储中的数据备份执行程序,保证ECU在本运行周期中使用的参数均为可信的有效参数。修复Flash的动作在下电时进行,并可随时由唤醒源信号中断,保证ECU工作时可在规定时间内做出应答,解决了当前修复故障时间过长导致ECU启动后长时间无法正常运行的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例一中的一种ECU下电方法的流程图;
图1a是本发明实施例一中的ECU下电流程图的图示;
图1b是本发明实施例一中的ECU上电流程图的图示;
图2是本发明实施例二中的一种ECU下电装置的结构示意图;
图3是本发明实施例三中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例一
图1为本发明实施例一提供的一种ECU下电方法的流程图,本实施例可适用于ECU下电的情况,该方法可以由本发明实施例中的ECU下电装置来执行,该ECU下电装置可采用软件和/或硬件的方式实现,如图1所示,该ECU下电方法具体包括如下步骤:
S110,接收到下电请求后,读取受保护缓存PRAM中的目标数据。
其中,下电请求的生成方式可以为当检测到车辆处于熄火状态的时候,生成下电请求;也可以为当接收到诊断仪发送的复位指令后,生成下电请求。
S120,根据所述目标数据判断是否存在内存故障。
具体的,根据目标数据判断是否存在内存故障的方式可以为,若目标数据中包含故障标志,则确定存在内存故障,若目标数据中未包含故障标志,则确定不存在内存故障。根据目标数据判断是否存在内存故障的方式还可以为,判断目标数据中是否包含ECC错误标志位;若包含ECC错误标志位,则内存故障;若未包含ECC错误标志位,则不存在内存故障。本发明实施例对此不进行限制。
S130,若存在内存故障,则擦除Flash进行错误修复。
可选的,还包括:
在擦除Flash期间,判断是否存在有效唤醒源;
若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
其中,所述有效唤醒源可以为钥匙门唤醒,也可以为CAN信号唤醒。
可选的,对有效唤醒源做出响应包括:
在下电时将运行数据存储至片外存储设备;
其中,所述片外存储设备可以为片外EEPROM。
存储完成之后,控制ECU重启。
可选的,在下电时将运行数据存入片外存储设备包括:
ECU获取运行数据。
可选的,根据所述目标数据判断是否存在内存故障,包括:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
可选的,还包括:
若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
可选的,还包括:
接受到上电请求后,读取受保护缓存中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则读取片外存储设备中备份的运行数据;
读取完成后,禁用Flash;
控制ECU正常上电进入初始化流程。
其中,上电请求的生成方式可以为整车网络唤醒后,生成上电请求,也可以为上电操作,生成上电请求。
可选的,在根据所述目标数据判断是否存在内存故障之后,还包括:
若不存在内存故障,则读取Flash中存储的运行数据;
若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
现有技术多是通过AUTOSAR EcuM模块和BswM模块实现ECU下电。在EcuM标准模块和BswM模块中,仅完成了将数据写入芯片Flash的操作,并在下一次上电后读取。过程中没有对数据进行完整性和有效性的校验,也没有对错误数据进行处理修复的模块,当前AUTOSAR架构下的ECU下电流程中,没有保证数据完整性的模块及异常数据处理相关功能的模块,ECU在下电过程中遇到故障可能导致数据丢失。
AUTOSAR架构下一种ECU安全掉电的方法包括如下特征点:接收到下电请求后,在下电流程中,判断是否有内存故障。当识别到当前存在内存故障时,需要擦除Flash进行错误修复;在下电流程里修复Flash的擦除过程中,持续查询是否有有效的唤醒源(如钥匙门唤醒、CAN信号唤醒),并在识别到唤醒源后终止修复Flash,立即复位并做出响应,保证ECU主要功能运行不受影响。根据芯片当前的内存ECC故障状态,将需要存储的数据写入不同存储设备:若MCU内存区域存在ECC故障,则在下电时将数据存入片外存储设备(片外EEPROM);若当前不存在ECC故障,则将数据写入片内Flash中,并将数据备份存储到片外存储设备(片外EEPROM);在对应的安全启动上电流程中,首先判断内存数据是否可信,内存区域是否安全:通过读取Flash区域的数据,根据芯片ECC校验的结果,置内存数据有效标志位;在对应的安全启动上电流程中,识别到内存故障时,可以将标志位存储到Protect Ram区域,此区域中的数据不会因为芯片断电而丢失,也不与芯片的NvM空间重复;在对应的安全启动上电流程中识别到内存存在故障时,应对错误数据进行恢复,可通过spi通信读取独立于MCU的片外存储设备中的备份数据、历史有效数据或者默认数据等,作为本周期中的可靠数据,确保ECU运行周期中使用的数据为有效数据,确保ECU运行的安全性、稳定性。
本发明与现有技术相比,有以下收益:ECU在下电流程中,进行芯片内存故障修复,避免了现有的的上电时修复故障时间过长导致ECU上电后长时间失效的问题;ECU在下电修复过程中可随时取消动作,能保证ECU下电时对外部指令可及时作出相应;ECU在下电流程中,可识别当前ECC故障状态,保证数据可存储到安全的设备中不会丢失;ECU在下电流程中,在当前不存在ECC故障时,会将数据存储在芯片Flash区域以及片外存储设备中,若后续Flash出现故障,可从片外存储设备读取到历史有效数据;ECU在内存出现ECC故障时,可通过从外部存储设备中读取备份数据,保证ECU运行中使用的数据为完整有效数据,保证ECU运行状态安全可控。
如图1a和图1b所示,如在控制器的上一运行周期中,由于操作flash时外部原因导致芯片彻底断电,数据完整性遭到破坏,再次访问此Flash区域时,将会触发OS的操作系统错误处理函数Errorhook,此时会将芯片内存错误标志位写入Protect Ram中记录。此标志位不会随着ECU断电而消失。在下次上电后,将会首先读取此标志位,获取到当前存在ECC故障时,将从片外存储单元中读取历史有效数据,作为ECU本次运行周期的原始数据,同时在本周期内禁止访问有故障的Flash区域。保证了本周期程序运行的稳定性与可靠性。当未获取到芯片ECC故障时,将会访问芯片Flash区域读取历史数据同时进行ECC校验。若存在故障则进入上述故障处理机制;若不存在故障ECU将进入初始化,并继续执行正常程序。
在ECU下电过程中,会首先获取ECU芯片的ECC错误状态,当存在故障时,会进行擦除Flash进行故障修复。由于擦除过程时间较长,期间会持续查询是否有唤醒源存在,若存在有效唤醒源,ECU终止修复内存并进行重启复位,进入下一工作周期;当没有唤醒源,擦除Flash结束后,芯片将会清除故障标志位,并进入正常下电流程中。若当前不存在芯片内存ECC故障,则正常使用Flash,将NvM数据分别存储到Flash以及片外EEPROM中后进行下电。
ECU在下电流程中擦除flash,修复内存ECC故障,避免了上电后修复故障时间过长导致ECU无法在规定时间内进入正常运行模式;ECU在下电流程中擦出flash修复内存故障的同时,持续查询是否有复位源,可随时终止修复过程,避免擦除时间过长造成ECU对外部指令无响应;ECU在下电流程中根据当前ECC故障状态,决定将数据写入芯片内存或者片外存储设备,保证数能够安全存储;ECU在对应上电流程的配合操作中,从片外EEPROM中读取历史有效数据(或默认数据),保证ECU在当前运行周期内,使用可信数据运行程序,保证了控制器状态安全可控。
本实施例的技术方案,通过接收到下电请求后,读取受保护缓存PRAM中的目标数据;根据所述目标数据判断是否存在内存故障;若存在内存故障,则擦除Flash进行错误修复,以实现能够在AUTOSAR架构的ECUM模块管理的下电流程的基础上,增加了数据完整性校验以及内存故障状态检查,保证ECU下电过程中可将数据存入安全的数据存储区域,并进行了备份存储。若Flash出现异常,芯片内存出现ECC故障,数据被破坏时,ECU可读取外部存储中的数据备份执行程序,保证ECU在本运行周期中使用的参数均为可信的有效参数。修复Flash的动作在下电时进行,并可随时由唤醒源信号中断,保证ECU工作时可在规定时间内做出应答,解决了当前修复故障时间过长导致ECU启动后长时间无法正常运行的问题。
实施例二
图2为本发明实施例二提供的一种ECU下电装置的结构示意图。本实施例可适用于ECU下电的情况,该ECU下电装置可采用软件和/或硬件的方式实现,该ECU下电装置可集成在任何提供ECU下电功能的设备中,如图2所示,所述ECU下电装置具体包括:第一读取模块210、第一判断模块220和擦除模块230。
其中,第一读取模块210,用于接收到下电请求后,读取受保护缓存PRAM中的目标数据;
第一判断模块220,用于根据所述目标数据判断是否存在内存故障;
擦除模块230,用于若存在内存故障,则擦除Flash进行错误修复。
可选的,还包括:
有效唤醒源判断模块,用于在擦除Flash期间,判断是否存在有效唤醒源;
响应模块,用于若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
可选的,所述响应模块具体用于:
在下电时将运行数据存储至片外存储设备;
存储完成之后,控制ECU重启。
可选的,所述第一判断模块具体用于:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
可选的,还包括:
第一备份模块,用于若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
可选的,还包括:
第二读取模块,用于接受到上电请求后,读取受保护缓存中的目标数据;
第二判断模块,用于根据所述目标数据判断是否存在内存故障;
第二备份模块,用于若存在内存故障,则读取片外存储设备中备份的运行数据;
禁用模块,用于读取完成后,禁用Flash;
控制模块,用于控制ECU正常上电进入初始化流程。
可选的,还包括:
第三读取模块,用于在根据所述目标数据判断是否存在内存故障之后,若不存在内存故障,则读取Flash中存储的运行数据;
获取模块,用于若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
写入模块,用于若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
本实施例的技术方案,通过接收到下电请求后,读取受保护缓存PRAM中的目标数据;根据所述目标数据判断是否存在内存故障;若存在内存故障,则擦除Flash进行错误修复,以实现能够在AUTOSAR架构的ECUM模块管理的下电流程的基础上,增加了数据完整性校验以及内存故障状态检查,保证ECU下电过程中可将数据存入安全的数据存储区域,并进行了备份存储。若Flash出现异常,芯片内存出现ECC故障,数据被破坏时,ECU可读取外部存储中的数据备份执行程序,保证ECU在本运行周期中使用的参数均为可信的有效参数。修复Flash的动作在下电时进行,并可随时由唤醒源信号中断,保证ECU工作时可在规定时间内做出应答,解决了当前修复故障时间过长导致ECU启动后长时间无法正常运行的问题。
实施例三
图3为本发明实施例三中的一种计算机设备的结构示意图。图3示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图3显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MCA)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(Peripheral Component Interconnect,PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory,RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(只读光盘(Compact Disc-Read Only Memory,CD-ROM)、数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。另外,本实施例中的计算机设备12,显示器24不是作为独立个体存在,而是嵌入镜面中,在显示器24的显示面不予显示时,显示器24的显示面与镜面从视觉上融为一体。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network,LAN),广域网Wide AreaNetwork,WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Disks,RAID)系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的ECU下电方法:
接收到下电请求后,读取受保护缓存PRAM中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则擦除Flash进行错误修复。
进一步的,还包括:
在擦除Flash期间,判断是否存在有效唤醒源;
若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
进一步的,对有效唤醒源做出响应包括:
在下电时将运行数据存储至片外存储设备;
存储完成之后,控制ECU重启。
进一步的,根据所述目标数据判断是否存在内存故障,包括:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
进一步的,还包括:
若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
进一步的,还包括:
接受到上电请求后,读取受保护缓存中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则读取片外存储设备中备份的运行数据;
读取完成后,禁用Flash;
控制ECU正常上电进入初始化流程。
进一步的,在根据所述目标数据判断是否存在内存故障之后,还包括:
若不存在内存故障,则读取Flash中存储的运行数据;
若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
实施例四
本发明实施例四提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有发明实施例提供的ECU下电方法:
接收到下电请求后,读取受保护缓存PRAM中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则擦除Flash进行错误修复。
进一步的,还包括:
在擦除Flash期间,判断是否存在有效唤醒源;
若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
进一步的,对有效唤醒源做出响应包括:
在下电时将运行数据存储至片外存储设备;
存储完成之后,控制ECU重启。
进一步的,根据所述目标数据判断是否存在内存故障,包括:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
进一步的,还包括:
若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
进一步的,还包括:
接受到上电请求后,读取受保护缓存中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则读取片外存储设备中备份的运行数据;
读取完成后,禁用Flash;
控制ECU正常上电进入初始化流程。
进一步的,在根据所述目标数据判断是否存在内存故障之后,还包括:
若不存在内存故障,则读取Flash中存储的运行数据;
若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(Hyper Text TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种ECU下电方法,其特征在于,包括:
接收到下电请求后,读取受保护缓存PRAM中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则擦除Flash进行错误修复。
2.根据权利要求1所述的方法,其特征在于,还包括:
在擦除Flash期间,判断是否存在有效唤醒源;
若存在有效唤醒源,则终止修复Flash,并对有效唤醒源做出响应。
3.根据权利要求2所述的方法,其特征在于,对有效唤醒源做出响应包括:
在下电时将运行数据存储至片外存储设备;
存储完成之后,控制ECU重启。
4.根据权利要求1所述的方法,其特征在于,根据所述目标数据判断是否存在内存故障,包括:
判断目标数据中是否包含ECC错误标志位;
若包含ECC错误标志位,则内存故障;
若未包含ECC错误标志位,则不存在内存故障。
5.根据权利要求1所述的方法,其特征在于,还包括:
若不存在内存故障,则将运行数据写入Flash中,并将运行数据备份存储到片外存储设备。
6.根据权利要求1所述的方法,其特征在于,还包括:
接受到上电请求后,读取受保护缓存中的目标数据;
根据所述目标数据判断是否存在内存故障;
若存在内存故障,则读取片外存储设备中备份的运行数据;
读取完成后,禁用Flash;
控制ECU正常上电进入初始化流程。
7.根据权利要求6所述的方法,其特征在于,在根据所述目标数据判断是否存在内存故障之后,还包括:
若不存在内存故障,则读取Flash中存储的运行数据;
若在读取Flash中存储的运行数据时,获取硬件寄存器的状态信息;
若硬件寄存器的状态为故障,则将ECC错误标志位写入PRAM中。
8.一种ECU下电装置,其特征在于,包括:
第一读取模块,用于接收到下电请求后,读取受保护缓存PRAM中的目标数据;
第一判断模块,用于根据所述目标数据判断是否存在内存故障;
擦除模块,用于若存在内存故障,则擦除Flash进行错误修复。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110642383.2A CN113341924A (zh) | 2021-06-09 | 2021-06-09 | 一种ecu下电方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110642383.2A CN113341924A (zh) | 2021-06-09 | 2021-06-09 | 一种ecu下电方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113341924A true CN113341924A (zh) | 2021-09-03 |
Family
ID=77476464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110642383.2A Pending CN113341924A (zh) | 2021-06-09 | 2021-06-09 | 一种ecu下电方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113341924A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778061A (zh) * | 2021-09-16 | 2021-12-10 | 广州锦红源电子科技有限公司 | 电子控制器程序完整性的校验方法、装置、电子控制器 |
CN113859155A (zh) * | 2021-09-23 | 2021-12-31 | 中国第一汽车股份有限公司 | 车用控制器下电方法、装置、电子设备及存储介质 |
CN115657537A (zh) * | 2022-10-20 | 2023-01-31 | 中国第一汽车股份有限公司 | 车辆及电子控制单元的标定数据管理方法、装置及介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006209685A (ja) * | 2005-01-31 | 2006-08-10 | Denso Corp | 故障診断方法及び故障診断装置 |
CN103425122A (zh) * | 2013-08-13 | 2013-12-04 | 重庆长安汽车股份有限公司 | 新能源汽车控制器的故障管理方法 |
CN107239411A (zh) * | 2017-06-06 | 2017-10-10 | 上汽通用汽车有限公司 | 一种车载控制器内存管理方法及系统 |
US9804925B1 (en) * | 2014-02-25 | 2017-10-31 | Google Inc. | Data reconstruction in distributed storage systems |
CN108062259A (zh) * | 2017-11-01 | 2018-05-22 | 联创汽车电子有限公司 | Mcu内部数据存储ecc处理系统及其处理方法 |
CN108762987A (zh) * | 2018-05-30 | 2018-11-06 | 上海顺舟智能科技股份有限公司 | 用于双备份单片机闪存的数据恢复方法及装置 |
CN110781031A (zh) * | 2019-09-25 | 2020-02-11 | 潍柴动力股份有限公司 | 控制器数据恢复方法、装置、控制器及汽车 |
CN111240590A (zh) * | 2020-01-03 | 2020-06-05 | 北京小米移动软件有限公司 | 脏数据擦除方法、脏数据擦除装置及电子设备 |
CN111546894A (zh) * | 2020-05-21 | 2020-08-18 | 新石器慧通(北京)科技有限公司 | 一种车辆异常下电控制方法、系统及车辆 |
CN111966071A (zh) * | 2020-07-14 | 2020-11-20 | 中国第一汽车股份有限公司 | 一种车载控制器数据分类、存储及校验方法 |
CN112397128A (zh) * | 2020-11-19 | 2021-02-23 | 潍柴动力股份有限公司 | 一种Flash存储器的控制方法和装置 |
-
2021
- 2021-06-09 CN CN202110642383.2A patent/CN113341924A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006209685A (ja) * | 2005-01-31 | 2006-08-10 | Denso Corp | 故障診断方法及び故障診断装置 |
CN103425122A (zh) * | 2013-08-13 | 2013-12-04 | 重庆长安汽车股份有限公司 | 新能源汽车控制器的故障管理方法 |
US9804925B1 (en) * | 2014-02-25 | 2017-10-31 | Google Inc. | Data reconstruction in distributed storage systems |
CN107239411A (zh) * | 2017-06-06 | 2017-10-10 | 上汽通用汽车有限公司 | 一种车载控制器内存管理方法及系统 |
CN108062259A (zh) * | 2017-11-01 | 2018-05-22 | 联创汽车电子有限公司 | Mcu内部数据存储ecc处理系统及其处理方法 |
CN108762987A (zh) * | 2018-05-30 | 2018-11-06 | 上海顺舟智能科技股份有限公司 | 用于双备份单片机闪存的数据恢复方法及装置 |
CN110781031A (zh) * | 2019-09-25 | 2020-02-11 | 潍柴动力股份有限公司 | 控制器数据恢复方法、装置、控制器及汽车 |
CN111240590A (zh) * | 2020-01-03 | 2020-06-05 | 北京小米移动软件有限公司 | 脏数据擦除方法、脏数据擦除装置及电子设备 |
CN111546894A (zh) * | 2020-05-21 | 2020-08-18 | 新石器慧通(北京)科技有限公司 | 一种车辆异常下电控制方法、系统及车辆 |
CN111966071A (zh) * | 2020-07-14 | 2020-11-20 | 中国第一汽车股份有限公司 | 一种车载控制器数据分类、存储及校验方法 |
CN112397128A (zh) * | 2020-11-19 | 2021-02-23 | 潍柴动力股份有限公司 | 一种Flash存储器的控制方法和装置 |
Non-Patent Citations (2)
Title |
---|
夏继强等: "《现场总线工业控制网络技术》", 31 May 2005 * |
靳钊等: "《新型微纳电子技术丛书 汽车微电子》", 31 July 2015 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778061A (zh) * | 2021-09-16 | 2021-12-10 | 广州锦红源电子科技有限公司 | 电子控制器程序完整性的校验方法、装置、电子控制器 |
CN113778061B (zh) * | 2021-09-16 | 2023-03-28 | 广州锦红源电子科技有限公司 | 电子控制器程序完整性的校验方法、装置、电子控制器 |
CN113859155A (zh) * | 2021-09-23 | 2021-12-31 | 中国第一汽车股份有限公司 | 车用控制器下电方法、装置、电子设备及存储介质 |
CN113859155B (zh) * | 2021-09-23 | 2023-03-14 | 中国第一汽车股份有限公司 | 车用控制器下电方法、装置、电子设备及存储介质 |
CN115657537A (zh) * | 2022-10-20 | 2023-01-31 | 中国第一汽车股份有限公司 | 车辆及电子控制单元的标定数据管理方法、装置及介质 |
CN115657537B (zh) * | 2022-10-20 | 2024-05-03 | 中国第一汽车股份有限公司 | 车辆及电子控制单元的标定数据管理方法、装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113341924A (zh) | 一种ecu下电方法、装置、设备及存储介质 | |
US8863109B2 (en) | Updating secure pre-boot firmware in a computing system in real-time | |
US8578144B2 (en) | Partial hibernation restore for boot time reduction | |
US9946600B2 (en) | Method of detecting power reset of a server, a baseboard management controller, and a server | |
US8145944B2 (en) | Business process error handling through process instance backup and recovery | |
CN107678762B (zh) | 一种系统版本升级方法及装置 | |
US10503489B1 (en) | Updating firmware via a remote utility | |
CN113064748B (zh) | 进程接替的方法、装置、电子设备及存储介质 | |
CN111736873B (zh) | 电子控制单元的程序更新方法、装置、设备和存储介质 | |
US20180217889A1 (en) | Efficient Transfer of Data from CPU to Onboard Management Device | |
DE102020134018A1 (de) | Technologie zum ermöglichen sicherer und belastbarer wiederherstellung von firmware-daten | |
US20220171855A1 (en) | Electronic control device and security verification method for electronic control device | |
US20060117147A1 (en) | Managing multiprocessor operations | |
CN114385421A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
US20160371140A1 (en) | Data Storage Device Control With Power Hazard Mode | |
JP2008262454A (ja) | シンクライアント端末のソフトウェアアップデート方法およびシンクライアント端末ならびにシンクライアントシステム | |
CN112035171A (zh) | 基于uefi固件的恢复出厂设置方法及系统 | |
US11789746B2 (en) | Computing device reboot | |
CN111198832A (zh) | 一种处理方法和电子设备 | |
US10521270B2 (en) | Workload management with delegated correction of execution issues for improving a functioning of computing machines | |
CN112882869B (zh) | 一种伺服系统参数管理方法、装置、设备及存储介质 | |
CN112099987A (zh) | 一种数据管理方法、装置、设备及存储介质 | |
US10210078B2 (en) | Automating manual reconfiguration and verification of a processing unit | |
US20140189186A1 (en) | Memory bus attached input/output ('i/o') subsystem management in a computing system | |
CN113859155B (zh) | 车用控制器下电方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210903 |
|
RJ01 | Rejection of invention patent application after publication |