CN114415936A - 数据存储方法、数据存储装置、车机装置和存储介质 - Google Patents
数据存储方法、数据存储装置、车机装置和存储介质 Download PDFInfo
- Publication number
- CN114415936A CN114415936A CN202111466987.2A CN202111466987A CN114415936A CN 114415936 A CN114415936 A CN 114415936A CN 202111466987 A CN202111466987 A CN 202111466987A CN 114415936 A CN114415936 A CN 114415936A
- Authority
- CN
- China
- Prior art keywords
- data
- trigger
- state
- unit
- integrated
- 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
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000010354 integration Effects 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 238000013024 troubleshooting Methods 0.000 description 6
- 238000007667 floating Methods 0.000 description 5
- 230000007774 longterm Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000005096 rolling process Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 239000011521 glass Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Time Recorders, Dirve Recorders, Access Control (AREA)
Abstract
本申请公开了一种数据存储方法、数据存储装置、车机装置和存储介质。其中,数据存储方法包括:将记录数据中的有效负载分为触发数据和状态数据;将随机存取存储器空间分为状态信息单元和集成数据单元,状态信息单元用于存储状态数据;在触发事件发生时,从状态信息单元中提取与触发事件的实时触发数据相关的状态数据作为关联状态数据;集成实时触发数据和关联状态数据以形成目标数据;保存目标数据至集成数据单元中。本申请的数据存储方法中,将记录数据的有效负载分类,并将存储记录数据的随机存取存储器空间分类,在触发事件发生时,提取状态数据以与触发数据组合集成与触发源相关的记录数据存入对应单元,减小对随机存取存储器空间的占用。
Description
技术领域
本申请涉及汽车电子技术领域,尤其涉及一种数据存储方法、数据存储装置、车机装置和存储介质。
背景技术
随着汽车电子技术的发展,车载控制器的数量不断增加,为了对车辆行车问题进行调试分析,车载控制器上逐渐增加了记录一些非常规操作下软件运行的数据记录功能。然而,对于当前仍大量投入使用的一些嵌入式软件控制器而言,受限于自身性能无法实现过高能力的操作系统来执行文件管理以记录数据。那么,如何在这类设备上合理利用存储空间来实现简单、易管理且节省资源的本地数据记录成为待解决的问题。
发明内容
本申请实施方式提供一种数据存储方法、数据存储装置、车机装置和存储介质。
本申请实施方式的数据存储方法包括:
将记录数据中的有效负载分为触发数据和状态数据;
将随机存取存储器空间分为状态信息单元和集成数据单元,所述状态信息单元用于存储所述状态数据;
在触发事件发生时,从所述状态信息单元中提取与所述触发事件的实时触发数据相关的状态数据作为关联状态数据;
集成所述实时触发数据和所述关联状态数据以形成目标数据;
保存所述目标数据至所述集成数据单元中。
本申请的数据存储方法中,将记录数据的有效负载分类,并将存储记录数据的随机存取存储器的空间分类,从而可以在触发事件发生时,从存储状态数据的状态信息单元中提取与实时触发数据对应的关联状态数据,然后将两者结合以形成目标数据存储至集成数据单元中,如此便减少了大量无用信息的记录,充分利用了随机存取存储器的空间。
在某些实施方式中,所述数据存储方法包括:
在所述状态信息单元的数据存储量超过预留空间的情况下,删除所述预留空间中存储最早的所述状态数据。
在某些实施方式中,所述数据存储方法包括:
记录所述触发事件发生时的时间戳,保存所述时间戳至所述集成数据单元,所述时间戳与所述目标数据关联。
在某些实施方式中,所述数据存储方法包括:
对产生所述触发事件的触发源编码;
将所述触发源的编码保存至所述集成数据单元,所述触发源的编码与所述目标数据关联。
在某些实施方式中,所述数据存储方法还包括:
将保存在所述集成数据单元中的目标数据写入存储设备。
在某些实施方式中,所述将保存在所述集成数据单元中的目标数据写入存储设备,包括:
在所述集成数据单元的数据存储量超过预留空间的情况下,将所述目标数据写入存储设备。
在某些实施方式中,所述将保存在所述集成数据单元中的目标数据写入存储设备,包括:
在车机装置即将休眠的情况下,将所述目标数据写入所述存储设备。
在某些实施方式中,所述将保存在所述集成数据单元中的目标数据写入存储设备,包括:
在车辆发生碰撞的情况下,将所述目标数据写入所述存储设备。
本申请实施方式提供一种数据存储装置,所述数据存储装置包括:
第一分类模块,用于将记录数据中的有效负载分为触发数据和状态数据;
第二分类模块,用于将随机存取存储器空间分为状态信息单元和集成数据单元,所述状态信息单元用于存储所述状态数据;
提取模块,用于在触发事件发生时,从所述状态信息单元中提取与所述触发事件的实时触发数据相关的状态数据作为关联状态数据;
集成模块,用于集成所述实时触发数据和所述关联状态数据以形成目标数据;
保存模块,用于保存所述目标数据至所述集成数据单元中。
本申请实施方式提供一种车机装置,所述车机装置包括:
随机存取存储器,所述随机存储存储器用于存储目标数据;
存储设备,所述存储设备用于保存所述随机存取存储器写入的所述目标数据;和,
处理器,所述处理器用于实现上述任一实施方式中的数据存储方法。
本申请实施方式提供一种计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行以上任一实施方式所述的数据存储方法。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:
图1是本申请实施方式中的数据存储方法的流程示意图;
图2是本申请实施方式中的数据存储装置的模块示意图;
图3是本申请实施方式中的车辆安装有车机装置的场景示意图;
图4是本申请实施方式中的记录数据的组成示意图;
图5是本申请实施方式中的随机随取存储器采用不同方式存储目标数据的示意图;
图6是本申请实施方式中的数据存储方法的流程示意图;
图7是本申请实施方式中的数据存储方法的流程示意图;
图8是本申请实施方式中的数据存储方法的流程示意图;
图9是本申请实施方式中的数据存储方法的流程示意图;
图10是本申请实施方式中的数据存储方法的流程示意图;
图11是本申请实施方式中的数据存储方法的流程示意图;
图12是本申请实施方式中的数据存储方法的流程示意图。
主要元件符号说明:
车辆1000、车机装置100、随机存取存储器11、状态信息单元111、集成数据单元112、存储设备12、处理器13、数据存储装置200、第一分类模块21、第二分类模块22、提取模块23、集成模块24、保存模块25、记录数据300、目标数据31。
具体实施方式
下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
在本申请的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
在本申请中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示第一特征水平高度小于第二特征。
下文的公开提供了许多不同的实施方式或例子用来实现本申请的不同结构。为了简化本申请的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本申请。此外,本申请可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本申请提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。
请参阅图1,本申请实施方式提供一种数据存储方法,其中,数据存储方法包括:
步骤S10:将记录数据300中的有效负载分为触发数据和状态数据;
步骤S20:将随机存取存储器11空间分为状态信息单元和集成数据单元,状态信息单元用于存储状态数据;
步骤S30:在触发事件发生时,从状态信息单元中提取与触发事件的实时触发数据相关的状态数据作为关联状态数据;
步骤S40:集成实时触发数据和关联状态数据以形成目标数据31;
步骤S50:保存目标数据31至集成数据单元中。
请参阅图2,本申请实施方式提供一种数据存储装置200。数据存储装置200包括第一分类模块21、第二分类模块22、提取模块23、集成模块24和保存模块25。其中,第一分类模块21用于将记录数据300中的有效负载分为触发数据和状态数据;第二分类模块22用于将随机存取存储器11空间分为状态信息单元和集成数据单元,状态信息单元用于存储状态数据;提取模块23用于在触发事件发生时,从状态信息单元中提取与触发事件的实时触发数据相关的状态数据作为关联状态数据;集成模块24用于集成实时触发数据和关联状态数据以形成目标数据31;保存模块25用于保存目标数据31至集成数据单元中。
请参阅图3,本申请实施方式提供一种车机装置100,车机装置100包括随机存取存储器11、存储设备12和处理器13。其中,随机存取存储器11用于存储目标数据31;存储设备12用于保存随机存取存储器11写入的目标数据31。
处理器13用于将记录数据300中的有效负载分为触发数据和状态数据;及用于将随机存取存储器11空间分为状态信息单元和集成数据单元,状态信息单元用于存储状态数据;及用于在触发事件发生时,从状态信息单元中提取与触发事件的实时触发数据相关的状态数据作为关联状态数据;及集成实时触发数据和关联状态数据以形成目标数据31;以及用于保存目标数据31至集成数据单元中。
本申请的数据存储方法中,将记录数据300的有效负载分类,并将存储记录数据300的随机存取存储器11的空间分类,从而可以在触发事件发生时,从存储状态数据的状态信息单元中提取与实时触发数据对应的关联状态数据,然后将两者结合以形成目标数据31存储至集成数据单元中,如此便减少了大量无用信息的记录,充分利用了随机存取存储器11的空间。
具体地,车机装置100可以包括ECU(Electronic Control Unit,电子控制单元)控制器,并且为单片机式电子控制器,例如可以为行车控制器。车机装置100可以被安装在车辆1000上,车辆1000可以是载货车、越野车、牵引车、轿车、客车等,按动力分类可以是混合动力车辆1000,也可以是新能源动力车辆1000或者柴油汽油动力车辆1000。
车机装置100可以包括随机存取存储器11,即RAM(Random Access Memory),随机存取存储器11可以记录车辆1000行驶时的相关数据;由于随机存取存储器11的存储空间有限,车机装置100还可以包括存储设备12,存储设备12可以是快闪存储器、硬盘等非易失性存储器,随机存取存储器11可以将保存的数据写入存储设备12中进行保存,避免车辆1000面临车机装置100休眠、碰撞等意外事件时,丢失保存的数据。
可以理解,车辆1000实际使用中难免遇到功能逻辑出现错误或混乱的情况,因此,车机装置100日趋加装有数据记录功能,用于进行一些非常规操作下的已经运行的软件数据记录工作。对于车机装置100而言,能够实现数据记录对车机装置100的开发、测试验证和问题分析有很大帮助,能够大大缩短开发周期,提高开发效率;同时,能够进行数据记录也大大减少实车排查时间。
然而,由于本申请中的车机装置100采用实时操作系统,受限于系统性能,无法采用文件管理方式来记录本地数据。有鉴于此,本申请提出一种数据存储方法,能够合理的利用车机装置100中随机存取存储器11和存储设备12的存储空间来记录本地数据,为提供本地数据用于问题分析和排查提供了方便。
在步骤S10-步骤S20中,记录数据300即为存储在随机存取存储器11(RAM)中的数据,或者说,记录数据300可以为一个个数据包,以一定的格式被存储在随机存取存储器11中,也以相同的格式由随机存取存储器11写入到快闪存储器等存储设备12中。
如图4所示,图4中示出了记录数据300的数据格式。本申请中,在将记录数据300存储在随机存取存储器11中的情况下,需要将记录数据300的格式控制在16字节以内;进一步地,可以将记录数据300分为数据包报头(Message header)和有效负载(Payload)两部分,数据包报头可以提供有关数据包内数据的简单信息,方便简单直观查看,还可以便于校验数据包内容是否正确,有效负载为数据传输中所欲传输的实际信息,即有效数据。本申请中又将有效负载分为触发数据和状态数据。
可以理解,触发数据可以是在如车门开闭、车窗升降等事件触发的情况下,被处理器13记录的车辆1000上安装的相关软件的运行数据;也即是说,触发数据一般为事件性的触发源信息或某些关键状态信息的跳变情况,例如车窗上升的触发事件包括有玻璃上升开关的跳变、远程CAN(Controller Area Network,控制器局域网络)上升信号等,又例如车门被打开或关闭的动作等。
状态数据可以根据实际需要记录的需求来决定具体记录哪些状态,例如,可以选择记录当前车速作为状态数据,或者车辆1000的近光灯、远光灯等灯具的点亮状态作为状态数据,又或者车门当前状态作为状态数据。本申请中并不对此做固有限制,具体需要记录的状态数据根据实际调试需求而定即可。
随机存取存储器11空间可划分出状态信息单元和集成数据单元,其中,状态信息单元可以用于存储状态数据。状态信息单元的大小可以根据实际车机装置100需要记录的状态数据的数据量进行分配。
在步骤S30-S50中,触发事件即可以为上文提到的,车窗上升/下降、车门打开/关闭、车灯点亮/熄灭等动作,在触发事件发生时,会产生对应的实时触发数据。本申请中,可以将需要被记录相关数据的动作设定为触发事件,在触发事件发生时,处理器13可以从状态信息单元中提取与实时触发数据相关的状态数据作为关联状态数据,可以理解,触发数据与状态数据的关联关系可以根据实际调试需求预定设定;然后,处理器13将实时触发数据与关联状态数据集成形成目标数据31,最后将目标数据31存储在集成数据单元中。
例如,在一个实施例中,车门状态信息、车速信息、近光灯点亮状态信息等被设定为需要记录的状态数据,上述状态数据被实时存储在状态信息单元中;当车窗上升事件被触发后,对应玻璃上升开关、远程CAN信号等发生变化,即触发源动作后生成实时触发数据;处理器13从状态信息单元中提取与实时触发数据相关的状态数据,即将车门状态信息和车速信息作为关联状态数据;然后,处理器13将实时触发数据与关联状态数据集成,形成约7个字节的数据存放到集成数据单元中,这时集成数据单元中保存的记录数据300的有效负载的格式可以为,车窗上次触发源动作后生成的实时触发数据与车门状态信息和车速信息,也就是说,集成数据单元中存放的数据可以包括触发源动作后生成的实时触发数据和实时触发数据相关的关联状态数据的集成。
这样,本申请中仅在触发事件发生时触发记录实时触发数据,同时在状态信息单元内滚动存储的状态数据中提取对应触发源的关联状态数据,将两者组合后存储在集成数据单元,保证随机存取存储器11中存放的目标数据31的实时性,同时,相较于采用固定格式存储目标数据31的方式而言,本方法中存储目标数据31的方式能够充分利用随机存取存储器11中的存储空间。
具体而言,在一个实施例中,如图5所示,图5中的左图为采用固定格式存放目标数据31的方式,图5中的右图为采用本方法中浮动格式存放目标数据31的方式。为了便于解释说明,在固定格式存放目标数据31的方式下,将随机存取存储器11的空间划分有四个字段,分别为字段1、字段2、字段3与字段4;在浮动格式存放目标数据31的方式下,将随机存取存储器11的空间划分为状态信息单元和集成数据单元。
由于为固定格式,字段1仅能存放事件1触发时的目标数据31,字段2仅能存放事件2触发时的目标数据31,字段3仅能存放事件3触发时的目标数据31,字段4仅能存放事件4触发时的目标数据31,需要说明的是,事件1所对应的目标数据31可以包括事件1相关的触发信息和状态信息,在图4中简单示意为事件1、状态X(A、B、C……),并且,事件2、事件3等事件对应的目标数据31以此格式类推。
然而,当事件1频繁触发的情况下,字段1能够被充分利用伴随着频繁触发而不断刷新释放;事件2、事件3与事件4的触发频率明显低于事件1,从而字段2、字段3与字段4内缓存的事件2、事件3与事件4相关的目标数据31始终存在,又由于保存的目标数据31没有达到该字段下的最大保存量,导致字段2、字段3与字段4无法得到释放,在字段2、字段3与字段4的空间始终被占用的情况下还存在大量未利用空间。
而采用浮动格式的情况下,状态信息单元中滚动有状态信息,例如状态A、状态B……状态E等。可以理解,每个状态中可以包括多个状态数据,例如状态A可以为ECU日程状态信息,ECU日程状态信息可以包括车门状态信息、车速状态信息、车窗状态信息等。图4中的状态A、状态B……状态E等仅做示例性说明,并不能理解为在集成数据单元中保存的目标数据31为状态A、状态B……状态E与事件1、事件2、事件3和事件4等触发事件的简单排列组合。
在触发事件发生时,处理器13从状态数据中提取对应触发事件的关联状态数据,然后将提取出的关联状态数据与触发事件对应的实时触发数据(此处简单示意为事件1、事件2……等)集成,最后存放至集成数据单元中。这样,相比于原先实时操作系统所采取的,对于某一个触发事件,在随机存取存储器11中开辟固定地址,以固定存放某一数据的方式,本方法可以减少对随机存取存储器11资源的占用,同时避免多次向存储设备12写入数据,降低存储设备12的寿命。
请参阅图6,在某些实施方式中,数据存储方法可以包括:
步骤S60:在状态信息单元的数据存储量超过预留空间的情况下,删除预留空间中存储最早的状态数据。
在某些实施方式中,数据存储装置200可以包括删除模块,删除模块可以用于在状态信息单元的数据存储量超过预留空间的情况下,删除预留空间中存储最早的状态数据。
在某些实施方式中,处理器13用于在状态信息单元的数据存储量超过预留空间的情况下,删除预留空间中存储最早的状态数据。
如此,在未发生触发事件时,预留空间中存储的状态数据可以自动被覆盖,即释放状态信息单元的缓存,起到不占用运算资源,提高预留空间的利用率的作用。
具体地,在随机存取存储器11中开辟状态信息单元时,可以根据实际车机装置100需要记录的状态信息的数据量预留有存储空间。特别地,在状态信息单元中,采用“先进先出”的滚动数据存储方式,也即是说,如步骤S60,在状态信息单元的数据存储量超过预留空间的情况下,删除预留空间中存储最早的状态数据。
例如,在一个实施例中,ECU日程状态信息在单位时间内数据量约为2KB,那么在规划状态信息单元时,可以预留有20KB,保证ECU日程状态信息可以以一定数据量在状态信息单元中存储;当出现预留空间被ECU日程状态信息全部占满时,最早保存的ECU日程状态信息被下一条存储到预留空间的ECU日程状态信息所覆盖,如此,一定的数据量在预留空间中形成“滚动”运行。需要说明的是,ECU日程状态信息可以包括多种状态数据,如可以包括车门状态信息、车速状态信息、车窗状态信息等,上述实施例仅做示例性说明,并不能理解为对状态数据具体内容的限制。
这样,采用实时滚动缓存状态数据的方式,在相关状态数据有用时可以存储触发事件前后一段时间的关联状态数据至集成数据单元,有利于基于时间分析排查问题;当未发生触发事件时,最早的状态数据自动被覆盖,释放缓存,不占用运算资源,合理丢弃无用数据从而提高随机存取存储器11空间利用率。
请参阅图7,在某些实施方式中,数据存储方法包括:
步骤S70:记录触发事件发生时的时间戳,保存时间戳至集成数据单元,时间戳与目标数据31关联。
在某些实施方式中,保存模块25用于记录触发事件发生时的时间戳,保存时间戳至集成数据单元,时间戳与目标数据31关联。
在某些实施方式中,处理器13用于记录触发事件发生时的时间戳,保存时间戳至集成数据单元,时间戳与目标数据31关联。
如此,保存在集成数据单元中的时间戳与集成的目标数据31相关联,能够反映触发事件发生的时间,有利于基于时间分析排查问题。
具体地,在步骤S70中,每次触发了触发事件后,处理器13会记录此刻的时间戳,将时间戳保存到集成数据单元中,并与集成的目标数据31关联。具体而言,在一个实施例中,记录数据300作为数据包,包括有数据包报头和有效负载,那么在每次触发了触发事件后,处理器13打上一个时间戳,存放在记录数据300的数据包报头中,该数据包报头对应的有效负载为该触发事件触发后对应集成的目标数据31,如此便将时间戳与目标数据31关联。
这样,便可以清晰的由时间戳得知目标数据31对应的触发事件所触发的时刻,便于排查分析目标数据31;同时,也可以校验记录数据300是否按时间顺序保存。
请参阅图8,数据存储方法包括:
步骤S80:对产生触发事件的触发源编码;
步骤S90:将触发源的编码保存至集成数据单元,触发源的编码与目标数据31关联。
在某些实施方式中,数据存储装置200还可以包括编码模块。其中,编码模块用于对产生触发事件的触发源编码;保存模块25用于将触发源的编码保存至集成数据单元,触发源的编码与目标数据31关联。
在某些实施方式中,处理器13用于对产生触发事件的触发源编码,以及用于将触发源的编码保存至集成数据单元,触发源的编码与目标数据31关联。
如此,可以通过编码识别出是哪个触发源产生了触发事件以生成有目标数据31,从而简单准确地定位触发源,便于后续基于触发源分析排查问题。
具体地,如图5所示,本申请中按照浮动格式存储记录数据300,这使得如果后续导出记录数据300进行分析排查问题时,并不能按照固定字段来确定产生触发事件的触发源。因此,可以经由步骤S80对产生触发事件的触发源编码,以使每个触发源对应有唯一的编码,然后在步骤S90中将触发源唯一的编码保存至集成数据单元,例如可以作为记录数据300的数据包报头的一部分存储在集成数据单元对应空间中。
这样,在拿到记录数据300后,可以通过记录数据300的数据包报头中的触发源的编码,来确定产生触发事件的触发源,便于基于触发源定位分析问题。
请参阅图9,在某些实施方式中,数据存储方法还包括:
步骤S100:将保存在集成数据单元中的目标数据31写入存储设备12。
在某些实施方式中,数据存储装置200还包括写入模块,写入模块用于将保存在集成数据单元中的目标数据31写入存储设备12。
在某些实施方式中,处理器13用于将保存在集成数据单元中的目标数据31写入存储设备12。
如此,便于长期存储目标数据31以定位分析排查问题。
具体地,车机装置100中的随机存取存储器11作为临时数据的存储介质,内部存储的数据具有易失性,即一旦断电所存储的数据将随之丢失。那么为了长期保存在触发源动作后产生的实时触发数据与关联状态数据集成的目标数据31,从而便于对目标数据31进行分析,车机装置100上还安装有存储设备12,用以长期保存处理器13经由步骤S100写入的目标数据31。
可以理解,存储设备12可以为快闪存储器(Flash Memory)、硬盘(Hard DiskDrive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等,本申请中所提及的存储设备12主要为快闪存储器。存储设备12需要为非易失性存储器,其存储的数据具有非易失性,掉电不会丢失。这样,便能够在存储设备12中长期存储目标数据31以定位分析排查问题。
请参阅图10,在某些实施方式中,将保存在集成数据单元中的目标数据31写入存储设备12(步骤S100),可以包括:
步骤S101:在集成数据单元的数据存储量超过预留空间的情况下,将目标数据31写入存储设备12。
在某些实施方式中,写入模块可以用于在集成数据单元的数据存储量超过预留空间的情况下,将目标数据31写入存储设备12。
在某些实施方式中,处理器13可以用于在集成数据单元的数据存储量超过预留空间的情况下,将目标数据31写入存储设备12。
如此,在存储设备12为快闪存储器的情况下,在集成数据单元的数据存储器超过预留空间时,再将目标数据31写入存储设备12,可以提高存储设备12的擦写次数,便于延长存储设备12的寿命。
具体地,在存储设备12为快闪存储器的情况下,由于快闪存储器的擦写次数有限,需要合理的利用存储设备12的擦写次数,以最大限度的提高存储设备12的存储空间利用率。
请再次参阅图5,在采用固定格式存放目标数据31的情况下,可以理解,当任一字段的缓存写满了目标数据31后,处理器13均需要将该字段存储的目标数据31写入存储设备12。如此一来,提高了对存储设备12进行擦写的次数,大大降低了存储设备12的存储空间利用率,也减少了存储设备12的寿命。
那么,在采用浮动格式存放目标数据31的情况下,可以经由步骤S101,在整个集成数据单元的数据存储量超过了预留空间的情况下,再将目标数据31写入存储设备12,从而合理利用存储设备12的擦写次数,提高存储设备12的存储空间的利用率。
请参阅图11,在某些实施方式中,将保存在集成数据单元中的目标数据31写入存储设备12(步骤S100),可以包括:
步骤S102:在车机装置100即将休眠的情况下,将目标数据31写入存储设备12。
在某些实施方式中,写入模块可以用于在车机装置100即将休眠的情况下,将目标数据31写入存储设备12。
在某些实施方式中,处理器13可以用于在车机装置100即将休眠的情况下,将目标数据31写入存储设备12。
如此,能够及时地转移目标数据31至存储设备12进行长期保存,提高数据保存的稳定性。
具体地,现车辆1000上安装的车机装置100一般需要长期供电,因此,在对车机装置100的设计研究中会经常涉及到降低车机装置100的功耗这一方向。目前,可以在空闲状态下使车机装置100进入休眠状态,此时,为了避免车机装置100因休眠而导致内部的随机存取存储器11所存储的目标数据31丢失,可以选择在车机装置100休眠前,将目标数据31写入存储设备12以进行长期储存。
请参阅图12,在某些实施方式中,将保存在集成数据单元中的目标数据31写入存储设备12(步骤S100),可以包括:
步骤S103:在车辆1000发生碰撞的情况下,将目标数据31写入存储设备12。
在某些实施方式中,写入模块可以用于在车辆1000发生碰撞的情况下,将目标数据31写入存储设备12。
在某些实施方式中,处理器13可以用于在车辆1000发生碰撞的情况下,将目标数据31写入存储设备12。
如此,能够避免因意外事故发生可能致使车机装置100停止工作而导致的目标数据31丢失,提高目标数据31保存的安全性。
具体地,可以容易理解,车辆1000在行驶过程中可能会存在意外碰撞事故,在或轻微或强烈的撞击下,有可能会破坏车机装置100或使车机装置100出现断电等意外情况,从而车机装置100受迫性停止工作。那么,此时可以经由步骤S103,一旦检测到出现发生碰撞事件时,处理器13立即将当前集成数据单元内存储的目标数据31写入存储设备12,提高目标数据31存储的安全性,避免目标数据31丢失。
本申请实施方式提供了一种存储有计算机程序的非易失性计算机可读存储介质,当计算机程序被一个或多个处理器13执行时,使得处理器13执行以上任一实施方式的数据存储方法。
例如,当计算机程序被一个或多个处理器13执行时,使得处理器13执行以下步骤:
步骤S10:将记录数据300中的有效负载分为触发数据和状态数据;
步骤S20:将随机存取存储器11空间分为状态信息单元和集成数据单元,状态信息单元用于存储状态数据;
步骤S30:在触发事件发生时,从状态信息单元中提取与触发事件的实时触发数据相关的状态数据作为关联状态数据;
步骤S40:集成实时触发数据和关联状态数据以形成目标数据31;
步骤S50:保存目标数据31至集成数据单元中。
具体地,在一个实施例中,车机装置中还可以包括处理器13,处理器可以为中央处理器(Central Processing Unit,CPU)。处理器13还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
计算机程序可以被存储在存储器中,存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如上述方法实施例中的方法所对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的方法。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,实现的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
在本说明书的描述中,参考术语“一个实施方式”、“某些实施方式”、“示意性实施方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本申请的实施方式,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。
Claims (11)
1.一种数据存储方法,其特征在于,包括:
将记录数据中的有效负载分为触发数据和状态数据;
将随机存取存储器空间分为状态信息单元和集成数据单元,所述状态信息单元用于存储所述状态数据;
在触发事件发生时,从所述状态信息单元中提取与所述触发事件的实时触发数据相关的状态数据作为关联状态数据;
集成所述实时触发数据和所述关联状态数据以形成目标数据;
保存所述目标数据至所述集成数据单元中。
2.根据权利要求1所述的数据存储方法,其特征在于,所述数据存储方法包括:
在所述状态信息单元的数据存储量超过预留空间的情况下,删除所述预留空间中存储最早的所述状态数据。
3.根据权利要求1所述的数据存储方法,其特征在于,所述数据存储方法包括:
记录所述触发事件发生时的时间戳,保存所述时间戳至所述集成数据单元,所述时间戳与所述目标数据关联。
4.根据权利要求1所述的数据存储方法,其特征在于,所述数据存储方法包括:
对产生所述触发事件的触发源编码;
将所述触发源的编码保存至所述集成数据单元,所述触发源的编码与所述目标数据关联。
5.根据权利要求1所述的数据存储方法,其特征在于,所述数据存储方法还包括:
将保存在所述集成数据单元中的目标数据写入存储设备。
6.根据权利要求5所述的数据存储方法,其特征在于,所述将保存在所述集成数据单元中的目标数据写入存储设备,包括:
在所述集成数据单元的数据存储量超过预留空间的情况下,将所述目标数据写入所述存储设备。
7.根据权利要求5所述的数据存储方法,其特征在于,所述将保存在所述集成数据单元中的目标数据写入存储设备,包括:
在车机装置即将休眠的情况下,将所述目标数据写入所述存储设备。
8.根据权利要求5所述的数据存储方法,其特征在于,所述将保存在所述集成数据单元中的目标数据写入存储设备,包括:
在车辆发生碰撞的情况下,将所述目标数据写入所述存储设备。
9.一种数据存储装置,其特征在于,所述数据存储装置包括:
第一分类模块,用于将记录数据中的有效负载分为触发数据和状态数据;
第二分类模块,用于将随机存取存储器空间分为状态信息单元和集成数据单元,所述状态信息单元用于存储所述状态数据;
提取模块,用于在触发事件发生时,从所述状态信息单元中提取与所述触发事件的实时触发数据相关的状态数据作为关联状态数据;
集成模块,用于集成所述实时触发数据和所述关联状态数据以形成目标数据;
保存模块,用于保存所述目标数据至所述集成数据单元中。
10.一种车机装置,其特征在于,包括:
随机存取存储器,所述随机存储存储器用于存储目标数据;
存储设备,所述存储设备用于保存所述随机存取存储器写入的所述目标数据;和,
处理器,所述处理器用于执行如权利要求1-8任一项所述的数据存储方法。
11.一种计算机可执行指令的非易失性计算机可读存储介质,其特征在于,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行权利要求1-8中任一项所述的数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111466987.2A CN114415936B (zh) | 2021-12-03 | 2021-12-03 | 数据存储方法、数据存储装置、车机装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111466987.2A CN114415936B (zh) | 2021-12-03 | 2021-12-03 | 数据存储方法、数据存储装置、车机装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114415936A true CN114415936A (zh) | 2022-04-29 |
CN114415936B CN114415936B (zh) | 2024-10-18 |
Family
ID=81265296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111466987.2A Active CN114415936B (zh) | 2021-12-03 | 2021-12-03 | 数据存储方法、数据存储装置、车机装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114415936B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001126094A (ja) * | 1999-10-26 | 2001-05-11 | Yazaki Corp | 車両運行情報収集装置 |
US20150089287A1 (en) * | 2013-09-23 | 2015-03-26 | Sarathy Jayakumar | Event-triggered storage of data to non-volatile memory |
CN109101622A (zh) * | 2018-08-10 | 2018-12-28 | 北京奇虎科技有限公司 | 数据同步方法、装置、计算设备及计算机存储介质 |
CN109491827A (zh) * | 2018-12-03 | 2019-03-19 | 浪潮电子信息产业股份有限公司 | 应用软件的日志数据存储方法、装置、设备及存储介质 |
CN110232752A (zh) * | 2018-09-05 | 2019-09-13 | 蔚来汽车有限公司 | 数据存储装置和方法、黑匣子、车辆、控制器及介质 |
CN111056024A (zh) * | 2019-11-25 | 2020-04-24 | 中国南方航空股份有限公司 | 一种飞机辅助动力单元运行状态监控装置 |
CN112330841A (zh) * | 2020-10-16 | 2021-02-05 | 安徽江淮汽车集团股份有限公司 | 车辆数据记录方法、设备、存储介质及装置 |
CN112711612A (zh) * | 2020-12-31 | 2021-04-27 | 青岛海尔科技有限公司 | 数据处理方法、装置和存储介质及电子装置 |
CN113157497A (zh) * | 2021-04-30 | 2021-07-23 | 重庆紫光华山智安科技有限公司 | 数据存储方法、装置、设备及介质 |
-
2021
- 2021-12-03 CN CN202111466987.2A patent/CN114415936B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001126094A (ja) * | 1999-10-26 | 2001-05-11 | Yazaki Corp | 車両運行情報収集装置 |
US20150089287A1 (en) * | 2013-09-23 | 2015-03-26 | Sarathy Jayakumar | Event-triggered storage of data to non-volatile memory |
CN109101622A (zh) * | 2018-08-10 | 2018-12-28 | 北京奇虎科技有限公司 | 数据同步方法、装置、计算设备及计算机存储介质 |
CN110232752A (zh) * | 2018-09-05 | 2019-09-13 | 蔚来汽车有限公司 | 数据存储装置和方法、黑匣子、车辆、控制器及介质 |
CN109491827A (zh) * | 2018-12-03 | 2019-03-19 | 浪潮电子信息产业股份有限公司 | 应用软件的日志数据存储方法、装置、设备及存储介质 |
CN111056024A (zh) * | 2019-11-25 | 2020-04-24 | 中国南方航空股份有限公司 | 一种飞机辅助动力单元运行状态监控装置 |
CN112330841A (zh) * | 2020-10-16 | 2021-02-05 | 安徽江淮汽车集团股份有限公司 | 车辆数据记录方法、设备、存储介质及装置 |
CN112711612A (zh) * | 2020-12-31 | 2021-04-27 | 青岛海尔科技有限公司 | 数据处理方法、装置和存储介质及电子装置 |
CN113157497A (zh) * | 2021-04-30 | 2021-07-23 | 重庆紫光华山智安科技有限公司 | 数据存储方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114415936B (zh) | 2024-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11360533B2 (en) | Device maintenance of a data storage device including wear levelling, garbage collection, or combination thereof | |
US10380057B2 (en) | Data storage device | |
CN113176771B (zh) | 车辆域控制器运行状态监控方法 | |
CN111694341A (zh) | 一种故障数据存储方法、装置、车载设备及存储介质 | |
CN111915763A (zh) | 一种汽车高级驾驶辅助功能异常信息采集方法及电子设备 | |
WO2010148940A1 (zh) | 一种故障信息转储的方法及系统 | |
CN105243702B (zh) | 一种基于云存储的汽车黑匣子数据处理方法 | |
CN106814731B (zh) | 车辆故障码读取方法、装置及车辆故障统计系统 | |
CN106569148A (zh) | 车载电源故障处理系统及方法 | |
US20220317918A1 (en) | Reduction of Write Amplification in Sensor Data Recorders | |
US20240249623A1 (en) | Artificial intelligence-based persistence of vehicle black box data | |
CN114415936B (zh) | 数据存储方法、数据存储装置、车机装置和存储介质 | |
CN114706836B (zh) | 一种基于机载嵌入式数据库的数据生命周期管理方法 | |
CN102682498B (zh) | 用于车辆的信息记录设备 | |
CN114253483B (zh) | 基于命令的写缓存管理方法、装置、计算机设备及存储介质 | |
CN115378980A (zh) | 一种行车监控数据的定向存储方法及装置 | |
CN103617008A (zh) | 车载视频监控终端的双sd卡多媒体文件存储系统及方法 | |
CN110379162A (zh) | 车辆违章监测方法、装置、设备及计算机可读存储介质 | |
US20080209032A1 (en) | Alarm method for insufficient storage space of network storage system | |
US11144239B2 (en) | Storage controller, storage device, and write control method | |
CN217588058U (zh) | 存储设备 | |
CN214796238U (zh) | 一种车辆电子哨兵预警监测系统 | |
US11669425B2 (en) | Computerized system and method for periodically powering up a storage device to avoid data loss | |
CN114826818A (zh) | 一种can报文数据处理方法及装置 | |
WO2021092784A1 (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 | ||
GR01 | Patent grant |