[發明專利]基于Nor Flash的區域循環存儲方法有效
| 申請號: | 201410736579.8 | 申請日: | 2014-12-05 |
| 公開(公告)號: | CN104461917A | 公開(公告)日: | 2015-03-25 |
| 發明(設計)人: | 鄭堅江;沈開遠 | 申請(專利權)人: | 寧波新尚智能電氣有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 寧波市鄞州甬致專利代理事務所(普通合伙) 33228 | 代理人: | 李迎春 |
| 地址: | 315034 浙江*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 nor flash 區域 循環 存儲 方法 | ||
技術領域
本發明涉及存儲芯片技術領域,具體講是一種基于Nor?Flash的區域循環存儲方法。
背景技術
在智能終端領域,由于負荷曲線、事件記錄等數據存儲需要占用比較大的空間,因此低成本的Flash就應用到了該領域。由于智能終端一般都使用單片機,一般不帶系統,所以Nand_Flash(需要對壞區進行處理)就不適用于此種應用環境,只能用Nor_Flash。之前很多廠家用了Atmel的Flash,如AT45DB161D、AT45DB321D或者現在最新的AT45DB321E,此種Flash植入了SRAM,雖然解決了片擦的問題,但是同樣也帶來了成本倍增的問題。普通的Nor_Flash才適用于該領域的產品。它的優點是成本低,缺點是算法復雜點,因為它只有在片擦(一般是4K?bytes)后才能寫入數據,而不能覆蓋原來的數據去寫。而且一旦擦除,一片空間(一般是4K?bytes)數據就會丟失;為解決此問題,很多人采用了以下方法:先額外分配一片空間,將這部分需要刪除的數據移到這片空間內,然后再寫回去。但是,這種方法比較繁瑣、且耗時很長,長時間的使用會極大地影響存儲芯片的使用壽命。
發明內容
本發明要解決的技術問題是,提供一種簡單、耗時短且能夠保證存儲芯片使用壽命的基于Nor?Flash的區域循環存儲方法。
本發明的技術方案是,提供一種基于Nor?Flash的區域循環存儲方法,包括以下步驟:
(1)、設定一存儲區域,該存儲區域由多片連續存儲空間組成,且將頭指針和尾指針指向第一片存儲空間的起始地址;
(2)、給該存儲區域額外分配一片共享存儲空間,且將該共享存儲空間分配在最后一片存儲空間之后,使得最后一片存儲空間與共享存儲空間形成一連續存儲空間;
(3)、每存取一條數據,則尾指針下移一條數據的存儲空間;
(4)、當尾指針移到共享存儲空間的起始地址時,每存取一條數據,則頭指針下移一條數據的存儲空間;
(5)、當尾指針移到共享存儲空間的最后一條數據且該共享存儲空間的不足以再存儲一條數據時,生成存儲記錄,同時尾指針循環到該存儲區域第一片存儲空間的起始地址;
(6)、當生成存儲記錄后,每存取一條數據,則頭指針和尾指針下移一條數據的存儲?空間;當尾指針移到共享存儲空間的最后一條數據時,返回執行步驟(5);以此類推。
每片空間均為4K?bytes。
所述的共享存儲空間為4K?bytes。
采用以上結構后,本發明與現有技術相比,具有以下優點:
本發明基于Nor?Flash的區域循環存儲方法利用額外的一片共享存儲空間,這片存儲空間是挨著存儲區域的末尾開辟的,然后結合頭尾指針,使整塊空間區域可動態移動,只需寫入數據即可,到新的一片空間時,直接擦除,因為此片空間內的數據必定是無用數據,無需把數據讀出重組再寫入。由于是循環利用該存儲空間,且這個過程中每循環一次僅對共享存儲空間進行一次的擦寫,因此該方法不僅簡單、耗時短,而且也極大地保證了存儲芯片的使用壽命。
具體實施方式
下面結合具體實施例對本發明作進一步說明。
本發明一種基于Nor?Flash的區域循環存儲方法,包括以下步驟:
(1)、設定一存儲區域,該存儲區域由多片連續存儲空間組成,且將頭指針和尾指針指向第一片存儲空間的起始地址,一片存儲空間一般為4K?bytes,且每片存儲空間的存儲量相同;
(2)、給該存儲區域額外分配一片共享存儲空間,且將該共享存儲空間分配在最后一片存儲空間之后,使得最后一片存儲空間與共享存儲空間形成一連續存儲空間,也就是共享存儲空間是挨著存儲區域的末尾開辟的,首指針和尾指針可連續的、直接的由最后一片存儲空間進入共享存儲空間;
(3)、每存取一條數據,則尾指針下移一條數據的存儲空間;
(4)、當尾指針移到共享存儲空間的起始地址時,每存取一條數據,則頭指針下移一條數據的存儲空間,這就說明該區域可存儲的區域已經占滿,再存儲新數據時,先寫入共享存儲空間,等共享存儲空間存滿后,直接擦除起始地址對應的這片存儲空間(此時此片空間內的數據必定是無用數據),無需把數據讀出重組再寫入。
(5)、當尾指針移到共享存儲空間的最后一條數據且該共享存儲空間的不足以再存儲一條數據時,生成存儲記錄,同時尾指針循環到該存儲區域第一片存儲空間的起始地址,從而形成了循環;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于寧波新尚智能電氣有限公司,未經寧波新尚智能電氣有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410736579.8/2.html,轉載請聲明來源鉆瓜專利網。





