[發(fā)明專利]一種單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法有效
| 申請?zhí)枺?/td> | 201210015157.2 | 申請日: | 2012-01-18 |
| 公開(公告)號: | CN102629234A | 公開(公告)日: | 2012-08-08 |
| 發(fā)明(設(shè)計)人: | 陳萬;劉和興 | 申請(專利權(quán))人: | 物聯(lián)微電子(常熟)有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 215500 江蘇省蘇州*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 單片機 內(nèi)置 flash 數(shù)據(jù) 快速 檢索 方法 | ||
1.一種單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,包括:
建立數(shù)據(jù)信息編號對應(yīng)的索引值與存儲地址的映射表,將數(shù)據(jù)信息按索引值的大小依次存儲;
檢索存儲的數(shù)據(jù)信息時,先根據(jù)該數(shù)據(jù)信息編號對應(yīng)的索引值,在映射表中找到與該索引值對應(yīng)的存儲地址,再從該存儲地址起向后查詢與該編號相同的數(shù)據(jù)信息。
2.根據(jù)權(quán)利要求1所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于,建立數(shù)據(jù)信息編號對應(yīng)的索引值與存儲地址的映射表,將數(shù)據(jù)信息按索引值的大小依次存儲的步驟包括:
定義兩個字節(jié)的變量作為待存儲數(shù)據(jù)信息的起始存儲地址;
通過哈希算法計算每個待存儲的數(shù)據(jù)信息編號的1字節(jié)的哈希值,并將該哈希值作為索引值,當存儲地址為不是0XFFFF時,將該索引值對應(yīng)的存儲地址賦值給待存儲數(shù)據(jù)信息的起始存儲地址;當存儲地址是0XFFFF時,在映射表中從數(shù)據(jù)信息編號的索引值開始向后遍歷,確定是否存在有效的存儲地址,當存在有效存儲地址時查找最近的具有有效存儲地址的數(shù)據(jù)信息編號的索引值,并將最后存儲地址后一位賦值給起始存儲地址,并將最后存儲地址長度增加為數(shù)據(jù)信息的長度;
計算本次請求存儲的數(shù)據(jù)存儲的起始存儲地址所在頁的序號;
從數(shù)據(jù)信息存儲的起始存儲地址所在頁序號開始增加存儲數(shù)據(jù)信息,將請求插入存儲的數(shù)據(jù)信息編號的索引值對應(yīng)的存儲地址設(shè)置為起始存儲地址,該起始存儲地址之后的數(shù)據(jù)信息依次向后偏移插入存儲的數(shù)據(jù)信息的長度;
更新映射表。
3.根據(jù)權(quán)利要求2所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于:
所述哈希算法包括MD2、MD4、MD5和SHA-1。
4.根據(jù)權(quán)利要求2所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于,計算本次請求數(shù)據(jù)信息存儲的起始存儲地址所在頁序號的步驟包括:
所述頁序號為起始存儲地址/每頁大小,其中每頁大小表示單片機片內(nèi)Flash每頁的大小。
5.根據(jù)權(quán)利要求2所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于,從數(shù)據(jù)信息存儲的起始存儲地址所在頁序號開始增加存儲數(shù)據(jù)信息,將請求存儲的數(shù)據(jù)信息插入到起始存儲地址,該起始存儲地址之后的數(shù)據(jù)依次向后偏移插入存儲的數(shù)據(jù)信息的長度的步驟包括:
先將起始存儲地址之前的數(shù)據(jù)拷貝到緩存頁,將本次請求存儲的數(shù)據(jù)信息寫入緩存頁,然后從頁序號將起始存儲地址后的數(shù)據(jù)信息依次拷貝到緩存頁,直到緩存頁寫滿;再將剩余的頁序號中數(shù)據(jù)信息長度先拷貝到RAM中;然后將頁序號后一頁擦除,最后將緩存頁中的數(shù)據(jù)信息拷回到頁序號后一頁,從而實現(xiàn)請求存儲數(shù)據(jù)的插入存儲,請求存儲的數(shù)據(jù)信息插入存儲到起始存儲地址時,該起始存儲地址之后的數(shù)據(jù)依次向后偏移請求存儲的數(shù)據(jù)信息的長度。
6.根據(jù)權(quán)利要求5所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于,更新映射表的步驟包括:
當待插入的存儲數(shù)據(jù)信息對應(yīng)的索引值在映射表中是0FFFF時,將本次存儲的起始存儲地址設(shè)置為該索引對應(yīng)的存儲地址,將插入存儲的數(shù)據(jù)信息編號的索引值之前的映射表保持不變,將插入存儲的數(shù)據(jù)信息編號的索引值對應(yīng)的存儲地址設(shè)置為起始存儲地址,將插入存儲的數(shù)據(jù)信息編號的索引值之后存在有效的存儲地址長度增加插入存儲的數(shù)據(jù)信息的長度。
7.根據(jù)權(quán)利要求1或5所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于,檢索存儲的數(shù)據(jù)信息時,先根據(jù)該數(shù)據(jù)信息編號對應(yīng)的索引值,在映射表中找到與該索引值對應(yīng)的存儲地址,再從該存儲地址起向后查詢與該編號相同的數(shù)據(jù)信息的步驟包括:
計算待檢索的數(shù)據(jù)信息編號的索引值;
在索引值與存儲地址對應(yīng)關(guān)系的映射表中,查找待檢索的數(shù)據(jù)信息編號索引值對應(yīng)的路由信息的存儲地址;
從該存儲地址開始向后遍歷,查找與待檢索的數(shù)據(jù)信息編號一致的數(shù)據(jù)信息,存在與待檢索的數(shù)據(jù)信息編號一致的數(shù)據(jù)信息時,則檢索并返回該數(shù)據(jù)信息編號對應(yīng)的數(shù)據(jù)信息,完成檢索。
8.根據(jù)權(quán)利要求7所述的單片機片內(nèi)置Flash數(shù)據(jù)快速檢索方法,其特征在于,請求檢索的數(shù)據(jù)信息時,先根據(jù)請求存儲數(shù)據(jù)信息的編號,計算出1字節(jié)的哈希值,并將該哈希值為索引值。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于物聯(lián)微電子(常熟)有限公司,未經(jīng)物聯(lián)微電子(常熟)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210015157.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





