The data are then retrieved from the buffer memory 13 in increments of a predetermined data size and sent to the EFM/ACIRC encoder/decoder 8 for encoding processes such as CIRC encoding and EFM. After the encoding operation by the EFM/ACIRC encoder/decoder 8, the data are fed to a magnetic head drive circuit 6.