CN102855162A - 一种数据更新方法、数据更新系统及存储器 - Google Patents
一种数据更新方法、数据更新系统及存储器 Download PDFInfo
- Publication number
- CN102855162A CN102855162A CN201110174730XA CN201110174730A CN102855162A CN 102855162 A CN102855162 A CN 102855162A CN 201110174730X A CN201110174730X A CN 201110174730XA CN 201110174730 A CN201110174730 A CN 201110174730A CN 102855162 A CN102855162 A CN 102855162A
- Authority
- CN
- China
- Prior art keywords
- data
- district
- physical address
- address
- data district
- 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
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据更新方法、数据更新系统及存储器,所述方法包括以下步骤,获取数据空间逻辑地址;根据所述数据空间逻辑地址来配置内存管理单元,以确定所述数据空间逻辑地址到备份数据区物理地址的映射关系;根据所述映射关系,将新数据写入所述备份数据区中;根据所述备份数据区物理地址到目的数据区物理地址的对应关系,将所述备份数据区里的新数据拷贝到目的数据区;清除所述备份数据区内的新数据。应用本发明,保证备份数据区在数据更新中不容易产生坏块现象,增加了备份数据区的使用寿命。
Description
技术领域
本发明涉及集成电路的数据更新领域,具体而言,尤其涉及一种基于集成电路的数据更新方法、数据更新系统及存储器。
背景技术
随着智能卡领域的不断发展,用户对智能卡的应用需求也在不断提高。当前,用户在对智能卡的执行效率提出要求的同时,也要求智能卡具备一定的安全性能,并且还要求智能卡应用能具备一定的突发情况处理能力。例如,当智能卡执行写数据区(EEPROM/FLASH)的时候,可能会发生掉电情况,如果智能卡不具备有效的处理方法,后果将不堪设想,在这种情况下,软件实现的掉电保护机制广泛的应用于智能卡当中。
现有技术中,由软件实现的掉电保护原理是:在智能卡的原数据区(EEPROM/FLASH)中,分出一定大小的区域作为备份数据区,用于备份数据。当智能卡需要擦写操作的时候,先将新数据连同地址记录标识等内容,写入备份数据区,待写操作完毕后,再将备份区里的新数据拷贝到真正的目的数据区,最后擦除备份数据区内的新数据。上述步骤中,每一个阶段都有相应的标志位进行标识,如果发生掉电或者其他异常情况,智能卡重新上电后,会根据其标志位,完成掉电之前未完成的动作,保证要更新的数据被准确无误的更新到目的地址,中间不会发生数据更改等错误现象。
在智能卡中增加软件掉电保护机制,不仅额外增加智能卡芯片的处理负担。并且,智能卡每次更新数据的操作,都需经过掉电保护程序的处理,这延长了数据更新的处理时间。然而,智能卡的某些应用(例如快速借贷记应用qPBOC)对处理时间有严格规定,如果超过规定交易处理时间,则认为智能卡不符合要求。再者,由于智能卡备份数据区会被频繁更改,成为整个数据区里操作频率最高的区域,但非易失性存储体(EEPROM/FLASH)都有擦写寿命限制,如果不采取均衡擦写机制,时间一长,就会产生坏块,从而影响智能卡的使用寿命性能。
由此可见,现有智能卡存储技术还有待改进。
发明内容
本发明要解决的主要技术问题是,提供一种数据更新方法,数据更新系统及存储器,能够保证在频繁的数据更新中,备份数据区不容易产生坏块现象,增加了备份数据区的使用寿命。
为解决上述技术问题,本发明采用了以下技术方案:
一种数据更新方法,包括以下步骤:
获取数据空间逻辑地址;
根据所述数据空间逻辑地址来配置内存管理单元,确定所述数据空间逻辑地址到备份数据区物理地址的映射关系;
根据所述映射关系,将新数据写入所述备份数据区中;
根据所述备份数据区物理地址到目的数据区物理地址的对应关系,将所述备份数据区里的新数据拷贝到目的数据区;
清除所述备份数据区内的新数据。
在本发明的一种实施例中,所述备份数据区物理地址到目的数据区物理地址的对应关系按照如下方式确定:
根据所述数据空间逻辑地址到所述备份数据区物理地址的映射关系,以及初始化内存管理单元时确定的所述数据空间逻辑地址到目的数据区初始物理地址的映射关系来确定所述备份数据区物理地址到目的数据区初始物理地址的对应关系。
在本发明的一种实施例中,所述备份数据区物理地址到目的数据区物理地址的对应关系按照如下方式确定:
根据需要进行数据更新的数据空间逻辑地址来配置内存管理单元,确定数据更新中所述数据空间逻辑地址到目的数据区物理地址的映射关系;
根据所述数据空间逻辑地址到目的数据区物理地址的映射关系,以及所述数据空间逻辑地址到所述备份数据区物理地址的映射关系,确定所述备份数据区物理地址到目的数据区物理地址的对应关系。
在本发明的一种实施例中,所述将所述备份数据区里的新数据拷贝到目的数据区的步骤包括:启动直接内存存取操作,将所述备份数据区里的新数据拷贝到所述目的数据区。
在本发明的一种实施例中,在数据更新过程中,若发生掉电现象,再次上电后,还根据掉电之前配置的所述数据空间逻辑地址到数据区物理地址的映射关系来相应重新配置内存管理单元,继续执行掉电之前数据更新步骤中未完成的步骤。
在本发明的一种实施例中,掉电之前配置的所述数据空间逻辑地址到所述备份数据区物理地址的映射关系是根据备份数据区里记录的数据更新步骤的地址及长度信息来获取的。
同时,本发明还提供了一种数据更新系统,包括数据写入单元、数据拷贝单元、数据清除单元、处理单元以及内存管理单元,其中
所述处理单元用于获取本次需要进行数据更新的数据空间逻辑地址,并根据所述数据空间逻辑地址来配置内存管理单元,确定数据更新中所述数据空间逻辑地址到备份数据区物理地址的映射关系;
所述数据写入单元用于根据所述数据空间逻辑地址到备份数据区物理地址的映射关系,将新数据写入所述备份数据区;
所述数据拷贝单元用于当新数据全部写入所述备份数据区后,根据所述备份数据区物理地址到目的数据区物理地址的对应关系,将所述备份数据区里的新数据拷贝到所述目的数据区;
所述数据清除单元用于清除所述备份数据区里的新数据。
在本发明的一种实施例中,所述内存管理单元包括控制寄存器和执行子单元,所述控制寄存器用于存储逻辑空间逻辑地址到数据区物理地址的映射关系,以及控制特定逻辑对自身的访问和操作权限;所述执行子单元用于执行逻辑空间逻辑地址到数据区物理地址的映射。
在本发明的一种实施例中,所述处理单元还用于根据所述备份数据区里记录的数据更新操作的地址及长度信息来获取掉电之前配置的所述数据空间逻辑地址到数据区物理地址的映射关系。
在本发明的一种实施例中,所述数据拷贝模块为直接内存存取模块。
另外,本发明还提供了一种存储器,所述智能卡内集成有上述任一所述的数据更新系统。
本发明的有益效果是:在频繁的数据更新中,在接收到数据更新请求时,根据获取的本次需要进行数据更新的数据空间逻辑地址来配置内存管理单元MMU,如此,MMU就可以通过自身集成的硬件算法机制,实现数据更新中数据空间逻辑地址到备份数据区物理地址的随机映射,而不是采用固定的映射关系,从而避免了对备份数据区某一块空间的频繁操作的可能,对备份数据区实现了均衡的写操作,分解了备份数据区的写操作压力,保证备份数据区在数据更新中不容易产生坏块现象,增加了备份数据区的使用寿命。
其次,通过启动直接内存存取DMA操作将备份数据区里面的新数据搬移到目的数据区,在此数据搬移过程中,不但提高了数据搬移的速度,而且还不需要占用CPU资源,提高了系统的执行效率。
最后,在整个数据更新中,统一由MMU来负责逻辑空间逻辑地址到数据区物理地址的映射和空间管理,并负责数据更新过程的监督与管理,减少了软件开发的难度,避免了软件管理容易出错的缺点,缩短了研发时间,提高了执行效率。
附图说明
图1为本发明一种实施例的数据更新方法的流程图;
图2为本发明另一种实施例的数据更新方法的示意图;
图3为本发明一种实施例中内存管理单元的组成示意图;
图4为本发明一种实施例系统掉电保护处理流程;
图5为本发明一种实施例系统掉电重启后的处理流程。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。
为解决现有智能卡数据更新过程中,备份数据区容易产生坏块现象的问题,本申请提出了一种新的数据更新方法,数据更新系统以及智能卡。
在现有智能卡的数据更新中,备份数据区容易产生坏块的原因是:由软件实现的数据空间逻辑地址到备份数据区物理地址的映射关系固定,如此则使得在频繁的数据更新过程中,备份数据区中的同一块空间被频繁地擦写,最终产生坏块现象。为解决坏块现象,其根本则是要解决数据空间逻辑地址到备份数据区物理地址的映射关系固定的问题。
而随着集成电路的不断发展,内存管理单元MMU被广泛地运用在集成电路领域。内存管理单元可以实现程序空间和数据空间的安全管理以及逻辑空间逻辑地址到数据区物理地址的转换,即通过MMU来实现逻辑地址到物理地址的映射。
因此,可考虑将内存管理单元MMU的设计运用在智能卡中,并在MMU中集成一定的硬件算法机制,在智能卡的数据更新中,根据当前需要进行数据更新的数据空间逻辑地址,按照一定的方式来配置MMU,确定当前数据更新中数据空间逻辑地址到备份空间的物理地址的随机映射关系,并通过MMU实现由数据空间逻辑地址到备份数据区物理地址的随机映射,从而避免坏块现象。当然,内存管理单元MMU也可以运用在其它存储器的数据更新过程中。
由此,本发明提出了一种数据更新方法,如图1所示,本发明的数据更新方法包括以下步骤:
S1、当接收到数据更新请求时,获取本次需要进行数据更新的数据空间逻辑地址;
S2、并根据所述数据空间逻辑地址来配置内存管理单元MMU,确定本次数据更新中数据空间逻辑地址到备份数据区物理地址的映射关系;在确定了映射关系后,MMU就会自动执行数据空间逻辑地址到备份数据区物理地址的映射。
S3、根据数据空间逻辑地址到备份数据区物理地址的映射关系,将新数据写入到备份数据区中;
S4、在新数据全部写入到备份数据区后,根据所述备份数据区物理地址到目的数据区物理地址的对应关系,将备份数据区里的新数据拷贝到目的数据区;
S5、清除备份数据区内的新数据。
需要解释的一点是,上述中的新数据即表示的是在数据更新中需要写入的数据。写入备份数据区的新数据,实际上是由数据空间输出来的,在进行数据更新中,先将新数据写入数据空间,再由数据空间输出到备份数据区,数据空间例如可以是一些运行中的程序。
需要说明的另一点是,在步骤S2中,配置MMU,指的是根据需要进行数据更新的数据空间逻辑地址,按照集成在MMU内的一些硬件算法机制,来实现数据空间逻辑地址到备份数据区物理地址的随机映射。例如,在获取到数据空间逻辑地址后,MMU可以根据用户输入的随机偏移量来确定数据空间逻辑地址到备份数据区物理地址的映射关系,并实现相应的映射关系的转换。当然,根据数据空间逻辑地址,MMU还可以产生一个随机映射信息来确定数据空间逻辑地址到备份数据区物理地址的映射关系,以及实现相应的映射关系的转换。当然,MMU内还可能集成有多种实现数据空间到数据区的随机映射的算法机制,MMU还可以根据用户的实际选择,实现对应的数据空间逻辑地址到备份数据区物理地址的映射。
总的来说,通过配置内存管理单元MMU,MMU就可以通过硬件算法机制,确定本次数据更新中的数据空间逻辑地址到备份数据区物理地址的随机映射关系。上述步骤S1-S5中,描述的是一次数据更新的操作步骤。当一次数据更新完成后,即结束步骤S5后,即进入下一次数据更新步骤,即进入步骤S1,然后又按照上述步骤进行数据更新,如此循环,直到更新完所有需要更新的新数据。在每一次的数据更新中,由于数据空间逻辑地址到备份数据区物理地址的映射关系是随机变化的,而不是采用固定的映射关系,如此则避免了在数据更新中对备份数据区某一块空间的频繁的擦写操作,从而对备份数据区实现了均衡擦写,分解了备份数据区的写操作压力,既而使得备份数据区不容易产生坏块现象,增加了备份数据区的使用寿命。
如图2所示,在接收到数据更新的请求之前,通常还会对内存管理单元MMU进行初始化,即执行步骤S11,通过初始化内存管理单元MMU,可以确定数据空间逻辑地址A1到目的数据区物理地址A的映射关系,以及备份空间逻辑地址B1到备份数据区物理地址B的映射关系。通常,将初始化阶段确定的数据空间逻辑地址对应的目的数据区的物理地址称为初始物理地址,即可以将物理地址A称为初始物理地址。
由于备份空间对备份数据区只有读权限,没有写权限,而数据空间对备份数据区则具有读和写的权限,因此,在接收到数据更新请求后配置内存管理单元MMU之前,需要取消初始化阶段确定的备份空间逻辑地址B1到备份数据区物理地址B的映射关系,然后再配置MMU,即执行S12步骤,以建立起数据空间逻辑地址A1到备份数据区物理地址B的映射关系。因为只有确定了数据空间逻辑地址到备份区物理地址之间的映射关系,才能够进行数据更新的操作。需要说明的一点时,每一次数据更新中,配置的数据空间逻辑地址到备份区物理地址之间的映射关系是随机变化的。由于备份数据区物理地址B被映射到数据空间逻辑地址A1,于是则可以将新数据写入备份数据区物理地址B中,对新数据进行备份。在将新数据写入备份数据区物理地址B的同时,还将数据更新过程中相关的更新步骤的标志位、地址以及长度等信息写入备份数据区物理地址B。而对于数据空间逻辑地址A1到目的数据区A物理地址的映射关系,则可以不用取消。
当所有的新数据都写到备份数据区里面后,会执行步骤S13,即根据备份数据区物理地址到目的数据区物理地址的对应关系,采用软件或硬件方式,将备份数据区里面的新数据拷贝到目的数据区。
在将所有的新数据写入到备份数据区以后,具体可以采用如下两种方式获取备份数据区物理地址到目的数据区物理地址的对应关系。
方式一,根据之前配置的数据空间逻辑地址A1到备份数据区物理地址B的映射关系以及初始化阶段确定的数据空间逻辑地址A1到目的数据区初始物理地址A的映射关系,就可以确定备份数据区物理地址B到目的数据区物理地址A的对应关系。
方式二:在上述步骤S13中,在确定备份数据区物理地址到目的数据区物理地址的对应关系时,数据空间逻辑地址到目的数据区物理地址的映射关系采用的是初始化阶段确定的映射关系,即逻辑地址A1到初始物理地址A的映射关系。实际上,数据空间逻辑地址到目的数据区物理地址的映射关系也可以采用其它的映射关系。例如,在实施例中,还可以通过配置MMU的方式,重新确定数据空间逻辑地址到备份数据区物理地址的映射关系,例如,可以将数据空间逻辑地址A1映射到目的数据区物理地址C,即确定本次数据更新中,数据空间逻辑地址到目的数据区物理地址的映射关系是逻辑地址A1到物理地址C。如此,则可以利用数据空间逻辑地址A1到目的数据区物理地址C的映射关系,以及数据空间逻辑地址A1到备份数据区物理地址B的映射关系,得到备份数据器物理地址B到目的数据区物理地址C的对应关系。根据该对应关系,即可以将备份数据区里面的新数据,拷贝到目的数据区。需要说明的一点时,在每次数据更新中,配置的数据空间逻辑地址到目的数据区物理地址之间的映射关系是可以变化的。
在将备份数据区里面的新数据拷贝到目的数据区时,可以采用软件的方式,也可以采用硬件的方式。但是,采用软件的方式进行新数据拷贝时,会消耗大量的CPU资源,处理时间也会比较长,使得执行效率不高。因此,在本发明的一种实施例中,通过硬件的方式进行新数据的拷贝,具体是通过启动直接内存存取DMA操作来将备份数据区里的新数据拷贝到目的数据区,即执行步骤S13。由于启动DMA操作时,一方面可以提高数据拷贝的速度和准确性,降低处理时间;另一方面,利用DMA操作搬移作用不会消耗CPU资源,从而可以提高执行效率。需要说明的是,在将新数据成功地拷贝到目的数据区后,会清除备份数据区内的新数据,同时还会重新配置MMU,即执行步骤S14,恢复MMU初始化阶段的映射关系。
实际上,在数据更新的过程中,可能会产生突然掉电的现象,为保证要更新的新数据能够准确无误地写入到目的数据区,在本发明的一种实施例中,在掉电后重新上电时,还判断是否发生掉电现象,若发生掉电现象,还根据掉电之前配置的所述数据空间逻辑地址到数据区物理地址的映射关系来相应重新配置内存管理单元MMU。其中,数据区物理地址包括目的数据区物理地址和备份数据区物理地址。例如,可以根据掉电之前配置的数据空间逻辑地址A1到备份数据区物理地址B的映射关系,以及数据空间逻辑地址A1到目的数据区物理地址A的映射关系,相应重新配置内存管理单元MMU,既而则可以继续执行掉电之前数据更新步骤中未完成的步骤,从而保证了即使在掉电重启后,仍能够保证正常的数据更新操作,正确地将新数据写入到目的数据区。
具体地,在本发明的一种实施例中,掉电重启时,重新配置内存管理单元MMU的方法具体为:查询备份数据区里面的数据,根据备份数据区里记录的数据更新步骤的标识位来判断上一次启动是否发生掉电,以及掉电发生的阶段,并根据备份数据区里面记录的地址及长度信息来确定上一次配置的数据空间逻辑地址到备份数据区物理地址,以及数据空间逻辑地址到目的数据区物理地址的映射关系,并根据发生掉电的阶段,根据相应的映射关系来重新配置内存管理单元,配置完成后即可以继续执行掉电之前数据更新步骤中未完成的步骤,直到数据更新完成。
应用本发明所述的数据更新方法,通过配置MMU,即能够实现数据空间逻辑地址到备份数据区物理地址的随机映射,一方面使得备份数据区不容易产生坏块现象,提高了备份数据区的使用寿命。另一方面,在将备份数据区里面的数据拷贝到备份数据区时,采用DMA搬移,一方面提高了拷贝数据的速度和准确性,而且还不消耗CPU资源,从而可以减少软件实现的负担,提高整体的处理性能和执行效率。
同时,本发明还提供了一种数据更新系统,包括数据写入单元、数据拷贝单元、数据清除单元、处理单元以及内存管理单元MMU,其中
处理单元用于在接收到数据更新请求时,获取本次需要进行数据更新的数据空间逻辑地址,并根据所述数据空间逻辑地址来配置内存管理单元,确定本次数据更新中所述数据空间逻辑地址到备份数据区物理地址的映射关系;
数据写入单元用于根据数据空间逻辑地址到备份数据区物理地址的映射关系,将新数据写入到备份数据区;
数据拷贝单元用于当新数据全部写入到备份数据区后,将备份数据区里的新数据拷贝到目的数据区;
数据清除单元用于清除备份数据区里的新数据。
利用上述数据更新系统,通过配置MMU,即能够实现数据空间逻辑地址到备份数据区物理地址的随机映射,在实现数据更新的情况下,还能够实现对备份数据区的均衡擦写,使得备份数据区不容易产生坏块现象,提高了备份数据区的使用寿命。
若在数据更新系统运行之初对MMU进行了初始化,初始化的目的是为MMU配置最初的备份空间逻辑地址到备份数据区物理地址、数据空间逻辑地址到目的数据区逻辑地址的映射关系。在数据更新系统运行过程中,一旦接收到更新目的数据区的请求时,则取消备份空间逻辑地址到备份数据区物理地址的映射关系,转而配置MMU,重新确定数据空间逻辑地址到备份数据区物理地址的映射关系,进而进行下一步的写入新数据的操作。
如图3所示,内存管理单元MMU 1包括控制寄存器11和执行子单元12,控制寄存器用于存储CPU在数据更新过程中配置的所有逻辑空间逻辑地址到数据区物理地址的映射关系,还用于控制特定逻辑对自身的访问和操作权限,以及在数据更新整个流程中对数据更新系统中的各个单元的监督与管理;其中,逻辑空间逻辑地址到数据区物理地址的映射关系包括备份空间/数据空间逻辑地址到备份数据区逻辑地址的映射关系,以及数据空间逻辑地址到目的数据区物理地址的映射关系。而执行子单元是实际的执行单元,用于执行逻辑空间逻辑地址到数据区物理地址的转换。
在本发明的一种实施例中,数据拷贝模块具体为直接内存存取DMA模块。选择DMA模块的原因是,运用硬件模块进行数据拷贝,与选用软件进行数据拷贝相比,一方面提高了数据的拷贝速度以及拷贝数据的准确性,降低了处理时间;另一方面,通过DMA进行数据拷贝时,不会消耗系统的CPU资源,减轻了CPU的负荷,从而提高了系统的执行效率。
如图4所示,数据更新系统在进行数据更新的过程中,可能会出现突然掉电的情况,因此,为了保证需要更新的新数据能够准确无误地写入目的数据区,在更新系统重启时,处理单元还用于根据备份数据区记录的数据更新操作的标志位来判断数据更新系统上一次启动是否发生掉电现象,若没有发生掉电现象,则继续后续操作,若发生掉电现象,处理单元还根据掉电之前配置的数据空间逻辑地址到数据区物理地址的映射关系来相应地重新配置内存管理单元MMU。具体地,处理单元根据备份数据区里记录的数据更新操作的地址及长度信息来确定掉电之前配置的数据空间逻辑地址到数据区物理地址的映射关系,进而相应地重新配置内存管理单元MMU,完成数据更新操作中没有完成的操作。
在数据更新系统启动时,若处理单元判断数据更新系统上一次启动发生掉电现象,则数据更新系统中的处理单元根据备份数据区里面记录的地址以及长度信息相应地重新配置MMU,并进入掉电保护处理流程,如图5所示,具体可按照如下方式进行掉电保护处理:
1、处理单元根据备份数据区里面的标志位,判断掉电过程发生在数据更新的那个阶段;
2、如果掉电发生在第一阶段,即数据写入单元往备份数据区写入新数据的阶段,那么数据更新系统则会执行清空备份数据区的操作,并退出掉电保护处理流程;
3、如果掉电发生在第二阶段,第二阶段分为两个子阶段,第一子阶段即是将所有新数据全部写入备份数据区的阶段,第二子阶段即是从备份数据区往目的数据区拷贝新数据的阶段。若掉电发生在第一子阶段,更新系统则重新配置数据空间逻辑地址到备份数据区物理地址的映射关系,待新数据全部写入到备份数据区以后,再执行第二子阶段的操作,即相应地配置数据空间逻辑地址到目的数据区物理地址的映射关系(若掉电之前采用的是数据空间逻辑地址到目的数据区初始物理地址的映射关系,此时则不用再重新配置),待配置完成后,再重新将备份数据区里面的新数据拷贝到目的数据区,并清空备份数据区,退出掉电保护处理流程;
4、如果掉电发生在备份数据区的新数据已经全部拷贝到目的数据区后,则数据更新系统会执行清空备份数据区的操作,并退出掉电保护处理流程;
本发明提供的一种数据更新方法及数据更新系统,通过配置MMU,实现了数据空间逻辑地址到备份数据区物理地址的随机映射,从而避免了在频繁的数据更新中备份数据区容易出现坏块的现象。而通过DMA操作,以硬件的形式实现了备份数据区到目的数据区的数据拷贝,从而提高了数据拷贝的速度和准确性,降低了数据拷贝的处理时间,并且不占用CPU资源,减少了软件实现的负担,提高了整体的处理性能和执行效率。
而在掉电重启后还可通过重新配置MMU的方式,继续执行掉电之前未完成的数据更新操作,保证新数据能够准确地更新到目的数据区。不仅避免了软件掉电保护机制对CPU资源消耗大,处理时间长的缺点,而且还能够进一步提高系统的执行效率。
并且,通过MMU来统一管理与控制逻辑空间逻辑地址到数据区物理地址的映射关系,减少了软件开发的难度,避免了软件管理容易出错的缺点。
另外,本发明还提供了一种存储器,该存储器内集成有上述任一所述的数据更新系统。在一种实施例中,存储器具体为智能卡,如此,该智能卡在进行数据更新的过程中,不容易产生坏块现象,提高了智能卡的寿命,而在系统掉电后,能够通过重新配置MMU的方式进行掉电保护,以硬件的形式将备份数据区到目的数据区的数据拷贝,不占用CPU资源,保证了新数据能够正确地更新到目的数据区,降低了处理时间,提高了系统的执行效率,从根本上解决了掉电保护机制和执行效率之间的瓶颈。
以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (11)
1.一种数据更新方法,其特征在于,包括以下步骤:
获取数据空间逻辑地址;
根据所述数据空间逻辑地址来配置内存管理单元,以确定所述数据空间逻辑地址到备份数据区物理地址的映射关系;
根据所述映射关系,将新数据写入所述备份数据区中;
根据所述备份数据区物理地址到目的数据区物理地址的对应关系,将所述备份数据区里的新数据拷贝到目的数据区;
清除所述备份数据区内的新数据。
2.如权利要求1所述的数据更新方法,其特征在于,所述备份数据区物理地址到目的数据区物理地址的对应关系按照如下方式确定:
根据所述数据空间逻辑地址到所述备份数据区物理地址的映射关系,以及初始化内存管理单元时确定的所述数据空间逻辑地址到目的数据区初始物理地址的映射关系来确定所述备份数据区物理地址到目的数据区初始物理地址的对应关系。
3.如权利要求1所述的数据更新方法,其特征在于,所述备份数据区物理地址到目的数据区物理地址的对应关系按照如下方式确定:
根据需要进行数据更新的数据空间逻辑地址来配置内存管理单元,确定数据更新中所述数据空间逻辑地址到目的数据区物理地址的映射关系;
根据所述数据空间逻辑地址到目的数据区物理地址的映射关系,以及所述数据空间逻辑地址到所述备份数据区物理地址的映射关系,确定所述备份数据区物理地址到目的数据区物理地址的对应关系。
4.如权利要求1-3任一所述的数据更新方法,其特征在于,所述将所述备份数据区里的新数据拷贝到目的数据区的步骤包括:启动直接内存存取操作,将所述备份数据区里的新数据拷贝到所述目的数据区。
5.如权利要求4所述的数据更新方法,其特征在于,在数据更新过程中,若发生掉电现象,再次上电后,还根据掉电之前配置的所述数据空间逻辑地址到数据区物理地址的映射关系来相应重新配置内存管理单元,继续执行掉电之前数据更新步骤中未完成的步骤。
6.如权利要求5所述的更新方法,其特征在于,掉电之前配置的所述数据空间逻辑地址到数据区物理地址的映射关系是根据备份数据区里记录的数据更新步骤的地址及长度信息来获取的。
7.一种数据更新系统,其特征在于,包括数据写入单元、数据拷贝单元、数据清除单元、处理单元以及内存管理单元,其中
所述处理单元用于获取需要进行数据更新的数据空间逻辑地址,并根据所述数据空间逻辑地址来配置内存管理单元,确定数据更新中所述数据空间逻辑地址到备份数据区物理地址的映射关系;
所述数据写入单元用于根据所述数据空间逻辑地址到备份数据区物理地址的映射关系,将新数据写入所述备份数据区;
所述数据拷贝单元用于当新数据全部写入所述备份数据区后,根据所述备份数据区物理地址到目的数据区物理地址的对应关系,将所述备份数据区里的新数据拷贝到所述目的数据区;
所述数据清除单元用于清除所述备份数据区里的新数据。
8.如权利要求7所述的数据更新系统,其特征在于,所述内存管理单元包括控制寄存器和执行子单元,所述控制寄存器用于存储逻辑空间逻辑地址到数据区物理地址的映射关系,以及控制特定逻辑对自身的访问和操作权限;所述执行子单元用于执行逻辑空间逻辑地址到数据区物理地址的映射。
9.如权利要求8所述的数据更新系统,其特征在于,所述处理单元还用于根据所述备份数据区里记录的数据更新操作的地址及长度信息来获取掉电之前配置的所述数据空间逻辑地址到数据区物理地址的映射关系。
10.如权利要求7所述的数据更新系统,其特征在于,所述数据拷贝模块为直接内存存取模块。
11.一种存储器,其特征在于,所述存储器内集成有权利要求7-10任一所述的数据更新系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110174730.XA CN102855162B (zh) | 2011-06-27 | 2011-06-27 | 一种数据更新方法、数据更新系统及存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110174730.XA CN102855162B (zh) | 2011-06-27 | 2011-06-27 | 一种数据更新方法、数据更新系统及存储器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102855162A true CN102855162A (zh) | 2013-01-02 |
CN102855162B CN102855162B (zh) | 2016-06-01 |
Family
ID=47401769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110174730.XA Active CN102855162B (zh) | 2011-06-27 | 2011-06-27 | 一种数据更新方法、数据更新系统及存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102855162B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103996412A (zh) * | 2013-02-19 | 2014-08-20 | 北京同方微电子有限公司 | 一种用于智能卡非易失性存储器的掉电保护方法 |
CN104850500A (zh) * | 2014-02-14 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 用于数据存储的数据处理方法和装置 |
CN106569908A (zh) * | 2015-10-08 | 2017-04-19 | 瑞昱半导体股份有限公司 | 资料备份系统 |
CN110471626A (zh) * | 2019-08-15 | 2019-11-19 | 深圳融卡智能科技有限公司 | 应用于Java Card的Nor Flash管理层及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101349995A (zh) * | 2007-07-16 | 2009-01-21 | 北京中电华大电子设计有限责任公司 | 一种mmu(存储管理单元)设计方法 |
CN101383190A (zh) * | 2008-08-11 | 2009-03-11 | 湖南源科创新科技股份有限公司 | 应用于固态硬盘的闪存均衡损耗算法 |
CN101382918A (zh) * | 2008-07-26 | 2009-03-11 | 深圳市硅格半导体有限公司 | 一种基于数据交换区的NAND Flash闪存优化管理方法 |
US20090265505A1 (en) * | 2008-04-18 | 2009-10-22 | Phison Electronics Corp. | Data writing method, and flash storage system and controller using the same |
-
2011
- 2011-06-27 CN CN201110174730.XA patent/CN102855162B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101349995A (zh) * | 2007-07-16 | 2009-01-21 | 北京中电华大电子设计有限责任公司 | 一种mmu(存储管理单元)设计方法 |
US20090265505A1 (en) * | 2008-04-18 | 2009-10-22 | Phison Electronics Corp. | Data writing method, and flash storage system and controller using the same |
CN101382918A (zh) * | 2008-07-26 | 2009-03-11 | 深圳市硅格半导体有限公司 | 一种基于数据交换区的NAND Flash闪存优化管理方法 |
CN101383190A (zh) * | 2008-08-11 | 2009-03-11 | 湖南源科创新科技股份有限公司 | 应用于固态硬盘的闪存均衡损耗算法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103996412A (zh) * | 2013-02-19 | 2014-08-20 | 北京同方微电子有限公司 | 一种用于智能卡非易失性存储器的掉电保护方法 |
CN104850500A (zh) * | 2014-02-14 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 用于数据存储的数据处理方法和装置 |
CN104850500B (zh) * | 2014-02-14 | 2019-06-07 | 腾讯科技(深圳)有限公司 | 用于数据存储的数据处理方法和装置 |
CN106569908A (zh) * | 2015-10-08 | 2017-04-19 | 瑞昱半导体股份有限公司 | 资料备份系统 |
CN106569908B (zh) * | 2015-10-08 | 2020-05-15 | 合肥沛睿微电子股份有限公司 | 资料备份系统 |
CN110471626A (zh) * | 2019-08-15 | 2019-11-19 | 深圳融卡智能科技有限公司 | 应用于Java Card的Nor Flash管理层及方法 |
CN110471626B (zh) * | 2019-08-15 | 2023-04-25 | 无锡融卡科技有限公司 | 应用于Java Card的Nor Flash管理层及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102855162B (zh) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8671241B2 (en) | Systems and methods for using reserved solid state nonvolatile memory storage capacity for system reduced power state | |
US8225058B2 (en) | Memory system managing a size of logs | |
JP5336060B2 (ja) | 不揮発性メモリ装置およびそれを動作させる方法 | |
US10198186B2 (en) | Systems, methods and computer program products memory space management for storage class memory | |
US9032139B2 (en) | Memory allocation for fast platform hibernation and resumption of computing systems | |
US20110066792A1 (en) | Segmentation Of Flash Memory For Partial Volatile Storage | |
CN103995578A (zh) | 一种具有绿能数据持续模式的器件驱动器 | |
US20050223186A1 (en) | Device-level address translation within a programmable non-volatile memory device | |
US20090182962A1 (en) | Memory Subsystem Hibernation | |
CN102365627A (zh) | 用于缓存中通路分配及通路锁定的方法 | |
EP3627328A1 (en) | Storage device and operating method of storage device | |
CN101727978A (zh) | 在电可擦和可编程的非易失性存储器中写入和读取数据的方法 | |
CN103164342A (zh) | 数据可用性的挂载时协调 | |
US7925821B2 (en) | Nonvolatile semiconductor storage device and method of managing the same | |
CN103996412A (zh) | 一种用于智能卡非易失性存储器的掉电保护方法 | |
US20230244394A1 (en) | Gradually Reclaim Storage Space Occupied by a Proof of Space Plot in a Solid State Drive | |
CN1983152A (zh) | 系统支持存储和计算机系统 | |
CN102073600A (zh) | 数据备份方法、闪存控制器及闪存储存系统 | |
CN102855162A (zh) | 一种数据更新方法、数据更新系统及存储器 | |
CN102004656A (zh) | 一种汽车集成信息液晶显示及控制平台的冗余备份及安全升级技术 | |
CN102214145B (zh) | 一种闪存数据更新方法及系统 | |
US9223697B2 (en) | Computer reprogramming method, data storage medium and motor vehicle computer | |
CN102880553A (zh) | 一种基于mcu的片外flash文件系统的读写方法 | |
WO2023169161A1 (zh) | 一种动态的、离散的、碎片化的嵌入式系统nand flash使用方法 | |
KR20110052902A (ko) | 컴퓨팅 시스템 및 컴퓨팅 시스템의 메모리 관리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |