Abstract:
A method and apparatus for a frequency shift keying (FSK) demodulator use a configuration to improve the autocorrelation for better receiver performance. The demodulator uses parallel first and second lines connected to the same input signal, the first line having a delay element to provide an integer-delay of M, the second parallel line having a filter for causing a group delay of τ+M where τ is fractional, and a multiplier for receiving the signals from said first and second lines and generating a resultant signal from which a base band signal can be recovered. The resultant signal is passed through a low pass base band filter to recover the base band signal. τ may have a value of 3.25 and M may be 6. The demodulator may selectively be implemented in caller ID service and in low end modems chosen from a group comprising V.21, Bell 103, V.23 and Bell 202A modems.

Description:
RELATED APPLICATIONS  
       [0001]     Benefit is claimed under 35 U.S.C. 119(e) to U.S. Provisional Application Ser. No. 60/611,250, entitled “System, apparatus, and Method for frequency shift keying Signal Demodulator” by Gopinath Patra, filed Sep. 17, 2004, which is herein incorporated in its entirety by reference for all purposes. 
     
    
     FIELD OF THE INVENTION  
       [0002]     The present invention relates generally to FSK (frequency shift keying). More particularly, the invention relates to a modification in a conventional FSK demodulation technique.  
       BACKGROUND OF THE INVENTION  
       [0003]     FSK is used is many low-end modems like (V.21, Bell103, V.23, Bell202A) and Caller ID service which is part of telephone services. Caller ID receivers are subjected to stringent tests as per TIA/EIA-777. Non-coherent FSK receivers are generally known to be simpler than other QAM receivers. In the absence of a complex carrier and clock recovery block, the receiver performance depends heavily on the demodulation. The internal clock running at the baud rate is recovered from the demodulated signal. This internal clock indicates when to slice the signal for data bits and is important for receiver performance. Improving the non-coherent FSK receiver without significantly increasing the MIPS and memory requirement becomes a challenge when the receiver needs to be relatively simple. What is needed is a simple improvement in a conventional demodulator, providing the extra performance without increasing complexity.  
       SUMMARY OF THE INVENTION  
       [0004]     The invention teaches an FSK demodulation method and apparatus with improved autocorrelation between a received signal and a time-shifted version of the signal without increasing the complexity of the demodulation configuration. An embodiment of the invention resides in a frequency shift keying (FSK) demodulation method using improved correlation, comprising: using a demodulator wherein autocorrelation between a signal and a time-shifted version of the signal is used, said modulator having a base band signal as an output; configuring the demodulator to include first and second lines parallel connected to the same input signal, said first line having a first signal with a delay M for a signal coming into the demodulator, said second line having a second signal passing through a filter with a group delay of τ+M where τ is a fraction, the method including the step of multiplying said first and second signals to obtain a resultant signal from which said base band signal may be obtained. The resultant signal may be passed through a low pass base band filter to obtain the base band signal. The delay filter may be derived using one polyphase component of a SINC interpolating filter giving a fractional delay close to a fractional delay τ+M. The delay M might be configured to depend on a length of the SINC interpolating filter.  
         [0005]     The method of the invention may be implemented in low end modems chosen from a group comprising V.21, Bell 103, V.23 and Bell 202A modems.  
         [0006]     A second embodiment resides in a frequency shift keying demodulation apparatus, comprising: an automatic gain control (AGC) block connected to receive an analog front end signal; a demodulator connected to a signal from said AGC block and configured to provide an output into a slicer which provides a digital symbol after comparing said output against a threshold; a baud recovery clock which is connected to recover a corrected sample sliced from said demodulator output; the demodulator including first and second parallel connected lines, the first parallel connected line having a first signal with a group delay M for said signal from the AGC block, the second parallel connected line having a delay filter with a second signal having a delay of τ+M where τ is a fraction.  
         [0007]     The demodulation apparatus advantageously includes a multiplier for multiplying signals in the first and second lines connected in parallel. Expediently, the demodulator includes a low pass base band filter through which a signal in the first and second parallel connected lines after multiplication is passed.  
         [0008]     Also included herein is an article comprising a storage medium having instructions thereon which when executed by a computing platform will result in execution of a frequency shift keying (FSK) demodulation method using improved correlation, as stated above. It has been experimentally determined that there is an improvement of about 1.5 dB in the performance of the demodulator by using the configuration and method as taught by the invention. 
     
    
     BRIEF DESCRIPTION OF THE DRAWING  
       [0009]     A more detailed understanding of the invention maybe had from the following description of a preferred embodiment, given by way of example and not limitation, to be understood in conjunction with the accompanying drawing wherein:  
         [0010]      FIG. 1  illustrates an FSK receiver including all major functional blocks;  
         [0011]      FIG. 2  illustrates the configuration of a conventional demodulator;  
         [0012]      FIG. 3  shows the analysis results of implementing the invention in a caller ID receiver unit;  
         [0013]      FIG. 4  illustrates an exemplary configuration of a demodulator in which the invention is implemented;  
         [0014]      FIG. 5  illustrates the performance result of implementing the invention in a caller ID receiver unit; and,  
         [0015]      FIG. 6  illustrates a general purpose computing platform which may be used in implementing the invention. 
     
    
     DETAILED DESCRIPTION  
       [0016]     In the following detailed description of an exemplary embodiment of the invention, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims and their equivalents.  
         [0017]     Standard demodulation techniques are known for demodulation of FSK signals. One of the standard techniques is the frequency discrimination method, which converts a change in frequency to a change in amplitude. Most of the discriminators find the autocorrelation between the signal and a time-shifted version of the signal to demodulate the FSK signal. Described herein is a method and apparatus with enhanced autocorrelation for better receiver performance, using the principles of the invention.  
         [0018]      FIG. 1  shows a FSK receiver with certain functional bocks. The signal from the analog front end is passed through a band pass filter (example, BPF  101 ) to remove out-of-band noise and near-end echo, incase of full-duplex modems. The AGC (automatic gain control) function is used to compensate for the channel attenuation and brings up the signal power to a reference level. The demodulator  103  then converts the signal to the original base band signal transmitted. This signal is then used by the baud clock recovery block  105 , which recovers the correct sample to slice. The slicer  104  is a comparator, which gives out bits  106  in the form of a symbol (0 or 1) after comparing the sample against a fixed threshold. Details of the functioning of the FSK receiver in  FIG. 1  are intelligible to those who are skilled in the art.  
         [0019]     A conventional demodulator illustrated in  FIG. 1  is shown in  FIG. 2 . The conventional demodulator shown in  FIG. 2  has two parallel lines, the first having the received signal and the second line including a delay element to cause a delay of K. The signals from the two lines are multiplied and passed through a low pass base band filter to obtain the base band signal.  
         [0020]     Let the received signal be R(n) 
 
 R ( n )=cos[(ω c ±δω)× n +φ]  (1) 
 
 wherein, ω c  is the 2*pi*carrier frequency, δω is the 2*pi*change in carrier frequency with binary digits, and φ is the initial phase of the signal. It is noted that the frequency and phase parameter are all in digital domain. 
 
         [0021]     The instantaneous frequency of the signal may be (ω c +δω)/2π or (ω c −δω)/2π based on the binary digit sent.  
         [0000]     The time-delayed signal will be 
 
 R ( n−K )=cos[(ω c ±δω)×( n−K )+φ]  (2) 
 
         [0022]     The product of these signals  1  and  2  will be 
 
 R ( n ) R ( n−K )=cos[(ω c ±δω) K ]+cos[2(ω c ±δω) n −(ω c ±δω) K+ 2φ]  (3) 
 
         [0023]     The product consists of 2 components, namely, 
        1. A dc component, cos[(ω c ±δω)K] which changes with the binary data.     2. The other component COS [2 (ω c ±δω)n−(ω c ±δω)K+2φ] is around twice the carrier frequency.        
 
         [0026]     If the product signal ( 3 ) is low pass filtered (equivalent to integration) the high frequency component will be removed and only the low frequency base band signal will be left.  
         [0027]     The DC value of the low pass filtered signal cos[(ω c +±δω)K] will depend on the time delay and the binary digit transmitted. 
 
Binary 1: The DC value will be cos[(ω c −δω)K]=cos(2 πf   1   K )  (4) 
 
Binary 0: The DC value will be cos[(ω c +δω) K ]=cos(2 πf   0   K )  (5) 
 
 where f 1  and f 0  are mark and space frequencies represented in the digital domain. Let the absolute difference between the DC values be d(k). 
 
d(k) may be expressed as  d ( K )=|cos(2π f   1   K )−cos(2 πf   0   K )|  (6) 
 
         [0028]     To minimize the probability of error, the difference between the DC values corresponding to the binary digits should be maximized, with K being an integer not exceeding the number of samples in a baud. It is desirable that K should be as small as possible for the equations to hold good. Typically K should be less than half the number of samples in a baud.  
         [0029]     If K can be made to vary continuously, then equation (6) is modified as 
 
 d (τ)=|cos(2 πf   1 τ)−cos(2 πf   0 τ)  (7) 
 
 where τ is the continuous form of K. It is also noted that 
 
 d(τ)&gt;d(k) since τ can be varied continuously. 
 
         [0030]     The limits on the value of τ are the same as for K for the equations to hold good.  
         [0031]     In most of the cases of f 0  and f 1 , d(τ) turns out to be better than d(k).  
         [0032]     If the operating parameters of a caller ID (for example, V.23) receiver working at 7.2 KHz are applied to the equations (6) and (7), the results as shown in  FIG. 3  are obtained.  
         [0033]      FIG. 3  illustrates the values of d(τ) and d(k) (which are represented on the Y axis) for different values of τ/k (which are represented along the X axis).  
         [0034]     If the peak close to 3 is considered, then d(τ) is greater than d(k).  
         [0035]     τ may be approximated to a K if the signal is highly over-sampled. But this is may not be feasible in terms of computation required.  
         [0036]     Instead, the signals being correlated may be delayed by a value close to τ.  
         [0037]      FIG. 4  shows an exemplary modified demodulator structure, and shows a modified demodulator arrangement based on the discussion above. The demodulator is configured to include first and second parallel connected lines connected to the same input signal, the first line having a first signal with a delay M for the input signal coming into the demodulator, the second line generating a second signal after passing the input signal through a delay filter with a group delay of τ+M where τ is fractional. In  FIG. 4 , the delay filter is illustrated as an “All pass delay filter” As shown, the signals through the first and second parallel connected lines of the demodulator are multiplied and passed through a low pass base band filter to retrieve the base band signal.  
         [0038]     The signal coming into the demodulator is delayed in the second line by a value close to τ+M, preferably using a delay filter which is designed as desired. The filter has a group delay response, which is close to τ+M at least in the band of interest. M is the additional group delay that the filter might provide over and above the desired delay of τ.  
         [0039]     The delay filter should have a unity gain at least in the band of interest.  
         [0040]     The filter may be designed using one of the polyphase components of a SINC interpolating filter, which gives a fractional delay close to the fractional delay in (τ+M). M in this case depends on the length of the SINC filter.  
         [0041]     Alternatively, the delay filter can be designed using any filter design tool that can design filters with an arbitrary amplitude and group delay response.  
         [0042]     With further reference to  FIG. 4 , R (n) in the first parallel line is the original signal delayed by an integer delay M. It is noted that R (n−τ) in the second parallel line is the original signal delayed by τ+M. The relative shift in time between these 2 signals is τ. The signals in the first and second parallel lines, as explained earlier, are multiplied and low pass filtered to get the base band signal.  
         [0043]     The choice of τ is made from the plot of d(τ). It is also noted that M should ideally have been zero.  
         [0044]     As an exemplary application, the design for a V.23/Bell 202A/CallerID receiver working at a sampling rate of 7.2 KHz is discussed below. At 1200 bps, the samples per baud will be only 6. From  FIG. 3  which gives the d(τ) plot for the receiver, it can be clearly seen that a maxima lies around τ=3. The other maxima at around τ=6 cannot be chosen because of the reason mentioned earlier. We also see that τ=3.25 is a good approximation of the maxima. A filter is then chosen which has a group delay response of (M+3.25).  
         [0045]     Based on the knowledge of up-sampling filters, a poly phase component of a SINC up-sampling filter, of order  80  that up-samples by 4 can be chosen. The order of the filter may be reduced based on the accuracy of τ required. For example, the 4 th  poly phase component of the filter described above has a group delay of 9.25 samples in the band of interest. This yields the value of M as 6.  
         [0046]     The performance of a V.23/Bell 202A/CallerID receiver as an example was evaluated with and without the inventive improvement and is shown in  FIG. 5 .  
         [0047]     It can be seen from the plot in  FIG. 5  that the improvement in performance is about 1.5 dB across the range of E b /N 0  simulated for. It is to be noted that E b  is the energy per bit, and N 0  is the noise variance at the input to the receiver.  
         [0048]     The above-described modification to a conventional FSK signal demodulator improves the performance of a FSK receiver. The demodulator is modified with filters to give a fractional sample shift, thereby increasing differences in the auto-correlation values of binary 0 and 1. This helps the slicer  104  (see  FIG. 1 ) to make a better binary decision.  
         [0049]     The various operations within the FSK receiver may be coordinated and controlled by a general purpose computing platform as illustrated in  FIG. 6 , or any other suitable arrangement.  
         [0050]     Various embodiments of the present subject matter can be assisted by software, which may be run in the environment shown in  FIG. 6  or in any other suitable computing environment. The embodiments of the present subject matter are operable in a number of general-purpose or special-purpose computing environments. Some computing environments include personal computers, general-purpose computers, server computers, hand-held devices (including, but not limited to, telephones and personal digital assistants (PDAs) of all types), laptop devices, multi-processors, microprocessors, set-top boxes, programmable consumer electronics, network computers, minicomputers, mainframe computers, distributed computing environments and the like to execute code stored on a computer-readable medium. It is also noted that the embodiments of the present subject matter may be implemented in part or in whole as machine-executable instructions, such as program modules that are executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, and the like to perform particular tasks or to implement particular abstract data types. In a distributed computing environment, program modules may be located in local or remote storage devices.  
         [0051]      FIG. 6  and the following discussion are intended to provide a brief, general description of a suitable computing environment in which certain embodiments of the inventive concepts contained herein may be implemented.  
         [0052]     A general computing device  600  may include a computer  610 , a processing unit  602 , memory  604 , removable storage  612 , and non-removable storage  614 . Computer  610  additionally includes a bus  605  and a network interface (NI)  601 .  
         [0053]     Computer  610  may include or have access to a computing environment that includes one or more user input modules or devices  616 , one or more output modules or devices  618 , and one or more communication connections  620  such as a network interface card or a USB connection. The one or more user input devices  616  can be a touch screen and a stylus and the like. The one or more output devices  618  can be a display device of computer, computer monitor, TV screen, plasma display, LCD display, display on a touch screen, display on an electronic tablet, and the like. The computer  610  may operate in a networked environment using the communication connection  620  to connect to one or more remote computers. A remote computer may include a personal computer, server, router, network PC, a peer device or other network node, and/or the like. The communication connection may include a Local Area Network (LAN), a Wide Area Network (WAN), and/or other networks.  
         [0054]     The memory  604  may include volatile memory  606  and non-volatile memory  608 . A variety of computer-readable media may be stored in and accessed from the memory elements of computer  610 , such as volatile memory  606  and non-volatile memory  608 , removable storage  601  and non-removable storage  614 . Computer memory elements can include any suitable memory device(s) for storing data and machine-readable instructions, such as read only memory (ROM), random access memory (RAM), erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), hard drive, removable media drive for handling compact disks (CDs), digital video disks (DVDs), diskettes, magnetic tape cartridges, memory cards, Memory Sticks™, and the like, chemical storage, biological storage, and other types of data storage.  
         [0055]     “Processor” or “processing unit,” as used herein, means any type of computational circuit, such as, but not limited to, a microprocessor, a microcontroller, a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, explicitly parallel instruction computing (EPIC) microprocessor, a graphics processor, a digital signal processor, or any other type of processor or processing circuit. The term also includes embedded controllers, such as generic or programmable logic devices or arrays, application specific integrated circuits, single-chip computers, smart cards, and the like.  
         [0056]     Embodiments of the present subject matter may be implemented in conjunction with program modules, including functions, procedures, data structures, application programs, etc., for performing tasks, or defining abstract data types or low-level hardware contexts.  
         [0057]     Machine-readable instructions stored on any of the above-mentioned storage media are executable by the processing unit  602  of the computer  610 . For example, a computer program  625  may include machine-readable instructions capable of handling a signal for an FSK receiver according to the teachings of the described embodiments of the present subject matter. In one embodiment, the computer program  625  may be included on a CD-ROM and loaded from the CD-ROM to a hard drive in non-volatile memory  608 . The machine-readable instructions cause the computer  610  to decode according to the various embodiments of the present subject matter.  
         [0058]     The foregoing is the description of exemplary implementations of the method and apparatus for configuring an FSK demodulator with improved autocorrelation between the signal and a time-shifted version of the signal to demodulate the FSK signal. The above-described implementation is intended to be applicable, without limitation, to situations where an improved FSK receiver is sought, with an altered configuration for the demodulator. The description hereinabove is intended to be illustrative, and not restrictive.  
         [0059]     The various embodiments of the FSK demodulator with improved autocorrelation described herein are applicable generally to any FSK system, and the embodiments described herein are in no way intended to limit the applicability of the invention. In addition, the techniques of the various exemplary embodiments are useful to the design of any hardware implementations of software, firmware, and algorithms in the context of decoding in general. Many other embodiments will be apparent to those skilled in the art. The scope of this invention should therefore be determined by the appended claims as supported by the text, along with the full scope of equivalents to which such claims are entitled.