掌桥专利:专业的专利平台
掌桥专利
首页

一种存储方法、装置、计算机设备和可读存储介质

文献发布时间:2023-06-19 16:04:54



技术领域

本申请涉及数据存储技术领域,特别是涉及一种存储方法、装置、计算机设备和可读存储介质。

背景技术

目前,汽车碰撞测试系统包含传感器、EDR(汽车事件数据记录系统,Event DataRecorder)和外部非易失性存储器。在汽车碰撞测试过程中,EDR将传感器采集到的性能数据暂存到内存中。然后,当内存中暂存的某一传感器采集的性能数据达到一定数量后,EDR将该传感器采集的性能数据一并存储至外存中。

然而,在传输该传感器采集的性能数据的过程将独占传输通道,导致其他传感器采集到的性能数据无法存储至外存中,同时EDR也无法读取外存中存储的性能数据,形成数据堵塞。因此如何改变现有的性能数据读取模式是汽车性能测试领域较为关心的问题。

发明内容

基于此,有必要针对上述技术问题,提供一种存储方法、装置、计算机设备和可读存储介质。

第一方面,提供了一种存储方法,所述方法应用于汽车事件数据记录系统EDR,所述EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与所述缓存区中的第二存储地址相对应,所述方法包括:

当EDR上电后,将所述外部非易失性存储器中的第一存储地址下的性能数据加载至所述缓存区中的第二存储地址下;

基于性能数据读写指令,对所述缓存区中的第二存储地址下的性能数据进行读写操作;

按照预设的同步周期,将所述缓存区中的第二存储地址下的性能数据与所述外部非易失性存储中的第一存储地址下的性能数据进行同步。

作为一种可选地实施方式,所述将所述外部非易失性存储器中的第一存储地址下的性能数据加载至所述缓存区中的第二存储地址下之前,所述方法还包括:

将所述缓存区中的所述第二存储地址下的性能数据的数据状态设置为未加载状态。

作为一种可选地实施方式,所述将所述外部非易失性存储器中的第一存储地址下的性能数据加载至所述缓存区中的第二存储地址下之后,所述方法还包括:

将所述缓存区中的所述第二存储地址下的已加载的性能数据的数据状态设置为同步状态。

作为一种可选地实施方式,所述基于性能数据读写指令,对所述缓存区中的第二存储地址下的性能数据进行读写操作之后,所述方法还包括:

将所述缓存区中的所述第二存储地址下的更新后的性能数据的数据状态设置为更新状态。

作为一种可选地实施方式,所述按照预设的同步周期,将所述缓存区中的第二存储地址下的性能数据与所述外部非易失性存储器中的第一存储地址下的性能数据进行同步,包括:

所述按照预设的同步周期,将所述缓存区中的第二存储地址下的更新状态的性能数据与所述外部非易失性存储器中的第一存储地址下的性能数据进行同步;

将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

作为一种可选地实施方式,所述按照预设的同步周期,将所述缓存区中的第二存储地址下的性能数据与所述外部非易失性存储器中的第一存储地址下的性能数据进行同步,包括:

所述按照预设的同步周期,将所述缓存区中的第二存储地址下的更新状态的性能数据与所述外部非易失性存储中的第一存储地址下的性能数据进行同步;

将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为校验状态;

读取所述外部非易失性存储器中的第一存储地址下的同步后的性能数据;

如果所述外部非易失性存储器中的第一存储地址下的同步后的性能数据与所述缓存区中的第二存储地址下的校验状态的性能数据相同,则将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

如果所述外部非易失性存储器中的第一存储地址下的同步后的性能数据与所述缓存区中的第二存储地址下的校验状态的性能数据不相同,则将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为更新状态。

第二方面,提供了一种存储装置,所述装置应用于汽车事件数据记录系统EDR,所述EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与所述缓存区中的第二存储地址相对应,所述装置包括:

加载模块,用于当EDR上电后,将所述外部非易失性存储器中的第一存储地址下的性能数据加载至所述缓存区中的第二存储地址下;

读写模块,用于基于性能数据读写指令,对所述缓存区中的第二存储地址下的性能数据进行读写操作;

同步模块,用于按照预设的同步周期,将所述缓存区中的第二存储地址下的性能数据与所述外部非易失性存储中的第一存储地址下的性能数据进行同步。

作为一种可选地实施方式,所述装置还包括:

第一设置模块,用于将所述缓存区中的所述第二存储地址下的性能数据的数据状态设置为未加载状态。

作为一种可选地实施方式,所述装置还包括:

第二设置模块,用于将所述缓存区中的所述第二存储地址下的已加载的性能数据的数据状态设置为同步状态。

作为一种可选地实施方式,所述装置还包括:

第三设置模块,用于将所述缓存区中的所述第二存储地址下的更新后的性能数据的数据状态设置为更新状态。

作为一种可选地实施方式,所述同步模块,具体用于:

所述按照预设的同步周期,将所述缓存区中的第二存储地址下的更新状态的性能数据与所述外部非易失性存储器中的第一存储地址下的性能数据进行同步;

将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

作为一种可选地实施方式,所述同步模块,具体用于:

所述按照预设的同步周期,将所述缓存区中的第二存储地址下的更新状态的性能数据与所述外部非易失性存储中的第一存储地址下的性能数据进行同步;

将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为校验状态;

读取所述外部非易失性存储器中的第一存储地址下的同步后的性能数据;

如果所述外部非易失性存储器中的第一存储地址下的同步后的性能数据与所述缓存区中的第二存储地址下的校验状态的性能数据相同,则将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

如果所述外部非易失性存储器中的第一存储地址下的同步后的性能数据与所述缓存区中的第二存储地址下的校验状态的性能数据不相同,则将所述缓存区中的所述第二存储地址下的已同步的性能数据的数据状态设置为更新状态。

第三方面,提供了一种计算机设备,包括存储器及处理器,所述存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法步骤。

第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项所述的方法步骤。

本申请提供了一种存储方法,本申请的实施例提供的技术方案至少带来以下有益效果:本技术方案应用于汽车事件数据记录系统EDR,所述EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与所述缓存区中的第二存储地址相对应,所述方法包括:当EDR上电后,将所述外部非易失性存储器中的第一存储地址下的性能数据加载至所述缓存区中的第二存储地址下;基于性能数据读写指令,对所述缓存区中的第二存储地址下的性能数据进行读写操作;按照预设的同步周期,将所述缓存区中的第二存储地址下的性能数据与所述外部非易失性存储中的第一存储地址下的性能数据进行同步。EDR根据缓存区与外部非易失性存储器一一对应的存储地址,按照同步周期,在传输通道空闲时将性能数据同步至对应的外部非易失性存储器中,无需等待内存与外存之间的数据传输完成,减少了数据传输的延迟时间以及存储堵塞。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种存储方法的流程图;

图2为本申请实施例提供的一种存储方法的流程图;

图3为本申请实施例提供的一种存储方法的流程图;

图4为本申请实施例提供的一种存储方法的示例的流程图;

图5为本申请实施例提供的一种存储装置的结构示意图;

图6为本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的数据的存储方法,可以应用于汽车碰撞测试系统中的EDR,该系统包含传感器、EDR和外部非易失性存储器。EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与缓存区中的第二存储地址相对应。

下面将结合具体实施方式,对本申请实施例提供的一种数据的存储方法进行详细的说明。图1为本申请实施例提供的一种存储方法的流程图,如图1所示,具体步骤如下:

步骤101,当EDR上电后,将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下。

在实施中,由于缓存区设置于内存,因此,缓存区与内存一样属于易失性存储。在系统断电之后,缓存区内的性能数据全部丢失。因此,当EDR上电后,EDR可以将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下。也即,基于非易失性存储器的第一存储地址一对一映射缓冲区的第二存储地址,EDR将外部非易失性存储器中的性能数据同步至缓存区中。例如:缓存区和外部非易失性存储器在存储地址01下面均存储了第一性能数据。断电情况下,EDR的缓存区中存储地址01下面存储的第一性能数据被清除。上电之后,EDR将外部非易失性存储器中的存储地址01下面存储的第一性能数据加载至缓存区中的存储地址01下,以完成与外部非易失性存储器的同步。

步骤102,基于性能数据读写指令,对缓存区中的第二存储地址下的性能数据进行读写操作。

在实施中,由于此时缓存区中的性能数据与外部非易失性存储器的地址和性能数据一一同步。因此,当EDR需要读取外部非易失性存储器中的性能数据时,EDR可以在缓存中直接读取。当EDR需要在外部非易失性存储器中新增性能数据时,则EDR可以将暂存在内存中的性能数据按照地址及长度装载进缓存区中。当EDR需要在外部非易失性存储器中删除或者修改某一性能数据时,EDR也同样可以在缓存区中对该性能数据进行删除或修改。例如:缓存区和外部非易失性存储器在存储地址01下面均存储了第一性能数据,地址03、地址04…地址25未存储性能数据,当EDR读取第一性能数据时,则在缓存区内,EDR按照存储地址01,可以读取第一性能数据。如果EDR的内存接收到采集设备采集的新的性能数据,则EDR中的存储控制器根据性能数据长度,将性能数据存储到缓存区内。如果需要修改存储地址01下面存储的第一性能数据,则EDR存储控制器在缓存区中删除第一性能数据,并将新的性能数据存储到缓存区中的该地址下。

步骤103,按照预设的同步周期,将缓存区中的第二存储地址下的性能数据与外部非易失性存储中的第一存储地址下的性能数据进行同步。

在实施中,按照预设的同步周期,EDR将缓存区中的第二存储地址下的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。EDR监控缓存区与外部非易失性存储器的传输通道是否空闲,当预设的同步周期到达时,如果缓存区与外部非易失性存储器的传输通道空闲,则EDR将缓存区中的第二存储地址下的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。如果缓存区与外部非易失性存储器的传输通道非空闲,则在下一个同步周期,继续判断缓存区与外部非易失性存储器的传输通道是否空闲。

作为一种可选的实施方式,为了提高同步的准确性,EDR将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下之前,也即EDR上电后,EDR将缓存区中的第二存储地址下的性能数据的数据状态设置为未加载状态。

在实施中,当EDR上电后,缓存区中的性能数据状态设置为未加载状态,以便EDR根据缓存区中的性能数据的数据状态判断性能数据是否完成同步。例如:当EDR上电后,在外部非易失性存储器中的性能数据未加载到缓存区中时,先将缓存区内的性能数据的数据状态设置为“0xFF”,“0xFF”表示数据未加载状态。

作为一种可选的实施方式,EDR将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下之后的具体步骤为将缓存区中的第二存储地址下的已加载的性能数据的数据状态设置为同步状态。

在实施中,当EDR上电后,缓存区内的性能数据与外部非易失性存储器的性能数据完成同步之后,缓存区内的已加载的性能数据的数据状态由未加载状态更新为同步状态。例如:当外部非易失性存储器中的性能数据已经加载到缓存区中时,EDR将缓存区的数据状态由“0xFF”状态,更新为“0x00”状态。“0x00”表示缓存区内的数据与外部非易失性存储器中一致,实现外部非易失性存储器与缓存区的初始化匹配。

作为一种可选的实施方式,基于性能数据读写指令,EDR对缓存区中的第二存储地址下的性能数据进行读写操作之后的具体步骤为将缓存区中的第二存储地址下的更新后的性能数据的数据状态设置为更新状态。

在实施中,当缓存区内的性能数据与外部非易失性存储器内的性能数据完成同步之后,如果缓存区内的性能数据发生新增、删除或者更改,则此时缓存区内的性能数据与外部非易失性存储器的性能数据不一致,此时,EDR将缓存区内更新后的性能数据的数据状态更新为更新状态。例如:当缓存区内的性能数据发生新增、删除或者更改时,此时缓存区内的性能数据与外部非易失性存储器内的性能数据不一致,则将缓存区内的发生新增、删除或者更改的性能数据的数据状态由“0x00”状态更新为“0x01”状态。“0x01”用于标记与外部非易失性存储器内不一致的性能数据。

可选的,当缓存区内的性能数据发生新增、删除或者更改时,也可以将缓存区内的所有性能数据的数据状态更新为“0x01”,以便后续EDR可以将缓存区内的所有性能数据整体同步到外部非易失性存储器中。

作为一种可选的实施方式,如图2所示,按照预设的同步周期,EDR将缓存区中的第二存储地址下的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步的具体步骤如下:

步骤201,按照预设的同步周期,将缓存区中的第二存储地址下的更新状态的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。

在实施中,按照预设的同步周期,EDR将缓存区中的第二存储地址下的更新状态的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。如果此时有其他数据正在与外部非易失性存储器进行同步,即缓存区与外部非易失性存储器的传输通道非空闲,则如果在当前同步周期内,其他性能数据未完成同步,那么在下个同步周期,EDR再次判断缓存区与外部非易失性存储器的传输通道是否空闲。例如:EDR在缓存区内存储地址01下存储了第一性能数据,该第一性能数据的状态为更新状态,如果EDR判断缓存区与外部非易失性存储器的传输通道被占用,则将第一性能数据的数据状态设置为“0x02”,“0x02”表示等待状态,当前处于等待状态的第一性能数据无法完成与外部非易失性存储器的同步,需要等待传输通道空闲时再进行同步。

步骤202,将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

在实施中,EDR将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为同步状态。例如:当EDR的缓存区内存储地址01下存储的第一性能数据与外部非易失性存储器完成同步时,EDR中的存储控制器将已经完成同步的第一性能数据由“0x02”状态更新为“0x00”状态,“0x00”表示已经完成同步,此时外部存储区内存储地址01下存储了与缓存区一致的第一性能数据。

可选的,如图3所示,如果需要循环冗余校验,按照预设的同步周期,DER将缓存区中的第二存储地址下的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步的具体步骤如下:

步骤301,按照预设的同步周期,将缓存区中的第二存储地址下的更新状态的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。

在实施中,按照预设的同步周期,EDR将缓存区中的第二存储地址下的更新状态的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。

步骤302,将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为校验状态。

在实施中,EDR将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为校验状态,以判断从EDR缓存区中的第二存储地址下,同步到外部非易失性存储器中的第一存储地址下的性能数据是否与EDR缓存区中的第二存储地址下的性能数据一致。例如:EDR缓存区中存储地址01下第一性能数据的数据状态为“0x02”,“0x02”表示该数据处于等待状态,完成同步之后,该性能数据的数据状态本应更新为“0x00”,但是由于需要循环冗余校验,因此将第一性能数据的数据状态“0x02”更新为“0x03”状态,“0x03”状态表示第一性能数据处于校验状态。

步骤303,读取外部非易失性存储器中的第一存储地址下的同步后的性能数据。

在实施中,EDR中的存储控制器读取外部非易失性存储器中的第一存储地址下的同步后的性能数据。

步骤304,如果外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据相同,则将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

在实施中,如果外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据相同,则EDR将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为同步状态。例如:EDR的缓存区中的存储地址01与外部非易失性存储器中的存储地址01下均存储有的第一性能数据,EDR读取外部非易失性存储器中的首地址01下的第一性能数据,EDR将该性能数据与缓存区对应的性能数据对比,如果两者一致,则EDR将缓存区中的第一性能数据的数据状态由“0x03”更新为“0x00”状态,即同步状态。

步骤305,如果外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据不相同,则将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为更新状态。

在实施中,如果外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据不相同,则EDR将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为更新状态。例如:EDR的缓存区中的存储地址01与外部非易失性存储器中的存储地址01下均存储有的第一性能数据,EDR读取外部非易失性存储器中的首地址01下的第一性能数据,EDR将该性能数据与缓存区对应的性能数据对比,如果两者不一致,则EDR将缓存区中的第一性能数据的数据状态由“0x03”更新为“0x01”状态。表示第一性能数据未完成同步,需要重新同步,第一性能数据处于更新状态。

图4为本申请实施例提供的一种存储方法的示例的流程图,以需要循环冗余校验为例,本示例中,外部非易失性存储器的第一存储地址下存储有第一性能数据EDR未上电时,EDR的缓存区中无数据,如4所示,具体处理过程如下:

步骤401,EDR上电后,EDR将缓存区中的性能数据状态设置为未加载状态。

步骤402,EDR将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下。

步骤403,EDR将缓存区中的第二存储地址下的性能数据的数据状态设置为同步状态。

步骤404,基于性能数据读写指令,EDR对缓存区中的第二存储地址下的第一性能数据进行读写操作。

步骤405,EDR将缓存区中的第二存储地址下的性能数据的数据状态设置为更新状态。

步骤406,按照预设的同步周期,EDR将缓存区中的第二存储地址下的性能数据与外部非易失性存储中的第一存储地址下的性能数据进行同步。

步骤407,EDR将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为校验状态。

步骤408,EDR读取外部非易失性存储器中的第一存储地址下的同步后的性能数据。

步骤409,EDR判断外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据是否相同,如果是,则执行步骤403,如果否,则执行步骤405。

本申请实施例提供了一种存储方法,方法应用于汽车事件数据记录系统EDR,EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与缓存区中的第二存储地址相对应,当EDR上电后,将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下。基于性能数据读写指令,对缓存区中的第二存储地址下的性能数据进行读写操作。按照预设的同步周期,将缓存区中的第二存储地址下的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。EDR根据缓存区与外部非易失性存储器一一对应的存储地址,按照同步周期,在传输通道空闲时将性能数据同步至对应的外部非易失性存储器中,无需等待内存与外存之间的数据传输完成,减少了数据传输的延迟时间经过测试,可以达到1ms的延时,基本满足汽车碰撞的测试要求。另外,除了汽车碰撞测试中涉及的速度,加速度,时间等性能数据以外,还有其他设备测试的数据报文等,可能造成存储堵塞,产生同期容差。装载至缓存区,由缓存区传输加速度至外存,由于没有持续占用传输通道,其他设备采集的数据或者发送的报文可以有空闲时间传输至外存。

应该理解的是,虽然图1至图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1至图4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。

本申请实施例还提供了一种存储装置,如图5所示,该装置应用于汽车事件数据记录系统EDR,EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与缓存区中的第二存储地址相对应,该装置包括:

加载模块510,用于当EDR上电后,将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下。

读写模块520,用于基于性能数据读写指令,对缓存区中的第二存储地址下的性能数据进行读写操作。

同步模块530,用于按照预设的同步周期,将缓存区中的第二存储地址下的性能数据与外部非易失性存储中的第一存储地址下的性能数据进行同步。

作为一种可选的实施方式,装置还包括:

第一设置模块,用于将缓存区中的第二存储地址下的性能数据的数据状态设置为未加载状态。

作为一种可选的实施方式,装置还包括:

第二设置模块,用于将缓存区中的第二存储地址下的已加载的性能数据的数据状态设置为同步状态。

作为一种可选的实施方式,装置还包括:

第三设置模块,用于将缓存区中的第二存储地址下的更新后的性能数据的数据状态设置为更新状态。

作为一种可选的实施方式,同步模块530,具体用于:

按照预设的同步周期,将缓存区中的第二存储地址下的更新状态的性能数据与外部非易失性存储器中的第一存储地址下的性能数据进行同步。

将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

作为一种可选的实施方式,同步模块530,具体用于:

按照预设的同步周期,将缓存区中的第二存储地址下的更新状态的性能数据与外部非易失性存储中的第一存储地址下的性能数据进行同步。

将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为校验状态。

读取外部非易失性存储器中的第一存储地址下的同步后的性能数据。

如果外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据相同,则将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为同步状态。

如果外部非易失性存储器中的第一存储地址下的同步后的性能数据与缓存区中的第二存储地址下的校验状态的性能数据不相同,则将缓存区中的第二存储地址下的已同步的性能数据的数据状态设置为更新状态。

本申请实施例提供了一种存储装置,该装置应用于汽车事件数据记录系统EDR,EDR的内存中划分有缓存区,外部非易失性存储器中的第一存储地址与缓存区中的第二存储地址相对应,该装置包括:加载模块510,用于当EDR上电后,将外部非易失性存储器中的第一存储地址下的性能数据加载至缓存区中的第二存储地址下;读写模块520,用于基于性能数据读写指令,对缓存区中的第二存储地址下的性能数据进行读写操作;同步模块530,用于按照预设的同步周期,将缓存区中的第二存储地址下的性能数据与外部非易失性存储中的第一存储地址下的性能数据进行同步。EDR根据缓存区与外部非易失性存储器一一对应的存储地址,按照同步周期,在传输通道空闲时将性能数据同步至对应的外部非易失性存储器中,无需等待内存与外存之间的数据传输完成,减少了数据传输的延迟时间经过测试,可以达到1ms的延时,基本满足汽车碰撞的测试要求。另外,除了汽车碰撞测试中涉及的速度,加速度,时间等性能数据以外,还有其他设备测试的数据报文等,可能造成存储堵塞,产生同期容差。装载至缓存区,由缓存区传输加速度至外存,由于没有持续占用传输通道,其他设备采集的数据或者发送的报文可以有空闲时间传输至外存。

关于存储装置的具体限定可以参见上文中对于存储方法的限定,在此不再赘述。上述存储装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,如图6所示,包括存储器及处理器,存储器上存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述存储的方法步骤。

在一个实施例中,一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述存储的方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

还需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

技术分类

06120114694912