專利名稱:在具有鏈接糾錯碼的磁性記錄通道中不平衡保護編碼的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及編碼系統(tǒng)。具體來說,本發(fā)明涉及記錄通道中,如盤驅(qū)動器和其他數(shù)據(jù)存儲系統(tǒng)中的編碼系統(tǒng)。
背景技術(shù):
在數(shù)據(jù)通訊系統(tǒng)中,數(shù)字信息通過一個通道從一個發(fā)送器被傳達(dá)至一個接收器?!巴ǖ馈笔且粋€總稱,它可包括許多不同媒介,如記錄媒介、電話線和電磁頻譜。在數(shù)據(jù)存儲系統(tǒng)中,如磁性盤驅(qū)動器,通道包括一個存儲媒介,并且數(shù)字信息被發(fā)送到存儲媒介,在恢復(fù)前存儲一段時間,再傳達(dá)至接收器。
一個典型的磁性盤驅(qū)動器包括安置在樞軸或主軸上旋轉(zhuǎn)的一個或幾個硬性盤。每個盤有一個流體動力軸承和傳感器組成的關(guān)聯(lián)頭,用于與盤表面的通訊。機電傳動器將數(shù)據(jù)頭在盤表面放射狀地移動用于軌跡尋查操作,并將傳感器直接控制在盤表面的所需軌跡上用于軌跡追蹤操作。驅(qū)動控制器依據(jù)從主系統(tǒng)接收的命令控制盤驅(qū)動器,從而找回來自盤的信息并將信息存儲在盤上。驅(qū)動控制器包括各種子系統(tǒng),如一個用于與主系統(tǒng)通訊的“主界面”,一個用于控制傳動器的“伺服系統(tǒng)”,一個用于在存儲媒介上記錄數(shù)據(jù)的“寫入通道”,以及一個用于接收來自存儲媒介的已記錄的數(shù)據(jù)的“讀取通道”。
信息一般存儲在盤表面的同心數(shù)據(jù)軌跡上。通過傳感器的電流方向受控制,從而在經(jīng)選擇的數(shù)據(jù)軌跡內(nèi)編碼盤表面的磁通量反轉(zhuǎn)。在一種被稱為不歸零反轉(zhuǎn)(NRZI)編碼的編碼類型中,數(shù)字“1”由在數(shù)據(jù)軌跡中從一個磁性區(qū)域到下一個的一個磁通量反轉(zhuǎn)來表示,數(shù)字“2”由在數(shù)據(jù)軌跡中從一個磁性區(qū)域到下一個的一個磁通量反轉(zhuǎn)的缺損來表示。
在恢復(fù)來自盤的數(shù)據(jù)中,伺服系統(tǒng)控制機電傳動器,從而數(shù)據(jù)頭飛過所需數(shù)據(jù)軌跡,感應(yīng)存儲在數(shù)據(jù)軌跡中的流量反轉(zhuǎn),并根據(jù)那些流量反轉(zhuǎn)產(chǎn)生一個讀取的信號。所讀取的信號一般是有條件的,隨后,信號被讀取通道解碼以恢復(fù)流量反轉(zhuǎn)所代表的數(shù)據(jù)。一個典型的讀取通道包括自動獲取控制電路、一個低通路過濾器、一個模擬-數(shù)字轉(zhuǎn)換器或取樣器、一個序列探測器和一個解碼器。
以前一個維特比探測器被用作讀取通道的序列探測器。當(dāng)探測器的輸入數(shù)據(jù)由一個信號加上附加白高斯噪音組成以及當(dāng)使用一個典型的分支公制(向探測器提供的信號中的誤差平方),該維特比探測器是作為一個最大可能性(ML)的序列探測器進(jìn)行工作。然后,探測到的位序列被傳至解碼器,從而被解碼為原始用戶數(shù)據(jù)。
所有的通道,包括盤驅(qū)動存儲通道,將噪音傳入它們傳達(dá)的信號中。為了探測以及有時糾正由通道噪音引起的信號誤差,人們已開發(fā)了多個編碼技術(shù)。這些編碼技術(shù)將由一些數(shù)據(jù)位形成的用戶數(shù)據(jù)字轉(zhuǎn)化成由一些數(shù)據(jù)位形成的編碼文字。強加在編碼文字中的代碼約束能經(jīng)設(shè)計以避免易于產(chǎn)生錯誤事件的位序列,并能允許探測以及有時糾正從通道接收到的的信號的誤差。
用戶數(shù)據(jù)位的數(shù)目與代碼位的數(shù)目的平均比率m/n被稱為是代碼碼的編碼率。一般來說,在一個接收通道中探測和糾正誤差的能力可能隨著編碼率的下降而增加,因為一個低編碼率意味著編碼文字中的多個多余的信息。然而,每個編碼器附加的額外的位增加了通過通道傳送信號所需的時間和能量。
已經(jīng)提出了幾種類型代碼約束。例如,在一個盤驅(qū)動器中,旋轉(zhuǎn)磁性媒介的主軸電機的旋轉(zhuǎn)速度隨時間改變。這導(dǎo)致讀取信號電壓脈沖之間的非均勻時間間隔。一個相位鎖定回路(PLL)被用于將讀取記時鐘的相位和頻率鎖定在讀取信號電壓脈沖的相位和頻率。為確保定期更新PLL,可使用一個代碼,該代碼限制讀取信號中的連續(xù)的“0”的數(shù)目不超過最大數(shù)目“k”。這種代碼被稱作含“k”約束的游程長度限制(RLL)碼。“k”值越小,PLL的性能越好。然而,“k”值越小,代碼變得越難實施。
該代碼還可能限制在代碼位流中的連續(xù)的“1”的數(shù)目以限制符號之間干擾的效應(yīng),這種效應(yīng)是在被傳送信號中的連續(xù)轉(zhuǎn)化互相干擾的時候產(chǎn)生的。這樣的代碼被稱作含“j”約束的最大轉(zhuǎn)化運行(MTR)碼,其中“j”為通道信號中所允許的連續(xù)轉(zhuǎn)化的最大數(shù)目。例如,為避免三個或三個以上連續(xù)轉(zhuǎn)化,可設(shè)計含MTR約束的j=2的代碼。雖然MTR碼降低符號之間的干擾,但是它們除去了多個可獲取的編碼文字,使得很難有時不可能用高編碼率實施MTR限制。
一些磁性記錄通道通過使用糾錯碼(ECCs)提供進(jìn)一步的保護。連續(xù)的數(shù)據(jù)塊(編碼或未編碼)被映射到具有一個數(shù)據(jù)字段和一個ECC字段的連續(xù)的糾錯碼。數(shù)據(jù)塊被映射到被分割為一些多位ECC符號的數(shù)據(jù)字段。數(shù)據(jù)字段中的ECC符號被應(yīng)用于多項式函數(shù),該函數(shù)產(chǎn)生形成ECC字段的被稱為“奇偶位”的附加的多位ECC符號。連接數(shù)據(jù)字段的附加的ECC符號的數(shù)目決定了可被糾正的ECC碼中的ECC符號的數(shù)目。例如,通過一個Reed-Solomon型ECC,需要二個附加ECC符號糾正ECC代碼字中的一個符號。具有連接數(shù)據(jù)字段的ECC字段的24個附加ECC符號的一個ECC碼有能力糾正ECC代碼字中的多達(dá)十二個符號的誤差事件。
隨后在讀取通道中使用一個ECC解碼器探測并糾正ECC代碼字中的誤差。對于接收到的ECC代碼字中的與傳送的ECC代碼字中的通信符號不匹配的每個符號,ECC解碼器根據(jù)接收到的編碼文字中的其他符號和用于產(chǎn)生附加符號的多項式運行來確定正確的符號。
雖然這些編碼技術(shù)在避免某些錯誤事件提供糾正大多數(shù)留存的誤差事件的方法,卻很難用高編碼率實施。著限制了代碼的效率和記錄通道的速度。本發(fā)明闡明了這些及其他問題,并提供了先前技術(shù)之外的優(yōu)勢。
發(fā)明概述本發(fā)明的一方面涉及對數(shù)據(jù)字編碼的一種方法,其中將數(shù)據(jù)字至少之一的塊映射到一個糾錯碼(ECC)代碼字。ECC代碼字由被邊界隔開的多個多位ECC符號來定義的。依據(jù)位模式對邊界的相對位置,約束位模式不出現(xiàn)在ECC代碼字中。
本發(fā)明的另一方面涉及一種用于將連續(xù)數(shù)據(jù)字編碼為各自的連續(xù)代碼字的編碼器。該編碼器包括一個數(shù)據(jù)字輸入;一個代碼字輸出;以及一個第一編碼器單元。第一編碼器單元根據(jù)第一代碼將數(shù)據(jù)字輸入收到的每個連續(xù)數(shù)據(jù)字映射到代碼字輸出上的各自的連續(xù)代碼字。第一代碼識別每個代碼中的多位糾錯碼(ECC)符號之間的邊界,并對靠近邊界的每個代碼字的位位置比對遠(yuǎn)離邊界的每個代碼字的位位置施加不同的代碼約束。
本發(fā)明的另一方面是有關(guān)包括一個傳感器和一個編碼器的一個盤存儲通道。傳感器能與數(shù)據(jù)存儲盤通訊。編碼器與傳感器耦合,根據(jù)一個代碼將數(shù)據(jù)編碼為由多位ECC符號形成的連續(xù)糾錯碼(ECC)代碼字。依據(jù)位模式與多位ECC符號之間邊界的相對位置,該代碼約束位模式不出現(xiàn)在每個ECC代碼字中。然后,編碼器將ECC代碼字作為代碼字流發(fā)送到傳感器。
本發(fā)明的再一方面是有關(guān)包括一個傳感器和一個解碼器的一個盤驅(qū)動通道。傳感器能與一個數(shù)據(jù)存儲盤通訊。解碼器與傳感器耦合,接收來自傳感器的讀取信號并根據(jù)一個代碼將讀取信號所表示的連續(xù)糾錯碼(ECC)代碼字解碼為連續(xù)數(shù)據(jù)字。每個ECC代碼字包括多個多位ECC符號,依據(jù)位模式與多位ECC符號之間邊界的相對位置,該代碼約束在每個ECC代碼字中的位模式。
附圖簡述
圖1為可以實施本發(fā)明諸方面的盤驅(qū)動器的透視圖。
圖2為按照本發(fā)明一個實施例的圖1中所示盤驅(qū)動器內(nèi)一個數(shù)據(jù)存儲通道的框圖。
圖3-1和圖3-2為表示含有非法NRZ位模式的ECC代碼字部分的框圖,它們被圖2所示的存儲通道所使用的編碼器和解碼器所避免。
圖3-3和圖3-4為表示含有一些合法NRZ位模式的ECC代碼字部分的框圖,它們被圖2所示的存儲通道所使用的編碼器和解碼器所允許。
圖4是一曲線圖,繪制經(jīng)糾正的位差錯率與具有相連ECC代碼的編碼和未編碼通道的事件差錯率的函數(shù)關(guān)系。
圖5為根據(jù)本發(fā)明的一個實施例的框圖,它表示由圖2中所示的第一位電平編碼器執(zhí)行的編碼過程。
圖6為根據(jù)本發(fā)明的一個例子的流程圖,描述圖2所示的ECC編碼器和第二位電平編碼器執(zhí)行的過程。
圖7為描述通過圖2所示的ECC編碼器和位電平編碼器的數(shù)據(jù)流的流程圖。
圖8為根據(jù)本發(fā)明的另一個實施例的編碼器電路的框圖。
示例性實施例的詳述圖1為本發(fā)明實用的盤驅(qū)動器100的透視圖。盤驅(qū)動器100包括具有一個基座102和一個頂蓋(未顯示)的外殼。盤驅(qū)動器100還包括一個由盤夾108安置在主軸電機(未顯示)上的盤組106。盤組106包括被安置繞中心軸109共同旋轉(zhuǎn)的多項單個盤。每個盤表面具有一個關(guān)聯(lián)的盤頭滑動器110,滑動器安置在盤驅(qū)動器100上用于與盤表面通訊。在圖1所示的例子中,滑動器110由懸梁112支撐,后者又附著于傳動器116的軌跡連接臂114。圖1所示的傳動器為所知的一種旋轉(zhuǎn)移動線圈傳動器,它包括一個通常以118表示的音圈電機(VCM)。音圈電機118用其附著頭110繞著軸支點120旋轉(zhuǎn)傳動器116,使得附著頭110沿著盤內(nèi)徑124和盤外徑126之間的一個弓形路徑122將頭110定位在所需數(shù)據(jù)軌道。音圈電機118由位于內(nèi)部電路128的伺服電子依據(jù)頭110和主計算機(未顯示)產(chǎn)生的信號被驅(qū)動。
內(nèi)部電路128中的寫入電路對待存入連續(xù)代碼字中的數(shù)據(jù)編碼,然后將它們預(yù)編碼為不歸零反轉(zhuǎn)(NRZI)形式(或,也可是NRZ形式)并被調(diào)制以形成連續(xù)的模擬寫入信號。頭110上的寫入傳感器根據(jù)模擬寫入信號編碼在盤表面上磁性層內(nèi)的磁通量反轉(zhuǎn)。在讀取操作過程中,頭110中的讀取傳感器感應(yīng)磁通量反轉(zhuǎn)并產(chǎn)生一個串行模擬讀出信號。模擬讀出信號被轉(zhuǎn)化成一個串行數(shù)字信號,該信號提供給內(nèi)部電路128內(nèi)的探測器和解碼器電路,從而產(chǎn)生一個經(jīng)恢復(fù)的數(shù)字信號。
圖2為采用本發(fā)明的一個通常通訊系統(tǒng)138的框圖。對于圖1的盤驅(qū)動器,通訊系統(tǒng)138由頭110、盤106以及電路128內(nèi)的內(nèi)部邏輯形成。通訊系統(tǒng)138包括編碼器電路139,編碼器電路包括一個第一位電平編碼器140、一個符號電平糾錯碼(ECC)編碼器、一個復(fù)用器148和一個第二位電平編碼器150。位電平編碼器140接收連續(xù)數(shù)據(jù)字142并根據(jù)一個代碼將連續(xù)數(shù)據(jù)字編碼成連續(xù)數(shù)據(jù)代碼字143。每個數(shù)據(jù)字142包含任何數(shù)目的位。位的數(shù)目越大,編碼器140能達(dá)到的編碼率越高。該代碼將連續(xù)數(shù)據(jù)代碼字143約束在一個位水平上以避免具有已知會在通道160中產(chǎn)生某些普遍的誤差事件的位模式的代碼字。
例如,該代碼可包括一個具有一個“k”約束的游程長度限制(RLL)碼?!発”約束限制讀取信號中的連續(xù)零的數(shù)目不超過最大值“k”。該代碼還可限制一個編碼位流中的連續(xù)一的數(shù)目從而限制符號間干擾效應(yīng),該效應(yīng)發(fā)生在被傳送信號中的連續(xù)轉(zhuǎn)化彼此相互干擾的時候。這樣的代碼被稱作具有“j”約束的最大轉(zhuǎn)化游程(MTR)碼,其中“j”為通道信號中所允許的連續(xù)轉(zhuǎn)化的最大數(shù)目。其他類型代碼可由編碼器140使用以附加到或替代上述的代碼種類。在以下詳述的一個實施例中,根據(jù)每一位將在多位ECC符號中的相對位置,該代碼對每個數(shù)據(jù)代碼字142中的不同位位置施加不同的約束。這需要編碼器140實施的代碼在每一數(shù)據(jù)代碼字143內(nèi)確定ECC符號邊界。
編碼器140可包括一個塊編碼器或可被狀態(tài)驅(qū)動,并且所有的代碼字143經(jīng)仔細(xì)挑選以避免產(chǎn)生普遍的誤差事件的代碼字。編碼器140可通過合并邏輯或具有查詢表的軟件來執(zhí)行,從而實現(xiàn)每個用戶數(shù)據(jù)字及其相應(yīng)代碼字之間的轉(zhuǎn)換。也可使用其他硬件和軟件執(zhí)行。
由編碼器140產(chǎn)生的連續(xù)數(shù)據(jù)代碼字143提供給復(fù)用器148的一個輸入以及ECC編碼器144,復(fù)用器和編碼器一起將數(shù)據(jù)代碼字143的連續(xù)塊(或部分)編碼為復(fù)用器148的輸出上的連續(xù)ECC代碼字(也稱為ECC塊或部分)149。每個ECC代碼字149包括一個數(shù)據(jù)字段和一個ECC字段,它們各由一個或多個的多位ECC符號形成。復(fù)用器148將每塊數(shù)據(jù)代碼字143映射到一個相應(yīng)的ECC代碼字149的數(shù)據(jù)字段,從而在數(shù)據(jù)字段中形成一個或多個的ECC符號。
ECC編碼器144依據(jù)數(shù)據(jù)字段中的ECC符號為ECC字段產(chǎn)生附加的ECC符號152。例如,附加的ECC符號可通過將數(shù)據(jù)字段中的ECC符號應(yīng)用于一個多項式函數(shù)來產(chǎn)生。連接在ECC字段的附加的ECC符號的數(shù)目決定了每個ECC代碼字中的可糾正的ECC符號的總數(shù)。例如,一個特定ECC可能對ECC代碼字中的每個可糾正的ECC符號需要二個附加ECC符號??墒褂萌我环NECC,如一個Reed-Solomon ECC。
位電平編碼器150編碼附加ECC符號152并如用編碼器140應(yīng)用于數(shù)據(jù)代碼字142一樣應(yīng)用相似的代碼約束。而且,依據(jù)ECC符號中的每一位的相對位置,代碼對不同的位位置施加不同約束。在一個實施例中,每個ECC符號被編碼為一個相應(yīng)的經(jīng)編碼的ECC符號146。由于每個附加的ECC符號中的位數(shù)目比每個代碼字142中的少,位電平編碼器150的編碼率比位電平編碼器140的編碼率低。在另一個實施例中,多個附加ECC符號被一起編碼為一個相應(yīng)代碼字。隨后,由此產(chǎn)生的經(jīng)編碼的ECC符號146提供給復(fù)用器148的另一個輸入。
復(fù)用器148將數(shù)據(jù)代碼字143的每個塊映射到一個相應(yīng)的ECC代碼字149的數(shù)據(jù)字段并將各個一組附加的經(jīng)編碼的ECC符號146通過時間復(fù)用,復(fù)用器的輸入映射到相應(yīng)的ECC代碼字149的ECC字段??墒褂昧硪粋€實施例的其他構(gòu)造和方法將經(jīng)編碼的ECC符號146與相應(yīng)的ECC代碼字149的數(shù)據(jù)字段相連接。
并-串轉(zhuǎn)換器155接收連續(xù)ECC代碼字149,將每個ECC代碼字149轉(zhuǎn)化成一個串行表示并連接此串行表示,以產(chǎn)生一個ECC代碼字位154的串行流。發(fā)送器/預(yù)編碼器156接收串行ECC代碼字流154并達(dá)到序列要求從而優(yōu)化用于恢復(fù)來自通道的信號的那種探測器。發(fā)送器/預(yù)編碼器156產(chǎn)生提供給通道160的一個經(jīng)編碼的寫入信號158。
在盤驅(qū)動器100中,通道160包括頭110中的寫入傳感器、盤組以及頭110中的讀取傳感器。經(jīng)編碼的寫入信號被寫入傳感器存儲在盤表面。在讀取操作過程中,讀取傳感器從盤表面讀取存儲的編碼的信息并將編碼的信息作為一個讀取信號164發(fā)送到接收器/探測器162。接收器/探測器162放大并過濾讀取信號164,然后使用幾個所知的探測方法之一恢復(fù)來自讀取信號的經(jīng)編碼信息。舉例來說,接收器/探測器162可使用一個維特比探測器、決策反饋均衡化(DFE)、具有決策反饋的固定遲滯樹狀搜尋(FDTS/DF)或降低的狀態(tài)序列探測(RSSE)。接收器/探測器162在放大并過濾來自通道160的信號之后,產(chǎn)生經(jīng)恢復(fù)的代碼字位165的序列以提供給串-并轉(zhuǎn)換器163。
串-并轉(zhuǎn)換器163將位組合成ECC代碼字并將ECC代碼字從串行形式轉(zhuǎn)化成并行形式。連續(xù)恢復(fù)的ECC代碼字166的長度相應(yīng)于編碼器139產(chǎn)生的ECC代碼字的長度。然后,串-并轉(zhuǎn)換器163以并行形式將連續(xù)恢復(fù)的ECC代碼字166輸出至ECC解碼器和糾正電路168。電路168使用編碼器150使用的編碼規(guī)則的反轉(zhuǎn),根據(jù)ECC代碼字166中的ECC符號和ECC編碼器144使用的多項式函數(shù)將ECC字段中的附加ECC符號解碼成原始ECC符號,并且確定任一ECC符號是否含有誤差。只要含有誤差的ECC符號的數(shù)目不大于可被電路168糾正的符號的最大數(shù)目,原始傳送的ECC符號被恢復(fù)。
然后從已恢復(fù)的ECC代碼字剝離數(shù)據(jù)字段,以恢復(fù)數(shù)據(jù)代碼字的原始塊170,隨后提供給解碼器172。位水平解碼器172采用編碼器140使用的編碼規(guī)則的反轉(zhuǎn)將連續(xù)數(shù)據(jù)代碼字170解碼為各自的代碼字174。
如上所述,位電平編碼器140和150向每個ECC符號中的不同位位置提供不等的誤差保護。在一個實施例中,向靠近ECC符號邊界的位位置提供比靠近每個ECC符號中心的位位置更多的誤差保護。這是通過將一組代碼約束應(yīng)用于每個ECC符號的“外圍”位位置以及將另一組代碼約束應(yīng)用于每個ECC符號的“內(nèi)部”位位置來實現(xiàn)的。
這就提供了更大的保護以抵御對ECC編碼器及糾正電路168糾正誤差的能力有巨大影響的誤差事件。編碼器140和150使用的代碼提供了更大的保護以抵御跨越ECC符號的邊界的誤差比不跨越ECC符號的邊界的誤差更大??缭紼CC符號的邊界的誤差事件導(dǎo)致二個連續(xù)ECC符號出現(xiàn)誤差。通過避免這些多重符號誤差事件,在每個ECC代碼字中含有誤差的ECC符號的總數(shù)減少了,有更大可能電路168能恢復(fù)給定ECC代碼字中所有ECC符號。
而且,通過允許某些在“外圍”位位置所不被允許的一些位模式發(fā)生在“內(nèi)部”位位置,由于只有影響ECC符號邊界的位模式受約束,便可保持相對高的編碼率。這樣,就可使用更大的位模式的總數(shù)。
通過磁性記錄通道,最為可能的誤差事件是一位和三位的誤差事件。一位誤差事件導(dǎo)致一位ECC符號誤差。三位誤差事件如跨越ECC符號的邊界,導(dǎo)致二個ECC符號誤差。在一個實施例中,編碼器140和150使用一個邊界MTR編碼用于將三位誤差事件從ECC符號的邊界去除。代碼消除了二個NRZ模式(或一個NRZ模式),它們導(dǎo)致在ECC符號邊界具有中間轉(zhuǎn)化的一個三位。
圖3-1和圖3-2為表示含有非法NRZ位模式的ECC代碼字部分的框圖,編碼器和解碼器避免該非法部分。如上所述,每個ECC代碼字由在數(shù)據(jù)和ECC字段互相連接的多個多位ECC符號形成。在圖3-1中,ECC代碼字300包含10位ECC符號301和302,它們之間存在邊界303。ECC代碼字300中的每個ECC符號具有可能相互重疊的一個或幾個“外圍”位位置304和一個或幾個“內(nèi)部”邊界位位置306。由ECC符號301在“外圍”邊界位位置上的“01”以及ECC符號302在“外圍”邊界位位置的“01”形成的NRZ模式產(chǎn)生三個轉(zhuǎn)化結(jié)果,其中中間轉(zhuǎn)化發(fā)生在邊界303。在圖3-2中,ECC代碼字310包含ECC符號311和312,它們之間存在邊界313。與圖3-1所示的類型相似,NRZ模式“1010”產(chǎn)生三個轉(zhuǎn)化結(jié)果,其中中間轉(zhuǎn)化發(fā)生在ECC符號311和312之間的邊界313。這些位模式被編碼器140和150在“外圍”邊界位位置304位模式避免,而在“內(nèi)部”邊界位位置306被允許。
圖3-3和圖3-4為表示含有一些合法NRZ位模式的ECC代碼字部分的框圖,這部分未被編碼器140和150所避免。在圖3-3中,ECC代碼字320包含ECC符號321和322,它們之間存在邊界323。雖然,NRZ模式“10100”導(dǎo)致三個轉(zhuǎn)化結(jié)果,但中間轉(zhuǎn)化并不發(fā)生在“外圍”位位置304內(nèi)的邊界313。在圖3-4中,ECC代碼字330包含ECC符號331和332,它們之間存在邊界333。與圖3-3所示的模式相似,NRZ模式“00101”導(dǎo)致三個轉(zhuǎn)化結(jié)果,但中間轉(zhuǎn)化并不發(fā)生在二個ECC符號331和332之間的邊界333。
使用編碼器140和150消除圖3-1和圖3-2所顯示的類型并在解碼器168和172上施加相應(yīng)約束,除去了ECC符號邊界的二個可能的三位誤差事件以及包括在ECC符號邊界三位的任何更大的誤差事件。同樣的約束沒有施加在發(fā)生在單個符號的內(nèi)部位位置306的三位誤差事件因此在ECC符號的邊界附近的位位置的位差錯率的可能性比ECC符號內(nèi)的位位置低。
由于必須使用多個代碼位以避免導(dǎo)致三位的所有位模式,消除所有的三位誤差事件的MTR碼,缺點是大編碼率處罰。在本發(fā)明的上述實施例中,通過避免在ECC符號的邊界所有的三位誤差事件而非剩余三位誤差事件取得了有效的妥協(xié)。由于剩余三位誤差事件被限制在單個的ECC符號,因此有很大可能這些誤差事件可被ECC解碼器糾正。通過在位水平上的MTR碼避免這些誤差不是必需的。由此MTR碼約束被放松,產(chǎn)生可達(dá)到的更高的編碼率。
舉例來說,假設(shè)通道160(圖2所示)只有三位誤差事件。假設(shè)ECC編碼器144形成10位符號并且ECC解碼器168有能力糾正每個ECC代碼字中最多12個ECC符號。編碼器140和150(也為圖2所示)沒有編碼的情況下,取每個ECC代碼字中七個誤差事件超出ECC能力。如果這七個誤差事件都發(fā)生在ECC符號邊界,那么14個ECC符號將有誤差,這超出了12個ECC符號的誤差能力。如果每個ECC代碼字使用一個奇偶校驗位,那么取ECC代碼字八個誤差事件超出ECC能力。通過邊界MTR碼(避免在ECC符號邊界的三位誤差事件)以及不奇偶校驗,取ECC代碼字十三個誤差事件超出ECC能力。
圖4繪制了用于具有鏈接ECC代碼的編碼和未編碼通道,Y軸上經(jīng)糾正的位差錯率與X軸上事件差錯率的函數(shù)。Y軸經(jīng)糾正的位差錯率是不可糾正的ECC代碼字(部分)的數(shù)目除以讀取位數(shù)目的比率。線條402代表未編碼實例的經(jīng)糾正的位差錯率,而線條403代表邊界MTR編碼實例的經(jīng)糾正的位差錯率。邊界MTR編碼實例的未經(jīng)糾正的ECC代碼字明顯比未編碼實例的少。
圖5為根據(jù)本發(fā)明的一個實施例的框圖,它表示編碼器140執(zhí)行的一個編碼程序。在步驟500,編碼器140接收用于編碼的連續(xù)m位數(shù)據(jù)字。在步驟501,編碼器140根據(jù)一個代碼將每個連續(xù)m位數(shù)據(jù)字映射到一個各自的連續(xù)n位代碼字。該代碼識別在每個代碼字中由ECC編碼器144隨后限定的多位ECC符號之間的邊界,并對每個代碼字中靠近和遠(yuǎn)離ECC邊界的位位置施加不同的代碼約束。在步驟502,編碼器140將產(chǎn)生的代碼字輸出至編碼器144。
圖6為根據(jù)本發(fā)明的一個例子描述編碼器140和150執(zhí)行的一個程序的流程圖。在步驟600,ECC編碼器144接收來自編碼器140經(jīng)編碼的數(shù)據(jù)字的塊。在步驟601,ECC編碼器141將數(shù)據(jù)字的塊應(yīng)用于被劃分為多個多位ECC符號的相應(yīng)的ECC代碼字的數(shù)據(jù)字段。在步驟601數(shù)據(jù)字段的ECC符號被應(yīng)用于一個多項式,該多項式是用于產(chǎn)生與數(shù)據(jù)字段相連的附加ECC符號。在步驟603,位電平編碼器150根據(jù)施加如位電平編碼器140應(yīng)用的同樣的約束的一個代碼將附加ECC符號映射到經(jīng)編碼的ECC符號,從而避免ECC符號邊界的三位。在步驟604,經(jīng)編碼的ECC符號被應(yīng)用于與數(shù)據(jù)字段相連的ECC代碼字的數(shù)據(jù)字段。隨后將產(chǎn)生的經(jīng)編碼的ECC代碼字輸出至寫入通道的下一階段。
圖7為根據(jù)本發(fā)明的另一個例子描述編碼器139的數(shù)據(jù)流的流程圖。編碼器140(圖2所示)將數(shù)據(jù)字的塊700編碼成一個各自的經(jīng)編碼的數(shù)據(jù)字的塊701。經(jīng)編碼的ECC代碼字的塊701被直接應(yīng)用于ECC代碼字703的數(shù)據(jù)字段702。數(shù)據(jù)字段702被分割成多個多位ECC符號。在另一個實施例中,ECC編碼器144將一個多項式函數(shù)應(yīng)用于經(jīng)編碼的ECC代碼字的塊,以產(chǎn)生數(shù)據(jù)字段702的ECC符號。經(jīng)編碼的數(shù)據(jù)字的塊701還被應(yīng)用于多項式704,它產(chǎn)生附加ECC符號705。可使用任何合適的多項式實施所需的糾錯碼。然后編碼器150將附加ECC符號編碼成經(jīng)編碼的ECC符號706,將其應(yīng)用于ECC代碼字703的ECC字段708。這是編碼器的“系統(tǒng)性”類型的一個例子。
圖8為根據(jù)本發(fā)明的另一個實施例的可用于代替在圖2所示的編碼器電路139的一個編碼器電路800的框圖。編碼器電路800包括符號-水平ECC編碼器802、復(fù)用器804和位電平編碼器806。連續(xù)進(jìn)入的數(shù)據(jù)字的塊810被應(yīng)用于復(fù)用器804的第一數(shù)據(jù)輸入,用于在復(fù)用器804的輸出映射到相應(yīng)的ECC代碼字812的數(shù)據(jù)字段。而且,每個ECC代碼字的數(shù)據(jù)字段被分割成如上所述的多個ECC符號。連續(xù)數(shù)據(jù)字的塊810還被應(yīng)用于根據(jù)數(shù)據(jù)字段中的ECC符號為ECC字段產(chǎn)生附加ECC符號812的ECC編碼器802。例如,可通過將數(shù)據(jù)字段中的ECC符號應(yīng)用于一個多項式函數(shù)而產(chǎn)生附加ECC符號。然后附加ECC符號被應(yīng)用于復(fù)用器804的第二數(shù)據(jù)輸入。復(fù)用器804將連續(xù)一組組附加ECC符號814與連續(xù)ECC代碼字812的ECC字段相連。
位電平編碼器806接收每個ECC代碼字812并如圖2中的編碼器140和150應(yīng)用相似的代碼約束。在一個實施例中,編碼器806是一個將ECC代碼字812中的每個ECC符號編碼成一個相應(yīng)的經(jīng)編碼的ECC符號的塊編碼器。而且,該代碼根據(jù)ECC符號中的每個位的相對位置對不同的位位置施加不同的約束。由于每個ECC符號中的位數(shù)目比每個數(shù)據(jù)字142中的少(圖2中),編碼電路800的總編碼率比編碼電路139的總編碼率低。在編碼電路139中,每個ECC代碼字的位的大多數(shù)為通過位電平編碼器140以較高速率被編碼的數(shù)據(jù)位。只有少量的位由編碼器150以較低速率在一個ECC符號基礎(chǔ)上被編碼。根據(jù)本發(fā)明也可使用其他不同編碼方法。
總結(jié)來說,本發(fā)明的一個方面涉及一種編碼數(shù)據(jù)字142的方法,其中至少一個數(shù)據(jù)字142的塊700被映射到一個糾錯碼(ECC)代碼字149,701。被邊界303,313,323,333分開的多個多位ECC符號301,302,311,312,321,322,331,332限定ECC代碼字149,701。根據(jù)位模式與邊界303,313,323,333,的相對位置304、306,約束位模式(如圖3-1和圖3-2所示的那些)而不發(fā)生在ECC代碼字149,701。
本發(fā)明的另一個方面是關(guān)于一種用于將連續(xù)數(shù)據(jù)字編碼成各自的連續(xù)的數(shù)據(jù)字的編碼器139。該編碼器包括一個數(shù)據(jù)字輸入142、一個代碼字輸出143以及一個第一編碼器單元140。第一編碼器單元140根據(jù)第一代碼將數(shù)據(jù)字輸入142收到的每個連續(xù)數(shù)據(jù)字映射到代碼字輸出143上的一個各自的連續(xù)的代碼字。第一代碼識別在每個代碼字內(nèi)多位糾錯碼(ECC)符號301,302,311,312,322,331,332之間的邊界303,313,323,333,并對靠近邊界的每個代碼字的位位置304比對遠(yuǎn)離邊界303,313,323,333的每個代碼字的位位置306施加不同的代碼約束。
本發(fā)明的另一方面是有關(guān)一種包括傳感器110和編碼器139的盤存儲通道138。傳感器110能與數(shù)據(jù)存儲盤106通訊。編碼器139與傳感器110耦合,用于根據(jù)一個代碼將數(shù)據(jù)142編碼為由多位ECC符號301,302,311,312,322,331,332形成的連續(xù)糾錯碼(ECC)代碼字149,701。依據(jù)位模式與多位ECC符號之間的邊界303,313,323,333的相對位置304,306,該代碼約束位模式不出現(xiàn)在ECC代碼字149,701中。然后,編碼器139將ECC代碼字149,701作為代碼字流154發(fā)送到傳感器110。
本發(fā)明的再一方面是有關(guān)一種包括傳感器110和解碼器168,172的盤驅(qū)動通道138。傳感器110能與數(shù)據(jù)存儲盤106通訊。解碼器168,172與傳感器110耦合,用于接收來自傳感器110的讀取信號164并根據(jù)一個代碼將讀取信號164表示的連續(xù)糾錯碼(ECC)代碼字166解碼為連續(xù)數(shù)據(jù)字174。每個ECC代碼字166包括多個多位ECC符號301,302,311,312,322,331,332,依據(jù)位模式與多位ECC符號301,302,311,312,322,331,332之間的邊界303,313,323,333的相對位置304,306,該代碼約束ECC代碼字166中的位模式。
可以理解,即使前面已述本發(fā)明的各種不同的實施例的眾多特征和優(yōu)點以及發(fā)明的各種不同的實施例的詳細(xì)構(gòu)造和功能,所公開的內(nèi)容只是描述性的,可在所附權(quán)利要求書中的條款的廣義指示的本發(fā)明的原則范圍內(nèi)最大限度地對細(xì)節(jié)作改變,特別是在構(gòu)造和部件排列方面修改。例如,可依據(jù)通道的特定應(yīng)用改變特定元件,與此同時基本保持同樣的功能而不偏離本發(fā)明的精神和范圍。此外,即使這里所述的實施例涉及用于一個盤驅(qū)動系統(tǒng)的讀取和寫入通道,也感激那些本領(lǐng)域中技術(shù)熟練的人將本發(fā)明的教學(xué)應(yīng)用于其他系統(tǒng),如通訊系統(tǒng)或其他存儲系統(tǒng),而不偏離本發(fā)明的精神和范圍。并且,在詳細(xì)說明和權(quán)利要求書中使用的術(shù)語“耦合”可包括一個直接連接或通過一個或幾個中間部件的連接。
權(quán)利要求
1.一種對數(shù)據(jù)字編碼的方法,該方法包括步驟(a)將至少一個數(shù)據(jù)字的塊映射到一個糾錯碼(ECC)代碼字,該代碼字由被邊界分割開的多個多位ECC符號限定;以及(b)根據(jù)位模式與邊界的相對位置,約束位模式不出現(xiàn)在ECC代碼字中。
2.如權(quán)利要求1所述的方法,其特征在于在步驟(a),每個ECC符號包含多個“內(nèi)部”位位置和多個“外圍”位位置,“外圍”位位置比“內(nèi)部”位位置更靠近各自的邊界;以及在步驟(b),約束位模式包含對“外圍”位位置及“內(nèi)部”位位置施加不同的代碼約束,以避免在“內(nèi)部”位位置中被允許的所選位模式不出現(xiàn)在“外圍”位位置中。
3.如權(quán)利要求1所述的方法,步驟(a)還包括(a)(1)根據(jù)一個代碼將每個數(shù)據(jù)字編碼成一個數(shù)據(jù)代碼字,此代碼是根據(jù)位模式在數(shù)據(jù)代碼字中的位置相對于在數(shù)據(jù)代碼字中的位位置,約束位模式不出現(xiàn)在數(shù)據(jù)字中,所述的數(shù)據(jù)代碼字中的位位置對應(yīng)于多位ECC符號之間的邊界;以及(a)(2)將至少一個數(shù)據(jù)字的塊映射到包括第一組ECC符號的ECC代碼字的數(shù)據(jù)字段。
4.如權(quán)利要求3所述的方法,其中步驟(a)還包括(a)(3)產(chǎn)生由邊界分割開的第二組ECC符號,作為第一組ECC符號的多項式函數(shù)。(a)(4)依據(jù)位位置與第二組ECC符號的邊界的相對位置,約束位模式不出現(xiàn)在第二組ECC符號中;以及(a)(5)將第二組ECC符號映射到ECC代碼字的ECC字段。
5.如權(quán)利要求1中所述的方法,其特征在于位模式包括具有第一與第二二進(jìn)制狀態(tài)之間三個連續(xù)轉(zhuǎn)化的位模式,其中中間一個轉(zhuǎn)化發(fā)生在邊界之一上。
6.一種用于將連續(xù)數(shù)據(jù)字編碼成各自的連續(xù)代碼字的編碼器,該編碼器包括一個數(shù)據(jù)字輸入;一個代碼字輸出;以及一個第一編碼器單元,第一編碼器單元根據(jù)第一代碼將數(shù)據(jù)字輸入收到的每個連續(xù)數(shù)據(jù)字映射到代碼字輸出上的各自的連續(xù)代碼字,其中第一代碼識別每個代碼中的多位糾錯碼(ECC)符號之間的邊界,并對靠近邊界的每個代碼字中的位位置與遠(yuǎn)離邊界的每個代碼字中的位位置施加不同的代碼約束。
7.如權(quán)利要求6所述的編碼器,還包括一個ECC編碼器,它接收來自第一編碼器單元的連續(xù)代碼字,將至少一個數(shù)據(jù)字的塊映射到ECC代碼字的數(shù)據(jù)字段,并根據(jù)該數(shù)據(jù)字段和一預(yù)定的多項式函數(shù)將ECC字段銜接在數(shù)據(jù)字段上,其中,ECC代碼字是由數(shù)據(jù)字段及ECC字段內(nèi)的多個多位ECC符號來限定的。
8.如權(quán)利要求7所述的編碼器,還包括一個第二ECC編碼器單元,它根據(jù)第二代碼將ECC字段內(nèi)的每個ECC符號映射到一個經(jīng)編碼的ECC符號,其中,第二代碼識別ECC字段內(nèi)的經(jīng)編碼的ECC符號之間的邊界,并對靠近ECC字段中邊界的每個經(jīng)編碼ECC符號中的位位置與離離ECC字段中邊界的位位置施加不同的代碼約束。
9.如權(quán)利要求8所述的編碼器,其中,第一和第二代碼阻止所選的位模式不出現(xiàn)在ECC代碼字中,其中,所選位模式包括具有在第一和第二二進(jìn)制狀態(tài)之間三個連續(xù)轉(zhuǎn)化的位模式,中間一個轉(zhuǎn)化發(fā)生在ECC代碼字中的ECC符號邊界之一上。
10.一種盤驅(qū)動存儲通道,包括一個能與數(shù)據(jù)存儲盤通訊的傳感器;以及與傳感器耦合的編碼裝置,用于根據(jù)一個代碼將數(shù)據(jù)編碼為由多位ECC符號形成的連續(xù)糾錯碼(ECC)代碼字,其中,根據(jù)位模式與多位ECC符號之間邊界的相對位置該代碼約束位模式不出現(xiàn)在每個ECC代碼字中,并將ECC代碼字作為代碼字流發(fā)送到傳感器。
11.一種盤驅(qū)動存儲通道,包括一個能與數(shù)據(jù)存儲盤通訊的傳感器;以及與傳感器耦合的解碼裝置,用于接收來自傳感器的讀取信號并根據(jù)一個代碼將讀取信號表示的連續(xù)糾錯碼(ECC)代碼字解碼為連續(xù)數(shù)據(jù)字,其中,每個ECC代碼字包括多個多位ECC符號,根據(jù)位模式與多位ECC符號之間邊界的相對位置,該代碼約束每個ECC代碼字中的位模式。
全文摘要
本發(fā)明提供一種對數(shù)據(jù)字編碼的編碼器和方法,它將至少一個數(shù)據(jù)字的塊映射到一個糾錯碼(ECC)代碼字。由多個被邊界分割開的多位ECC符號定義ECC代碼字。根據(jù)位模式與邊界的相對位置,限制位模式不出現(xiàn)在ECC代碼字中。
文檔編號H03M13/29GK1383617SQ01801821
公開日2002年12月4日 申請日期2001年6月26日 優(yōu)先權(quán)日2000年6月27日
發(fā)明者B·魯布 申請人:西加特技術(shù)有限責(zé)任公司