An apparatus, method, and an optical storage medium to generate an error
correction block include a data block generation unit processing digital
data on a byte-by-byte basis and arranging the processed digital data
from 0.sup.th to (N-1).sup.th columns and from 0.sup.th to (M-1).sup.th
rows to form (M.times.N) data blocks. A matrix block generation unit
arranges the (M.times.N) data blocks in K rows according to a data
transmission sequence to form a matrix block. A first codeword generation
unit adds a first error correction check word of 2.times.K bytes to each
of N columns to form a first codeword of ((K.times.M)+2.times.K) bytes. A
second codeword generation unit adds a second error correction check word
of P bytes to each of ((K.times.M)+2.times.K) rows to form a second
codeword of (N+P) bytes.