CN106354652B - 非易失性存储器读写控制电路 - Google Patents
非易失性存储器读写控制电路 Download PDFInfo
- Publication number
- CN106354652B CN106354652B CN201510413899.4A CN201510413899A CN106354652B CN 106354652 B CN106354652 B CN 106354652B CN 201510413899 A CN201510413899 A CN 201510413899A CN 106354652 B CN106354652 B CN 106354652B
- Authority
- CN
- China
- Prior art keywords
- address
- write
- replacement
- circuit
- mapping table
- 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
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种非易失性存储器读写控制电路,包括:主控电路,替换电路,存储器接口控制电路;替换电路,用于存储一替换地址映射表,并根据该替换地址映射表查找主控电路输出的写地址所对应的地址;存储器接口控制电路,根据主控电路发出的写使能信号和写参数,以及替换电路输出的映射的存储单元地址,产生相应的存储单元写控制信号去写存储器,写完后,自动去读该存储单元,并且把读出的数据传送至主控电路。本发明能够增加非易失性存储器的整体使用寿命。
Description
技术领域
本发明涉及非易失性存储器领域,特别是涉及一种非易失性存储器读写控制电路。
背景技术
对于智能卡类项目,非易失性存储器比如EEPROM是必不可少的。非易失性存储器的性能会随着写次数的增加而恶化,并且恶化程度会体现在擦写所需的时间与所需的电流上,也就是说存储单元会经历这样一个过程,首先是能用平常的电流与时间来写;然后是要用很大的电流与很长的时间来写;最后是不能写成功。
EEPROM都有最大擦写次数的限制,当超过最大擦写次数时,相应的EEPROM存储单元就无法正常工作了。这时如果芯片还继续使用该EEPROM存储单元,那么整个芯片就会无法正常工作了。
发明内容
本发明要解决的技术问题是提供一种非易失性存储器读写控制电路,能够增加非易失性存储器的整体使用寿命。
为解决上述技术问题,本发明的非易失性存储器读写控制电路,包括:一主控电路,一替换电路,一存储器接口控制电路;
当要写非易失性存储器时,所述主控电路接收写使能,写地址,写数据,然后把写数据缓存入其内部的缓存区,将写地址送到替换电路;
所述替换电路中存储一替换地址映射表,并根据该替换地址映射表查找写地址所对应的存储单元地址,即映射的存储单元地址,并输出该映射的存储单元地址;
所述存储器接口控制电路接收到主控电路发出的存储器接口写使能信号与写参数,以及替换电路送出的映射的存储单元地址后,根据写参数产生相应的存储器写控制信号去写相应存储单元,写完后,自动去读该存储单元,并且把读出的数据送入主控电路;
所述主控电路对存储器接口控制电路读出的数据与之前缓存区中存储的数据进行比较,如果相同,则结束写操作,如果不一致,则改变写参数,用更长的写时间与更大的写电流,再次发出写地址与存储器接口写使能信号,替换电路与存储器接口控制电路重复之前的操作,直到读出的数据与之前缓存区中存储的数据一致;如果此时写参数已经大于设置的阈值,则主控电路发送地址映射更新使能信号,替换电路根据该地址映射更新使能信号开辟一个新的备份存储单元地址,并且在替换地址映射表中加入该写地址与所述备份存储单元地址的映射关系;在这之后,当替换电路再次遇到这个写地址时,在写操作完成后把替换地址映射表中表示该映射关系的有效信号设置为有效,并且输出更新映射表使能信号以及更新的这部分替换地址映射表给存储器接口控制电路;存储器接口控制电路更新的这部分替换地址映射表写入预留的用作存储替换地址映射表的存储单元。
本发明利用非易失性存储器的存储单元性能恶化的规律,在存储单元到不能写成功的地步前,通过检测写存储器所需的电流与时间来判断这个存储单元是否即将不能正常工作了,如果所需的电流明显增加或者所需的时间明显增长时,就用替换电路把用事先预留的存储单元来代替这个存储单元。
本发明通过用备份存储单元替代将要不能正常工作的存储单元来增加系统看到的非易失性存储器的寿命。这样就增加了非易失性存储器的整体使用寿命。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
附图是所述非易失性存储器读写控制电路的原理框图。
具体实施方式
结合附图所示,所述非易失性存储器读写控制电路,包括:一主控电路,一替换电路,一存储器接口控制电路。
当系统要读存储器时,完成以下操作:
主控电路接收读使能信号,读地址信号,并且把读地址送到替换电路。
替换电路中存有一个替换地址映射表,替换电路根据这个替换地址映射表查找读地址对应的地址,如果没有,则把收到的读地址作为映射后的存储单元地址送出;如果有,那么就查看这个映射后的存储单元地址的有效信号,如果该有效信号显示此地址映射有效,那么就把所述替换地址映射表中与该读地址对应的地址作为映射后的存储单元地址送出到存储器接口控制电路。
存储器接口控制电路接收到主控电路发出的读使能信号以及替换电路送出的映射后的存储单元地址后,就产生相应的存储器读控制信号去读存储器,得到存储器的读数据后送回给主控电路,再由主控电路输出给系统中其它部分。
当系统要写存储器时,完成以下操作:
主控电路接收写使能信号,写地址,写数据,然后把写数据缓存入内部的缓存区,把写地址送到替换电路。
同读操作时一样,替换电路根据替换地址映射表查找与所述写地址对应的地址,如果没有,则把收到的写地址作为映射后的存储单元地址送出;如果有,那么就查看这个映射后的存储单元地址有效信号,如果有效信号显示此地址映射有效,那么就把替换地址映射表中与写地址对应的地址作为映射后的存储单元地址送出到存储器接口控制电路。
存储器接口控制电路接收到主控电路发出的写使能信号与写参数,以及替换电路送出的映射后的存储单元地址后,根据写参数产生相应的存储器写控制信号去写存储器,写完后,自动去读存储器,并且把读出的值送入主控电路。
主控电路把读出的数据值与之前缓存区中存储的数据值进行比较,如果比较结果为一致,就结束此写操作,如果不一致,则改变写参数,改成增长的写时间与更大的写电流,再次发出写地址与写使能信号,替换电路与存储器接口控制电路重复之前的操作,直到读出的数据值与之前缓存区中存的数据值一致。如果改写写参数后已经超过事先设好的阈值,那么主控电路就发送地址映射更新使能信号给替换电路,替换电路就开辟一个新的备份存储器地址,并且在替换地址映射表中加入所述写地址与新开辟地址的映射关系。在这之后,当替换电路再次遇到需要写所述写地址时,就在这个写操作完成后把替换地址映射表中表示这个映射关系的有效信号设置为有效,并且输出更新映射表使能信号以及更新的这部分替换地址映射表给存储器接口控制电路;存储器接口控制电路就把更新的这部分替换地址映射表写入预留好用作存此替换地址映射表的存储单元。
当系统重新上电后,由于替换电路中的替换地址映射表在下电后丢失了,所以需要重新建立映射表,为此完成以下操作:
主控电路在每次上电后,去读存储器接口控制电路中存储替换地址映射表的存储单元,把读到的替换地址映射表的值送入替换电路,并且把映射表加载标志信号置为有效,替换电路在映射表加载标志信号有效时,就通过接收到的替换地址映射表的值来重新建立替换地址映射表,并且把这些映射都置为有效。
在本发明中,检测写存储器所需的电流与时间是尝试出来的,即在每次写时,先用小电流与短时间来尝试写存储器,然后回读比较,如果读出来的数据与事先存储的写入数据不一致时就增加写电流,增长写时间,再次尝试,直到比较后一致。这样就得到这次写所对应的最小电流与最短时间,把它们与事先设定的阈值比较,来决定是否需要用事先预留的存储单元来代替这个存储单元。
以上这种替换的映射关系,并不是说一需要替换就马上生效的,因为此时数据还在原来的存储单元,如果要读的话,还是需要从原来的存储单元读。只有在下次写操作时,即对备用的存储单元写入后,这个映射关系才能开始生效。
由于映射关系是存在电路内部,在下电后就消失了,所以在每次新映射关系生效后,这个映射关系还要写入预先留好的非易失性存储器存储单元。这样,在上电时,本电路就可以通过读这部分存储单元来重建映射关系。
以上通过具体实施方式对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。
Claims (4)
1.一种非易失性存储器读写控制电路,其特征在于,包括一主控电路,一替换电路,一存储器接口控制电路;
当要写非易失性存储器时,所述主控电路接收写使能,写地址,写数据,然后把写数据缓存入其内部的缓存区,将写地址送到替换电路;
所述替换电路中存储一替换地址映射表,并根据该替换地址映射表查找写地址所对应的存储单元地址,即映射的存储单元地址,并输出该映射的存储单元地址;
所述存储器接口控制电路接收到主控电路发出的存储器接口写使能信号与写参数,以及替换电路送出的映射的存储单元地址后,根据写参数产生相应的存储器写控制信号去写相应存储单元,写完后,自动去读该存储单元,并且把读出的数据送入主控电路;
所述主控电路对存储器接口控制电路读出的数据与之前缓存区中存储的数据进行比较,如果相同,则结束写操作,如果不一致,则改变写参数,用更长的写时间与更大的写电流,再次发出写地址与存储器接口写使能信号,替换电路与存储器接口控制电路重复之前的操作,直到读出的数据与之前缓存区中存储的数据一致;如果此时写参数已经大于设置的阈值,则主控电路发送地址映射更新使能信号,替换电路根据该地址映射更新使能信号开辟一个新的备份存储单元地址,并且在替换地址映射表中加入该写地址与所述备份存储单元地址的映射关系;在这之后,当替换电路再次遇到这个写地址时,在写操作完成后把替换地址映射表中表示该映射关系的有效信号设置为有效,并且输出更新映射表使能信号以及更新的这部分替换地址映射表给存储器接口控制电路;存储器接口控制电路更新的这部分替换地址映射表写入预留的用作存储替换地址映射表的存储单元。
2.如权利要求1所述的读写控制电路,其特征在于:如果替换电路中的替换地址映射表中没有与所述写地址对应的地址,则把收到的写地址作为映射的存储单元地址送出;如果有,则查看该地址映射的有效信号,如果有效信号显示该地址映射有效,就将所述替换地址映射表中该写地址对应的地址作为映射的存储单元地址送出到存储器接口控制电路。
3.如权利要求1所述的读写控制电路,其特征在于:所述主控电路在每次上电后,去读存储器接口控制电路,把读到的替换地址映射表的值送入替换电路,并且把映射表加载标志置为有效,替换电路在映射表加载标志有效时,就通过接收到的替换地址映射表的值来重新建立替换地址映射表,并且把所有映射都置为有效。
4.如权利要求1所述的读写控制电路,其特征在于:当要读非易失性存储器时,所述主控电路接收读使能,读地址,并且把读地址送到替换电路;
所述替换电路中根据替换地址映射表查找该读地址对应的地址,如果没有,则把收到的读地址作为映射的存储单元地址送出;如果有,则查看该地址映射的有效信号,如果有效信号显示该地址映射有效,就将替换地址映射表中该写地址对应的地址作为映射的存储单元地址送出到存储器接口控制电路;
存储器接口控制电路接收到主控电路发出的读使能信号以及替换电路送出的映射的存储单元地址后,产生相应的存储器读控制信号去读非易失性存储器,得到读出的数据后送回给主控电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510413899.4A CN106354652B (zh) | 2015-07-15 | 2015-07-15 | 非易失性存储器读写控制电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510413899.4A CN106354652B (zh) | 2015-07-15 | 2015-07-15 | 非易失性存储器读写控制电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106354652A CN106354652A (zh) | 2017-01-25 |
CN106354652B true CN106354652B (zh) | 2019-09-27 |
Family
ID=57842532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510413899.4A Active CN106354652B (zh) | 2015-07-15 | 2015-07-15 | 非易失性存储器读写控制电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106354652B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109726040B (zh) * | 2017-10-31 | 2024-04-26 | 华润微集成电路(无锡)有限公司 | 具有容错机制的小容量otprom存储器及其容错控制方法 |
CN110265074B (zh) * | 2018-03-12 | 2021-03-30 | 上海磁宇信息科技有限公司 | 一种层次化多重冗余的磁性随机存储器及其运行方法 |
KR20200088564A (ko) * | 2019-01-15 | 2020-07-23 | 에스케이하이닉스 주식회사 | 컨트롤러, 컨트롤러의 동작방법 및 메모리 시스템 |
CN113615088B (zh) * | 2019-03-26 | 2023-07-14 | 华为技术有限公司 | 跨时钟域同步电路以及方法 |
CN112464500B (zh) * | 2020-12-24 | 2021-10-29 | 芯天下技术股份有限公司 | 备份cell替换电路验证方法、装置、存储介质和终端 |
CN112711238B (zh) * | 2020-12-31 | 2022-06-21 | 柳州柳新汽车冲压件有限公司 | 数据替换方法、装置、设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3098486B2 (ja) * | 1998-03-31 | 2000-10-16 | 山形日本電気株式会社 | 不揮発性半導体記憶装置 |
CN102290088B (zh) * | 2011-07-04 | 2016-06-01 | 上海华虹宏力半导体制造有限公司 | 存储器及其冗余替代方法 |
US9418700B2 (en) * | 2012-06-29 | 2016-08-16 | Intel Corporation | Bad block management mechanism |
CN103235760B (zh) * | 2013-01-31 | 2016-05-04 | 苏州国芯科技有限公司 | 基于CLB总线的高利用率NorFLASH存储接口芯片 |
CN103116551B (zh) * | 2013-01-31 | 2016-05-04 | 苏州国芯科技有限公司 | 应用于CLB总线的NorFLASH存储接口模块 |
CN109783017B (zh) * | 2015-01-27 | 2021-05-18 | 华为技术有限公司 | 一种存储设备坏块的处理方法、装置及存储设备 |
-
2015
- 2015-07-15 CN CN201510413899.4A patent/CN106354652B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106354652A (zh) | 2017-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106354652B (zh) | 非易失性存储器读写控制电路 | |
US11714750B2 (en) | Data storage method and system with persistent memory and non-volatile memory | |
CN105556416B (zh) | 数据存储设备/系统中利用低功率状态的停电保护和恢复 | |
CN102081577B (zh) | 对Flash存储器的数据存储结构进行数据操作的方法 | |
CN106486170B (zh) | 固态硬盘的潜在坏块定位方法及装置 | |
CN106569748B (zh) | Flash文件系统的数据处理方法和装置 | |
CN105843749B (zh) | 一种基于FPGA的NAND Flash容错方法 | |
US20090228634A1 (en) | Memory Controller For Flash Memory | |
CN101719099B (zh) | 减小固态硬盘写入放大的方法及装置 | |
CN103577342B (zh) | 管理闪存中所储存的数据的方法及相关记忆装置与控制器 | |
US20140281315A1 (en) | Mass storage device and method of operating the same to back up data stored in volatile memory | |
CN103136119A (zh) | 非易失性高速缓冲存储器、其处理方法以及计算机系统 | |
CN104571938A (zh) | 在多层单元存储器存取数据的方法及其多层单元存储装置 | |
CN101963891A (zh) | 数据存储处理方法与装置、固态硬盘系统与数据处理系统 | |
CN102135942A (zh) | 一种存储设备中实现损耗均衡的方法及存储设备 | |
CN102033814A (zh) | 存取一闪存的方法以及相关的记忆装置 | |
CN104360957A (zh) | 一种维持闪存损耗均衡的方法 | |
CN110781029A (zh) | 断电保护方法及系统 | |
CN103440204A (zh) | 一种更新文件系统的方法和存储设备 | |
KR20170035983A (ko) | 고체 상태 드라이브의 전송 버퍼 사용률을 향상시키기 위해 nand 페이지 버퍼들을 사용하는 방법 및 시스템 | |
JP2013016148A (ja) | メモリコントローラ、不揮発性記憶装置 | |
CN105843700A (zh) | 一种控制器 | |
US20180081587A1 (en) | Garbage Collection in Storage System | |
CN105512047A (zh) | Flash闪存的写操作、擦除操作方法及装置 | |
CN106897092A (zh) | 一种软件远程升级方法及控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |