A method and apparatus for efficiently encoding an ECC block for improving
writing performance of a storage device using an ECC block format having a
linear code such as a Reed-Solomon code is described. When the data f1 of
a part of data sectors among a plurality of data sectors which form an ECC
block F1 having a PO portion q1 formed with a linear code such as a
Reed-Solomon code is updated with data f2 to obtain the ECC block F2
having the updated PO portion q2, the ECC block F1+F2 of the exclusive OR
of the source data part of the ECC block F1 before updating and the ECC
block F2 after updating is taken, so that the XOR of f1 and f2 (i.e.
f1+f2) of the data f1 to be updated and the updated data f2 is obtained.
The XOR of non-updated data sectors is 0. Then, when the ECC block F1+F2
of the XOR is encoded, the PO portion in the form of the XOR q1+q2 is
obtained in accordance with the linearity of the Reed-Solomon code. Thus,
q2 can be gained based on the exclusive OR of q1+q2 and q1, resulting in
the ability to write out the data more efficiently.
Une méthode et un appareil pour coder efficacement un bloc d'ECC pour améliorer l'exécution d'écriture d'un dispositif de stockage employant un format de bloc d'ECC ayant un code linéaire tel qu'un code de Roseau-Solomon est décrite. Quand les données f1 d'une partie de secteurs de données parmi une pluralité de secteurs de données qui forment un bloc F1 d'ECC ayant une partie q1 de PO formée avec un code linéaire tel qu'un code de Roseau-Solomon sont mises à jour avec les données F2 pour obtenir le bloc F2 d'ECC ayant la partie mise à jour q2 de PO, le bloc F1+F2 d'ECC de l'exclusivité OU de la pièce de données de base du bloc F1 d'ECC avant la mise à jour et du bloc F2 d'ECC après mise à jour est pris, de sorte que le XOR de f1 et de F2 (c.-à-d. f1+f2) des données f1 à mettre à jour et des données mises à jour F2 soit obtenu. Le XOR des secteurs non-mis à jour de données est 0. Puis, quand le bloc F1+F2 d'ECC du XOR est codé, la partie de PO sous forme de XOR q1+q2 est obtenue selon les linéarités du code de Roseau-Solomon. Ainsi, q2 peut être gagné a basé sur l'exclusivité OU de q1+q2 et de q1, ayant pour résultat la capacité d'écrire les données plus efficacement.