專利名稱::一種二維非隔離位約束編解碼方法及編解碼器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明屬于數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)通信領(lǐng)域,具體涉及一種二維非隔離位約束編解碼方法及相應(yīng)的編解碼器。
背景技術(shù):
:數(shù)據(jù)存儲(chǔ)通道由于內(nèi)在的物理特性,會(huì)對(duì)穿越通道的信號(hào)產(chǎn)生具有某種形式的約束限制,從而成為一個(gè)約束系統(tǒng)。例如在一個(gè)給定的時(shí)間內(nèi),磁記錄系統(tǒng)中的數(shù)據(jù)"1"表示磁極的變化,"o"表示磁極沒有變化。兩個(gè)連續(xù)"1"被讀作電壓峰值緊跟著一個(gè)電壓波谷。如果波峰和波谷靠的太近,會(huì)產(chǎn)生符號(hào)間串?dāng)_,即波峰和波谷的振幅會(huì)嚴(yán)重受損,它們產(chǎn)生的位置因此會(huì)失真。所以為了控制符號(hào)間的串?dāng)_,一般要求"1"不能靠的太近;或者說"0"的長(zhǎng)度不能太短。另一方面,為了時(shí)序控制,也希望"0"的長(zhǎng)度也不能太長(zhǎng),這是因?yàn)橹挥?1"才能被檢測(cè)到。"0"的長(zhǎng)度由于通過一個(gè)反饋環(huán)和時(shí)鐘相連接,"0"的長(zhǎng)度太長(zhǎng)則可能引起時(shí)鐘漂移超過一個(gè)時(shí)鐘單元周期。這就形成了游程長(zhǎng)度受限約束RLL(run-lengthlimited)。其中著名的(1,7)和(2,7)RLL就是這類約束編碼的兩個(gè)典型代表。在這兩類系統(tǒng)中,"0"的最少個(gè)數(shù)為1(2),"0"的個(gè)數(shù)最多為7。此外香農(nóng)(Shannon)容量是描述這種約束系統(tǒng)的一個(gè)重要參數(shù)。其含義是指系統(tǒng)在滿足約束條件下,碼字個(gè)數(shù)的漸進(jìn)增長(zhǎng)率。它反映了數(shù)據(jù)被調(diào)制映射成預(yù)先設(shè)定的約束條件,所能達(dá)到的理論上限。目前一維約束系統(tǒng)很多基本問題5已從理論上得到解決,香農(nóng)容量可以用公式準(zhǔn)確地計(jì)算出,相應(yīng)的編解碼理論也給出了如何構(gòu)造碼率盡可能接近容量極限的編解碼器。對(duì)這類約束系統(tǒng)的深入研究,使得一維調(diào)制約束序列及其編解碼方法在數(shù)據(jù)的存儲(chǔ)和傳輸?shù)阮I(lǐng)域中得到廣泛應(yīng)用。隨著社會(huì)的發(fā)展,現(xiàn)有磁記錄和光存儲(chǔ)等技術(shù)由于內(nèi)在的物理限制,對(duì)容量存儲(chǔ)更大、數(shù)據(jù)尋址時(shí)間更短和數(shù)據(jù)傳k率更高的要求,已逐漸顯得力不從心,不能適應(yīng)時(shí)代需求,因而促使了人們研究基于新型原理來同時(shí)滿足上述條件的新型存儲(chǔ)技術(shù)。近些年二維存儲(chǔ)技術(shù)如全息存儲(chǔ)和二維光盤存儲(chǔ)技術(shù)的飛速發(fā)展和不斷成熟,正是順應(yīng)這種需求應(yīng)運(yùn)而生,有望在可預(yù)期的時(shí)間內(nèi)成為替代目前主流存儲(chǔ)技術(shù),成為下一代存儲(chǔ)技術(shù)的首選解決方案。因此對(duì)二維信號(hào)編碼和處理技術(shù)的研究和關(guān)注也日益增加。和一維約束系統(tǒng)相比,在二維情形下,信號(hào)受到的約束限制相對(duì)而言也更為復(fù)雜。目前市場(chǎng)廣泛使用的磁存儲(chǔ)和光存儲(chǔ)技術(shù),數(shù)據(jù)均是按"線"方式在存儲(chǔ)介質(zhì)上排列。數(shù)據(jù)所受的噪聲及符號(hào)間串?dāng)_也僅僅是一維。而在二維新一代存儲(chǔ)技術(shù)中,數(shù)據(jù)是按照"頁(yè)面"的方式在存儲(chǔ)介質(zhì)上排列,符號(hào)間串?dāng)_以及噪聲在兩個(gè)方向都存在。因此傳統(tǒng)的一維信號(hào)編碼和信號(hào)檢測(cè)、處理等技術(shù)已不適應(yīng)這種二維數(shù)據(jù)存儲(chǔ)記錄形式的需求。尋找二維數(shù)據(jù)檢測(cè)、數(shù)據(jù)處理及數(shù)據(jù)編碼等技術(shù)就成為二維存儲(chǔ)通道研究面臨的主要問題。研究表明二維非隔離位約束對(duì)全息存儲(chǔ)和二維光盤存儲(chǔ)等數(shù)據(jù)通道具有重要價(jià)值,嚴(yán)重制約和影響著通道性能。所謂二維非隔離位約束是指在以"頁(yè)面"為數(shù)據(jù)記錄格式的二維存儲(chǔ)系統(tǒng)中,數(shù)據(jù)"1"(O)的上下左右鄰居數(shù)據(jù)不能全部是"0"(1)。即圖2所示兩種圖案在二維數(shù)據(jù)陣列中應(yīng)嚴(yán)禁出現(xiàn),這兩種圖案的出現(xiàn)會(huì)產(chǎn)生嚴(yán)重的二維符號(hào)串?dāng)_,導(dǎo)致存儲(chǔ)系統(tǒng)性能的嚴(yán)重失真。在平面邊界情況下,這個(gè)要求可適當(dāng)放寬。大塊數(shù)據(jù)分解成由多個(gè)比特?cái)?shù)據(jù)組成的比特組,每個(gè)比特組再按照預(yù)先規(guī)定約束編碼成相應(yīng)的二維子陣列,之后再將這些二維子陣列組合級(jí)聯(lián)成滿足預(yù)先約束條件的二維數(shù)據(jù)陣列。每個(gè)二維子陣列的編碼即和對(duì)應(yīng)組的比特有關(guān)系,還和其它相鄰組的比特有關(guān)系,因此在譯碼階段,如果其它組的比特?cái)?shù)據(jù)產(chǎn)生譯碼錯(cuò)誤時(shí),會(huì)對(duì)當(dāng)前組的比特譯碼造成影響,且這種影響會(huì)進(jìn)一步影響到即將到來的下一個(gè)其它數(shù)據(jù)分組的解碼,從而造成嚴(yán)重的解碼錯(cuò)誤傳播,產(chǎn)生碼字的災(zāi)難性譯碼錯(cuò)誤。此外由于編碼和譯碼階段需要記錄和當(dāng)前比特組直接相鄰比特組的編碼狀態(tài),因此編碼解碼的設(shè)計(jì)與實(shí)現(xiàn)較為復(fù)雜。一般而言,在存儲(chǔ)系統(tǒng)中,當(dāng)碼率相同或相近,通過減少編碼器的狀態(tài)個(gè)數(shù)可提高和改善存儲(chǔ)系統(tǒng)性能,并減少解碼出現(xiàn)的錯(cuò)誤傳播。
發(fā)明內(nèi)容針對(duì)上述現(xiàn)有技術(shù),本發(fā)明目的旨在提供一種具有獨(dú)立狀態(tài)的非隔離位約束編碼方法,能直接采取查尋表來實(shí)現(xiàn),結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn)。本發(fā)明適用于以"頁(yè)面"方式記錄數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)系統(tǒng)如全息存儲(chǔ)及二維光盤存儲(chǔ)等環(huán)境。本發(fā)明的另一發(fā)明目的是提供一種隔離位約束編解碼方法。本發(fā)明的另一發(fā)明目的是提供一種隔離位約束編碼器。本發(fā)明的另一發(fā)明目的是提供一種隔離位約束解碼器。為了達(dá)到上述發(fā)明目的,本發(fā)明采取的技術(shù)方案是,一種二維非隔離位約束編碼方法,包括如下步驟(1)將輸入的任意長(zhǎng)度的數(shù)據(jù)流按照每組6bits劃分成數(shù)據(jù)分組;(2)按照數(shù)據(jù)分組到二維約束子陣列的64個(gè)約束碼字映射表將每個(gè)數(shù)據(jù)分組6bits轉(zhuǎn)換成在64個(gè)約束碼字映射表中與之相對(duì)應(yīng)的2X4二維約束子陣列(8bits);(3)將從步驟(2)得到的二維約束子陣列以逐行級(jí)聯(lián)的方式構(gòu)造二維約束陣列;(4)判斷步驟(3)中的二維約束陣列是否滿足頁(yè)面大小要求,如滿足,則轉(zhuǎn)步驟(5),否則轉(zhuǎn)步驟(2);(5)將步驟(4)產(chǎn)生的二維約束陣列輸出到二維記錄裝置。作為本發(fā)明的優(yōu)選方案,上述編碼方法中,所述二維約束陣列是根據(jù)碼字元素類型和變遷指標(biāo)轉(zhuǎn)換的,且需滿足如下設(shè)計(jì)原則1)二維約束子陣列的碼字內(nèi)點(diǎn)最大變遷指標(biāo)不超過2;2)碼字邊界頂點(diǎn)變遷指標(biāo)不超過l;3)按照左或右級(jí)聯(lián)形成2X4的二維約束陣列;其中變遷指標(biāo)表示當(dāng)前元素和直接鄰居節(jié)點(diǎn)(即當(dāng)前元素上下左右四個(gè)元素)的相異數(shù);將2X4子陣列的8個(gè)元素劃分為內(nèi)點(diǎn)和邊界頂點(diǎn)兩類,其中內(nèi)點(diǎn)是指4個(gè)直接相鄰的節(jié)點(diǎn)有3個(gè)元素和該元素同屬于一個(gè)2X4陣列,邊界頂點(diǎn)是指只有2個(gè)元素同屬于一個(gè)2X4陣列;基于上述原則將2X2陣列劃分成4類,按照2X2陣列類的性質(zhì),將2X2陣列按照左或右級(jí)聯(lián)方式,構(gòu)造出68個(gè)這樣的2X4子陣列;這68個(gè)子陣列相互間任意組合,均可構(gòu)造滿足非隔離位約束的二維約束陣列。;本發(fā)明中64個(gè)約束碼字是通過選取上述68個(gè)約束碼字中具有高關(guān)聯(lián)性的64個(gè)碼字得到的。本發(fā)明還采取了一種二維非隔離位約束的解碼方法,其步驟包括(1)將二維約束陣列按照逐行方式劃分成若干2X4二維約束子陣列;(2)將上述劃分后的2X4子陣列根據(jù)64個(gè)約束碼字表轉(zhuǎn)換成與之相應(yīng)的6bits數(shù)據(jù)分組,進(jìn)入步驟(3);(3)將得到的數(shù)據(jù)分組按照步驟(2)產(chǎn)生數(shù)據(jù)的先后順序裝配成數(shù)據(jù)流;(4)重復(fù)步驟(2)直至所有的2X4二維約束子陣列被解碼。為了實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種實(shí)現(xiàn)上述數(shù)據(jù)編碼方法的編碼器,包括數(shù)據(jù)緩沖模塊,用于暫時(shí)存放一維數(shù)據(jù)流;一維數(shù)據(jù)分組模塊,用于將連續(xù)的一維數(shù)據(jù)流分組成滿足預(yù)先設(shè)定的一維數(shù)據(jù)分組;數(shù)據(jù)查尋模塊,用于一維數(shù)據(jù)分組轉(zhuǎn)化為滿足約束條件的二維約束子陣列;二維子陣列組裝模塊,用于將滿足約束條件的二維數(shù)據(jù)子陣列組裝成指定大小的二維陣列;上述四個(gè)模塊依次連接,最后通過其中的二維子陣列組裝模塊接入二維數(shù)據(jù)記錄裝置的數(shù)據(jù)輸入端。所述預(yù)先設(shè)定的一維數(shù)據(jù)分組長(zhǎng)度為每組6比特;所述二維子陣列為8位的2X4二維子陣列。本發(fā)明還提供了一種實(shí)現(xiàn)上述數(shù)據(jù)解碼方法的解碼器,其特征在于,包括:數(shù)據(jù)緩沖模塊,用于暫時(shí)存放二維數(shù)據(jù)流;二維陣列數(shù)據(jù)劃分模塊,用于將一整頁(yè)二維數(shù)據(jù)流分組劃分成滿足預(yù)先設(shè)定的二維子陣列數(shù)據(jù);二維子陣列查尋模塊,用于將二維子陣列數(shù)據(jù)轉(zhuǎn)化為一維數(shù)據(jù)分組;一維數(shù)據(jù)流組裝模塊,用于將上述一維數(shù)據(jù)分組組裝成一維用戶數(shù)據(jù)流;上述四個(gè)模塊依次連接,并通過其中的數(shù)據(jù)緩沖模塊接入二維數(shù)據(jù)記錄裝置的數(shù)據(jù)輸出端。由上述技術(shù)方案,本發(fā)明通過輸入6位數(shù)據(jù)字,輸出碼字?jǐn)?shù)等于8位的2X4二維子陣列,該二維子陣列能以任意直接級(jí)聯(lián)的方式,構(gòu)造滿足非隔離位約束的二維陣列。本發(fā)明的技術(shù)效果如下所述-1)編碼器的狀態(tài)個(gè)數(shù)實(shí)現(xiàn)了最小化。在約束編碼領(lǐng)域,編碼器狀態(tài)個(gè)數(shù)是評(píng)價(jià)編碼器性能的一個(gè)重要指標(biāo)。狀態(tài)數(shù)越小的編碼器,則解碼出錯(cuò)的可能性就越小,當(dāng)編碼器只有一個(gè)狀態(tài)時(shí),數(shù)據(jù)分組之間的解碼錯(cuò)誤僅被限制在當(dāng)前數(shù)據(jù)分組,不會(huì)產(chǎn)生災(zāi)難性的錯(cuò)誤傳播。2)約束碼字映射表的構(gòu)造比較簡(jiǎn)單。因本發(fā)明的所有約束碼字即2X4約束陣列是用組合方法構(gòu)造而來,因此碼字之間的關(guān)聯(lián)性比較高;其次由于只有64個(gè)約束碼字,碼表簡(jiǎn)單,這非常有利于編碼器的電路設(shè)計(jì)和簡(jiǎn)化,對(duì)提高編碼器的整體綜合性能具有重要實(shí)用價(jià)值和意義。圖l:數(shù)據(jù)存儲(chǔ)基本原理示意圖;圖2:非隔離位約束限制的兩種數(shù)據(jù)圖示;圖3:二維約束子陣列的元素分類示意圖;圖4:本發(fā)明所述編碼器的原理框圖;圖5:本發(fā)明所述解碼器的原理框圖6:2X2二維子陣列的基本分類圖表;圖6(a)表示(0)類的2X2二維子陣列的圖表;圖6(b)表示(1)類的2X2二維子陣列的圖表;圖6(C)表示(2)類的2X2二維子陣列的圖表;圖6(d)表示(3)類的2X2二維子陣列的圖表;圖7:—維原始數(shù)據(jù)流組裝成二維約束數(shù)據(jù)陣列實(shí)施例;圖8:二維約束數(shù)據(jù)陣列還原成一維原始數(shù)據(jù)流的實(shí)施例。在附圖中,1-碼字邊界點(diǎn)4-一維數(shù)據(jù)分組模塊2-碼字內(nèi)點(diǎn).5-數(shù)據(jù)査詢模塊7-二維子陣列組裝模塊8-—維數(shù)據(jù)流組裝模塊IO-二維陣列數(shù)據(jù)劃分模塊11-用戶數(shù)據(jù)3-數(shù)據(jù)緩沖模塊6-二維子陣列查詢模塊9-二維數(shù)據(jù)記錄裝置12-分組數(shù)據(jù)12112613-二維約束子陣列13113614-二維約束陣列具體的實(shí)施方式下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明如圖3所示,本發(fā)明的設(shè)計(jì)原理是將2X4子陣列的8個(gè)元素劃分為兩類:一類是碼字內(nèi)點(diǎn),圖中編號(hào)2標(biāo)注所示是指4個(gè)直接相鄰的節(jié)點(diǎn)有3個(gè)元素和該元素同屬于一個(gè)2X4陣列;另一類是碼字邊界點(diǎn),圖中編號(hào)l標(biāo)注所示是指只有2個(gè)元素同屬于一個(gè)2X4陣列。變遷指標(biāo)表示當(dāng)前元素和鄰居節(jié)點(diǎn)的相異數(shù)。本發(fā)明根據(jù)上述碼字元素類型和變遷指標(biāo)構(gòu)造滿足設(shè)計(jì)原則的2X4二維子陣列,其中設(shè)計(jì)原則如下1)二維子陣列的碼字內(nèi)點(diǎn)2最大變遷指標(biāo)不超過2;2)碼字邊界點(diǎn)1變遷指標(biāo)不超過1;3)按照左或右級(jí)聯(lián)形成2X4的二維約束陣列;基于上述原則可將2X2陣列劃分成4類,如圖6所示。按照2X2陣列類的性質(zhì),將2X2陣列按照左或右級(jí)聯(lián)方式,可構(gòu)造68個(gè)這樣的2X4子陣列。這68個(gè)子陣列相互間任意組合,均可構(gòu)造滿足非隔離位約束的二維約束陣列?;谶@68個(gè)約束碼字具有較高的關(guān)聯(lián)性,通過選取其中高關(guān)聯(lián)性的64個(gè)碼字,從而構(gòu)造出本發(fā)明所選的64個(gè)約束碼字映射表,如表6所述。如圖4所示,二維約束編碼器的編碼過程如下首先原始的一維數(shù)據(jù)流先暫時(shí)存放在數(shù)據(jù)緩沖模塊3,數(shù)據(jù)分組模塊4將從數(shù)據(jù)緩沖模塊3得到的數(shù)據(jù),按照6比特為一組進(jìn)行分組,若數(shù)據(jù)流位數(shù)不足,則在尾部添加部分0比特以達(dá)到要求。之后將6比特?cái)?shù)據(jù)分組輸入數(shù)據(jù)査尋模塊5,按照二維約束碼字查尋表編碼成2X4二維約束子陣列,接著按照先后次序?qū)a(chǎn)生的2X4約束子陣列輸入到二維子陣列組裝模塊7,再逐行級(jí)聯(lián)成頁(yè)面尺寸已預(yù)先定義大小的二維約束陣列,最后將該二維約束陣列輸入到二維數(shù)據(jù)記錄裝置9中,即可完成編碼過程。其編碼步驟包括(1)對(duì)輸入的任意長(zhǎng)度數(shù)據(jù)流按照每組6bits進(jìn)行分組(塊)劃分;(2)按照數(shù)據(jù)分組(塊)到二維約束陣列的64個(gè)約束碼字映射表將每個(gè)數(shù)據(jù)分組6bit轉(zhuǎn)換成在64個(gè)約束碼字中與之相對(duì)應(yīng)的2X4二維約束子陣列(8bits);(3)將從步驟(2)得到的二維約束子陣列以逐行逐行級(jí)聯(lián)的方式構(gòu)造二維約束陣列;(4)判斷步驟(3)中的二維約束陣列是否滿足頁(yè)面大小要求,滿足轉(zhuǎn)步驟(5),否則轉(zhuǎn)步驟(2);(5)將步驟(4)產(chǎn)生的二維約束陣列輸出到二維數(shù)據(jù)記錄裝置。如圖5所示,二維約束數(shù)據(jù)解碼器的解碼過程如下首先從二維數(shù)據(jù)記錄裝置9中讀取二維數(shù)據(jù)陣列,并將其存放在數(shù)據(jù)緩沖模塊3中,然后從數(shù)據(jù)緩沖模塊3中逐頁(yè)讀取數(shù)據(jù),并將該數(shù)據(jù)陣列輸入到二維陣列數(shù)據(jù)劃分模塊10,按照2X4為一個(gè)子陣列進(jìn)行分組,將分組后的二維子陣列輸入到二維子陣列查尋模塊6,按照編碼規(guī)則査尋碼表將每個(gè)2X4子陣列轉(zhuǎn)化成6比特的一維數(shù)據(jù)分組,依次將得到的6比特一維數(shù)據(jù)分組通過一維數(shù)據(jù)流組裝模塊8按照先后次序組裝成一維原始數(shù)據(jù)流,從而完成二維約束陣列到一維數(shù)據(jù)流的轉(zhuǎn)化,實(shí)現(xiàn)解碼過程。其解碼步驟包括(1)將二維約束陣列按照逐行方式劃分成若干2X4二維約束子陣列;(2)輸入劃分后的2X4二維約束子陣列,査尋64個(gè)碼字組成的約束碼字表,輸出與之相應(yīng)的6bits數(shù)據(jù)分組,進(jìn)入步驟(3);(3)將得到的數(shù)據(jù)分組按照步驟(2)產(chǎn)生數(shù)據(jù)的先后順序裝配成數(shù)據(jù)流;(4)重復(fù)步驟(2)直至所有的2X4二維約束子陣列被解碼。如圖6所示,本發(fā)明所采用的2X4子陣列是基于2X2陣列構(gòu)造得來,2X2陣列按照每個(gè)陣列的基本類型歸為一類,總共4類,如圖6(a)、圖6(b)、圖6(c)、圖6(d)所示,本發(fā)明采取的2X2陣列選自圖6(a)、圖6(b)和圖6(c)這三類。這三類分別用"0"類、"1"類和"2"類表示,2X4二維約束子陣列可以在類的內(nèi)部或類之間進(jìn)行構(gòu)造,基于此方法可以構(gòu)造出68個(gè)2X4二維約束子陣列,這68個(gè)二維約束子陣列相互之間可以任意級(jí)聯(lián)成滿足預(yù)先約定的二維約束陣列,這68個(gè)約束陣列是構(gòu)造約束碼字的基礎(chǔ)。其中"0"類構(gòu)造出的2X4二維約束子陣列如下表1:表l000100011100111類10;0011'0010;011100000000000010001101011001110110011100000001001100101110011011100101100111011001110000000000'001000111011100110mo00000001001100其中"1"類構(gòu)造出的2X4二維約束子陣列如下表2:表211100011011000類io;ii11;00oi;io000111腿1111000111111001101100010011101110001111100111011000110011011111薩111100011011腿001100011110111110001101腿11001000其中"2"類構(gòu)造出的2X4二維約束子陣列如下表3:14表3<table>tableseeoriginaldocumentpage15</column></row><table>上述表(l)、表(2)和表(3)中的68個(gè)約束子陣列分別表示基于0類、1類和2類構(gòu)造的二維約束子陣列及其過程。數(shù)據(jù)字到二維子陣列約束碼字的編設(shè)計(jì)和實(shí)現(xiàn)二維非隔離位約束編碼和解碼的硬件電路。表56位數(shù)據(jù)約束碼字6位數(shù)據(jù)約束碼字X3義4Z5^3A'4Z5X6AV^2義3義4義5=00111-o114001i61,2X3=101y=%4義5%6義6義4f5義6義6X^2義3^^5=00110y=Jf611i6100ZjX^=100y=義4A"j義6義4%51:1^X3X4X5=00101y=-00r-1X61i-xaxw=0111r=『5%5%6義6匸5X6X6^^2X3^4X5=00100y=陽(yáng)000r;義61、早2;^4=0110y=^%6義6火5(5義6義6義6y=1000._11義6義6_早2^3^4義5=01011y=—0000_011義6早2%3%4%5=00010y=111—0001早2^3火4尤5=01010_001011z6^^3^^=00001r=j6c1r^r6001早2^¥4義5=01001y=_義6100—76110Z^2義3義4^5=00000—110z6]100a」y=—01140000根據(jù)上述編碼規(guī)則方程得出64個(gè)數(shù)據(jù)到二維約束碼字的映射規(guī)則表,如下表6所示。碼規(guī)則方程如表5所示。用戶輸入數(shù)據(jù)用y:[X,義2X3義4義5X」表示,而二維約束陣列用y二表示?;谙率鲆?guī)則表5可直接___古p衣o6位數(shù)據(jù)二維約束碼字6位數(shù)據(jù)—維約束碼字6位數(shù)據(jù)二維約束碼6位數(shù)據(jù)二維約束碼字0000001100100001000001100000翻oo000011001100000000000000000111011001010001011100001000010001110111000100010001000010001100010100100100011010001000101110110010001000100000111011100101001111001110100011001111111100110011001100010001110001010100001001101001001100000011010001000100000101mi00010101010011011110010111010001110101010101010001101000110001011000000110薩IO1110001011011001100110ooom1000111101011100000111薩ll111100111101110111011100100000010011011000000101111010000000001111100010001000眼眼00011111011001om00001010010011000011畫薩100100101010011011011010100011111010100100011111101010101010001011100111110110111110100010101101110100111011101110110011000110010001110000001111101100100010111111001100110000110111101100011101001111001011011011100011110111011101001110011000100111101100001110111011001111111110111011100011110111001101111111110000iom〗1111110011111111111111此64個(gè)碼字是從68個(gè)約束子陣列中選取,去掉其中4個(gè)約束子陣列得來,這4個(gè)被刪除的約束子陣列分別為00001110100111111110'0000'1101,1000以表6為基礎(chǔ),可實(shí)現(xiàn)編碼步驟(2)和解碼步驟(2)中數(shù)據(jù)到約束碼字的映17^,jliA/x-、J^Kn弓了-闘J:^乂少A7J^Eti'j旦^T。為了說明編碼規(guī)則的應(yīng)用方法,圖7和圖8列舉了本發(fā)明的一個(gè)具體編碼實(shí)施例l和解碼過程實(shí)施例2。實(shí)施例1:用戶數(shù)據(jù)11首先被數(shù)據(jù)分組模塊4劃分為6組,對(duì)應(yīng)的分組數(shù)據(jù)12的編號(hào)為121-126,對(duì)每組數(shù)據(jù)按照表6所示出的64個(gè)約束碼映射表通過數(shù)據(jù)查詢模塊5分別查尋得到和原數(shù)據(jù)分組相對(duì)應(yīng)的6組二維約束子陣列13,分別用13廣136編號(hào)表示,然后將二維約束子陣列131~136按照先后次序輸入到陣列組裝模塊7組裝得到4X12的二維約束陣列14,再將該陣列傳輸給二維記錄裝置9,即可完成用戶數(shù)據(jù)的二維編碼工作。實(shí)施例2:圖8給出本發(fā)明的具體解碼過程,從二維記錄裝置9讀取二維約束陣列14,將該陣列輸入到二維陣列數(shù)據(jù)劃分模塊10,由此可得二維約束子陣列13廣136,通過二維子陣列査詢模塊6查尋二維約束碼字逆射表,如表6所示,獲得每個(gè)二維約束子陣列的一維用戶分組數(shù)據(jù)121126,將用戶數(shù)據(jù)輸入一維數(shù)據(jù)流組裝模塊8,組裝得到一維連續(xù)的數(shù)據(jù)流信息11,從而完成數(shù)據(jù)的解碼工作。盡管已經(jīng)詳細(xì)描述了本發(fā)明公開的實(shí)施例,但應(yīng)理解在不脫離68個(gè)2X4約束子陣列構(gòu)思和范圍的情況下,本發(fā)明在具體實(shí)施例還有很多改變,替代和修改。權(quán)利要求1、一種二維非隔離位約束編碼方法,其特征在于,包括如下步驟(1)將輸入的任意長(zhǎng)度的數(shù)據(jù)流按照每組6bits劃分成數(shù)據(jù)分組;(2)按照數(shù)據(jù)分組到二維約束子陣列的64個(gè)約束碼字映射表將每個(gè)數(shù)據(jù)分組6bits轉(zhuǎn)換成在64個(gè)約束碼字映射表中與之相對(duì)應(yīng)的2×4二維約束子陣列8bits;(3)將從步驟(2)得到的2×4二維約束子陣列以逐行級(jí)聯(lián)的方式構(gòu)造二維約束陣列;(4)判斷步驟(3)中的二維約束陣列是否滿足頁(yè)面大小要求,如滿足,則轉(zhuǎn)步驟(5),否則轉(zhuǎn)步驟(2);(5)將步驟(4)產(chǎn)生的二維約束陣列輸出到二維記錄裝置。2、根據(jù)權(quán)利要求1所述二維非隔離位約束編碼方法,其特征在于,所述64個(gè)約束碼字的形成步驟為首先根據(jù)碼字元素類型和變遷指標(biāo)組成二維約束陣列,使其滿足如下原則1)二維約束子陣列的碼字內(nèi)點(diǎn)最大變遷指標(biāo)不超過2;2)碼字邊界頂點(diǎn)變遷指標(biāo)不超過l;3)按照左或右級(jí)聯(lián)形成2X4的二維約束子陣列;其中變遷指標(biāo)表示當(dāng)前元素和直接鄰居節(jié)點(diǎn)的相異數(shù);將2X4二維約束子陣列的8個(gè)元素劃分為內(nèi)點(diǎn)和邊界頂點(diǎn)兩類,其中內(nèi)點(diǎn)是指4個(gè)直接相鄰的節(jié)點(diǎn)有3個(gè)元素和該元素同屬于一個(gè)2X4二維約束子陣列,邊界頂點(diǎn)是指只有2個(gè)元素同屬于一個(gè)2X4二維約束子陣列;再基于上述原則將2X2陣列劃分成4類,按照2X2陣列類的性質(zhì),將2X2陣列按照左或右級(jí)聯(lián)方式,構(gòu)造出68個(gè)2X4二維約束子陣列作為約束碼字;這68個(gè)二維約束子陣列相互間任意組合,均可構(gòu)造滿足非隔離位約束的二維約束陣列;選取上述68個(gè)約束碼字中的64個(gè)碼字作為所述64個(gè)約束碼字。3、一種二維非隔離位約束解碼方法,其特征在于,包括如下步驟(1)將二維約束陣列按照逐行方式劃分成若干2X4二維約束子陣列;(2)將上述劃分后的2X4二維約束子陣列根據(jù)64個(gè)約束碼字映射表轉(zhuǎn)換成與之相應(yīng)的6bits數(shù)據(jù)分組,進(jìn)入步驟(3);(3)將得到的數(shù)據(jù)分組按照步驟(2)產(chǎn)生數(shù)據(jù)的先后順序裝配成數(shù)據(jù)流;(4)重復(fù)步驟(2)直至所有的2X4二維約束子陣列被解碼。4、一種實(shí)現(xiàn)權(quán)利要求l、2所述編碼方法的編碼器,其特征在于,包括數(shù)據(jù)緩沖模塊,用于暫時(shí)存放一維數(shù)據(jù)流;數(shù)據(jù)分組模塊,用于將連續(xù)的一維數(shù)據(jù)流分組成每組6比特的一維數(shù)據(jù)分組;數(shù)據(jù)査尋模塊,用于將一維數(shù)據(jù)分組通過64個(gè)約束碼字映射表轉(zhuǎn)化為對(duì)應(yīng)的8比特2X4二維約束子陣列,-二維子陣列組裝模塊,用于將所述二維約束子陣列組裝成指定大小的二維陣列;上述四個(gè)模塊依次連接,最后通過二維子陣列組裝模塊接入二維數(shù)據(jù)記錄裝置的數(shù)據(jù)輸入端。5、一種實(shí)現(xiàn)權(quán)利要求3所述解碼方法糊科馬器,其特征在于,包括數(shù)據(jù)緩沖模塊,用于暫時(shí)存放二維數(shù)據(jù)流;二維陣列數(shù)據(jù)劃分模塊,用于將一整頁(yè)二維數(shù)據(jù)流分組成滿足8比特的2X4二維約束子陣列;二維子陣列査尋模塊,用于將2X4二維約束子陣列通過64個(gè)約束碼字映射表轉(zhuǎn)化為一維數(shù)據(jù)分組;一維數(shù)據(jù)流組裝模塊,用于將上述一維數(shù)據(jù)分組組裝成一維數(shù)據(jù)流;上述四個(gè)模塊依次連接,并通過其中的數(shù)據(jù)緩沖模塊接入二維數(shù)據(jù)記錄裝置的數(shù)據(jù)輸出端。全文摘要本發(fā)明公開了一種二維非隔離位約束編解碼方法及其裝置,能在以“頁(yè)”面方式的二維數(shù)據(jù)存儲(chǔ)如全息存儲(chǔ)和二維光盤存儲(chǔ)等環(huán)境下,將數(shù)據(jù)流轉(zhuǎn)化成滿足非隔離位約束的二維數(shù)據(jù)陣列。所述二維非隔離位約束編碼方法包括將輸入數(shù)據(jù)進(jìn)行分割成特定長(zhǎng)度的子塊;然后按照64個(gè)碼字約束規(guī)則將子塊轉(zhuǎn)化成二維約束子陣列;最后將生成的二維約束子陣列級(jí)聯(lián)成滿足預(yù)先指定約束的二維約束陣列。本發(fā)明設(shè)計(jì)了碼率等于6∶8的二維非隔離位約束編解碼方法,和已有的狀態(tài)相關(guān)編解碼方法相比,本發(fā)明中的編碼器由于只有唯一的一個(gè)狀態(tài),因此不會(huì)因譯碼錯(cuò)誤而導(dǎo)致誤碼的災(zāi)難性傳播,因具有較好的綜合性能,編碼器結(jié)構(gòu)簡(jiǎn)單、易于硬件實(shí)現(xiàn)。文檔編號(hào)G11B20/14GK101540610SQ200910042438公開日2009年9月23日申請(qǐng)日期2009年1月7日優(yōu)先權(quán)日2009年1月7日發(fā)明者劉繼斌申請(qǐng)人:湖南大學(xué)