1.一种可同时恢复数据元素及冗余元素的纠删码解码方法,其特征在于,包括如下步骤:S1、构造一个方阵空间 所述方阵空间由矩阵O及校验矩阵H上下拼接构成,其中,所述矩阵O由一个单位阵和一个全0矩阵左右拼接而成,矩阵O=(I|0);
S2、构建丢失元素列表L,其中,丢失元素列表L中的数值代表是丢失元素在整个条带中该元素扇区的表示位置;
S3、对方阵空间A进行变换,得到新方阵空间 A'由数据矩阵R和冗余矩阵U上下拼接构成;
其中,所述对方阵空间A进行变换包括:
S3.1、判断构成方阵空间A的校验矩阵H,它的右半部分是否为单位阵;如是,则执行下述S3.2步骤;若不是,则先将校验矩阵H中行与行进行异或计算,将其右半部分变为单位阵后再执行S3.2步骤;
S3.2、对丢失元素列表L中的元素值s依序从小到大在上一次方阵空间基础上进行行与 行异或计算,遍历丢失元素列表L中所有元素值s,得到新方阵空间A';
S4、A'中的非零行向量即为对应的丢失数据元素,非单位行向量即为对应的丢失冗余元素;建立方程组求解。
2.如权利要求1所述的一种可同时恢复数据元素及冗余元素的纠删码解码方法,其特征在于,步骤S3.2包括:S3.2.1、对丢失元素列表L中的每个元素值s,首先判断该元素值s的类型;
S3.2.2、在校验矩阵H中找到与所述元素值s相对应的列,再在该列中找到数值为1所对应的行h;如果行h不存在,则将数据矩阵R中与元素值s相对应的列含有数值1的行置零;
S3.2.3、找到行h后,如果丢失元素列表L中没有包含冗余元素,那么就从找到的所有行h中选择最稀疏的一行f;如果L中包含冗余元素,则将丢失元素列表L中丢失的冗余元素从找到的行h中去除后在余下的行h中选择最稀疏的一行f;对于矩阵空间中第s列为1的行e,如果f≠e,那么将f与e进行异或计算,计算结果替换掉行e,并将H中第f行全部置零;
S3.2.4、遍历完丢失元素列表L中所有数据块元素后,将L中冗余元素对应于H中的列置零。