CN114461552B - 一种数据存储方法及装置 - Google Patents
一种数据存储方法及装置 Download PDFInfo
- Publication number
- CN114461552B CN114461552B CN202210091268.5A CN202210091268A CN114461552B CN 114461552 B CN114461552 B CN 114461552B CN 202210091268 A CN202210091268 A CN 202210091268A CN 114461552 B CN114461552 B CN 114461552B
- Authority
- CN
- China
- Prior art keywords
- data
- written
- page
- current page
- writing
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000013500 data storage Methods 0.000 title claims abstract description 30
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- 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/0614—Improving the reliability of 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Abstract
本发明公开了一种数据存储方法及装置。该方法包括:接收数据写入请求,其中,数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值,根据起始写入地址、数据总长度和源地址计算得到参考校验值,当参考校验值与目标校验值相同时,检测直接存储器访问DMA模块是否被占用,如果未被占用,通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM,其中,页为进行读取数据或者写入数据的最基本单位。本发明中,在DMA模块未被占用时,通过DMA模块将待写入数据写入EEPROM,此时未占用MCU,降低了MCU的占用率。
Description
技术领域
本发明涉及汽车嵌入式软件技术领域,具体而言,涉及一种数据存储方法及装置。
背景技术
目前,带电可擦可编程只读存储器EEPROM的存储采用同步存储方式,即将数据存储至EEPROM的方式为直接将待写入数据写入EEPROM中。
在直接将待写入数据写入EEPROM的过程中,一直占用着微控制单元MCU,此时,MCU无法进行其他操作,需要一直等待数据写入完成后,才可以进行其他操作,导致MCU占用率较高。
发明内容
本发明提供了一种数据存储方法及装置,以降低MCU的占用率。具体的技术方案如下。
第一方面,本发明提供了一种数据存储方法,应用于微控制单元MCU,所述方法包括:
接收数据写入请求,其中,所述数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值;
根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值;
当所述参考校验值与所述目标校验值相同且直接存储器访问DMA模块未被占用的情况下,通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM,其中,所述页为进行读取数据或者写入数据的最基本单位。
可选的,所述根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值的步骤,包括:
计算所述起始写入地址的高位字节、所述数据总长度的高位字节、所述源地址的高位字节、所述起始写入地址的低位字节、所述数据总长度的低位字节和所述源地址的低位字节之和作为参考校验值。
可选的,所述通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM的步骤,包括:
根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度,将所述第一页待写入数据作为当前页待写入数据,将所述起始写入地址作为所述当前页待写入数据的起始写入地址;
通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据;
当接收到所述DMA模块发送的第一中断信息且所述当前页已读取数据与所述当前页待写入数据相同的情况下,根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,将所述下一页待写入数据作为当前页待写入数据,返回执行所述通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据的步骤,其中,所述第一中断信息为所述DMA模块每完成一次读操作所发送的用于告知所述MCU读操作已完成的信息;
当接收到所述DMA模块发送的所述第一中断信息且所述当前页已读取数据与所述当前页待写入数据不相同的情况下,通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中。
可选的,在所述通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中的步骤之后,上述数据存储方法还包括:
当接收到所述DMA模块发送的第二中断信息的情况下,通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据,其中,所述第二中断信息为所述DMA模块每完成一次写操作所发送的用于告知所述MCU写操作已完成的信息;
当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据已全部完成写入的情况下,结束写入。
可选的,在所述通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据的步骤之后,上述数据存储方法还包括:
当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据未全部完成写入的情况下,返回执行所述根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址的步骤。
可选的,所述根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度的步骤,包括:
计算所述页的预设数据长度与所述起始写入地址之差作为所述第一页待写入数据的数据长度。
可选的,所述根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址的步骤,包括:
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度小于所述页的预设数据长度的情况下,将所述剩余数据的数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址;
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度未小于所述页的预设数据长度的情况下,将所述页的预设数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址。
可选的,当接收到所述DMA模块发送的第一中断信息的情况下,上述数据存储方法还包括:
设置所述DMA模块的占用标志位为假。
可选的,当直接存储器访问DMA模块未被占用的情况下,上述数据存储方法还包括:
设置所述DMA模块的占用标志位为真。
第二方面,本发明提供了一种数据存储装置,应用于微控制单元MCU,所述装置包括:
接收模块,用于接收数据写入请求,其中,所述数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值;
计算模块,用于根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值;
第一写入模块,用于当所述参考校验值与所述目标校验值相同且直接存储器访问DMA模块未被占用的情况下,通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM,其中,所述页为进行读取数据或者写入数据的最基本单位。
可选的,所述计算模块,具体用于:
计算所述起始写入地址的高位字节、所述数据总长度的高位字节、所述源地址的高位字节、所述起始写入地址的低位字节、所述数据总长度的低位字节和所述源地址的低位字节之和作为参考校验值。
可选的,所述第一写入模块,包括:
当前页待写入数据确定子模块,用于根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度,将所述第一页待写入数据作为当前页待写入数据,将所述起始写入地址作为所述当前页待写入数据的起始写入地址;
读取子模块,用于通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据;
下一页待写入数据确定子模块,用于当接收到所述DMA模块发送的第一中断信息且所述当前页已读取数据与所述当前页待写入数据相同的情况下,根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,将所述下一页待写入数据作为当前页待写入数据,触发所述读取子模块,其中,所述第一中断信息为所述DMA模块每完成一次读操作所发送的用于告知所述MCU读操作已完成的信息;
写入子模块,用于当接收到所述DMA模块发送的所述第一中断信息且所述当前页已读取数据与所述当前页待写入数据不相同的情况下,通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中。
可选的,上述数据存储装置还包括:
读取模块,用于在所述通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中之后,当接收到所述DMA模块发送的第二中断信息的情况下,通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据,其中,所述第二中断信息为所述DMA模块每完成一次写操作所发送的用于告知所述MCU写操作已完成的信息;
写入结束模块,用于当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据已全部完成写入的情况下,结束写入。
可选的,上述数据存储装置还包括:
第二写入模块,用于在所述通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据之后,当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据未全部完成写入的情况下,触发所述下一页待写入数据确定子模块中的所述根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址。
可选的,所述当前页待写入数据确定子模块,具体用于:
计算所述页的预设数据长度与所述起始写入地址之差作为所述第一页待写入数据的数据长度。
可选的,所述下一页待写入数据确定子模块,具体用于:
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度小于所述页的预设数据长度的情况下,将所述剩余数据的数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址;
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度未小于所述页的预设数据长度的情况下,将所述页的预设数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址。
可选的,上述数据存储装置还包括:
第一设置模块,用于当接收到所述DMA模块发送的第一中断信息的情况下,设置所述DMA模块的占用标志位为假。
可选的,上述数据存储装置还包括:
第二设置模块,用于当直接存储器访问DMA模块未被占用的情况下,设置所述DMA模块的占用标志位为真。
由上述内容可知,本发明实施例提供的一种数据存储方法及装置,可以接收数据写入请求,其中,数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值,根据起始写入地址、数据总长度和源地址计算得到参考校验值,当参考校验值与目标校验值相同时,检测直接存储器访问DMA模块是否被占用,如果未被占用,通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM。本发明实施例中,在DMA模块未被占用时,通过DMA模块将待写入数据写入EEPROM,此时未占用MCU,降低了MCU的占用率。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
本发明实施例的技术效果至少包括:
1、在DMA模块未被占用时,通过DMA模块将待写入数据写入EEPROM,此时未占用MCU,降低了MCU的占用率。
2、在将待写入数据写入EEPROM之前,通过对比参考校验值与目标校验值是否相同的方式来对起始写入地址、数据总长度和源地址进行校验,当两者相同时,才将待写入数据写入EEPROM,保证了起始写入地址、数据总长度和源地址的正确性,避免将待写入数据写入错误的起始写入地址或者从错误的源地址获得待写入数据或者写入错误的数据总长度。
3、由于写入操作会减少EEPROM的使用寿命,因此,在当前页已读取数据与当前页待写入数据相同的情况下,就不再将当前页待写入数据写入EEPROM,减少了对EEPROM的写入操作,提高了EEPROM的使用寿命。
4、在将当前页待写入数据写入EEPROM后,增加了回读功能,通过DMA模块从EEPROM中读取已写入的当前页待写入数据作为当前页已写入数据,然后对比当前页已写入数据与当前页待写入数据中的每个字节包含的数据是否相同,并在两者相同时,才对下一页待写入数据进行后续操作,保证了已写入EEPROM中的数据的正确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据存储方法的一种流程示意图;
图2为本发明实施例提供的通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM的流程示意图;
图3为本发明实施例提供的数据存储装置的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含的一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
本发明实施例公开了一种数据存储方法及装置,能够降低MCU的占用率。下面对本发明实施例进行详细说明。
图1为本发明实施例提供的数据存储方法的一种流程示意图。该方法应用于MCU(Microcontroller Unit,微控制单元)。该方法具体包括以下步骤。
S110:接收数据写入请求,其中,数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值。
当用户有数据需要写入EEPROM(Electrically Erasable Programmable readonly memory,带电可擦可编程只读存储器)时,会发送数据写入请求至MCU。
MCU接收数据写入请求,其中,数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值。起始写入地址为将待写入数据写入EEPROM中的起始地址;源地址为待写入数据的来源地址;目标校验值为用于对待写入数据进行正确性校验的指标值。
S120:根据起始写入地址、数据总长度和源地址计算得到参考校验值。
由于起始写入地址、数据总长度和源地址在传输过程中可能发生错误,为了防止将待写入数据写入错误的起始写入地址或者从错误的源地址获得待写入数据或者写入错误的数据总长度,MCU需要对起始写入地址、数据总长度和源地址进行校验。MCU对起始写入地址、数据总长度和源地址进行校验的方式为通过校验值来进行校验,因此,MCU在接收数据写入请求后,需要根据起始写入地址、数据总长度和源地址计算得到参考校验值。
其中,步骤S120可以包括:
计算起始写入地址的高位字节、数据总长度的高位字节、源地址的高位字节、起始写入地址的低位字节、数据总长度的低位字节和源地址的低位字节之和作为参考校验值。
高位字节和低位字节是相对于地址而言的,在内存中,地址是按字节编码的,即一个字节编一个地址,这个地址就是这个字节的编号。高位字节就是高地址字节,低位字节就是低地址字节,一般而言,左边为高位,右边为低位。
例如:一个16进制数据FF1A,高位字节为FF,低位字节为1A。
S130:当参考校验值与目标校验值相同且直接存储器访问DMA模块未被占用的情况下,通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM,其中,页为进行读取数据或者写入数据的最基本单位。
在得到参考校验值后,将参考校验值和目标校验值进行对比,当两者相同时,说明起始写入地址、数据总长度和源地址在传输过程中未发生错误,此时可以进行写入,当两者不相同时,说明起始写入地址、数据总长度和源地址在传输过程中发生了错误,此时不可以进行写入。
由于现有的同步存储即直接将待写入数据写入EEPROM中的方式使得MCU占用率较高,基于此,本申请的发明人提出了一种异步存储的方式,即通过DMA(Direct MemoryAccess,直接存储器访问)模块来进行存储。为了通过DMA模块来进行存储,当参考校验值与目标校验值相同时,需要检测直接存储器访问DMA模块是否被占用。具体的,当直接存储器访问DMA模块的占用标志位为真时,表示已被占用;当直接存储器访问DMA模块的占用标志位为假时,表示未被占用。
当DMA模块被占用时,说明DMA模块正在运行中,此时无法通过DMA模块进行读操作或者写操作。
当DMA模块未被占用时,说明DMA模块未在运行中,此时可以通过DMA模块进行读操作或者写操作,因此,当参考校验值与目标校验值相同且直接存储器访问DMA模块未被占用的情况下,MCU可以通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM。其中,页为进行读取数据或者写入数据的最基本单位,页的数据长度是由EEPROM的属性来决定的,不同的EEPROM对应不同的页的数据长度。
由于当DMA模块未被占用时,MCU则通过DMA模块将待写入数据写入EEPROM,因此,当DMA模块未被占用的情况下,上述方法还可以包括:
设置DMA模块的占用标志位为真。
将DMA模块的占用标志位设置为真,表明DMA模块被占用,避免了其它程序再使用DMA模块。
图2为本发明实施例提供的通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM的流程示意图,参见图2,上述通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM可以包括:
S210:根据页的预设数据长度和起始写入地址确定待写入数据中的第一页待写入数据的数据长度,将第一页待写入数据作为当前页待写入数据,将起始写入地址作为当前页待写入数据的起始写入地址。
在本发明实施例中,无论是读取数据还是写入数据都是按页进行的,因此,需要根据页的预设数据长度和起始写入地址确定待写入数据中的第一页待写入数据的数据长度。
其中,上述根据页的预设数据长度和起始写入地址确定待写入数据中的第一页待写入数据的数据长度,可以包括:
计算页的预设数据长度与起始写入地址之差作为第一页待写入数据的数据长度。
例如:假设页的预设数据长度为216字节,起始写入地址为100字节,则计算216字节-100字节=116字节作为第一页待写入数据的数据长度。
在得到第一页待写入数据的数据长度后也就确定了第一页待写入数据,将第一页待写入数据作为当前页待写入数据,将起始写入地址作为当前页待写入数据的起始写入地址。
S220:通过DMA模块按照当前页待写入数据的起始写入地址从EEPROM中读取当前页待写入数据的数据长度的数据作为当前页已读取数据。
由于待写入数据可能与EEPROM中已存储的数据存在重叠的部分,为了避免重复写入,在将当前页待写入数据写入EEPROM之前,需要通过DMA模块按照当前页待写入数据的起始写入地址从EEPROM中读取当前页待写入数据的数据长度的数据作为当前页已读取数据。
由于DMA模块每完成一次读操作就会发送第一中断信息至MCU,告知MCU读操作已完成,DMA模块每完成一次写操作就会发送第二中断信息至MCU,告知MCU写操作已完成。因此,DMA模块完成读取当前页已读取数据后,发送第一中断信息至MCU。
S230:当接收到DMA模块发送的第一中断信息且当前页已读取数据与当前页待写入数据相同的情况下,根据当前页已写入数据的终点写入地址和页的预设数据长度确定当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,将下一页待写入数据作为当前页待写入数据,返回执行步骤S220,其中,第一中断信息为DMA模块每完成一次读操作所发送的用于告知MCU读操作已完成的信息。
当MCU接收到DMA模块发送的第一中断信息时,获知读操作已完成,判断当前页已读取数据与当前页待写入数据是否相同,并根据判断结果进行后续步骤。
由于DMA模块已完成了一次读操作,此时DMA模块未被占用,因此,当接收到DMA模块发送的第一中断信息时,上述方法还可以包括:
设置DMA模块的占用标志位为假。
将DMA模块的占用标志位设置为假,表明DMA模块未被占用,使得其它程序可以使用DMA模块。
当判断结果为当前页已读取数据与当前页待写入数据相同,说明EEPROM中已存储了与当前页待写入数据相同的数据,此时,不需要再重复写入,可以继续写入下一页待写入数据。
为了写入下一页待写入数据,需要根据当前页已写入数据的终点写入地址和页的预设数据长度确定当前页待写入数据的下一页待写入数据的数据长度和起始写入地址。
其中,上述根据当前页已写入数据的终点写入地址和页的预设数据长度确定当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,可以包括:
当待写入数据中除当前页待写入数据以外的剩余数据的数据长度小于页的预设数据长度的情况下,将剩余数据的数据长度作为下一页待写入数据的数据长度,将起始写入地址与当前页待写入数据的数据长度之和作为下一页待写入数据的起始写入地址;
当待写入数据中除当前页待写入数据以外的剩余数据的数据长度未小于页的预设数据长度的情况下,将页的预设数据长度作为下一页待写入数据的数据长度,将起始写入地址与当前页待写入数据的数据长度之和作为下一页待写入数据的起始写入地址。
当待写入数据中除当前页待写入数据以外的剩余数据的数据长度小于页的预设数据长度时,说明剩余数据的数据长度已不足一页,此时,将剩余数据的数据长度作为下一页待写入数据的数据长度,将起始写入地址与当前页待写入数据的数据长度之和作为下一页待写入数据的起始写入地址。
当待写入数据中除当前页待写入数据以外的剩余数据的数据长度不小于页的预设数据长度时,说明剩余数据的数据长度超过一页,此时,将页的预设数据长度作为下一页待写入数据的数据长度,将起始写入地址与当前页待写入数据的数据长度之和作为下一页待写入数据的起始写入地址。
在确定了下一页待写入数据的数据长度和起始写入地址,即可将下一页待写入数据作为当前页待写入数据,再通过DMA模块从EEPROM中读取对应的数据,判断所读取的数据与当前页待写入数据是否相同,再根据判断结果进行后续步骤,也就是再返回执行步骤S220,具体参见步骤S220,在此不再赘述。
S240:当接收到DMA模块发送的第一中断信息且当前页已读取数据与当前页待写入数据不相同的情况下,通过DMA模块按照当前页待写入数据的起始写入地址将当前页待写入数据写入EEPROM中。
当接收到DMA模块发送的第一中断信息且判断结果为当前页已读取数据与当前页待写入数据不相同,说明EEPROM中未存储与当前页待写入数据相同的数据,此时,需要将当前页待写入数据写入EEPROM中,具体的,通过DMA模块按照当前页待写入数据的起始写入地址将当前页待写入数据写入EEPROM中。
由于DMA模块每完成一次读操作就会发送第一中断信息至MCU,告知MCU读操作已完成,DMA模块每完成一次写操作就会发送第二中断信息至MCU,告知MCU写操作已完成。因此,DMA模块完成将当前页待写入数据写入EEPROM后,发送第二中断信息至MCU。
由此,通过DMA模块完成将当前页待写入数据写入EEPROM。
在一种实现方式中,继续参见图2,在上述步骤S240之后,上述方法还可以包括:
S250:当接收到DMA模块发送的第二中断信息的情况下,通过DMA模块从EEPROM中读取已写入的当前页待写入数据作为当前页已写入数据,其中,第二中断信息为DMA模块每完成一次写操作所发送的用于告知MCU写操作已完成的信息。
由于DMA模块在将当前页待写入数据写入EEPROM中的过程中,可能出现错误,导致写入至EEPROM中的当前页待写入数据发生了变化,并不是正确的当前页待写入数据,因此,还需要判断已写入至EEPROM中的当前页待写入数据是否正确。
具体的,当MCU接收到DMA模块发送的第二中断信息时,获知写操作已完成,通过DMA模块从EEPROM中读取已写入的当前页待写入数据作为当前页已写入数据。
由于DMA模块已完成了一次写操作,此时DMA模块未被占用,因此,当接收到DMA模块发送的第二中断信息时,上述方法还可以包括:
设置DMA模块的占用标志位为假。
将DMA模块的占用标志位设置为假,表明DMA模块未被占用,使得其它程序可以使用DMA模块。
S260:当当前页已写入数据与当前页待写入数据中的每个字节包含的数据相同且待写入数据已全部完成写入的情况下,结束写入。
在读取了当前页已写入数据后,判断当前页已写入数据与当前页待写入数据中的每个字节包含的数据是否相同,当当前页已写入数据与当前页待写入数据中的每个字节包含的数据是相同的,说明已写入至EEPROM中的当前页待写入数据是正确的,此时,判断待写入数据是否已全部完成写入,当待写入数据已全部完成写入时,则结束写入。具体的,当已写入的全部数据的数据长度与数据总长度相同时,说明待写入数据已全部完成写入;当已写入的全部数据的数据长度与数据总长度不相同时,说明待写入数据未全部完成写入。
由此,在将当前页待写入数据写入EEPROM后,增加了回读功能,通过DMA模块从EEPROM中读取已写入的当前页待写入数据作为当前页已写入数据,然后对比当前页已写入数据与当前页待写入数据中的每个字节包含的数据是否相同,并在两者相同且待写入数据已全部完成写入的情况下,结束写入,保证了写入EEPROM中的所有数据的正确性。
在另一种实现方式中,继续参见图2,在上述步骤S250之后,上述方法还可以包括:
S270:当当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且待写入数据未全部完成写入的情况下,返回执行步骤S230中根据当前页已写入数据的终点写入地址和页的预设数据长度确定当前页待写入数据的下一页待写入数据的数据长度和起始写入地址的步骤。
当当前页已写入数据与当前页待写入数据中的每个字节包含的数据是相同的,说明已写入至EEPROM中的当前页待写入数据是正确的,此时,判断待写入数据是否已全部完成写入,具体的,当已写入的全部数据的数据长度与数据总长度相同时,说明待写入数据已全部完成写入;当已写入的全部数据的数据长度与数据总长度不相同时,说明待写入数据未全部完成写入。
当待写入数据未全部完成写入,则继续进行写入,也就是执行步骤S230中根据当前页已写入数据的终点写入地址和页的预设数据长度确定当前页待写入数据的下一页待写入数据的数据长度和起始写入地址的步骤,具体参见步骤S230,在此不再赘述。
由此,在将当前页待写入数据写入EEPROM后,增加了回读功能,通过DMA模块从EEPROM中读取已写入的当前页待写入数据作为当前页已写入数据,然后对比当前页已写入数据与当前页待写入数据中的每个字节包含的数据是否相同,并在两者相同时,才对下一页待写入数据进行后续操作,保证了已写入EEPROM中的数据的正确性。
由上述内容可知,本发明实施例可以接收数据写入请求,其中,数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值,根据起始写入地址、数据总长度和源地址计算得到参考校验值,当参考校验值与目标校验值相同时,检测直接存储器访问DMA模块是否被占用,如果未被占用,通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM。本发明实施例中,在DMA模块未被占用时,通过DMA模块将待写入数据写入EEPROM,此时未占用MCU,降低了MCU的占用率。
并且,在将待写入数据写入EEPROM之前,通过对比参考校验值与目标校验值是否相同的方式来对起始写入地址、数据总长度和源地址进行校验,当两者相同时,才将待写入数据写入EEPROM,保证了起始写入地址、数据总长度和源地址的正确性,避免将待写入数据写入错误的起始写入地址或者从错误的源地址获得待写入数据或者写入错误的数据总长度。
以及,由于写入操作会减少EEPROM的使用寿命,因此,在当前页已读取数据与当前页待写入数据相同的情况下,就不再将当前页待写入数据写入EEPROM,减少了对EEPROM的写入操作,提高了EEPROM的使用寿命。
图3为本发明实施例提供的数据存储装置的一种结构示意图。参见图3,本发明提供的一种数据存储装置,应用于微控制单元MCU,所述装置包括:
接收模块310,用于接收数据写入请求,其中,所述数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值;
计算模块320,用于根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值;
第一写入模块330,用于当所述参考校验值与所述目标校验值相同且直接存储器访问DMA模块未被占用的情况下,通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM,其中,所述页为进行读取数据或者写入数据的最基本单位。
本发明实施例提供的一种数据存储装置,可以接收数据写入请求,其中,数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值,根据起始写入地址、数据总长度和源地址计算得到参考校验值,当参考校验值与目标校验值相同时,检测直接存储器访问DMA模块是否被占用,如果未被占用,通过DMA模块根据起始写入地址、数据总长度和页的预设数据长度将待写入数据写入带电可擦可编程只读存储器EEPROM。本发明实施例中,在DMA模块未被占用时,通过DMA模块将待写入数据写入EEPROM,此时未占用MCU,降低了MCU的占用率。
在一种实现方式中,所述计算模块320,可以具体用于:
计算所述起始写入地址的高位字节、所述数据总长度的高位字节、所述源地址的高位字节、所述起始写入地址的低位字节、所述数据总长度的低位字节和所述源地址的低位字节之和作为参考校验值。
在一种实现方式中,所述第一写入模块330,可以包括:
当前页待写入数据确定子模块,用于根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度,将所述第一页待写入数据作为当前页待写入数据,将所述起始写入地址作为所述当前页待写入数据的起始写入地址;
读取子模块,用于通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据;
下一页待写入数据确定子模块,用于当接收到所述DMA模块发送的第一中断信息且所述当前页已读取数据与所述当前页待写入数据相同的情况下,根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,将所述下一页待写入数据作为当前页待写入数据,触发所述读取子模块,其中,所述第一中断信息为所述DMA模块每完成一次读操作所发送的用于告知所述MCU读操作已完成的信息;
写入子模块,用于当接收到所述DMA模块发送的所述第一中断信息且所述当前页已读取数据与所述当前页待写入数据不相同的情况下,通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中。
在一种实现方式中,上述数据存储装置还可以包括:
读取模块,用于在所述通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中之后,当接收到所述DMA模块发送的第二中断信息的情况下,通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据,其中,所述第二中断信息为所述DMA模块每完成一次写操作所发送的用于告知所述MCU写操作已完成的信息;
写入结束模块,用于当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据已全部完成写入的情况下,结束写入。
在一种实现方式中,上述数据存储装置还可以包括:
第二写入模块,用于在所述通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据之后,当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据未全部完成写入的情况下,触发所述下一页待写入数据确定子模块中的所述根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址。
在一种实现方式中,所述当前页待写入数据确定子模块,可以具体用于:
计算所述页的预设数据长度与所述起始写入地址之差作为所述第一页待写入数据的数据长度。
在一种实现方式中,所述下一页待写入数据确定子模块,可以具体用于:
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度小于所述页的预设数据长度的情况下,将所述剩余数据的数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址;
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度未小于所述页的预设数据长度的情况下,将所述页的预设数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址。
在一种实现方式中,上述数据存储装置还可以包括:
第一设置模块,用于当接收到所述DMA模块发送的第一中断信息的情况下,设置所述DMA模块的占用标志位为假。
在一种实现方式中,上述数据存储装置还可以包括:
第二设置模块,用于当直接存储器访问DMA模块未被占用的情况下,设置所述DMA模块的占用标志位为真。
上述装置实施例与方法实施例相对应,与该方法实施例具有同样的技术效果,具体说明参见方法实施例。装置实施例是基于方法实施例得到的,具体的说明可以参见方法实施例部分,此处不再赘述。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。
Claims (9)
1.一种数据存储方法,其特征在于,应用于微控制单元MCU,所述方法包括:
接收数据写入请求,其中,所述数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值;
根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值;
当所述参考校验值与所述目标校验值相同且直接存储器访问DMA模块未被占用的情况下,通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM,其中,所述页为进行读取数据或者写入数据的最基本单位;
所述通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM的步骤,包括:
根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度,将所述第一页待写入数据作为当前页待写入数据,将所述起始写入地址作为所述当前页待写入数据的起始写入地址;
通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据;
当接收到所述DMA模块发送的第一中断信息且所述当前页已读取数据与所述当前页待写入数据相同的情况下,根据当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,将所述下一页待写入数据作为当前页待写入数据,返回执行所述通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据的步骤,其中,所述第一中断信息为所述DMA模块每完成一次读操作所发送的用于告知所述MCU读操作已完成的信息;
当接收到所述DMA模块发送的所述第一中断信息且所述当前页已读取数据与所述当前页待写入数据不相同的情况下,通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中。
2.如权利要求1所述的方法,其特征在于,所述根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值的步骤,包括:
计算所述起始写入地址的高位字节、所述数据总长度的高位字节、所述源地址的高位字节、所述起始写入地址的低位字节、所述数据总长度的低位字节和所述源地址的低位字节之和作为参考校验值。
3.如权利要求1所述的方法,其特征在于,在所述通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中的步骤之后,所述方法还包括:
当接收到所述DMA模块发送的第二中断信息的情况下,通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据,其中,所述第二中断信息为所述DMA模块每完成一次写操作所发送的用于告知所述MCU写操作已完成的信息;
当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据已全部完成写入的情况下,结束写入。
4.如权利要求3所述的方法,其特征在于,在所述通过所述DMA模块从所述EEPROM中读取已写入的所述当前页待写入数据作为当前页已写入数据的步骤之后,所述方法还包括:
当所述当前页已写入数据与所述当前页待写入数据中的每个字节包含的数据相同且所述待写入数据未全部完成写入的情况下,返回执行所述根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址的步骤。
5.如权利要求1所述的方法,其特征在于,所述根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度的步骤,包括:
计算所述页的预设数据长度与所述起始写入地址之差作为所述第一页待写入数据的数据长度。
6.如权利要求1所述的方法,其特征在于,所述根据所述当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址的步骤,包括:
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度小于所述页的预设数据长度的情况下,将所述剩余数据的数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址;
当所述待写入数据中除所述当前页待写入数据以外的剩余数据的数据长度未小于所述页的预设数据长度的情况下,将所述页的预设数据长度作为所述下一页待写入数据的数据长度,将所述起始写入地址与所述当前页待写入数据的数据长度之和作为所述下一页待写入数据的起始写入地址。
7.如权利要求1所述的方法,其特征在于,当接收到所述DMA模块发送的第一中断信息的情况下,所述方法还包括:
设置所述DMA模块的占用标志位为假。
8.如权利要求1所述的方法,其特征在于,当直接存储器访问DMA模块未被占用的情况下,所述方法还包括:
设置所述DMA模块的占用标志位为真。
9.一种数据存储装置,其特征在于,应用于微控制单元MCU,所述装置包括:
接收模块,用于接收数据写入请求,其中,所述数据写入请求包括待写入数据的起始写入地址、数据总长度、源地址和目标校验值;
计算模块,用于根据所述起始写入地址、所述数据总长度和所述源地址计算得到参考校验值;
第一写入模块,用于当所述参考校验值与所述目标校验值相同且直接存储器访问DMA模块未被占用的情况下,通过所述DMA模块根据所述起始写入地址、所述数据总长度和页的预设数据长度将所述待写入数据写入带电可擦可编程只读存储器EEPROM,其中,所述页为进行读取数据或者写入数据的最基本单位;
所述第一写入模块,包括:
当前页待写入数据确定子模块,用于根据所述页的预设数据长度和所述起始写入地址确定所述待写入数据中的第一页待写入数据的数据长度,将所述第一页待写入数据作为当前页待写入数据,将所述起始写入地址作为所述当前页待写入数据的起始写入地址;
读取子模块,用于通过所述DMA模块按照所述当前页待写入数据的起始写入地址从所述EEPROM中读取所述当前页待写入数据的数据长度的数据作为当前页已读取数据;
下一页待写入数据确定子模块,用于当接收到所述DMA模块发送的第一中断信息且所述当前页已读取数据与所述当前页待写入数据相同的情况下,根据当前页已写入数据的终点写入地址和所述页的预设数据长度确定所述当前页待写入数据的下一页待写入数据的数据长度和起始写入地址,将所述下一页待写入数据作为当前页待写入数据,触发所述读取子模块,其中,所述第一中断信息为所述DMA模块每完成一次读操作所发送的用于告知所述MCU读操作已完成的信息;
写入子模块,用于当接收到所述DMA模块发送的所述第一中断信息且所述当前页已读取数据与所述当前页待写入数据不相同的情况下,通过所述DMA模块按照所述当前页待写入数据的起始写入地址将所述当前页待写入数据写入所述EEPROM中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210091268.5A CN114461552B (zh) | 2022-01-26 | 2022-01-26 | 一种数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210091268.5A CN114461552B (zh) | 2022-01-26 | 2022-01-26 | 一种数据存储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114461552A CN114461552A (zh) | 2022-05-10 |
CN114461552B true CN114461552B (zh) | 2024-01-30 |
Family
ID=81410607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210091268.5A Active CN114461552B (zh) | 2022-01-26 | 2022-01-26 | 一种数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114461552B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000227897A (ja) * | 1998-11-30 | 2000-08-15 | Matsushita Electric Ind Co Ltd | Dma転送装置及びdma転送システム |
CN1430147A (zh) * | 2001-12-29 | 2003-07-16 | 皇家菲利浦电子有限公司 | 用于对eeprom页面进行编程和校验的方法和装置 |
CN101246749A (zh) * | 2008-03-26 | 2008-08-20 | 北京中星微电子有限公司 | 自动识别eeprom分页大小及写eeprom的方法 |
CN104375783A (zh) * | 2014-11-05 | 2015-02-25 | 上海斐讯数据通信技术有限公司 | 一种eeprom数据写入的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8407658B2 (en) * | 2007-02-01 | 2013-03-26 | International Business Machines Corporation | Methods, systems, and computer program products for using direct memory access to initialize a programmable logic device |
-
2022
- 2022-01-26 CN CN202210091268.5A patent/CN114461552B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000227897A (ja) * | 1998-11-30 | 2000-08-15 | Matsushita Electric Ind Co Ltd | Dma転送装置及びdma転送システム |
CN1430147A (zh) * | 2001-12-29 | 2003-07-16 | 皇家菲利浦电子有限公司 | 用于对eeprom页面进行编程和校验的方法和装置 |
CN101246749A (zh) * | 2008-03-26 | 2008-08-20 | 北京中星微电子有限公司 | 自动识别eeprom分页大小及写eeprom的方法 |
CN104375783A (zh) * | 2014-11-05 | 2015-02-25 | 上海斐讯数据通信技术有限公司 | 一种eeprom数据写入的方法 |
Non-Patent Citations (1)
Title |
---|
基于PCIe的多路传输系统的DMA控制器设计;李胜蓝;姜宏旭;符炜剑;陈姣;;计算机应用(03);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114461552A (zh) | 2022-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108681565B (zh) | 区块链数据并行处理方法、装置、设备和存储介质 | |
CN110286853B (zh) | 一种数据写入方法和装置、计算机可读存储介质 | |
CN111124517B (zh) | 嵌入式芯片引导启动方法、装置、计算机设备和存储介质 | |
CN110442473B (zh) | 一种非易失性数据存储方法、装置、电子设备及介质 | |
CN113064748B (zh) | 进程接替的方法、装置、电子设备及存储介质 | |
CN110069360B (zh) | 一种电机控制器数据的存储、读取方法及装置 | |
CN107943605B (zh) | 一种存储卡处理方法及装置 | |
CN111933199B (zh) | 基于存储器的数据读写方法、装置及存储介质 | |
CN113204530A (zh) | 分布式文件系统的数据写入方法、装置、设备以及介质 | |
CN112000358A (zh) | 充电桩的升级方法与智能充电桩 | |
CN114461552B (zh) | 一种数据存储方法及装置 | |
CN111586202B (zh) | 网络掩码校验方法、装置、电子设备及存储介质 | |
CN107894900B (zh) | 一种mcu升级的方法及系统 | |
CN111949470A (zh) | 一种芯片验证方法、装置、电子设备及存储介质 | |
CN111143181A (zh) | 一种服务器维护方法、系统、设备及计算机可读存储介质 | |
CN112925546B (zh) | 一种防止车载ecu刷新出错的多级校验方法及系统 | |
CN115098138A (zh) | 电池管理系统的功能升级方法、装置、电子设备及介质 | |
CN113194161B (zh) | 一种服务器系统mmioh基地址的设置方法、装置 | |
CN103366115A (zh) | 安全性检测方法和装置 | |
CN114327258A (zh) | 一种固态硬盘处理方法、系统、设备及计算机存储介质 | |
KR20170037851A (ko) | 매니코어 시스템을 작동하기 위한 방법 및 장치 | |
CN109032962B (zh) | 数据存储方法、装置和嵌入式系统 | |
CN112416725A (zh) | 一种压力测试方法及装置 | |
CN111124814A (zh) | Soc内存访问监控方法、装置和计算机设备 | |
CN112634964A (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 | ||
GR01 | Patent grant |