DIGITAL COMMUNICATION SYSTEM FOR ADAPTING COMMUNICATIONS PROTOCOL BASED ON A CURRENT COMMUNICATION CHANNEL CONDITION
FIELD OF THE INVENTION
The present invention relates to a system and method for adapting communications protocol to current communications channel conditions, and more particularly, to a system and method for adapting a ratio of message bits to message protection bits based on a current communications channel condition.
BACKGROUND AND SUMMARY OF THE INVENTION
Transmission of voice by digital techniques is now widespread, particularly in long distance telephone and digital radio telephone applications. There are two general approaches to digital voice communications. Voice waveform digitization methods take samples of the speech waveform and represent the sampled waveform amplitudes by digital, binary-coded values. At the receiver, the digital signals are converted back to analog form in an attempt to reconstruct the original speech waveform. Vocoder methods make no attempt to preserve the original speech waveform. Instead, the input speech is analyzed in terms of standardized speech features, each of which can be transmitted in digital coded form. At the receiving end, these features are reassembled, and an
output speech signal is synthesized. Ideally, the synthesized signal, as it is perceived by the human ear, closely resembles the original speech.
No matter what approach is used, errors enter the digital bitstream during transmission over a communications channel caused by noise and transmission system impairments. The number of bits which are erroneously transmitted per unit time is termed the bit error rate (BER). In radio frequency communications, and in particular mobile radio communications, higher bit error rate conditions may be caused by low signal to noise ratio, multi-path fading, phase hits, adjacent channel interference, and other (often changing) impairment characteristics of the current RF channel.
Because errors compromise the message data and in some cases render it useless, procedures have been developed to detect and correct transmission errors. These procedures invariably involve adding overhead "protection bits" to the substantive "message bits" where a message includes speech and digital data. There are a variety of error detection codes, (sometimes characterized as parity check codes) such as cyclic redundancy check codes (CRC). Other codes termed "forward error correcting codes" permit detection and correction of errors by the receiver without retransmission. Convolutional codes and block codes are examples of forward error correcting codes.
In conventional digital communications systems, the number of protection bits is fixed in an initial protocol configuration based on certain design assumptions about conditions of the communications channels over which the digital information will be transmitted. Invariably, the assumptions underlying the fixed design assumptions are not optimal for the actual condition of an individual communications channel. For example, for a poor quality communications channel, a fixed number of protection bits is likely to be too few and therefore results in a low quality received signal. Alternatively, under good channel conditions, the message information may be overprotected or over-coded with the fixed number of protection bits resulting in unnecessary lower data throughput.
What is needed is a mechanism which adjusts the ratio of bits allocated for a message signal of interest to bits allocated for protecting that signal of interest depending upon the current condition of the communications channel. Ideally, for a low quality channel, (e.g., one which results in a higher bit error rate), the number of bits allocated for the message signal of interest would be reduced, and the number of protection bits, such as those used for error detection and/or correction, would be increased. Alternatively, for higher quality channels, (e.g., one which results in a lower bit error rate condition), the number of bits allocated for the message signal would be increased, and the number of protection bits would be decreased. In addition, it is desirable to achieve this optimized
ratio of bits without affecting the data rate of transmission over the communications channel, i.e., the number of bits transmitted per second should remain constant.
The present invention solves the problems and achieves the desired objects described above by optimally adapting the digital communications format to the current communications channel condition. Although a message throughput rate of substantive message bits transmitted per unit time varies to add or remove message protection bits as the current condition of the communications channel varies, a constant bit rate of transmission over the communications channel is maintained. In other words, the number of the substantive message bits transmitted per unit of time varies relative to a number of message protection bits transmitted per unit of time depending on the current condition of the communications channel; but the total number of message and message protection bits transmitted per second does not change.
In a first embodiment, a digital bit stream is transmitted over a digital communications channel between first and second communications devices. The bit stream is divided into a first variable number of bits allocated to substantive message information and a second variable number of bits allocated to protecting the substantive message information. The total of the first and second variable number of bits transmitted per unit of
time is substantially constant. A current quality of the communications channel between the two communications devices is determined preferably throughout the communications. The current channel quality can be detected using a variety of methods including for example current bit error rate, received signal strength, etc. The ratio of the first and second variable numbers of bits may can be continuously varied to any value to adapt to the current quality communications channel. Alternatively, a plurality of ratios of the first variable number and the second variable number may be established. If a first ratio is larger than a second ratio, the first ratio is selected for the higher quality communications channel, and the second ratio is selected for a lower quality communications channel.
The present invention finds particular application in a second embodiment to radio frequency (RF) digital communication systems such as cellular radio telephone and public safety trunk (PST) radio systems. Each portable radio includes an RF transmitter with a voice coder (vocoder) and an RF receiver for conducting digital voice communications over an RF communications channel at a fixed bit rate. The RF communications channel may be divided into a series of frames with each frame including the first number of bits allocated to the speech carried by that frame and a second number of coding bits allocated to encode those speech bits in the frame. One or more base stations are provided to establish and coordinate RF communication between two or more of the portable radios.
A channel condition detector (which may be located in each of the radios and/or a cell/site base station) detects the current condition of the RF communications channel. A radio controller varies the first and second number of bits based on the detected condition of the communications channel while maintaining a substantially constant bit rate. More bits are allocated to the first number of speech bits in the frame, and fewer bits are allocated to the second number of coding bits in the frame when the channel condition is more optimal. When the channel condition is less optimal, fewer bits are allocated to the first number of speech bits in the frame, and more bits are allocated to the second number of coding bits in the frame.
In an alternative embodiment, the radio controller varies the first and second number of bits based on the base station site/cell in which the radio is currently located. Certain base station sites/cells preset the numbers of first and second bits. As the radio roams between sites/cells, the radio changes the first and second number of bits to match the cell's/site's preset numbers.
The features, objects, and advantages of the present invention will become more apparent from the detailed description set forth below taken in conjunction with the drawings in which like reference characters identify corresponding elements throughout.
BRIEF DESCRIPTION OF THE D AWINGS
FIG. 1 is a schematic block diagram illustrating the basic components of a mobile/portable radio communications system;
FIG. 2 is a schematic view illustrating a cell or site pattern for the radio communications system shown in FIG. 2;
FIG. 3 is a flow chart diagram outlining adaptive procedures followed by radios in accordance with the present invention;
FIG. 4 is a function block diagram of a radio unit which may be employed to implement the present invention;
FIG. 5 is a diagram showing a digital communications channel having a framed format;
FIGS. 6 and 7 are high level function block diagrams illustrating various embodiments of the present invention;
FIG. 8 is a function block diagram showing an example for implementing the present invention; and
FIGS. 9 A and 9B illustrate another example embodiment in accordance with the present invention.
DETAILED DESCRπ>TION OF PREFERRED EMBODIMENTS In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular diagrams and techniques in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced in other embodiments and in other ways that depart from these specific, illustrative details. In other instances, detailed descriptions of well known methods, devices, and circuits are omitted so as not to obscure the description of the present invention with unnecessary detail.
FIG. 1 illustrates a mobile/portable radio communications system such as is employed in cellular radio telephone and public safety trunked (PST) radio communications. Plural portable/mobile radio units 21 roam throughout a communications area divided into a plurality of cells or sites represented for example as hexagons 36. Each cell/site includes a base station 23 which includes a plurality of radio frequency transceivers for communicating over radio frequency communications channels with the mobile/portable radio units 21. Each base station 23 is connected to a central switch and control 31 which provides an interface to the public
switched telephone network (PSTN) 30 and optionally to a dispatch console 34 for PST-type applications. Of the number of base station radio frequency channels, one is designated as a control channel for transmitting control information such as identification, paging, call request, call set-up, status, as well as other information. The remaining RF channels may be referred to as working channels and are allocated to handle both voice and data calls.
Because the radio units 21 are portable, their position relative to a current "home" base station 23 changes. That relative position may change considerably in a short period of time when the radio unit is transported in an automobile. FIG. 2 illustrates two mobile type radios 21 ' and 21 " separated from their home base station 23 by different distances. Radio 21 ' is relatively close to the base station and therefore typically receives a stronger, higher quality signal than mobile radio 21 " which is further away from base station 23. Of course, other factors in addition to distance may effect the quality of communication including buildings and other obstructions, weather conditions, and interference from other radios. Nevertheless, assuming for purposes of illustration that radio 21 ' has a better channel that radio 21 ", fewer bits are needed to protect digital messages transmitted from radio 21 '.
A first general embodiment for adapting to current channel conditions is illustrated in the adapt routine (block 50) illustrated in the flowchart of FIG. 3. The current condition of the communications channel is detected (block 52) at the beginning and preferably (but not necessarily) throughout the duration of the communication. The detected condition is evaluated (block 54) to determine if there has been any change in the previously detected condition of the channel. By frequently or substantially continuously detecting the condition of the channel, the system can quickly adapt to situations where a good channel quickly becomes a bad channel, e.g., where the radio moves underneath a bridge or behind a building. If the channel is in good condition, the number of message bits may be increased, and the number of protection bits may be decreased (block 56). Alternatively, if the channel condition is poor or otherwise has deteriorated, the number of message bits may be decreased, and the number of protection bits may be increased (block 58).
The present invention may be applied to any type of digital communications system using any communications media including telephone wires, coaxial cables, optical fibers, and radio frequency channels. Similarly, the present invention may be employed by any type of transceiver suitable for digital communication over any of these communications media. However, a particularly advantageous application of the present invention is to digital radio communications. For this
application, FIG. 4 illustrates in function block format a suitable radio transceiver which may be employed for implementing the present invention in a portable/mobile radio. While this illustrative embodiment is described in terms of being performed by a mobile/portable radio, the present invention may also be implemented at a base station transceiver for adapting its communications with other units, some of which may be moving. Similarly, the present invention could be implemented in wireline digital communications devices that employ modems and vocoders.
Radio frequency signals are transmitted and received by way of antenna 140 through conventional combiner/diplexer 142 which permits reception and transmission using the same antenna. A radio receiver 144 receives signals including both speech and data. Speech signals are routed to voice coder/decoder (vocoder) and other audio signal processing circuits 152 which decodes the received digital information into an analog voice signal for generation at an audio speaker. Digital data is routed to conventional modem 154 for demodulation and connection to an appropriate digital interface. Outgoing data is appropriately encoded and modulated in modem 154 and forwarded to RF transmitter 146 for transmission via combiner 142 and antenna 140.
Speech is detected by a suitable microphone (MIC) which may be voice-activated or may be enabled in PST-type systems by a push to talk
(PTT) button for transmission-trunked communications. The received voice is processed and vocoded by block 152 and passed to RF transmitter 146 for transmission via combiner 142 and antenna 140. Microprocessor 156 with memory 158 coordinates and controls the operation of the various circuitry via an input/output (I/O) interface 150. A display and keypad for operator interface and control of the radio is also provided via I/O 150. A received signal strength indicator (RSSI) 148 is connected to the received signal output from combiner 142 for detecting received signal strength. Received signal strength is one indicator of the current channel condition and may be used alone or in combination with other factors like BER to evaluate the current communications channel condition.
Typically, digital communications are formatted using sequential frames ( 1, 2, 3, 4, 5, ...) as shown in FIG. 5. Each frame includes a predetermined total number of bits. In this example, message bits are illustrated as being in one portion of each frame while message protection bits, such as cyclic redundancy code (CRC) bits, are allocated to a second portion of the frame. Alternatively, the message bits could be encoded over the entire frame with there being no division between message bits and message protection bits, e.g., as with various voice coding approaches including convolutional and block codes. However, even using such message coding approaches, a certain number of bits in the frame are allocated to the message bits actually conveyed in that frame with the
remaining bits being as protection bits. The present invention applies to any type bit allocation and/or frame formatting technique.
As described above, the radio detects the current condition of the channel such as the received signal strength which is routed via I/O 150 to radio microprocessor 156 for analysis. Of course, other channel condition parameters could be used. For example, channel quality could be determined using residual or average bit error rate determinations measured by CRC techniques, Viterbi demodulation metrics, speech quality measurements, etc. The microprocessor 156 then determines based on this detected condition of the channel whether the current allocation of bits between the message and protection bits is optimal. .The microprocessor 156 then selects the appropriate number of bits used to encode the data or voice code the speech to be transmitted by the radio.
The present invention and alternative embodiments need not be dependent on detected channel condition. For example, an operator may manually select appropriate bit allocations independent of the detected channel condition. Alternatively, each base station may predetermine the bit allocations to be used by radios currently located in its geographical site/cell. Roaming radios would switch to the predetermined bit allocations for each newly entered site/cell area when roaming into each area. The predetermined bit allocations could be broadcast by the base station, or they
could be stored in a look up table in each radio along with a site/cell identification. Then when the radio roams into the new site/cell and detects the broadcast site/cell identification, the radio can look up the appropriate predetermined bit allocations for that site/cell.
One way of managing these numbers of bits is to establish a ratio of bits allocated for the message itself to bits allocated for message protection. A plurality of such ratios A, B, ... N may be established with the microprocessor 156 selecting the ratio appropriate for the current channel condition. For example, under more optimal channel conditions, the ratio is increased or a larger ratio is selected. In less optimal conditions, the ratio is decreased or a smaller ratio is selected.
Even though the allocation of bits to message and message protection varies which affects message throughput, (i.e., the number of message bits transmitted per second), the actual bit rate in terms of total bits (message + protection) transmitted per second is substantially fixed. In this way, system performance is optimized in accordance with the current condition of the channel. For example, for a current channel with high bit error rate condition, a lower ratio is used. In a vocoding environment, this translates into a lower rate speech coder because fewer bits of speech information are actually transmitted per unit time than would be otherwise. The present invention may be used with any speech encoding algorithm
including for example linear predictive coding. Using a greater number of bits are used to vocode the speech increases the chance that the speech can be decoded intelligibly by the receiver despite the poor channel. Accordingly, speech quality improves with additional bits allocated or used in speech coding. Alternatively, speech with reasonable quality can be intelligibly decoded with fewer vocoding bits under better channel conditions thereby increasing the throughput rate of the speech data transmitted per unit time. A higher rate speech coder is effectively implemented when channel conditions are improved.
Accordingly, the performance and reliability of the communications system are optimized for the currently existing communications conditions. In essence, the throughput rate of the message (either speech bits or data bits) varies to add or remove overhead bits such as forward error detection/correction bits as the communications channel changes. Another advantage of the present invention, in addition to improved performance and reliability, is that substantially constant bit error rate may be achieved independent of the channel condition.
Bit allocation or ratio selection can be performed at either the transmitting radio or the receiving radio at the initiation of the communication and preferably throughout the communication. Bit allocation/ratio selection just at the start of the communication may be
suitable for relatively stationary communications or in environments where a channel is only used for a short period of time such as in half-duplex, transmission-trunked systems.
Detection/determination of the signal channel condition detection/determination and the allocation of bits can be implemented in any number of ways. FIGS. 6 and 7 show two, non-limiting, example implementations. In FIG. 6, receiving transceiver 1 determines the ratio of message to message protection bits based on detected signal quality of the received signal over the information forward link. The detected signal quality is then communicated back to the transmitting transceiver via a return link. In the cellular and PST communications environments which employ control and working channels as described earlier, the signal quality could be detected and or communicated using either the control channel or a working channel. Based on the detected signal quality returned to the transmitting transceiver 2, a ratio of message-to-protection bits may be selected, e.g., ratio A, ratio B, ... ratio N. In this implementation, the ratio is selected effectively by the receiving transceiver 1.
Alternatively as shown in FIG. 7, the ratio could be selected by the transmitting transceiver 2. A signal quality detector in transmitting transceiver 2 detects the quality of the current communications condition
between transceiver 1 and transceiver 2 over a return link. Based on the detected signal quality, one of the possible ratios A, B, ... N is selected. This configuration, of course, assumes some correlation in channel conditions from the transmitter to receiver and the channel conditions from the receiver to the transmitter. The receiving transceiver 1 determines at what ratio the information has been transmitted over the forward link. This information can be transmitted as control information over the channel, or the receiving transceiver 1 may determine the ration directly from the received information. One possible technique for determining the ratio from the received information would be to decode the information using all the ratios in which the information could have been transmitted, and then determine which ratio has the lower bit error rate or a matching CRC.
An example of variable throughput rate coding of speech is now described in conjunction with FIG. 8. This example uses a straightforward approach of pulse code modulated (PCM) speech using a simple coding scheme. An analog to digital converter (A/D) receives the analog speech and generates PCM data. At each sample of the speech, an 8-bit digital code is generated corresponding to the amplitude level of the speech waveform at that sample moment. Each 8-bit PCM input is provided to a voice coder that encodes the speech at three variable rates: 12/8, 12/6, and 12/4.
The voice coder may only encode a certain number of the most significant bits of the 8-bit PCM input. In this example, the three most significant bits are encoded into seven bits with the remaining least five significant bits being uncoded. Using this 7/3 most significant bit code, the eight input bits are converted to twelve coded output bits. In other words, there are eight message bits and four protection bits for twelve total bits. The lower rate coders 12/6 and 12/4 code the most significant bits more heavily (with more protection bits) to protect those bits under less optimal communications conditions. For example, the 12/4 code may be achieved by simply repeating the four most significant bits three times for a total of twelve bits. Regardless of the particular coding ratio selected, a constant twelve bits are transmitted by the transmitter over the channel. Thus, the data bit rate per second is fixed while the data throughput rate is variable. In this example, anywhere from eight to four speech bits may actually be transmitted during that time interval.
At the receiver, the voice decoder decodes the received twelve bits using the appropriate decoding algorithm in order to extract the corresponding number of speech bits, i.e., 8, 6, or 4 from the twelve total bits. For the 12/4 encoded bits, for example, the 12/4 decoder might decode the received twelve bits by majority voting bits (0-3), (4-7), and (8-1 1) to arrive at the four actual speech bits. The digital analog converter then formulates an analog waveform that approximates this portion of the
original speech waveform. When the received speech bits are less than the number of inputs into the digital to analog converter, as in this example of four speech bits being input an 8-bit digital to analog converter, the least significant bits may be filled with binary zeros.
FIGS. 9A and 9B show a more sophisticated vocoding scheme. In this example, the vocoder bit transmission rate is 7.2 kbps with 10 msec frames of 72 bits. FIG. 9A illustrates a bit allocation appropriate for a relatively good communications channel, i.e., one which requires low bit error protection. A total number of 45 speech bits (12 + 12 + 11 + 10) are selectively coded using an additional 27 protection bits to generate a total of 72 output bits (24 + 23 + 15 + 10). In terms of data rate, of the total 7.2 kbps data transmission rate, 4.5 kbps are allocated to the speech bits, and 2.7 kbps are allocated to protection bits. In this example, certain ones of the 45 speech bits are selectively encoded based on their priority or other significance. The twelve top "priority 1" bits are encoded using a (24,12) extended Golay code. The next twelve "priority 2" bits are encoded with a (23,12) extended Golay code. The next eleven "priority 3" bits are encoded using a (15,11) Hamming code, and the least significant "priority 4" bits are not encoded at all.
For a less optimal channel condition, the bit allocation ratio illustrated in FIG. 9B may be adopted. In this instance, only 37
(7 + 12 + 12 + 6) speech bits are transmitted for each total of 72 output bits transmitted over the channel per unit in time, e.g., frame. In terms of data rate, 3.7 kbps are allocated to vocode speech bits, and 3.5 kbps are allocated to forward error correction bits. Thus, the 4.5 kbps vocoder shown in FIG. 9 A has a higher rate than the 3.7 kbps vocoder shown in FIG. 9B. However, the increased number of protection bits in FIG. 9B improves the chance that intelligible speech will be decoded at the receiver under the poor channel condition. For both protocol format ratios, the same bit error rate for two different communications may be achieved even though the transmission conditions under which these communications occur may vary significantly. The seven priority 1 bits are encoded using a (19,7) extended Golay code. The next twelve priority 2 bits are encoded using a (24,12) extended Golay code; and the next twelve priority 3 bits are encoded using a (23,12) Hamming code, and the six lowest priority 4 bits are not coded.
This description of preferred embodiments is provided to enable a person skilled in the art to make and/or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments. Thus, the present invention is not intended to be limited to these illustrative embodiments but is to be accorded the widest
scope consistent with the principles and novel features disclosed in accordance with the following claims.