本發(fā)明是關(guān)于數(shù)據(jù)傳輸或存取時(shí)錯(cuò)誤更正的,尤指一種漢明碼編碼排列方法及儲(chǔ)存裝置檢測(cè)方法。
背景技術(shù):
1、在錯(cuò)誤更正碼的領(lǐng)域中,傳統(tǒng)的漢明碼(hamming?code)是在原始數(shù)據(jù)中,透過簡(jiǎn)單的互斥或(xor)運(yùn)算編碼及譯碼,藉由插入冗余位元,可達(dá)到更正1位元錯(cuò)誤的效果,例如,(7,4)漢明碼是在4位元的數(shù)據(jù)中插入3位元的冗余位元,而可達(dá)到更正1位元錯(cuò)誤的效果。然而,傳統(tǒng)的漢明碼只能更正1位元的錯(cuò)誤但無法更正多位元的錯(cuò)誤,如要更正多位元的錯(cuò)誤,則需要用使用其他編碼算法,例如:重復(fù)碼、卷積碼、bch碼、rs碼等,然而,這些編碼算法較復(fù)雜或?qū)崿F(xiàn)成本較高,而不適用于低成本或低功耗的電路設(shè)計(jì)。
2、因此,在現(xiàn)有錯(cuò)誤更正碼的應(yīng)用上,仍存在有諸多缺失而有予以改善的必要。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的主要是在提供一種漢明碼編碼排列方法及儲(chǔ)存裝置檢測(cè)方法,其可針對(duì)可預(yù)期的錯(cuò)誤模式,動(dòng)態(tài)調(diào)整多組漢明碼的編排方式,以最佳位元率(bit?rate)實(shí)現(xiàn)多位元錯(cuò)誤修正或偵測(cè),并可用于改善儲(chǔ)存裝置的良率,且具有低成本且架構(gòu)簡(jiǎn)單的特性。
2、依據(jù)本發(fā)明的一方面,本發(fā)明提出一種漢明碼編碼排列方法,其包括步驟:(a)將一原始數(shù)據(jù)分為n組待編碼數(shù)據(jù)并分別對(duì)該n組待編碼數(shù)據(jù)進(jìn)行(c,a)漢明碼編碼,以生成對(duì)應(yīng)的n組編碼并據(jù)以產(chǎn)生對(duì)應(yīng)的n組已編碼數(shù)據(jù),其中,n=round(x/a),x為該原始數(shù)據(jù)的位元數(shù),a為一組待編碼數(shù)據(jù)的位元數(shù),round()代表取整數(shù)函數(shù),一組已編碼數(shù)據(jù)的位元數(shù)為c且c=a+b,b為一組編碼的位元數(shù)且為符合2b>=a+b+1的最小值,當(dāng)中,x、n、a、b、c皆為大于0的整數(shù);(b)分別對(duì)該n組已編碼數(shù)據(jù),取出每一組已編碼數(shù)據(jù)中的p位元的已編碼數(shù)據(jù),并接續(xù)排列取出的n組p位元的已編碼數(shù)據(jù),當(dāng)中,p為大于0的整數(shù)且p小于或等于c;(c)當(dāng)該n組已編碼數(shù)據(jù)的每一組中仍有剩余大于或等于p位元的未取出已編碼數(shù)據(jù)時(shí),取出每一組已編碼數(shù)據(jù)中的p位元的已編碼數(shù)據(jù),并接續(xù)排列取出的n組p位元的已編碼數(shù)據(jù);以及(d)當(dāng)n組已編碼數(shù)據(jù)的每一組中已無剩余的未取出已編碼數(shù)據(jù)時(shí),依前述排列產(chǎn)生重排列的已編碼數(shù)據(jù);或當(dāng)n組已編碼數(shù)據(jù)的每一組中僅有剩余q位元的未取出已編碼數(shù)據(jù)時(shí),取出每一組已編碼數(shù)據(jù)中的q位元的已編碼數(shù)據(jù),并接續(xù)排列取出的n組q位元的已編碼數(shù)據(jù),據(jù)此產(chǎn)生重排列的已編碼數(shù)據(jù),當(dāng)中,q為大于0且小于p的整數(shù)。
3、依據(jù)本發(fā)明的另一方面,本發(fā)明提出一種儲(chǔ)存裝置檢測(cè)方法,其使用如前述的漢明碼編碼排列方法來檢測(cè)一儲(chǔ)存裝置,包括:于大于0且小于或等于c的整數(shù)中選定p的多種不同值,且根據(jù)該p的多種不同值,定義多種類型的漢明碼編碼排列方法,其中,該多種類型的漢明碼編碼排列方法分別對(duì)應(yīng)該p的多種不同值;以及依序使用該多種類型的漢明碼編碼排列方法來對(duì)該儲(chǔ)存裝置進(jìn)行自我測(cè)試,其中,當(dāng)有一類型的漢明碼編碼排列方法所進(jìn)行的自我測(cè)試為成功時(shí),將該類型的漢明碼編碼排列方法記錄于該儲(chǔ)存裝置并結(jié)束該儲(chǔ)存裝置的檢測(cè),若是所有類型的漢明碼編碼排列方法所進(jìn)行的自我測(cè)試皆失敗,則判定該儲(chǔ)存裝置為不良品。
4、以上概述與接下來的詳細(xì)說明皆為示范性質(zhì),是為了進(jìn)一步說明本發(fā)明的權(quán)利要求,而有關(guān)本發(fā)明的其余目的與優(yōu)點(diǎn),將在后續(xù)的說明與圖式加以闡述。
1.一種漢明碼編碼排列方法,其特征在于,包括步驟:
2.如權(quán)利要求1所述的漢明碼編碼排列方法,其特征在于,于步驟(a)中,該n組已編碼數(shù)據(jù)是由將該n組待編碼數(shù)據(jù)分別與對(duì)應(yīng)的該n組編碼組合所產(chǎn)生。
3.如權(quán)利要求1所述的漢明碼編碼排列方法,其特征在于,該p位元的已編碼數(shù)據(jù)是為由低位至高位的連續(xù)已編碼數(shù)據(jù)。
4.如權(quán)利要求1所述的漢明碼編碼排列方法,其特征在于,于步驟(a)中,每一組已編碼數(shù)據(jù)中更加入一同位位元。
5.如權(quán)利要求1所述的漢明碼編碼排列方法,其特征在于,該重排列的已編碼數(shù)據(jù)是儲(chǔ)存于一儲(chǔ)存裝置中。
6.如權(quán)利要求1所述的漢明碼編碼排列方法,其特征在于,該(c,a)漢明碼編碼為(7,4)漢明碼編碼。
7.如權(quán)利要求6所述的漢明碼編碼排列方法,其特征在于,p=1。
8.如權(quán)利要求6所述的漢明碼編碼排列方法,其特征在于,p=2。
9.如權(quán)利要求6所述的漢明碼編碼排列方法,其特征在于,p=4。
10.如權(quán)利要求6所述的漢明碼編碼排列方法,其特征在于,p=7。
11.一種儲(chǔ)存裝置檢測(cè)方法,其使用如權(quán)利要求1所述的漢明碼編碼排列方法來檢測(cè)一儲(chǔ)存裝置,其特征在于,包括:
12.如權(quán)利要求11所述的儲(chǔ)存裝置檢測(cè)方法,其特征在于,該(c,a)漢明碼編碼為(7,4)漢明碼編碼時(shí),該p的多種不同值為1、2、4及7。