1. Technical Field
This disclosure relates to data communications. More particularly, the present disclosure relates to reducing false alarm in the presence of random signals.
2. Related Art
Global System for Mobile Communications (GSM) is one of the leading digital cellular systems. GSM uses narrowband TDMA (time division multiple access), which allows eight simultaneous calls on the same radio frequency. In the GSM standard, class 1a bits are being protected by both a cyclic redundancy code (CRC) and convolution code. The CRC typically has K bits (e.g., NumOfCrcBits=3). In the receiver, the CRC bits are calculated and compared to the transmitted CRC bits (which were calculated in the transmitter). If the comparison fails, the block is declared to be an erroneous block. When a random signal is received, the probability that the block will not be declared as erroneous is 2−NumOfCrcBits, where NumOfCrcBits is the number of CRC bits used by the cyclic code.
CRC error misdetection has an effect on the voice quality in cellular communication; therefore, tight requirements on the error misdetection rate are enforced. For GSM, the error misdetection rate is defined in a 3rd Generation Partnership Project (3GPP) Technical Specification (TS 05.05) as less than 1 misdetection per minute (i.e. ˜0.03%). Comparison of this error misdetection rate requirement and the CRC misdetection rate (12.5% for 3 bits CRC) forces many system designers to include additional criteria for block error detection to reduce the error misdetection rate. However, additional error detection systems (e.g. to increase the number of CRC bits) and processes add to the cost of the overall system and reduce the potential bandwidth. An improved error detection implementation is needed.
Thus, systems and methods for reducing false alarm in the presence of random signals are needed.
Embodiments illustrated by way of example and not limitation in the figures of the accompanying drawings, in which:
a and 2b are flow diagrams illustrating an embodiment for reducing false alarm in the presence of random noise in accordance with the systems and methods described herein.
a and 3b are flow diagrams illustrating an embodiment of the normalization and re-encoding process for reducing false alarm in the presence of random noise.
a and 4b illustrate the accumulated probability of the normalized correlation metric in an embodiment and the generation of a threshold to determine random noise from a valid code word.
a and 5b are block diagrams of a computing system on which an embodiment may operate and in which embodiments may reside.
Systems and methods for reducing false alarm in the presence of random signals are disclosed. In the following description, numerous specific details are set forth. However, it is understood that embodiments may be practiced without these specific details. In other instances, well-known processes, structures and techniques have not been shown in detail in order not to obscure the clarity of this description.
Various embodiments described and claimed herein implement a system and method for reducing false alarm in the presence of random noise. The various embodiments implement an erroneous block detector which, in one embodiment, uses rate distortion computation to discriminate between a valid frame and random bits (e.g. random due to different encryption of neighbor users). These example embodiments will be described in more detail below.
In a conventional GSM-based network, a data block of a frame is typically interleaved on eight frames. In the conventional approach, the Signal to Noise ratio (SINR) is estimated based on the known transmitted training sequence for each frame. When a random signal is received, usually all the bits of the frame appear random (due to encryption). Although the standard test does not include them, there could be situations where the interfering base is synchronized to the wanted base and has a similar training sequence. Those scenarios would happen in high channel reuse (e.g. ⅓ or 1/1). In those cases, the SINR as the sole criterion is not good enough (because the training sequence will be valid) and the data bits at the equalizer output will have relatively strong metrics, but with random sign. By using the averaged SINR as the sole criterion for block validation, the conventional approach may degrade false block rejection performance in some cases. In addition, for some cases, especially high-speed channels, the noise estimation is misleading because it was calculated only during the training sequence interval. Therefore, it is important to take convolution codes structures into consideration. The various novel embodiments described and claimed herein make a GSM communication device more robust and improve false block rejection performance.
In
Turning to
Referring to
where SlotsCirLin[k] is the linear estimated signal to noise level for each frame (where the frame number k is ranging from 0 to FramesPerBlock-1). Then, an absolute value summation, SumAbsVal, is generated in processing block 312 to bring the correlation metric into the range [0,1] as follows:
where NumOfConvOutBits is the number of coded bits (e.g. 378) and InpCodeWord[k] is the input block's soft symbols after equalization. Then, in processing block 314, the correlation metric is generated as follows:
where CodeWord[k] is the bit-stream after re-encoding. The operation % is modulo. This operation is done because subsequent bits inside the block are interleaved to subsequent frames inside the interleaving window (FramesPerBlock). The normalization by SumAbsVal is done to bring the correlation metric into the range [0,1]. The metric is generated to be independent of the signal to noise level. Processing then continues at the bubble A illustrated in
b depicts a block diagram of the decoding and re-encoding processes in an example GSM modem. In this example, eight input frames are received in a data block in processing block 352. These frames are equalized (each frame separately, as performed inside processing block 352) and interleaved. A de-interleaving operation is performed on the frames in processing block 354. Then, soft symbols are extracted in processing block 356 (done after the de-interleaver to save processing overhead in the re-encoding process). In addition in processing block 357, a de-puncturing operation is performed, as the de-punctured bits should not be included in the correlation metric because they do not add any additional information.
In processing block 359, a Viterbi decoding operation is performed on the frame data bits. After the Viterbi decoder operation, the un-coded bits from the input data block are re-encoded in processing blocks 361, 363, and 365. The first 50 bits out of 182 class 1 bits, in this example, are protected by three parity bits used for error detection. The 182 information and parity bits of class 1 are reordered in processing block 361, defining 189 information plus parity plus tail bits of class 1. These bits are encoded in processing block 363 with the ½ rate convolution code and a puncturing operation is performed on the coded bits in processing block 365 to produce 378 re-coded hard bits. These re-encoded bits can be provided as input to the generation of the normalized correlation metric in processing block 264. Processing then continues at the bubble A illustrated in
Referring to
The right six curves 412 (appearing one on top of the other) represent the CDF of the normalized correlation metric under valid code words (e.g. valid GSM AMR code words after convolution encoding) for a different code rate (The correlation metric was calculated under different code rates in the receiver while the transmitter generated valid code words). From curves shown in
The accurate spectrum of the distances between all the random words of length N and the closest code word of convolution code is untraceable. Under the assumption that the convolution code is a good source code, a rate distortion computation is used that will give an upper bound on the minimum expected Hamming distance.
Referring to
a and 5b show an example of a computer system 200 illustrating an exemplary client computer system in which the features of an example embodiment may be implemented. A handheld computing device is illustrated by example in
An optional data storage device 228 such as a magnetic disk, optical disk, memory stick, flash memory device, and the like and its corresponding drive may also be coupled to computer system 200 for storing information and instructions. Computer system 200 also typically includes a display device 204, such as a plasma display or liquid crystal display (LCD), for displaying information to a computer user. For example, image, textual, video, or graphical depictions of information may be presented to the user on display device 204. Typically, system 200 includes an input device 208, including function keys coupled to bus 216 for communicating information and/or command selections to processor 220. Another type of user input device is cursor control device 206, such as a conventional mouse, trackball, or other type of cursor direction keys for communicating direction information and command selection to processor 220 and for controlling cursor movement on display 204.
A communication device 226 may also be coupled to bus 216 for accessing remote computers or servers, such as a web server, or other servers via the Internet, for example. The communication device 226 may include a wired or wireless modem, a network interface card, or other well-known interface devices, such as those used for interfacing with Ethernet, Token-ring, wireless, or other types of networks. In any event, in this manner, the computer system 200 may be coupled to a number of servers via a conventional network infrastructure.
The system of an example embodiment includes software, information processing hardware, and various processing steps, as described above. The features and process steps of example embodiments may be embodied in machine or computer executable instructions. The instructions can be used to cause a general purpose or special purpose processor, which is programmed with the instructions to perform the steps of an example embodiment. Alternatively, the features or steps may be performed by specific hardware components that contain hard-wired logic for performing the steps, or by any combination of programmed computer components and custom hardware components. While embodiments are described with reference to the Internet, the method and apparatus described herein is equally applicable to other network infrastructures or other data communications systems.
It should be noted that the methods described herein do not have to be executed in the order described, or in any particular order. Moreover, various activities described with respect to the methods identified herein can be executed in repetitive, simultaneous, recursive, serial, or parallel fashion. Information, including parameters, commands, operands, and other data, can be sent and received in the form of one or more carrier waves through communication device 226.
Upon reading and comprehending the content of this disclosure, one of ordinary skill in the art will understand the manner in which a software program can be launched from a computer-readable medium in a computer-based system to execute the functions defined in the software program described above. One of ordinary skill in the art will further understand the various programming languages that may be employed to create one or more software programs designed to implement and perform the methods disclosed herein. The programs may be structured in an object-orientated format using an object-oriented language such as Java, Smalltalk, or C++. Alternatively, the programs can be structured in a procedure-orientated format using a procedural language, such as assembly or C. The software components may communicate using any of a number of mechanisms well known to those of ordinary skill in the art, such as application program interfaces or inter-process communication techniques, including remote procedure calls. The teachings of various embodiments are not limited to any particular programming language or environment, including hypertext markup language (HTML) and extensible markup language (XML).
Thus, other embodiments may be realized. For example,
Various embodiments are described. In particular, the use of embodiments with various types and formats of user interface presentations may be described. It will be apparent to those of ordinary skill in the art that alternative embodiments of the implementations described herein can be employed and still fall within the scope of the claims set forth below. In the detail herein, various embodiments are described as implemented in computer-implemented processing logic denoted sometimes herein as the “Software”. As described above, however, the claimed invention is not limited to a purely software implementation.
Thus, a system and method for reducing false alarm in the presence of random signals are disclosed. While the present invention has been described in terms of several example embodiments, those of ordinary skill in the art will recognize that the present invention is not limited to the embodiments described, but can be practiced with modification and alteration within the spirit and scope of the appended claims. The description herein is thus to be regarded as illustrative instead of limiting.