数据记录方法技术

技术编号:39675564 阅读:11 留言:0更新日期:2023-12-11 18:41
本公开涉及一种数据记录方法

【技术实现步骤摘要】
数据记录方法、微控制单元、数据记录装置和车辆


[0001]本公开涉及存储
,更具体地,涉及一种数据记录方法

微控制单元

数据记录装置和车辆


技术介绍

[0002]在汽车行业中,通常需要将例如故障信息

匹配信息等信息数据记录在车辆的电子控制器单元
(ECU)
中,而且即使发生断电,这些信息数据也不应丢失

在一般情况下,可以采用电可擦可编程只读存储器
(EEPROM)、
数据闪存
(data flash)
或高度可配置随机存取存储器
(flex RAM)
来存储信息数据

然而,相比
data flash
而言,
EEPROM

flex RAM
的写入速度慢
(
例如,写入1个字节需要
1ms
左右的时间
)、
存储空间小且成本高

另外,
data flash
虽然具有较高的写入速度
(
例如,写入8个字节仅需要
200
μ
s
左右的时间甚至更快
)
,但是在同一个地址写入不同的信息数据需要先擦除才能再写入,这将导致擦除次数的大幅升高

因此,存在对数据记录方式进行改进的需求


技术实现思路

[0003]本公开的目的之一在于提出一种数据记录方法

微控制单元

数据记录装置和车辆

[0004]根据本公开的第一方面,提供了一种数据记录方法,包括:
[0005]获取来自随机存取存储器
RAM
镜像的写入请求;
[0006]确定数据闪存中的与所述
RAM
镜像相应的数据段所包含的至少两个扇区中的

作为当前的有效扇区的第一扇区,其中,数据闪存被配置为包含一个或多个数据段;
[0007]判断所述第一扇区的剩余空间是否足够用于写入由所述写入请求指示的待记录数据;
[0008]若是,将所述待记录数据写入所述第一扇区中;
[0009]若否,将当前的有效扇区变更为所述至少两个扇区中的不同于所述第一扇区的第二扇区,以将所述待记录数据写入所述第二扇区中

[0010]在一些实施例中,所述数据记录方法还包括:
[0011]在所述至少两个扇区中的每个扇区的扇区状态标识都指示扇区非活动的情况下,擦除每个扇区;
[0012]根据只读存储器
ROM
镜像中的数据块产生所述
RAM
镜像中的相应的数据块;
[0013]将所述
RAM
镜像中的相应的数据块复制到所述至少两个扇区中的任一扇区中;以及
[0014]将复制有所述
RAM
镜像中的相应的数据块的扇区的扇区状态标识更改为指示扇区活动

[0015]在一些实施例中,根据只读存储器
ROM
镜像中的数据块产生所述
RAM
镜像中的相应的数据块包括:
[0016]将所述
ROM
镜像中的数据块复制到所述
RAM
镜像中;
[0017]根据所述
ROM
镜像中的数据块计算校验值,并将所述校验值作为所述
RAM
镜像中的相应的数据块中的校验区段的值

[0018]在一些实施例中,所述数据记录方法还包括:
[0019]在数据闪存处于非首次上电状态

且与
RAM
镜像中的各个数据块相应的改变标识都处于未初始化状态的情况下,确定数据闪存中的与所述
RAM
镜像相应的数据段所包含的至少两个扇区中的

作为当前的有效扇区的第一扇区;
[0020]将在所述第一扇区中从后往前读取到的所有有效的数据块复制到所述
RAM
镜像中,并将与各个有效的数据块相应的改变标识更改为已初始化状态;以及
[0021]在所述
RAM
镜像中存在改变标识处于未初始化状态的数据块的情况下,根据只读存储器
ROM
镜像中的相应的数据块变更所述
RAM
镜像中的所述数据块,并将与变更后的数据块相应的改变标识更改为已初始化状态

[0022]在一些实施例中,获取来自随机存取存储器
RAM
镜像的写入请求包括:
[0023]按照预设时间且数据闪存不在擦除状态的情况下,读取与所述
RAM
镜像中的各个数据块相应的改变标识;
[0024]在改变标识指示相应的数据块存在改变的情况下,产生指示将作为所述待记录数据的所述相应的数据块写入到数据闪存中的写入请求

[0025]在一些实施例中,确定数据闪存中的与所述
RAM
镜像相应的数据段所包含的至少两个扇区中的

作为当前的有效扇区的第一扇区包括:
[0026]读取所述至少两个扇区中的各个扇区的扇区状态标识;
[0027]在仅有一个扇区状态标识指示扇区活动的情况下,将相应的扇区确定为所述第一扇区;
[0028]在多于一个扇区状态标识指示扇区活动的情况下,读取相应的多个扇区的数据状态标识;
[0029]在存在数据状态标识指示数据无效的情况下,将不同于与数据状态标识相应的扇区的另外的扇区确定为所述第一扇区;
[0030]在不存在数据状态标识指示数据无效的情况下,比较相应的多个扇区的剩余空间;以及
[0031]将具有最大的剩余空间的扇区确定为所述第一扇区

[0032]在一些实施例中,将所述待记录数据写入所述第一扇区中包括:
[0033]将作为所述待记录数据的一个或多个数据块从所述
RAM
镜像复制到所述第一扇区的剩余空间中

[0034]在一些实施例中,将当前的有效扇区变更为所述至少两个扇区中的不同于所述第一扇区的第二扇区,以将所述待记录数据写入所述第二扇区中包括:
[0035]擦除所述第二扇区;
[0036]将所述
RAM
镜像中的有效数据块写入所述第二扇区中;
[0037]将所述第二扇区的扇区状态标识更改为指示扇区活动,并将所述第一扇区的数据状态标识更改为指示数据无效

[0038]在一些实施例中,每个扇区包括扇区头部区域和扇区主体区域,其中,所述扇区头
部区域被配置为存储扇区状态标识和数据状态标识,所述扇区状态标识被配置为指示扇区活动或扇区非活动,所述数据状态标识被配置为指示扇区中的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种数据记录方法,其特征在于,所述数据记录方法包括:获取来自随机存取存储器
RAM
镜像的写入请求;确定数据闪存中的与所述
RAM
镜像相应的数据段所包含的至少两个扇区中的

作为当前的有效扇区的第一扇区,其中,数据闪存被配置为包含一个或多个数据段;判断所述第一扇区的剩余空间是否足够用于写入由所述写入请求指示的待记录数据;若是,将所述待记录数据写入所述第一扇区中;若否,将当前的有效扇区变更为所述至少两个扇区中的不同于所述第一扇区的第二扇区,以将所述待记录数据写入所述第二扇区中
。2.
根据权利要求1所述的数据记录方法,其特征在于,所述数据记录方法还包括:在所述至少两个扇区中的每个扇区的扇区状态标识都指示扇区非活动的情况下,擦除每个扇区;根据只读存储器
ROM
镜像中的数据块产生所述
RAM
镜像中的相应的数据块;将所述
RAM
镜像中的相应的数据块复制到所述至少两个扇区中的任一扇区中;以及将复制有所述
RAM
镜像中的相应的数据块的扇区的扇区状态标识更改为指示扇区活动
。3.
根据权利要求2所述的数据记录方法,其特征在于,根据只读存储器
ROM
镜像中的数据块产生所述
RAM
镜像中的相应的数据块包括:将所述
ROM
镜像中的数据块复制到所述
RAM
镜像中;根据所述
ROM
镜像中的数据块计算校验值,并将所述校验值作为所述
RAM
镜像中的相应的数据块中的校验区段的值
。4.
根据权利要求1所述的数据记录方法,其特征在于,所述数据记录方法还包括:在数据闪存处于非首次上电状态

且与
RAM
镜像中的各个数据块相应的改变标识都处于未初始化状态的情况下,确定数据闪存中的与所述
RAM
镜像相应的数据段所包含的至少两个扇区中的

作为当前的有效扇区的第一扇区;将在所述第一扇区中从后往前读取到的所有有效的数据块复制到所述
RAM
镜像中,并将与各个有效的数据块相应的改变标识更改为已初始化状态;以及在所述
RAM
镜像中存在改变标识处于未初始化状态的数据块的情况下,根据只读存储器
ROM
镜像中的相应的数据块变更所述
RAM
镜像中的所述数据块,并将与变更后的数据块相应的改变标识更改为已初始化状态
。5.
根据权利要求1至4中任一项所述的数据记录方法,其特征在于,获取来自随机存取存储器
RAM
镜像的写入请求包括:按照预设时间且数据闪存不在擦除状态的情况下,读取与所述
RAM
镜像中的各个数据块相应的改变标识;在改变标识指示相应的数据块存在改变的情况下,产生指示将作为所述待记录数据的所述相应的数据块写入到数据闪存中的写入请求
。6.
根据权利要求1至4中任一项所述的数据记录方法,其特征在于,确定数据闪存中的与所述
RAM
镜像相应的数据段所包含的至少两个扇区中的

作为当前的有效扇区的第一扇区包括:读取所述至少两个扇区中的各个扇区的扇区状态标识;
在仅有一个扇区状态标识指示扇区活动的情况下,将相应的扇区确定为所述第一扇区;在多于一个扇区状态标识指示扇区活动的情况下,读取相应的多个扇区的数据状态标识;在存在数据状...

【专利技术属性】
技术研发人员:徐广振
申请(专利权)人:上海纳恩汽车技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1