Abstract:
A digital wireless communications device enabling call distance to be increased while avoiding mute processing as far as possible, even if code error occurs in an ADPCM code. The digital wireless communications device may be configured to include: an error detector for detecting code error in an ADPCM code received via a wireless circuit; an ADPCM decoder for generating a PCM signal by decoding the ADPCM code; and a substitution unit for determining that a click noise is generated if the high-speed scale factor and the low-speed scale factor determined by the ADPCM decoder within a predetermined time period after the error detector has judged that there is a code error in the ADPCM code, and the received ADPCM code itself, respectively exceed prescribed threshold values, and for substituting the ADPCM code with a predetermined prescribed code.

Description:
BACKGROUND  
       [0001]     The present invention relates to a digital wireless communications device, and more particularly, to an improvement technology for increasing call distance, while avoiding mute processing as far as possible, even if a code error occurs in the ADPCM code.  
         [0002]     The ADPCM (Adaptive Differential Pulse Code Modulation) method is commonly used as a voice encoding method for digital cordless telephones. One characteristic of the ADPCM encoding method is that, if a coding error occurs in the voice data due to the effects of weak field strength, fading, electromagnetic interference, or the like, then a sudden clicking noise which is disturbing to the ear is generated, and hence the voice quality is markedly degraded. In Japanese Patent Laid-open No. 2002-006890 and Japanese Patent Laid-open No. 2002-006891, the present applicants have proposed a voice quality improvement device for correcting encoding by monitoring internal variables of the ADPCM decoder, predicting the occurrence of click noises, and estimating the bit error position of the ADPCM code.  
         [0003]      FIG. 12  is a functional block diagram of a conventional voice quality improvement device. If the occurrence of an error is detected in the reception signal by means of a frame error check, such as a Cyclic Redundancy Check, or the like, then a substitution unit  45  predicts the occurrence of clicking noise if the short term average d ms (k) of the absolute value of the ADPCM code l(k) exceeds a prescribed threshold value within a data section previously determined by the judgment time adjusting section  44 . In this case, the substitution unit substitutes the ADPCM code l(k) with the code l′(k) which produces a minimum change in the short term average of the absolute value of the ADPCM code l(k). The codes l(k) or l′(k) are input to the ADPCM decoder  46  and are converted into a PCM signal s o (k). An F[l] converter  41  converts the code l(k) to the code F[l(k)], in accordance with the correspondence relationships illustrated in  FIG. 13 , and it outputs same to a short term average calculating section  42 . In the short term average calculating section  42 , d ms (k) is calculated by means of the calculation d ms (k)=(1-2 31 5 ) d ms (k−1)+2 −5 F[l(k)]. d ms (k−1) is obtained by passing the output d ms (k) of the short term average calculating section  42  through a delay unit  43 . Here, the value of F[l(k)] is defined as shown in  FIG. 13 .  
       SUMMARY  
       [0004]     Since the ADPCM code changes between various patterns, with change in the sound characteristics, such as the voice or tone, and the frequency or level of the signal, it is difficult to predict click noise accurately by monitoring the short term average value d ms (k) alone. Therefore, in many cases, the threshold value is lowered intentionally to a value which facilitates the detection of click noise and the ADPCM code is substituted with “1111”.  
         [0005]     In the case of a digital cordless telephone, normally, there is one parent device forming a base station, and therefore, in order to improve voice quality, it is important to increase the call distance between the parent device and the subsidiary device, while avoiding mute processing as far as possible, even if error occurs in the voice data.  
         [0006]     The present invention resolves such problems, by providing a digital wireless communications device whereby the call distance can be increased while avoiding mute processing as far as possible, even if error occurs in the ADPCM code.  
         [0007]     The invention in one aspect relates to a digital wireless communications device including: an error detector for detecting code error in an ADPCM code received via a wireless circuit; an ADPCM decoder for generating a PCM signal by decoding the ADPCM code; and a substitution unit for determining that a click noise is generated if the high-speed scale factor and the low-speed scale factor determined by the ADPCM decoder within a predetermined time period after the error detector has judged that there is a code error in the ADPCM code, and the received ADPCM code itself, respectively exceed prescribed threshold values, and for substituting the ADPCM code with a predetermined prescribed code. Generation of click noise is predicted on the basis of the value of the high-speed scale factor, the low-speed scale factor and the ADPCM code, and by substituting the ADPCM code with a code that does not produce click noise, it is possible to increase the call distance while avoiding mute processing, as far as possible.  
         [0008]     In the digital wireless communications device according to the present invention, desirably, a plurality of threshold values are set previously for the low-speed scale factor, and a plurality of threshold values are set for the high-speed scale factor, with respect to each of the threshold values for the low-speed scale factor, in accordance with the absolute value of the ADPCM code. Since the ADPCM code changes between various different patterns with change in the sound characteristics, such as the voice or tone, and the frequency or level of the signal, then by preparing a plurality of threshold values respectively for the low-speed scale factor and the high-speed scale factor, it is possible to predict the occurrence of click noise accurately.  
         [0009]     In the digital wireless communications device according to the present invention, desirably, the threshold value for the high-speed scale factor is set to a higher value, as the threshold value for the low-speed scale factor becomes higher. This is because the low-speed scale factor can be approximated by passing the high-speed scale factor through a low-pass filter.  
         [0010]     In the digital wireless communications device according to the present invention, desirably, the threshold value for the high-speed scale factor is set to a lower value, as the absolute value of the ADPCM code becomes higher. Since the rate of increase of the high-speed scale factor becomes greater as the absolute value of the ADPCM code becomes higher, this is effective in detecting click noise.  
         [0011]     The invention in another aspect relates to a digital wireless communications device that includes: an error detector for detecting code error in an ADPCM code received via a wireless circuit; an ADPCM decoder for generating a PCM signal by decoding the ADPCM code; and a prediction signal limiter for substituting a prediction signal determined by the ADPCM decoder for the next sampling with the PCM output signal for the previous sampling, if the received input frequency is higher than a predetermined frequency (for example, 1500 Hz) within a predetermined time period after the error detector has judged that there is a code error in the ADPCM code, if the PCM output signal in the previous sampling is a maximum level, and if the prediction signal is the inverse code of the PCM output signal in the previous sampling. By substituting code in such a manner that the code of the prediction signal is not inverted, it is possible to suppress mute processing to a minimum, and hence the call distance can be increased.  
         [0012]     The invention in a further aspect relates to a digital wireless communications device that includes: an error detector for detecting code error in an ADPCM code received via a wireless circuit; an ADPCM decoder for generating a PCM signal by decoding the ADPCM code; and a prediction signal limiter for substituting a prediction signal determined by the ADPCM decoder for the next sampling with the PCM output signal for the previous sampling, if the received input frequency is higher than a predetermined frequency (for example, 1500 Hz) within a predetermined time period after the error detector has judged that there is a code error in the ADPCM code, if the PCM output signal in the previous sampling is a maximum level, and if the prediction signal is the inverse code of the PCM output signal in the previous sampling and is of a level delimited by the 14-bit output limiter of the ADPCM decoder. By substituting code in such a manner that the code of the prediction signal is not inverted, it is possible to suppress mute processing to a minimum, and hence the call distance can be increased.  
         [0013]     In such digital wireless communications device according to the present invention, the prediction signal limiter identifies whether or not the received input frequency is the predetermined frequency, by using a peak prediction coefficient determined by the ADPCM decoder.  
         [0014]     Other aspects, features and alternative embodiments of the invention will be more fully apparent from the ensuing disclosure and appended claims.  
     
    
     DESCRIPTION OF DRAWINGS  
       [0015]      FIG. 1  is a compositional diagram of an ADPCM decoder according to one embodiment of the present invention;  
         [0016]      FIG. 2  is a diagram showing the correspondences between the absolute value of l(k) and W[l(k)];  
         [0017]      FIG. 3  is a comparative graph of yu(k) during normal operation and in the event of an error;  
         [0018]      FIG. 4  is a graph of yu(k) at respective sampling times;  
         [0019]      FIG. 5  is a graph of yl(k) at respective sampling times;  
         [0020]      FIG. 6  is an illustrative diagram of threshold values for yl(k);  
         [0021]      FIG. 7  is an illustrative diagram of threshold values for yu(k);  
         [0022]      FIG. 8  shows a processing flow for code substitution;  
         [0023]      FIG. 9  shows a processing flow for code substitution;  
         [0024]      FIG. 10  is an illustrative diagram showing the range of the prediction signal se(k);  
         [0025]      FIG. 11  is a graph showing characteristics curves for the peak prediction coefficient a 1 (k);  
         [0026]      FIG. 12  is a functional block diagram of a conventional voice quality improvement device; and  
         [0027]      FIG. 13  is a diagram showing the correspondences between the absolute value of l(k) and F[l(k)]. 
     
    
     DETAILED DESCRIPTION  
       [0028]      FIG. 1  is a system composition diagram centered on an ADPCM decoder  10  installed in a digital wireless communications device (for example, a cordless telephone, or the like)  30  according to one embodiment of the present invention. The ADPCM decoder  10  is constituted by an inverse adaptive quantization unit  11 , an adaptive prediction unit  12 , a prediction signal limiter  13 , a reproduction signal calculating unit  14 , an output limiter  15 , a delay unit  16 , a quantization scale factor adaptation unit  17 , an adaptive speed controller  18 , and a detector  19 .  
         [0029]     If an error detector  22  detects a frame error in the received ADPCM code l(k) by means of a Cyclic Redundancy Check, or the like, then it outputs a frame error detection signal to a judgment time adjusting section  20 . If a frame error is detected, the judgment time adjusting section  20  outputs an error detection signal to the substitution unit  21  and the prediction signal limiter  13 , in order to adjust the valid time for the internal processing in the substitution unit  21  and the prediction signal limiter  13 . This internal processing is signal substitution processing for suppressing mute processing due to the occurrence of click noise (as described hereinafter in greater detail). If an error detection signal is received from the judgment time adjusting section  20 , the substitution unit  21  and the prediction signal limiter  13  perform the internal processing described above in respect of a prescribed number of frames.  
         [0030]     When an error detection signal is received from the judgment time adjusting section  20 , if prescribed conditions are satisfied on the basis of the high-speed scale factor yu(k), the low-speed scale factor yl (k), and the ADPCM code l(k), then the substitution unit  21  substitutes the ADPCM code l(k) with a prescribed code l′(k). At the transmitter, the ADPCM code l(k) is obtained by quantizing the differential signal d(k) of a prediction signal and a quantized PCM signal, and then encoding and transmitting the quantized differential signal d(k). More specifically, in the adaptive quantization unit on the transmitter side, the differential signal d(k) is converted to a base  2  logarithm, and is then normalized by means of the scale factor y(k). The value thus obtained, log 2 (d(k))−y(k), is quantized and converted to a code, thereby generating the ADPCM code l(k).  
         [0031]     The inverse adaptive quantization unit  11  generates a quantized differential signal dq(k) on the basis of the ADPCM code l(k) (or l′(k)) and the quantization scale factor y(k), and it outputs the quantized differential signal dq(k) to the adaptive prediction unit  12 , the reproduction signal calculating unit  14  and the detection unit  19 . The adaptive prediction unit  12  generates a prediction signal se(k), a peak prediction coefficient a1( k ) and a peak prediction coefficient a2( k ), on the basis of the quantized differential signal dq(k) and the speed variable tr(k). If prescribed conditions are satisfied with respect to the values of the peak prediction coefficient a1( k ), the PCM signal for the previous sampling, so(k−1), and the prediction signal se(k), then the prediction signal limiter  13  substitutes the prediction signal se(k) with the prescribed code se′(k). The reproduction signal calculating unit  14  generates a reproduction signal sr(k) on the basis of the quantized differential signal dq(k), and the prediction signal se(k) (or se′(k)). The output limiter  15  compresses the 16-bit reproduction signal sr(k) into a 14-bit PCM signal so(k). The delay unit  16  outputs the PCM signal, so(k−1), of the sampling period previous to the PCM signal so(k), to the prediction signal limiter  13 . The quantization scale factor adaptation unit  17  generates a scale factor y(k), a high-speed scale factor yu(k), and a low-speed scale factor yl(k), on the basis of the ADPCM code l(k) (or l′(k)), and the adaptive speed control variable al(k). The scale factor y(k), the high-speed scale factor yu(k) and the low-speed scale factor yl(k) are generated by means of the following equations: 
 
 y ( k )= al ( k )· yu ( k− 1)+[1 −al ( k )]· yl ( k −1)  (1) 
 
 yu ( k )=(1−2 −5 )· y ( k )+2 −5   ·W[l ( k )]  (2) 
 
 yl ( k )=(1−2 −6 )· yl ( k )+2 −6   yu ( k )  (3) 
 
         [0032]     The value of W[l(k)] is defined as shown in  FIG. 2 . The high-speed scale factor yu(k) corresponds to a signal showing a large variation in l(k) (for example, a voice signal), and a low-speed scale factor yl(k) corresponds to a signal showing a small variation in the l(k) (for example, a tone signal).  
         [0033]     The quantization scale factor adaptation unit  17  outputs the scale factor y(k) to the adaptive quantization unit  11 , and outputs the low-speed scale factor yl(k) to the detector  19 . Moreover, the quantization scale factor adaptation unit  17  outputs the high-speed scale factor yu(k−1) and the low-speed scale factor yl(k−1) for the previous sampling period, to the substitution unit  21 . The adaptive speed controller  18  generates an adaptive speed control variable al(k), on the basis of the scale factor y(k), the ADPCM code l(k) (or l′(k)), the speed variable tr(k), and the control variable td(k). The tone and change point detector  19  generates a speed variable tr(k) and a control variable td(k) on the basis of the peak prediction coefficient a2( k ), the quantized differential signal dq(k) and the low-speed scale factor yl(k).  
         [0034]     The aforementioned signals are all sampled digital signals, and the letter k in parenthesis after each signal indicates the sampling time.  
         [0035]      FIG. 3  is a comparative graph showing the behavioral change of yu(k) at respective sampling times, under normal circumstances and when an error occurs. The dotted line shows the normal behavior when no error is input, and the solid line shows the behavior when an error is input intentionally. It can be seen that if a code “0111” having the highest rate of increase in W[l(k)] is input as an error (if l(k) is substituted by “0111”) at point  1 , then consequently, at point  2 , a click noise starts to occur. From this, it can be seen that the occurrence of a click noise is not necessarily limited to the time at which the signal error in l(k) occurs. Furthermore, looking at the behavior of yu(k) under normal circumstances, it can be confirmed that it changes in the shape of a saw tooth. Therefore, it can be seen that when a code l(k) showing a large differential is input, previously to this, an l(k) showing a small change in W[l(k)] has been input and the value of yu(k) has been small. The following reason can be surmised to explain why click noise occurs at point  2 , slightly after point  1 , rather than at point  1  where the code error in l(k) is generated. More specifically, at point  1 , I(k) is substituted by a code containing a large differential in the W[l(k)] value, but since the value of yu(k) is sufficiently small at this point, no click noise is generated. However, at point  2 , although no code error is generated in l(k), an l(k) code is input which has a large differential in the W[l(k)] value with respect to the value of yu(k), and this is thought to be the reason why click noise is generated at this point. Following this premise, it can be postulated that, if a threshold value is set previously for yu(k), then by performing code substitution for l(k) in a direction which reduces the value of yu(k) in cases where the value of yu(k) exceeds the threshold value due to occurrence of an error, and where an l(k) code showing a high rate of increase in W[l(k)] is input, it is possible to suppress the occurrence of click noise.  
         [0036]      FIG. 4  is a comparative graph showing the change in behavior of yu(k) at respective sampling times, when a 1 kHz tone signal and a voice signal are input.  FIG. 5  is a comparative graph showing the change in behavior of yl(k) at respective sampling times when a 1 kHz tone signal and a voice signal are input. By comparing these two graphs, when the input signal is a voice signal, the respective values of yu(k) and yl(k) show relatively large but gradual variation, whereas when the input signal is a tone signal, the respective values of yu(k) and yl(k) are approximately uniform and show small variations. This uniform value varies with the frequency and level of the input signal, and the lower the frequency and the lower the signal level, the lower the value becomes. Furthermore, the value of yl(k) approximates the value obtained by passing yu(k) through a low-pass filter. In this way, yu(k) and yl(k) show different types of variations, depending on the frequency, level and other characteristics of the input signal, and therefore it is difficult to detect click noise by adopting a composition where only one threshold value is provided respectively for yu(k) and yl(k).  
         [0037]     Accordingly, in the present embodiment, a plurality of threshold values are established for combinations of the two parameters, yu(k) and yl(k). More specifically, as shown in  FIG. 6 , a plurality of threshold values yl1 and yl2 are established for yl(k). If yu(k) is greater than yl1 (group 1), then as shown in  FIG. 7 , the plurality of threshold values yu1 — 7, yu1 — 6 and yu1 — 5 are established for yu(k), corresponding respectively to the absolute values 7, 6, 5 of l(k) at which the rate of increase of W[l(k)] is relatively high. If yu(k) is greater than or equal to yl1 and less than or equal to yl2 (group 2), then the plurality of threshold values yu2 — 7, yu2 — 6 and yu2 — 5 are established for yu(k), corresponding respectively to the absolute values 7, 6, 5 of l(k) at which the rate of increase of W[l(k)] is relatively high. If yu(k) is less than yl2 (group 3), then the plurality of threshold values yu3 — 7, yu3 — 6 and yu3 — 5 are established for yu(k), corresponding respectively to the absolute values 7, 6, 5 of l(k) at which the rate of increase of W[l(k)] is relatively high.  
         [0038]     Here, since y1(k) can be approximated to a case where yu(k) is passed through a low-pass filter, then it can be considered that if the value of y1(k) is large, the value of yu(k) will also be large, whereas if the value of y1(k) is small, the value of yu(k) will also be small. The threshold values for yu(k) may be partially overlapping between the respective groups, but as a general tendency, the threshold values for yu(k) in group 1 are greater than the threshold values for yu(k) in group 2, and the threshold values for yu(k) in group 2 are greater than the threshold values for yu(k) in group 3. Furthermore, since the rate of increase in W[l(k)] becomes smaller in sequence, as absolute value of l(k) value changes from 7 to 6 to 5, then the threshold values for yu(k) in group 1 are such that yu1 — 7&lt;yu1 — 6&lt;yu1 — 5, the threshold values for yu(k) in group 2 are such that yu2 — 7&lt;yu2 — 6&lt;yu2 — 5, and the threshold values for yu(k) in group 3 are such that yu3 — 7&lt;yu3 — 6&lt;yu3 — 5. However, the number of threshold values and the overlap between the threshold values for different groups, and the like, can be changed appropriately.  
         [0039]     If the size relationship between the threshold value for yu(k) determined according to the value of yl(k), and the value of yu(k−1) satisfies a prescribed condition, then the substitution unit  21  substitutes l(k) with l′(k). I′(k) is a code other than “1111”, and desirably it is a code which reduces the rate of increase in W[l(k)]. For example, codes having an absolute value of 1 or 2, in other words, “0001” or “0010” are suitable (or in a negative case, codes of “1110” or “1101” respectively). By substituting the code in this way, it is possible to eliminate mute time as far as possible.  
         [0040]     The processing flow for the aforementioned code substitution is now described with reference to  FIG. 8  and  FIG. 9 . This processing flow is executed internally by the substitution unit  21 . If the substitution unit  21  receives an error detection signal from the judgment time adjusting section  20  (S 1 : YES), then it checks whether or not yl(k−1)&gt;μl (S 2 ). If yl(k−1)&gt;yl1 (S 2 : YES) and the absolute value of l(k) is 5, then it checks whether or not yu(k−1)&gt;yu1 — 5 (S 3 ). If yu(k−1)&gt;yu1 — 5 (S 3 : YES), then it substitutes l(k) with l′(k) (S 6 ), and if yu(k−1)≦yu1 — 5 (S 3 : NO), then it leaves the processing flow and returns to S 1 . If yl(k−1)&gt;yl1 (S 2 : YES) and the absolute value of l(k) is 6, then the substitution unit  21  checks whether or not yu(k−1)&gt;yu1 — 6 (S 4 ). If yu(k−1)&gt;yu1 — 6 (S 4 : YES), then it substitutes l(k) with l′(k) (S 6 ), and if yu(k−1)≦yu1 — 6 (S 4 : NO), then it leaves the processing flow and returns to S 1 . If yl(k−1)&gt;yl1 (S 2 : YES) and the absolute value of l(k) is 7, then the substitution unit  21  checks whether or not yu(k−1)&gt;yu1 — 7 (S 5 ). If yu(k−1)&gt;yu1 — 7 (S 5 : YES), then it substitutes l(k) with l′(k) (S 6 ), and if yu(k−1)≦yu1 — 7 (S 5 : NO), then it leaves the processing flow and returns to S 1 .  
         [0041]     If yl(k−1)≦yl1 (S 2 : NO), then the substitution unit  21  checks whether or not yl(k−1)&gt;yl2 (S 7 ). If yl(k−1)&gt;yl2 (S 7 : YES) and the absolute value of l(k) is 5, then it checks whether or not yu(k−1)&gt;yu2 — 5 (S 8 ). If yu(k−1)&gt;yu2 — 5 (S 8 : YES), then the substitution unit  21  substitutes l(k) with l′(k) (S 11 ), and if yu(k−1)≦yu2 — 5 (S 8 : NO), then it leaves the processing flow and returns to S 1 . If yl(k−1)&gt;yl2 (S 7 : YES) and the absolute value of l(k) is 6, then the substitution unit  21  checks whether or not yu(k−1)&gt;yu2 — 6 (S 9 ). If yu(k−1)&gt;yu2 — 6 (S 9 : YES), it substitutes l(k) with l′(k) (S 11 ), and if yu(k−1)≦yu2 — 6 (S 8 : NO), then it leaves the processing flow and returns to S 1 . If yl(k−1)&gt;yl2 (S 7 : YES) and the absolute value of l(k) is 7, then the substitution unit  21  checks whether or not yu(k−1)&gt;yu2 — 7 (S 10 ). If yu(k−1)&gt;yu2 — 7 (S 10 : YES), then it substitutes l(k) with I′(k), and if yu(k−1)≦yu2 — 7 (S 10 : NO), then it leaves the processing flow and returns to S 1 .  
         [0042]     If y1(k−1)≦yl2 (S 7 : NO) and the absolute value of l(k) is 5, then the substitution unit  21  checks whether or not yu(k−1)&gt;yu3 — 5 (S 12 ). If yu(k−1)&gt;yu3 — 5 (S 12 : YES), then it substitutes l(k) with l′(k) (S 15 ), and if yu(k−1)≦yu3 — 5 (S 12 : NO), then it leaves the processing flow and returns to S 1 . If the absolute value of l(k) is 6, then the substitution unit  21  checks whether or not yu(k−1)&gt;yu3 — 6 (S 13 ). If yu(k−1)&gt;yu3 — 6 (S 13 : YES), then it substitutes l(k) with l′(k) (S 15 ), and if yu(k−1)≦yu3 — 6 (S 13 : NO), then it leaves the processing flow and returns to S 1 . If the absolute value of l(k) is 7, the substitution unit  21  checks whether or not yu(k−1)&gt;yu3 — 7 (S 14 ). If yu(k−1)&gt;yu3 — 7 (S 14 : YES), it substitutes l(k) with l′(k) (S 15 ), and if yu(k−1)≦yu3 — 7 (S 14 : NO), it leaves the processing flow and returns to S 1 .  
         [0043]     Next, the code substitution processing for the prediction signal se(k) in the prediction signal limiter  13  is described. The reproduction signal sr(k) is determined by the sum of the quantized differential signal dq(k) and the prediction signal se(k), and it is ascertained that click noise will be generated by code inversion of the prediction signal se(k). As shown in  FIG. 10 , se(k) is expressed in two&#39;s complement notation of 15 bits. 0x3FFF is the maximum positive value and 0 is the minimum positive value. 0x7FFF is the maximum negative value and 0x4000 is the minimum negative value. The range of 0x6000-0x1FFF is the range delimited by the output limiter  15 . If there is a code error in se(k), and correlation with the subsequent input signal cannot be achieved, then se(k) will exceed the maximum positive value, causing an overflow, and hence the code is inverted to obtain a negative value. Normally, it is not probable that a signal of several 100 Hz to less than 1500 Hz will change from the maximum level to an inverted code in one sampling period, and therefore, if the PCM signal so(k−1) of the previous sampling is at the maximum 14-bit level, and se(k) is the same as the value of so(k−1) when the code is inverted, then the prediction signal limiter  13  substitutes the value of se(k) with a value equal to so(k−1). On the other hand, at a frequency in excess of 1500 Hz, the number of samplings per cycle is small, so it is difficult to distinguish the actual sample point from another point, simply from the fact that code inversion has occurred. Since a signal in the audible waveband is not liable to shift from the maximum level to the maximum level of the inverted code in one sampling, then in the case of high-frequency signals of 1500 Hz or above, if the signal so(k−1) for the previous sampling is at the maximum 14-bit level, if se(k) is equal to the value of so(k−1) when code inverted, and if the value of se(k) is a value in the range delimited by the output limiter  15  (the range from 0x6000-0x1FFF), then the prediction signal limiter  13  substitutes the value of se(k) with a value equal to so(k−1). As shown in  FIG. 11 , since the peak prediction coefficient a 1 (k) tends to follow the frequency, it is possible to judge whether the frequency of the received input signal is 1500 Hz or above, by using the value of a 1 (k).  
         [0044]     According to the present embodiment, if a code error occurs in a received ADPCM code l(k), then mute processing can be restricted to a minimum, by substituting l(k) with a code l′(k) which produces a lower rate of increase in W[l(k)], using the substitution unit  21 , and hence a beneficial effect is obtained in that the call distance can be increased. Furthermore, mute processing is also restricted to a minimum by providing a new prediction signal limiter  13 , which also enables the call distance to be increased.  
         [0045]     While the invention has been described herein with reference to illustrative features and embodiments, other variations, modifications and alternative embodiments of the invention will readily suggest themselves to those of ordinary skill in the art based on the disclosure herein, and therefore are to be regarded as being within the spirit and scope of the invention.