999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于海明碼的FLASH文件系統(tǒng)的校驗編碼方法

2011-02-11 23:59:06黃莎莉

黃莎莉,方 虹

(1.湖北城市建設職業(yè)技術學院,武漢 430072;2.華中師范大學圖書館,武漢 430079)

近年來,閃速存儲器(FLASH)廣泛應用于移動電子產品中,當FLASH存儲器某個數據塊的擦除次數超過了它允許擦除的最大值,將產生單個電路故障,造成的一位或者相關多位錯誤。常見文件系統(tǒng)所采用的CRC校驗只能檢錯,不能糾錯;海明碼能發(fā)現數據中的2位錯,或糾正1位數據錯,滿足不了大容量FLASH存儲設備的校驗糾錯要求。為此,有研究人員通過對海明碼增加1個校驗位,實現了碼距為4的擴展海明碼編碼方式,能發(fā)現2位錯,并糾正1位錯。

擴展海明碼使用32位的碼字,來存放26位的數據信息,其校驗位為P1-P6,數據位為D1-D26,從高到低依次排列如表1所示:

表1 擴展海明碼的位排列

擴展海明碼的數據存貯效率很高,但文件系統(tǒng)在編碼和解碼時要在26位和32位間進行轉換,轉換的工作量較大;數據校驗中用到了大量邏輯運算,對用軟件實現數據校驗工作的常見移動設備的存取效率有一定影響。另外,大容量的FLASH容易出現單個位錯誤,對于重要的數據來說,每32位只允許出錯1位,安全性還有待提高。

鑒于這種情況,本文基于海明碼,提出一種二次校驗策略,并在此基礎上提出二次校驗海明碼方式。與擴展海明碼相比,該編碼方式的編碼和解碼步驟簡化,校驗過程精簡。

1 基于海明碼的二次校驗策略

對擴展海明碼的分析可知,由于擴展海明碼的長度為32位,而常見的海明碼的長度為7位(4位數據位,3位校驗位),在編/解碼過程中需運用大量的邏輯運算,影響了讀寫效率。另外,由于擴展海明碼長32位,雖然編碼效率提高了,但出現2位錯或者多位錯的概率也增大了。在容易發(fā)生錯誤的大容量FLASH存儲介質上,這種編碼方式還不夠理想。因此,新的海明編碼策略中信息位應該縮短。

海明碼每字節(jié)信息位所對應的校驗位稱為校驗成本。傳遞相同的信息,編碼中信息位縮短將使總校驗位數增加,校驗成本上升。對于大容量FLASH存儲介質來說,適當增加校驗位數,以存儲空間來換編/解碼時間和糾錯精度是可行的。隨著校驗位增加,校驗位出錯的可能性也增大了,如果恢復單位錯誤的機會浪費在校驗位上將得不償失。因此本文提出二次校驗概念,即把一組校驗位也看成一組數據位,由一組特殊的校驗位對其進行校驗。一組特殊的校驗位通常可以校驗兩組或更多組的校驗位,理論上這種二次校驗的方法能夠糾正數據位和校驗位都有單錯的2位錯,從而提高海明編碼的糾錯效果。

完整的二次校驗流程為:

①用校驗位和數據位進行校驗運算,運算結果沒錯或者只有一個錯,按照長碼距海明碼的方式處理,流程結束。當發(fā)現有2位錯誤時,進入步驟①;

②將步驟①中校驗碼看做數據位,將它和對應的校驗位進行校驗運算;

如結果沒錯,表明步驟①中的兩個錯都出在數據位,無法糾錯,返回信息結束流程;

如1位錯出在校驗位,無法糾錯,返回信息結束流程;

如1位錯出在數據位(即步驟①的校驗位),糾正錯誤,返回正確的校驗碼;

如2位錯,如有下一次二次校驗,重復步驟②,否則返回信息結束流程;

③用步驟②得到的正確校驗碼來二次校驗步驟①中數據位,并糾正錯誤。

從完整的二次校驗流程可知,當數據部分沒有錯誤或只有1個錯誤時,無需進入二次校驗流程,這樣兼顧了二次校驗策略的解碼速度和糾錯能力,是二次校驗策略的優(yōu)點。

2 二次校驗海明碼的結構及編碼/解碼算法

二次校驗海明碼長32位,低16位是數據部分,高16位是校驗部分。數據部分內按8位平分兩個數據段,校驗組內從低到高位,分為2個校驗A段和1個校驗B段。每個校驗A段占5位,負責校驗數據部分中對應的8個數據位,校驗B段占6位,其中參與校驗的是低5位,最高位做解碼標志位,校驗B段負責校驗本組內的兩個校驗段A。位排列如下表2。

表2 二次校驗海明碼的位排列

2.1 二次校驗海明碼的編碼

①讀取16位數據,為這兩個字節(jié)生成校驗段A1和A2;

②將A1和A2合并為10位的二進制數,為其生成校驗段B;

③生成16位的校驗部分,并將其加在高16位,完成編碼。

④設數據段1中從高到低分別為D8-D1,校驗段A1從高到低分別為P5-P1,那么數據段1的校驗公式如下(偶校驗):

⑤校驗段A2和校驗段B的生成和校驗段A1的生成類似,在此省略。

⑥按照表2的順序從高位到低位編成32位的二次校驗海明碼。

2.2 二次校驗海明碼的解碼

①讀取校驗部分,將其解碼并分成5位的校驗段A1和校驗段A2;

②用校驗段A1解碼數據段1;

③用校驗段A 2解碼數據段2;

④如步驟②或③正常解碼,返回正確的16位數據;否則對16位的校驗部分進行校驗(校驗段B的糾錯標志位為1表示錯誤出在校驗段A1)。設校驗碼段A1,校驗碼段A2從高到低的位編號為D10-D1,校驗段B從高到低的位編號為P5-P1,則它的校驗表達式為:

⑤根據校驗表達式和出錯校驗位S的結果對三種情況(2個錯誤全在初次校驗的數據位,單個錯誤在初次校驗的校驗位,2個錯誤都在初次校驗的校驗位)進行歸納:

I當F=0且S=0時,或者當F!=0且X為真時,2個錯誤全在初次校驗的數據位,超過了二次校驗海明碼的糾錯能力。

II當F!=0且X為假時,單個錯誤在初次校驗的校驗位。當錯誤狀態(tài)X為假時,錯誤標志位S有校驗偏差B,出錯位實際是S-B位。S>8表示第S-4位錯;8>S>4表示第S-3位錯;4>S>2表示第S-2位(第一位)錯。找到出錯位置之后,將其求反即可糾正位錯誤。如果錯誤位置在校驗段A1,則糾錯標志位置1。當數據段2出錯時,可以通過讀取糾錯標志位信息來決定是否需要對校驗段A2進行校驗。然后返回糾正后的校驗段。

III當F=0且S!=0,表示校驗部分有兩位數據錯,超過了二次校驗海明碼的糾錯能力。

⑥對校驗部分的校驗后返回的是糾正了的校驗段,最后用這個校驗段對對應的數據段進行二次校驗,得到正確的數據位結果。

3 二次校驗海明碼和擴展海明碼的比較

雖然二次校驗海明碼的信息位只能利用50%,與擴展海明碼81.3%的利用率相差不少,但是在編/解碼的運算和糾錯精度方面,二次校驗海明碼都有較大的優(yōu)勢。表3和表4分別是用擴展海明碼和二次校驗海明碼對100位信息位進行編碼解碼的比較結果。

表3 兩種方法編碼比較

表4 兩種方法解碼比較

4 結束語

本文針對FLASH存儲器容易出現單個數據位錯的常見問題,提出了基于海明碼的二次校驗編碼方法,相比以往的擴展海明編碼方法,該方法提高了編/解碼的效率和糾錯能力,有利于提高FLASH存儲器的數據安全性并延長了FLASH存儲的使用壽命。

[1]周立功,等.ARM 嵌入式系統(tǒng)基礎教程[M].北京:北京航空航天大學出版社,2008.

[2]李 巖.基于S3C44BOX嵌入式uc Linux系統(tǒng)原理及應用[M].北京:清華大學出版社,2005.

[3]張 娟,張雪蘭.擴展的海明碼及其在FLASH/EEPROM中的應用[J].兵工自動化,2003,(3).

主站蜘蛛池模板: 成人免费网站久久久| 亚洲 日韩 激情 无码 中出| 4虎影视国产在线观看精品| 久久五月天国产自| 亚洲欧美另类日本| 国产人人射| 狠狠做深爱婷婷久久一区| 精品无码人妻一区二区| 婷婷99视频精品全部在线观看| 97se亚洲综合在线| 青青草国产精品久久久久| 亚洲AV无码乱码在线观看代蜜桃| 亚洲国产无码有码| 青青青视频91在线 | 波多野结衣一二三| 九九热免费在线视频| 91精品国产无线乱码在线| 国内老司机精品视频在线播出| 深爱婷婷激情网| 欧美视频在线播放观看免费福利资源| 中文字幕永久在线观看| 国产精品久久久久鬼色| 精品国产一区二区三区在线观看| 亚洲精品第五页| 国产精品任我爽爆在线播放6080| 亚洲毛片网站| 亚洲中文精品久久久久久不卡| 国产全黄a一级毛片| 精品1区2区3区| 欧美日韩福利| 成年人国产视频| 99精品福利视频| a级毛片免费看| 五月天丁香婷婷综合久久| 99尹人香蕉国产免费天天拍| 欧美在线视频不卡第一页| 在线中文字幕网| 亚洲无码高清一区二区| 亚洲视频免| 亚洲水蜜桃久久综合网站| 国产欧美日韩va另类在线播放| 欧美精品二区| 国产在线一区视频| 91亚洲视频下载| 精品成人免费自拍视频| 91麻豆国产视频| 亚洲最新在线| AV老司机AV天堂| 沈阳少妇高潮在线| 色婷婷啪啪| 亚洲性影院| 亚洲最大情网站在线观看| av手机版在线播放| 国产综合色在线视频播放线视| 欧美亚洲香蕉| 美女免费黄网站| 亚洲国产成人精品青青草原| 99久久精品久久久久久婷婷| 中文字幕 欧美日韩| 亚洲黄色成人| 婷婷亚洲最大| 小说区 亚洲 自拍 另类| 91 九色视频丝袜| 91欧洲国产日韩在线人成| 中文字幕一区二区人妻电影| 午夜一区二区三区| 亚洲精品制服丝袜二区| 久久不卡国产精品无码| 国产欧美日韩在线一区| 九九热精品免费视频| 亚洲免费毛片| 黄色网站不卡无码| 丁香婷婷激情网| 国产女人在线| 亚洲AⅤ波多系列中文字幕| 少妇精品久久久一区二区三区| a级毛片网| 视频国产精品丝袜第一页| 国产日韩久久久久无码精品| 亚洲日韩图片专区第1页| 国内精品久久九九国产精品| 四虎成人免费毛片|