A semiconductor device comprising: an arithmetic unit that performs processing for executing a computer program; a plurality of sound units (211 - 21n) that perform output of sound data stored in a memory to an external terminal (TM1 - TMn) and transfer the sound data, input from the external terminal (TM1 - TMn), to the memory; a route switching unit that switches a transfer route of sound data input to and output from the plurality of sound units (211 - 21n), the route switching unit being provided between the plurality of sound units (211 - 21n) and the external terminal (TM1 - TMn); and a memory transfer controller that includes a plurality of memory-transfer control units (101 to 10n) that control transmission and reception of data between the memory and the plurality of sound units (211 - 21n), and a unit control unit that controls the plurality of memory-transfer control units (101 to 10n), wherein the arithmetic unit controls the route switching unit according to the computer program to configure at least three sound data transfer routes, each configured by one of the sound units (211 - 21n) and one of the memory-transfer control units (101 to 10n), transfers reproduction sound data stored in the memory from the memory to the external terminal side via at least one of the sound data transfer routes, transfers at least two recording sound data from the external terminal side to the memory via at least two of the sound data transfer routes, wherein the recording sound data is sound data generated by recording, with a microphone, sound output from a speaker in accordance with the reproduction sound data, accumulates, in the memory, at least two pieces of the recording sound data transferred using at least two of the sound data transfer routes, and detects a fault in the sound data transfer route when it is detected that at least one of three sound data including the reproduction sound data and at least the two pieces of recording sound data does not coincide with the other of the three sound data. an arithmetic unit that performs processing for executing a computer program; a plurality of sound units (211 - 21n) that perform output of sound data stored in a memory to an external terminal (TM1 - TMn) and transfer the sound data, input from the external terminal (TM1 - TMn), to the memory; a route switching unit that switches a transfer route of sound data input to and output from the plurality of sound units (211 - 21n), the route switching unit being provided between the plurality of sound units (211 - 21n) and the external terminal (TM1 - TMn); and a memory transfer controller that includes a plurality of memory-transfer control units (101 to 10n) that control transmission and reception of data between the memory and the plurality of sound units (211 - 21n), and a unit control unit that controls the plurality of memory-transfer control units (101 to 10n), wherein the arithmetic unit controls the route switching unit according to the computer program to configure at least three sound data transfer routes, each configured by one of the sound units (211 - 21n) and one of the memory-transfer control units (101 to 10n), transfers reproduction sound data stored in the memory from the memory to the external terminal side via at least one of the sound data transfer routes, transfers at least two recording sound data from the external terminal side to the memory via at least two of the sound data transfer routes, wherein the recording sound data is sound data generated by recording, with a microphone, sound output from a speaker in accordance with the reproduction sound data, accumulates, in the memory, at least two pieces of the recording sound data transferred using at least two of the sound data transfer routes, and detects a fault in the sound data transfer route when it is detected that at least one of three sound data including the reproduction sound data and at least the two pieces of recording sound data does not coincide with the other of the three sound data.