欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種容多個設備和扇區(qū)錯的編碼的優(yōu)化方法

文檔序號:10654392閱讀:317來源:國知局
一種容多個設備和扇區(qū)錯的編碼的優(yōu)化方法
【專利摘要】本發(fā)明公開了一種容多個設備和扇區(qū)錯的編碼的優(yōu)化方法,包括:獲取用戶輸入的編碼單元的系統(tǒng)參數(shù),根據(jù)用戶輸入的編碼單元的系統(tǒng)參數(shù)創(chuàng)建一個標記數(shù)組a[r],該標記數(shù)組的每一個元素對應于編碼單元的一行,對于編碼單元中只有磁盤失效的行進行解碼,對于編碼單元中既有磁盤失效也有扇區(qū)失效的行進行解碼。本發(fā)明能夠解決現(xiàn)有方法中存在的SD編碼的編解碼速度較低的技術問題。
【專利說明】
-種容多個設備和扇區(qū)錯的編碼的優(yōu)化方法
技術領域
[0001] 本發(fā)明屬于計算機存儲領域,更具體地,設及一種容多個設備和扇區(qū)錯的編碼的 優(yōu)化方法。
【背景技術】
[0002] 可靠性與可用性是衡量在線存儲服務質量的重要標準。對于為商業(yè)與工業(yè)應用提 供在線服務的系統(tǒng),數(shù)據(jù)丟失W及時常間斷的服務往往意味著經(jīng)濟損失。磁盤冗余陣列 (Redundant Array of Independent Disk,簡稱RAID)是能夠提供高可靠性與高可用性的 主流選擇之一。在早期的RAID規(guī)范中,例如RAID-O到RAID-5,其僅僅提供單盤容錯能力。近 年來,具有更高容錯能力的各種RAID系統(tǒng)逐漸開始被采用,因其在兩個或兩個W上磁盤同 時失效時仍然能夠恢復所有丟失的數(shù)據(jù),與此同時還能夠提供不間斷的在線服務。
[0003] 現(xiàn)在大多數(shù)的存儲系統(tǒng)都是采用糾刪碼來處理磁盤出錯。如商用的存儲系統(tǒng) (Microsoft,IBM,Netapp,HP,Cleversafe,IBM等),運些系統(tǒng)中處理的出錯單元都是盤。然 而,在最近的研究中發(fā)現(xiàn),整個磁盤失效的情況是很少發(fā)生的,通常情況下發(fā)生的錯誤類型 是部分扇區(qū)出錯。同時在現(xiàn)在SSD被廣泛運用,SSD存在著擦除次數(shù),因此其壽命和塊被寫的 次數(shù)相關。
[0004] 為了解決塊失效的問題,系統(tǒng)會提前探測扇區(qū)和塊,運樣錯誤會被及時的恢復。現(xiàn) 在考慮一種可能的情況,一個盤失效,同時又有一個剩下盤上的塊失效。針對運種情況,現(xiàn) 在提出了一類新的編碼,我們把運類編碼叫潛在扇區(qū)錯誤(latent sector errors,簡稱 LSE)編碼。James S.Plank等人提出的SD編碼就是其中一種。運種編碼方式采用的是伽羅華 域上的運算來對數(shù)據(jù)進行編碼。其主要的思想是在RS編碼的基礎上在加上若干個塊作為校 驗碼來容錯。
[0005] 該SD編碼的數(shù)據(jù)存放策略如圖1所示:
[0006] 假設該存儲系統(tǒng)有5個盤,且每個編碼單元包含4行。因此一個編碼單元中包含20 個塊。如果該存儲系統(tǒng)能同時容1個盤與2個塊失效。那么該編碼單元中就有14個塊可W用 來存儲數(shù)據(jù),其余的6個塊用來存儲校驗塊。當其中的任意一個盤加任意的2個塊失效的時 候就可W通過校驗塊來恢復失效的數(shù)據(jù)。
[0007] 我們W-個SD編碼為例給出其生成系數(shù)矩陣的公式,其中r表示該SD編碼中每一 個編碼單元中的行數(shù),n表示每一個編碼單元中的磁盤數(shù),m表示出錯盤數(shù),S表示額外出錯 的塊數(shù)。給定的m+S個系數(shù)分別為COff日~C〇ffm-l,C〇ffm~COffm+s-l。塊上面的數(shù)據(jù)為曰日,0~ 過r_l,n_lO
[000引根據(jù)給定的m+s個系數(shù)來創(chuàng)建一個m*r+s行n*r列(每一列對應一個塊)的系數(shù)矩 陣。其中前面的m卸行系數(shù)是由生成m*r個校驗塊的公式I得到的:
[0009]
[0010] 其中i是從0到r-l,k從0到m-1,
[0011] 然后根據(jù)公式II得到剩下的S行:
[0012]
[0013] 其中 k 從m 到 m+s-1。
[0014] 雖然該方法解決了同時有塊和盤失效的情況,但是其編解碼的速度較低。

【發(fā)明內容】

[0015] 針對現(xiàn)有技術的W上缺陷或改進需求,本發(fā)明提供了一種容多個設備和扇區(qū)錯的 編碼的優(yōu)化方法,其目的在于,解決現(xiàn)有方法中存在的SD編碼的編解碼速度較低的技術問 題。
[0016] 為實現(xiàn)上述目的,本發(fā)明提供了一種容多個設備和扇區(qū)錯的編碼的優(yōu)化方法,包 括W下步驟:
[0017] (1)獲取用戶輸入的編碼單元的系統(tǒng)參數(shù),包括一個編碼單元的行數(shù)r、列數(shù)n、失 效的磁盤數(shù)m、失效的扇區(qū)數(shù)S、失效磁盤的位置P日~Pm-I、失效扇區(qū)的位置Q日~Qs-I、m+s個系 數(shù)Co~Cm+s-l、W及待編解碼的文件;
[0018] (2)根據(jù)用戶輸入的編碼單元的系統(tǒng)參數(shù)創(chuàng)建一個標記數(shù)組a[r],該標記數(shù)組的 每一個元素對應于編碼單元的一行;本步驟具體包括W下子步驟:
[0019] (2-1)初始化標記數(shù)組a[r]中的所有元素為0,該標記數(shù)組的每一個元素對應于編 碼單元的一行,并設置計數(shù)器i = 0,j = 0;
[0020] (2-2)判斷是否有Kr,若是則轉入步驟(2-3),否則步驟(2)結束;
[0021] (2-3)判斷i是否等于<9〇〉5~<93-1〉5中的任意一個,若是則轉入步驟(2-4),否則轉 入步驟(2-5);
[0022] (2-4)設置a[i] = l,i = i+l,j = j+1,并返回步驟(2-2);
[0023] (2-5)設置 i = i+l,并返回步驟(2-2);
[0024] (3)對于編碼單元中只有磁盤失效的行進行解碼;本步驟具體包括W下子步驟:
[0025] (3-1)設置1 = 〇;
[0026] (3-2)判斷是否有Kr,若是則轉入步驟(3-3),否則轉入步驟(3-6);
[0027] (3-3)判斷是否有a[i]=0,若是則轉入步驟(3-4),否則轉入步驟(3-5);
[00巧](3-4)為編碼單元中的第i行生成一個m行、n列的系數(shù)矩陣ma化ixi,其中matrixi [a][b] = (Ca)b+i*n,其中〇《3<111,0《6<11點是(1)中提及的系數(shù);
[0029] (3-5)設置 i = i+l,并返回步驟(3-2);
[0030] (3-6)為每一個得到的系數(shù)矩陣ma化ixi創(chuàng)建一個線程,并在該線程中對編碼單元 中只有磁盤失效的行進行解碼;
[0031] (3-7)將解碼后得到的數(shù)據(jù)保存在待編解碼的文件中,步驟(3)結束;
[0032] (4)對于編碼單元中既有磁盤失效也有扇區(qū)失效的行進行解碼;本步驟具體包括 W下子步驟:
[0033] (4-1)根據(jù)步驟(2)中得到的j的值創(chuàng)建一個j*m+s行、n*r列的矩陣ma化ixn,并初 始化矩陣matrix。為0;
[0034] (4-2)設置計數(shù)器i = 0,t = 0;
[0035] (4-3)判斷是否有Kr,若是則轉入步驟(4-4),否則轉入步驟(4-7);
[0036] (4-4)判斷是否有a[i] = l,若是則轉入步驟(4-5),否則轉入步驟(4-6);
[0037] (4-5)對于編碼單元中的第i行而言,根據(jù)W下公式得到系數(shù),并將該系數(shù)填充到 系數(shù)矩陣ma化ixn中的巧m行至第行,W及第i*n列至第(i+l)*n-l列,然后設置t = t+l :
[00;3 引
[0039] 其中 (t+1 )*m_l,i*n《d《(i+1 )*n_l,C<c》m是下柄為〈c〉m的系數(shù);
[0040] (4-6)設置 i = i+l,并返回步驟(4-3);
[0041 ] (4-7)根據(jù)W下公式生成系數(shù)矩陣matrix。中剩下的S行,并對該系數(shù)矩陣ma化ixn 進行解碼:
[0042] matrixn[e] [f ] = (Ce-(t-i)*m)^
[0043] 其中 t*m《e《t*m+s,0《f《;r*n-l);
[0044] (4-8)將解碼后得到的數(shù)據(jù)塊保存在待編解碼的文件中。
[0045] 優(yōu)選地,標記數(shù)組中的元素為0表示編碼單元的對應行只存在磁盤失效,元素為1 表示編碼單元的對應行既存在磁盤失效也存在扇區(qū)失效。
[0046] 優(yōu)選地,步驟(3-6)和(4-7)中對系數(shù)矩陣進行解碼的過程具體為:
[0047] 首先,接收系數(shù)矩陣matrix[p*q],W及該系數(shù)矩陣對應的q個數(shù)據(jù)塊,其中P和q分 別為該系數(shù)矩陣的行數(shù)和列數(shù),且運q個數(shù)據(jù)塊中有P個數(shù)據(jù)塊失效;
[0048] 其次,把失效的P個數(shù)據(jù)塊對應的P列從系數(shù)矩陣中提取出來,W得到一個矩陣 encoder[p*p];
[0049] 再次,將剩下的系數(shù)矩陣中每一列的系數(shù)與該列對應的數(shù)據(jù)塊相乘,并將相乘后 的結果按行相加,W得到一個矩陣decode[p*l];
[0050] 最后,對encode;r[p*p]進行初等行變化,W得到一個p*p大小的單位矩陣,同時對 矩陣decode[p*l]進行同樣的初等行變化,變化后的decode矩陣中的數(shù)據(jù)即為待解碼的數(shù) 據(jù)。
[0051] 總體而言,通過本發(fā)明所構思的W上技術方案與現(xiàn)有技術相比,能夠取得下列有 益效果:由于采用了多線程和矩陣拆分的方法,因此能夠顯著提升SD編碼的編解碼速度。
【附圖說明】
[0052] 圖1是現(xiàn)有技術中基于SD編碼的數(shù)據(jù)存放方案;
[0053] 圖2是本發(fā)明容多個設備和扇區(qū)錯的編碼的優(yōu)化方法的流程圖。
[0054] 圖3是基于SD編碼的一個條帶示意圖;
【具體實施方式】
[0055] 為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,W下結合附圖及實施例,對 本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用W解釋本發(fā)明,并 不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個實施方式中所設及到的技術特征只要 彼此之間未構成沖突就可W相互組合。
[0056] W下首先就本發(fā)明的技術術語進行解釋和說明:
[0057] 塊(block):塊是該編碼中的基本單元,其大小可W從比特到許多連續(xù)的扇區(qū)。在 該編碼中有兩種元素,即數(shù)據(jù)塊和校驗塊。
[0058] 編碼單元:一個編碼單元是該糾刪碼中能夠容錯的獨立單元,本發(fā)明中表示用戶 輸入的文件。
[0059] <m〉p:表示m模P的值,且m的取值范圍是0至Ijp-1。
[0060] 如圖2所示,本發(fā)明容多個設備和扇區(qū)錯的編碼的優(yōu)化方法包括W下步驟:
[0061] (1)獲取用戶輸入的編碼單元的系統(tǒng)參數(shù),包括一個編碼單元的行數(shù)r、列數(shù)n、失 效的磁盤數(shù)m、失效的扇區(qū)數(shù)S、失效磁盤的位置P日~Pm-I、失效扇區(qū)的位置Q日~Qs-I、m+s個系 數(shù)Co~Cm+s-l、W及待編解碼的文件;
[0062] (2)根據(jù)用戶輸入的編碼單元的系統(tǒng)參數(shù)創(chuàng)建一個標記數(shù)組a[r],該標記數(shù)組的 每一個元素對應于編碼單元的一行,標記數(shù)組中的元素為0表示編碼單元的對應行只存在 磁盤失效,元素為1表示編碼單元的對應行既存在磁盤失效也存在扇區(qū)失效;本步驟具體包 括W下子步驟:
[0063] (2-1)初始化標記數(shù)組a[r]中的所有元素為0,該標記數(shù)組的每一個元素對應于編 碼單元的一行,并設置計數(shù)器i = 0,j = 0;
[0064] (2-2)判斷是否有Kr,若是則轉入步驟(2-3),否則步驟(2)結束;
[0065] (2-3)判斷i是否等于<9〇〉5~<93-1〉5中的任意一個,若是則轉入步驟(2-4),否則轉 入步驟(2-5);
[0066] (2-4)設置a[ i ] = 1,i = i+1,j = j+1,并返回步驟(2-2);
[0067] (2-5)設置 i = i+l,并返回步驟(2-2);
[0068] (3)對于編碼單元中只有磁盤失效的行進行解碼;本步驟具體包括W下子步驟:
[0069] (3-1)設置1 = 〇;
[0070] (3-2)判斷是否有Kr,若是則轉入步驟(3-3),否則轉入步驟(3-6);
[0071] (3-3)判斷是否有a[i]=0,若是則轉入步驟(3-4),否則轉入步驟(3-5);
[0072] (3-4)為編碼單元中的第i行生成一個m行、n列的系數(shù)矩陣ma化ixi,其中matrixi [a][b] = (Ca)b+i*n,其中〇《3<111,0《6<11點是(1)中提及的系數(shù);
[0073] (3-5)設置 i = i+1,并返回步驟(3-2);
[0074] (3-6)為每一個得到的系數(shù)矩陣ma化ixi創(chuàng)建一個線程,并在該線程中對編碼單元 中只有磁盤失效的行進行解碼;
[0075] (3-7)將解碼后得到的數(shù)據(jù)保存在待編解碼的文件中,步驟(3)結束;
[0076] (4)對于編碼單元中既有磁盤失效也有扇區(qū)失效的行進行解碼;本步驟具體包括 W下子步驟:
[0077] (4-1)根據(jù)步驟(2)中得到的j的值創(chuàng)建一個j*m+s行、n*r列的矩陣ma化ixn,并初 始化矩陣matrix。為0;
[0078] (4-2)設置計數(shù)器i = 0,t = 0;
[0079] (4-3)判斷是否有Kr,若是則轉入步驟(4-4),否則轉入步驟(4-7);
[0080] (4-4)判斷是否有a[i] = l,若是則轉入步驟(4-5),否則轉入步驟(4-6);
[0081] (4-5)對于編碼單元中的第i行而言,根據(jù)W下公式得到系數(shù),并將該系數(shù)填充到 系數(shù)矩陣ma化ixn中的巧m行至第行,W及第i*n列至第(i+l)*n-l列,然后設置t = t+l :
[0082]
[0083] 其中,i*n《d《(i+l)*n-l,[.<砂^是下標為<?!?11 的系數(shù);
[0084] (4-6)設置 i = i+l,并返回步驟(4-3);
[00財 (4-7)根據(jù)W下公式生成系數(shù)矩陣matrix。中剩下的S行,并對該系數(shù)矩陣ma化ixn 進行解碼:
[0086] matrixn[e] [f ] = (Ce-(t-i)*m)^
[0087] 其中 t*m《e《t*m+s,0《f《;r*n-l);
[0088] (4-8)將解碼后得到的數(shù)據(jù)塊保存在待編解碼的文件中,過程結束。
[0089] 上述步驟(3-6)和(4-7)中對系數(shù)矩陣進行解碼的過程如下:
[0090] 首先,接收系數(shù)矩陣matrix[p*q],W及該系數(shù)矩陣對應的q個數(shù)據(jù)塊(即系數(shù)矩陣 的q列,分別對應于運q個數(shù)據(jù)塊),其中P和q分別為該系數(shù)矩陣的行數(shù)和列數(shù),且運q個數(shù)據(jù) 塊中有P個數(shù)據(jù)塊失效;
[0091] 其次,把失效的P個數(shù)據(jù)塊對應的P列從系數(shù)矩陣中提取出來,W得到一個矩陣 encoder[p*p];
[0092] 再次,將剩下的系數(shù)矩陣中每一列的系數(shù)與該列對應的數(shù)據(jù)塊相乘,并將相乘后 的結果按行相加,W得到一個矩陣decode[p*l ];
[0093] 最后,對encoder[p*p]進行初等行變化,W得到一個p*p大小的單位矩陣,同時對 矩陣decode[p*l]進行同樣的初等行變化,變化后的decode矩陣中的數(shù)據(jù)即為待解碼的數(shù) 據(jù)。
[0094] 下面W基于SD編碼的磁盤陣列為例,來描述一下本發(fā)明的具體實現(xiàn):
[00M]我們W最簡單編碼單元為例其中給定的參數(shù)為1,2,4,8。如圖3所示,圖中給的數(shù) 據(jù)為該數(shù)據(jù)塊要乘的參數(shù)。SD編碼的編碼方式為:對于每一行數(shù)據(jù)用給定的參數(shù)1,2來進行 編碼,其編碼的方式為按圖3中前兩個編碼單元中給定的參數(shù)與數(shù)據(jù)塊相乘后相加等于0, 運樣就可W得到8個方程。同時對于最后的兩個失效塊按圖3中后兩個編碼單元中的參數(shù)與 數(shù)據(jù)塊相乘后相加等于0,運樣又可W得到兩個方程。通過運10個方程就可W解碼出當任意 的2個盤加兩個塊失效時的失效數(shù)據(jù)。
[0096] 假設當該編碼單元中的最后兩列和第13與14數(shù)據(jù)塊失效時,同時該編碼單元中每 個塊的數(shù)據(jù)為ai,J其中i和j代表的是該數(shù)據(jù)在該編碼單元中的坐標從0開始計數(shù)。本發(fā)明的 方法包括W下步驟:
[0097] (1)首先把每一行分為兩種情況,情況1是在該行沒有扇區(qū)失效,情況2是在該行存 在扇區(qū)失效。在圖3中前3行為情況1最后1行為情況2;
[0098] (2)對于前3行,每一行創(chuàng)建一個線程。然后在線程中創(chuàng)建系數(shù)矩陣。如第1行其創(chuàng) 建的系數(shù)矩陣為:
[0099]
[0100] 也就是圖3中的前兩個編碼單元的第一行。
[0101] (3)把系數(shù)矩陣中的失效塊位置的系數(shù)提取出來得到解碼矩陣為:
[0102]
[0103] 巧刀等行變換變?yōu)閱挝痪仃嚕?br>[0104]
[0105] 其中第一列對應該行中的第一個失效塊的位置,第二列對應該行中的第二個失效 塊位置
[0106] (4)把系數(shù)矩陣中除去失效塊位置的剩下的系數(shù)與該數(shù)據(jù)塊的內容相乘然后把每 一行加起來,得到一個常數(shù)矩陣。把該常數(shù)矩陣做與解碼矩陣同樣的初等變換得到的結果 就是失效塊的數(shù)據(jù)。然后把該數(shù)據(jù)填充到失效塊的位置。
[0107]
[0108] :中的第一個和第二個數(shù)據(jù)塊。得到的常數(shù)矩陣內容 為八〇和/ 3初等變換就可W得到失效塊的數(shù)據(jù)。
[0109]
[0110] 其對應的失效塊為Bo對應于該行失效塊中的第一個失效塊。Bi對應于該行失效塊 中的第二個失效塊。
[0111] (5)當所有的線程都返回后,對于最后一行創(chuàng)建其系數(shù)矩陣:
[0112]
[0113] 同樣的對于該系數(shù)矩陣,首先將失效塊位置的系數(shù)提取出來得到一個解碼矩陣:
[0114]
[0115] 變換變成一個單位矩陣。同時用一個單位矩陣記錄其變換的 過程。
[0116]
[0117]對與除去失效塊位置的剩下的系數(shù)與該數(shù)據(jù)塊的內容相乘然后把每一行加起來, 得到一個常數(shù)矩陣。
[011 引
[0119] 對于該矩陣做與解碼矩陣同樣的初等變換:
[0120]
[0121] 得到的數(shù)據(jù)就是最后四個失效塊的數(shù)據(jù),最后再把運四個數(shù)據(jù)寫到該編碼單元中 對應塊的位置,就可W恢復整個編碼單元。
[0122] 本領域的技術人員容易理解,W上所述僅為本發(fā)明的較佳實施例而已,并不用W 限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含 在本發(fā)明的保護范圍之內。
【主權項】
1. 一種容多個設備和扇區(qū)錯的編碼的優(yōu)化方法,其特征在于,包括以下步驟: (1) 獲取用戶輸入的編碼單元的系統(tǒng)參數(shù),包括一個編碼單元的行數(shù)r、列數(shù)n、失效的 磁盤數(shù)m、失效的扇區(qū)數(shù)s、失效磁盤的位置Po~Pm-ι、失效扇區(qū)的位置Qo~Q s-I、m+s個系數(shù)Co ~Cmt1、以及待編解碼的文件; (2) 根據(jù)用戶輸入的編碼單元的系統(tǒng)參數(shù)創(chuàng)建一個標記數(shù)組a[r],該標記數(shù)組的每一 個元素對應于編碼單元的一行;本步驟具體包括以下子步驟: (2-1)初始化標記數(shù)組a[r]中的所有元素為0,該標記數(shù)組的每一個元素對應于編碼單 元的一行,并設置計數(shù)器i = 〇,j = 〇; (2-2)判斷是否有i<r,若是則轉入步驟(2-3),否則步驟(2)結束; (2-3)判斷i是否等于<Q〇>s~〈Qs-Os中的任意一個,若是則轉入步驟(2-4),否則轉入步 驟(2-5); (2-4)設置a[i] = l,i = i+l,j = j+Ι,并返回步驟(2-2); (2-5)設置i = i+l,并返回步驟(2-2); (3) 對于編碼單元中只有磁盤失效的行進行解碼; (4) 對于編碼單元中既有磁盤失效也有扇區(qū)失效的行進行解碼。2. 根據(jù)權利要求1所述的優(yōu)化方法,其特征在于,所述標記數(shù)組a[r]中的元素為0表示 編碼單元的對應行只存在磁盤失效,元素為1表示編碼單元的對應行既存在磁盤失效也存 在扇區(qū)失效。3. 根據(jù)權利要求1或2所述的優(yōu)化方法,其特征在于,所屬步驟(3)包括以下子步驟: (3-1)設置 i = 0; (3-2)判斷是否有i〈r,若是則轉入步驟(3-3),否則轉入步驟(3-6); (3-3)判斷是否有a[ i ] = 0,若是則轉入步驟(3-4),否則轉入步驟(3-5); (3-4)為編碼單元中的第i行生成一個m行、η列的系數(shù)矩陣matrixi,其中matrixi[a] [b] = (Ca)b+1'其中0彡a〈m,0彡b〈n,Ca是⑴中提及的系數(shù); (3-5)設置i = i+l,并返回步驟(3-2); (3-6)為每一個得到的系數(shù)矩陣Hiatrix1創(chuàng)建一個線程,并在該線程中對編碼單元中只 有磁盤失效的行進行解碼; (3-7)將解碼后得到的數(shù)據(jù)保存在待編解碼的文件中。4. 根據(jù)權利要求1或2所述的優(yōu)化方法,其特征在于,所屬步驟(4)包括以下子步驟: (4-1)根據(jù)步驟(2)中得到的j的值創(chuàng)建一個j*m+s行、n*r列的矩陣matrixn,并初始化矩 陣matrixn為 0; (4-2)設置計數(shù)器i = 0,t = 0; (4-3)判斷是否有i〈r,若是則轉入步驟(4-4),否則轉入步驟(4-7); (4-4)判斷是否有a[i] = l,若是則轉入步驟(4-5),否則轉入步驟(4-6); (4-5)對于編碼單元中的第i行而言,根據(jù)以下公式得到系數(shù),并將該系數(shù)填充到系數(shù) 矩陣matrixn中的t*m行至第(t+l)*m-l行,以及第i*n列至第(i+l)*n-l列,然后設置t = t+ 1:其中t*m<c< (t+l)*m_l,i*n<(K (i+l)*n_l (?^?^是下標為〈c>m的系數(shù); (4-6)設置i = i+l,并返回步驟(4-3); (4_7)根據(jù)以下公式生成系數(shù)矩陣11^1:1^111中剩下的8行,并對該系數(shù)矩陣1]^1:1^111進行 解碼: matrixn[e] [f ] = (Ce-(t-i)*m)f 其中 t*m^i e < t*m+s,CK f <r*n_I); (4-8)將解碼后得到的數(shù)據(jù)塊保存在待編解碼的文件中。5. 根據(jù)權利要求3所述的優(yōu)化方法,其特征在于,所述步驟(3-6)中對系數(shù)矩陣進行解 碼的過程具體為: 首先,接收系數(shù)矩陣matrix[p*q],以及該系數(shù)矩陣對應的q個數(shù)據(jù)塊,其中p和q分別為 該系數(shù)矩陣的行數(shù)和列數(shù),且這q個數(shù)據(jù)塊中有P個數(shù)據(jù)塊失效; 其次,把失效的P個數(shù)據(jù)塊對應的P列從系數(shù)矩陣中提取出來,以得到一個矩陣encoder [P*P]; 再次,將剩下的系數(shù)矩陣中每一列的系數(shù)與該列對應的數(shù)據(jù)塊相乘,并將相乘后的結 果按行相加,以得到一個矩陣decode[p*l ]; 最后,對encoder [p*p]進行初等行變化,以得到一個p*p大小的單位矩陣,同時對矩陣 decode[p*l]進行同樣的初等行變化,變化后的decode矩陣中的數(shù)據(jù)即為待解碼的數(shù)據(jù)。6. 根據(jù)權利要求4所述的優(yōu)化方法,其特征在于,所述步驟(4-7)中對系數(shù)矩陣進行解 碼的過程具體為: 首先,接收系數(shù)矩陣matrix[p*q],以及該系數(shù)矩陣對應的q個數(shù)據(jù)塊,其中p和q分別為 該系數(shù)矩陣的行數(shù)和列數(shù),且這q個數(shù)據(jù)塊中有P個數(shù)據(jù)塊失效; 其次,把失效的P個數(shù)據(jù)塊對應的P列從系數(shù)矩陣中提取出來,以得到一個矩陣encoder [P*P]; 再次,將剩下的系數(shù)矩陣中每一列的系數(shù)與該列對應的數(shù)據(jù)塊相乘,并將相乘后的結 果按行相加,以得到一個矩陣decode[p*l ]; 最后,對encoder [p*p]進行初等行變化,以得到一個p*p大小的單位矩陣,同時對矩陣 decode[p*l]進行同樣的初等行變化,變化后的decode矩陣中的數(shù)據(jù)即為待解碼的數(shù)據(jù)。
【文檔編號】G06F11/20GK106021034SQ201610307007
【公開日】2016年10月12日
【申請日】2016年5月11日
【發(fā)明人】曹強, 張文輝, 萬勝剛, 李詩逸, 謝長生
【申請人】華中科技大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
西盟| 凉城县| 东兴市| 麻江县| 德惠市| 庐江县| 周至县| 柞水县| 舒城县| 衡阳县| 河北区| 昔阳县| 桓台县| 伊金霍洛旗| 浦县| 修文县| 阜康市| 南雄市| 手游| 泌阳县| 牙克石市| 拉孜县| 赫章县| 石门县| 平乐县| 宁晋县| 会同县| 威宁| 昭通市| 松江区| 新宁县| 修文县| 祁连县| 财经| 高陵县| 峡江县| 威宁| 大姚县| 招远市| 宁武县| 固镇县|