Abstract:
In a simultaneous voice and data communications system comprising two modems, an autorate feature is implemented in one illustrative method by adding a silence detector to the receiver circuitry of at least one of the modems in such a way that noise statistics for the communications channel are only accumulated during intervals of silence. If the resulting noise statistics exceed a predetermined threshold, i.e., the communications channel is too noisy, the receiving modem negotiates a lower data rate with the transmitting modem. In another illustrative method, the transmitting modem provides a signal, which represents an interval of silence, to the receiving modem. Upon receipt of the signal, the receiving modem accumulates error statistics in order to determine if the communications channel is too noisy.

Description:
This application is a continuation of application Ser. No. 08/076,525, filed on Jun. 14, 1993, abandoned. 
    
    
     BACKGROUND OF THE INVENTION 
     The present invention relates to data communications equipment, e.g., modems. In particular, this invention relates to the transmission of both voice and data signals over the same communications facility at the same time. 
     A standard feature in most modems today is the &#34;autorate&#34; feature. In particular, each modem of a data connection continually tests the quality of the communications channel to adjust the data transmission rate, i.e., the bit rate, between the modems. For example, if the data signal begins to experience an increase in errors, i.e., a higher error rate, then the modems will negotiate a lower data rate between themselves. Conversely, if over a period of time the error rate is lower than a predetermined threshold, the modems will negotiate a higher data rate between themselves. 
     A number of prior art autorating techniques are illustrated in U.S. Pat. No. 4,756,007 issued Jul. 5, 1988 to Qureshi et al.; U.S. Pat. No. 4,991,184 issued Feb. 5, 1991 to Hashimoto; and U.S. Pat. No. 5,007,047 issued Apr. 9, 1991 to Sridhar et al. Generally speaking, the prior art approach operates in the following manner. The receiving modem performs a &#34;slicing&#34; operation on each received signal point. This slicing operation simply estimates the closest symbol to the received signal point from a known constellation of symbols. This is known also as a &#34;hard decision.&#34; The magnitude of the deviation of the received signal point from the closest symbol is assumed to be proportional to the ambient noise condition of the communications channel. When the ambient noise condition of the channel exceeds in either direction a set of predetermined limits, the modems negotiate between themselves a change in the data rate to accommodate the estimated ambient noise of the communications channel. 
     The co-pending, commonly assigned, U.S. patent application of Gordon Bremer and Kenneth D. Ko, entitled &#34;Simultaneous Analog and Digital Communication,&#34; Ser. No. 08/076,517, filed Jun. 14, 1993, which is hereby incorporated by reference, discloses a simultaneous voice and data communication system in which a voice signal is simultaneously added to a data signal for transmission over a communications channel to a receiving modem. Generally, in each signaling interval, T, the data signal is represented by a data symbol, which is a reference signal point value. To this data symbol is added a voice signal vector, which represents the voice signal. The addition of the voice signal vector to the data symbol results in a signal point being selected that is a function of both the data signal and the voice signal in each signaling interval T. 
     Unfortunately, since the selected signal point is different from the selected data symbol, the prior-art method of autorating results in the receiving modem erroneously computing an error signal that is proportional to the transmitted voice signal and not the ambient noise of the communications channel. Consequently, the prior-art method of auto-rating is ineffective in a simultaneous voice and data communications system. 
     SUMMARY OF THE INVENTION 
     In accordance with the invention, an autorating method and apparatus is disclosed in which the evaluation of ambient noise on a communications channel only occurs during silent periods of the voice signal. When a silent period is detected, noise statistics of the communications channel are then collected. 
     In a simultaneous voice and data communications system comprising two modems, an autorate feature is implemented in one illustrative embodiment by adding a silence detector to the receiver circuitry of at least one of the modems. The silence detector provides an enabling signal in such a way that noise statistics are only accumulated during intervals of silence. If the resulting noise statistics exceed a predetermined threshold, e.g., the communications channel is too noisy, the receiving modem negotiates a lower data rate with the transmitting modem. Conversely, if the resulting noise statistics are lower than a predetermined threshold, the receiving modem negotiates a higher data rate with the transmitting modem. 
     In another embodiment of the invention, a transmitting modem provides the enabling signal to the receiving modem during periods of silence. In particular, the enabling signal is a control message passed to the receiving modem on a secondary communications channel. In response to receiving the enabling signal, the receiving modem then accumulates error statistics in order to determine whether to change the data rate over the communications channel. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     FIG. 1 shows a receiver embodying the principles of the invention; 
     FIG. 2 shows a block diagram of autorate block 280 shown in FIG. 1; 
     FIG. 3 illustrates a voice signal&#39;s frequency spectrum; 
     FIG. 4 shows another receiver embodying the principles of the invention; 
     FIG. 5 shows a block diagram of autorate block 380 shown in FIG. 4; and 
     FIG. 6 illustrates a method for use in the embodiment of FIG. 4. 
    
    
     DETAILED DESCRIPTION 
     An embodiment of the inventive concept is shown in FIG. 1. As disclosed in the above-mentioned co-pending patent application a modulated simultaneous voice and data input signal is received from a communications channel and applied to demodulator 210 which develops the in-phase and quadrature components. Those are applied to slicer 220, which identifies the symbols, i.e., maps the received signal point to the closest data symbol from the currently selected symbol constellation (not shown). It is assumed that slicer 220 stores a number, or set, of symbol constellations, of which one symbol constellation is the currently selected constellation, which is controlled by CPU 290 (discussed below). Slicer 220 provides the identified symbols to 2-to-1 de-mapper 230. In addition, FIG. 1 includes 1-to-2 mapper 240 that is responsive to the symbols developed by slicer 220. The output of mapper 240 is a set of in-phase and quadrature components for the identified symbols. The outputs of mapper 240 are subtracted from the outputs of demodulator 210 in subtractors 250 and 260 to provide a pair of analog samples on lines 251 and 261. These outputs are applied to 2-to-1 de-mapper 270, which recombines the analog samples to form the original analog signal, e.g., a voice signal, on line 271. 
     As shown in FIG. 1, slicer 220 provides an error signal on line 221 to autorate element 280. This error signal represents the error distance between each received signal point and the closest symbol of the currently selected constellation. Turning now to FIG. 2, a more detailed block diagram of autorate element 280 is shown. The error signal from slicer 220 is applied to filter 110, which both squares and averages the error signal to generate a signal on line 111 that is proportional to the mean-squared-error (MSE). This MSE signal is applied to threshold detector 115. The latter, when operating in accordance with the invention (described below), compares the MSE signal to a predetermined low threshold and a predetermined high threshold. Threshold detector 115 provides two output signals to counter 120, the signal on line 117 representing when the MSE signal is above the high threshold, and the signal on line 118 representing when the MSE signal is below the low threshold. Counter 120 counts the number of times that either the MSE signal is above or below these predetermined thresholds and provides two rate change signals on lines 281 and 282, respectively. When the current count stored in counter 120 exceeds a predetermined high error number, counter 120 signals CPU 290 via line 281 to change the data bit rate in the &#34;down&#34; direction. On the other hand, when the current count stored in counter 120 exceeds a predetermined low error number, counter 120 signals CPU 290 via line 281 to change the data bit rate in the &#34;up&#34; direction. In response to either of these rate change signals, CPU 290 resets counter 120 via a signal on line 291, and initiates a negotiation with a far modem (not shown) in accordance with CCITT standards to change the data bit rate in the appropriate direction. In addition, once the data bit rate is changed, CPU 290 provides a signal to slicer 520 to change the selected constellation to one that provides the new data bit rate, i.e., of bits/symbol. 
     In addition, CPU 290 occasionally resets counter 120, via a signal on line 291, even if there is no signal, via line 281, to change the data rate. This occasional resetting of counter 120 is necessary otherwise counter 120 will continue to accumulate noise statistics and eventually signal a data rate change even though the quality of the communications channel is acceptable. For example, it can be a priori determined that noise statistics are accumulated over a one second time interval during which an enabling signal on line 46 is active (discussed below). If CPU 290 receives no data rate change signal after one second, CPU 290 then resets counter 120. On the other hand, if CPU 290 receives a data rate change signal before the one second expires, CPU 290 then restarts the measurement of the one second time interval. As mentioned above, CPU 290 only measures this one second time interval when the enabling signal on line 146 is active. Alternatively, counter 120 can be incremented or decremented in a &#34;leaky&#34; fashion. In particular, when the MSE signal is above a predetermined threshold, counter 120 is incremented by an amount K. However, when the MSE signal is below the predetermined amount, counter 120 is decremented by an amount J, where J&lt;K. TMs ensures that over a long period of time counter 120 will decrement notwithstanding the presence of burst noise on the communications channel. 
     As noted above, and in accordance with the invention, threshold detector 115 only compares the MSE signal to a predetermined low threshold and a predetermined high threshold during a particular time interval. The particular time interval, in which threshold detector 115 operates, is under the control of voice energy detector 145. The latter receives the output of de-mapper 270 and estimates whether or not a voice signal is being received. A typical frequency spectrum of a voice signal is shown in FIG. 3. Illustratively, voice energy detector 145 comprises a simple band pass filter, which provides a signal on line 146 if the energy of the voice signal in the 200 to 500 Hz frequency range is below a predetermined amount of energy, represented by line 148 from FIG. 3. In other words, threshold detector 115 only functions when the energy of the received voice signal is low, e.g., during periods of silence. As a result, autorate element 280 estimates the amount of noise present on the communications channel only when the received voice signal comprises a small amount of energy. Consequently, any errors in the received signal are then attributed to the result of a noise signal rather than a person talking. 
     Another embodiment of the invention is shown in FIG. 4. In this embodiment, no voice signal is applied to autorate element 380. Instead, CPU 390 receives control channel information as is known in the prior art from the far modem (not shown) via a signal on line 289. In particular, a control channel, or secondary channel, provides control and signaling information between the two modems. This secondary channel can be time division multiplexed with the data stream or use a part of the frequency spectrum. In the context of this invention, the secondary channel allows the transmitting modem to signal the receiving modem when no voice is being transmitted simultaneously with the data signal (discussed below). 
     In particular, when CPU 390 receives a message, or enabling signal, from the transmitting modem that no voice signal is being transmitted, CPU 390 enables autorate element 380 via a signal on line 294. Autorate element 380 is shown in more detail in FIG. 5 and functions in a similar fashion to autorate element 280 described above, except that the operation of threshold detector 315 is controlled by CPU 390, which is responsive to the above-mentioned enabling signal from the far modem. Otherwise, CPU 390 functions as described above. 
     An illustrative method for use in conjunction with the embodiment of FIG. 4 is shown in FIG. 6. The method shown in FIG. 6 assumes a data connection between a far-end modem, which is transmitting a simultaneous voice and data signal, and a near-end modem, which is receiving the simultaneous voice and data signal. It is also assumed that a secondary channel exists as is known in the prior art for communication of signaling and control information between the far-end modem and the near-end modem. As disclosed in the above-mentioned co-pending patent application of Gordon Bremer and Kenneth D. Ko, the far-end, or transmitting, modem has access to all the information in order to make a determination of whether or not a voice signal is being communicated to the near-end, or receiving, modem. For example, in the above-mentioned co-pending patent application of Gordon Bremer and Kenneth D. Ko, a voice signal is added to the signal point coordinates of a selected data symbol. Therefore, if only the signal points corresponding to selected data symbols are being transmitted, the transmitting modem knows that no voice signal is present. 
     In step 605, the far-end modem monitors its transmission to detect a silence interval. If a silence interval is detected, the far-end modem transmits a &#34;silence indicator&#34; message to the near-end modem in step 610 on a secondary channel. However, if a silence interval is not detected, the far-end modem does not transmit the silence indicator message in step 615. 
     In the near-end modem, CPU 390 monitors the secondary channel for the silence indicator message in step 640. If no silence indicator message is received, CPU 390 disables autorate element 380 in step 645. However, if a silence indicator message is received, CPU 390 enables autorate element 380 in step 650. In other words, the silence indicator message enables and disables the operation of any apparatus or method that estimates the ambient noise of the communications channel. 
     The foregoing merely illustrates the principles of the invention and it will thus be appreciated that those skilled in the art will be able to devise numerous alternative arrangements which, although not explicitly described herein, embody the principles of the invention and are within its spirit and scope. 
     For example, although the invention is illustrated herein as being implemented with discrete functional building blocks, e.g., autorate element 280, etc., the functions of any one or more of those building blocks can be carried out using one or more appropriate programmed processors. In addition, the threshold values and error numbers can vary as a function of the selected constellation, i.e., data rate, and it is not limited to the use of MSE estimation. Also; other forms of voice signal detectors can be used, e.g., looking for pitch periods in the voice signal. Finally, other forms of secondary channels are also possible, e.g., dithering a signal point constellation by adding a signal point to the constellation.