Abstract:
A demodulator performs both synchronization and decoding concurrently by decoding a received preambleless signal according to Viterbi-decoding scheme and determining a time alignment function n(t) which indicates where the decoded sequence is located in a time period of the received signal. After converting the received preambleless signal to a received sequence in a sampling rate which is at least the predetermined symbol rate, a Viterbi decoder is synchronized with the received sequence while determining the time alignment function n(t) so that the Viterbi-decoded sequence is closest to the received sequence.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the invention 
     The present invention generally relates to a digital demodulation technique in a wireless communication system. 
     2. Description of the Related Art 
     In a digital demodulator, coherent detection or differential detection is performed before bit synchronization and then symbol decision is performed using a detected baseband signal at bit-synchronized sampling points. However, according to such a demodulation method, the carrier recovery and symbol synchronization performance have a great effect on the receiving characteristic. 
     It is also known that the demodulation performance is improved by receiving a predetermined training signal or a preamble signal. More specifically, the predetermined training signal is used to calculate a decision error. The decision error is fed back to an equalizer and a phase-locked loop to compensate for distortions including linear distortion and group delay distortion. 
     In the case of mobile communications, however, since radio channel characteristics frequently vary, it is necessary to transmit the training signal for each burst transmission to compensate for variations in radio propagation characteristic. Therefore, the overhead becomes larger and thereby the throughput of the communications system is reduced. Contrarily, as the training bit length becomes shorter, the amount of transmission data is increased but the synchronization error is also increased. Similarly, in packet communications, the shorter the sync-bit length in a packet, the larger the symbol synchronization error. 
     SUMMARY OF THE INVENTION 
     An object of the present invention is to provide a demodulation method and apparatus which can achieve precise demodulation based on a preambleless signal. 
     Another object of the present invention is to provide a demodulation method and apparatus which can perform both synchronization and demodulation in a preambleless communications system. 
     According to the present invention, both synchronization and decoding are concurrently performed by decoding a received signal according to Viterbi decoding scheme and determining a time alignment function or a time mapping n(t) which indicates where the decoded sequence is located in a time period of the received signal. 
     According to an aspect of the present invention, in a method for demodulating a received preambleless signal which does not include a signal for synchronization but is encoded by a convolutional code, after converting the received preambleless signal to a received sequence in a sampling rate which is at least a predetermined symbol rate, a Viterbi decoder is synchronized with the received sequence to produce an output sequence while determining the alignment function n(t) so that a Viterbi-decoded sequence is closest to the received sequence. 
     More specifically, a received preambleless signal may be sampled and converted to a digital signal in a sampling rate which is M (M≧1) times the predetermined symbol rate. The digital signal is represented by x t  (t=1, 2, . . . , T), where t is a sampling index corresponding to a sampling time instant and T is the number of sampling points during a time period of the received preambleless signal. On the other hand, an encoded signal f(w, n(t)) is generated from a data sequence w, where n(t)=1, 2, . . . , N w  (N w  is a length of transmitted sequence). 
     In this case, a cumulative error or distance D(w) may be represented by the following equation: ##EQU1## Therefore, an operation of the present invention is to obtain the data sequence w and the alignment function n(t) so that the cumulative distance D(w) is minimized. In other words, this is a minimization problem of the cumulative distance D(w). Therefore, the dynamic programming represented by the following equations (2)-(4) can be used to solve such a problem. ##EQU2## In these equations, n is a Viterbi decoding step, j is a state (j=, 2, . . . , J) (J=2 K-1 ) and an encoded signal f t  (n, j) is generated by a Viterbi decoder corresponding to a Viterbi decoding step n and a state j, where K is a constraint length. That is, the distance d w  (t, n, j) is a distance between the received sequence x t  and the encoded signal f t  (n, j). Further, j n-1 , indicates two possible branches from previous states at step n-1 to the state j n  at step n (therefore j n-1  =0 or 1). It should be noted that n=0 and n=N w  +1 are a provisional step for calculation. Assuming that the state j at n=0 is J sw , the state j at n=N w  +1 is J e , and further the distance d w  (t, n=0, j=J s ) and the distance d w  (t, n=N w  +1, ij=J e ) are both zero. 
     Therefore, the alignment time function n(t) is obtained by using a sampling time instant t o  corresponding to D(w) in the equation (4) as follows: ##EQU3## The synchronized decoded sequence can be obtained by backtracking states providing min. {g w  (t o  -pM, N w  +1-p, J NW  =0), g w  (t o  -pM, N w  +1-p, J NW  =1)}, where p=0, 1, 2, . . . Such a backtracking step is known in Viterbi decoding. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram showing the functional configuration of a demodulator using a Viterbi decoder according to an embodiment of the present invention; 
     FIG. 2 is a time chart showing an operation of the embodiment as shown in FIG. 1; and 
     FIG. 3 is a graph showing the selected time alignment function n(t) in the embodiment. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Referring to FIG. 1, there is shown a digital demodulator including a synchronization controller (distance calculator, minimum distance detector, state memory, and N(t) decision)and a Viterbi decoder according to an embodiment of the present invention, which produces a synchronized decoded sequence from a received preambleless signal S IN  which does not have a preamble such as a training signal or a sync word. However, the received preambleless signal S IN  includes at least a signal which is encoded by a convolutional code having a constraint length of K. 
     An input section of the digital demodulator is comprised of a band-pass filter 101, an extractor 102, an analog-to-digital converter (ADC) 103, and an extraction period estimator 104. The band-pass filter 101 is set to a predetermined bandwidth which is M times the symbol rate f symb , where M≧1. The extraction period estimator 104 receives the received signal S IN  and compares the power level of the received signal S IN  with a predetermined level P TH  to control the extractor 102 according to the comparison result. When the received power level is not lower than the predetermined level P TH , the extractor 102 is closed to transfer the received signal to the ADC 103. When it is lower, the extractor 102 is opened and thereby the received signal is not supplied to the ADC 103. 
     After the received signal S IN  is limited to the predetermined bandwidth by the band-pass filter 101 and is extracted by the extractor 102, it is converted into a digital signal x t  (t=1, 2, . . . , T) by the ADC 103 according to a sampling rate f samp  which is M times the symbol rate f symb . Here, t is the index of a sampling instant and T is the number of sampling instants during al extracted period by the extractor 102. The digital signal x t  is stored onto a buffer memory 105. 
     Subsequently, the digital signal x t  is output to a distance calculator 106 where a distance d w  is calculated by using the following equation: 
     
         d.sub.w (t,n,j)=∥f.sub.t (n,j)-x.sub.t ∥.sup.2(6), 
    
     where n is a Viterbi decoding step received from a Viterbi decoder 107, j is a state (j=1, 2, . . . , J) (J=2 K-1 ), and f t  (n, j) is an encoded signal generated by the Viterbi decoder 107 corresponding to a Viterbi decoding step n and a state j. That is, the distance d w  (t, n, j) indicates an error between the received signal x t  and the generated signal f t  (n, j). 
     The distance d w  (t, n, j) is added to the output of a minimum distance detector 109 (selector) by an adder 108 and then the output of the adder 108 is stored onto a state memory 110 (accumulator). The minimum distance detector 109 (selector) detects one which is smaller from cumulative distances {d w  (t, n, j=0)+g w  (t-M, n-1, j n-1  =0)} and {d w  (t, n, j=1)+g w  (t-M, n-1, j n-1  =1)} which are received from the state memory 110 (accumulator), that is, ##EQU4## where j n-1  indicates two possible branches from previous states at step n-1 to the state j n  at step n, therefore j n-1  =0 or 1. And then the detected one g w  (t, n, j n ) is output to the adder 108. 
     The state memory 110 stores a step n at a sampling index t, a selected previous state j n-1 , and cumulative distances {d w  (t, n, j=0)+g w  (t-M, n-1, j n-1  =0)}and{d w  (t, n, j=1)+g w  (t-M, n-1, j n-1  =1)} from the adder 108. 
     The above calculations (6) and (7) are performed for each step n (=0, 1, 2, . . . , N w  +1) and for each state j (=1, 2, . . . , J), where N w  is a length of transmitted sequence. It should be noted that n=0 and n=N w  +1 are a provisional step for calculation and that the state j at n=0 is J s , the state j at n=N w  +1 is J e , and further the distance d w  (t, n=0, j=J s ) and the distance d w  (t, n=N w  +1, j=J e ) are both zero. 
     When the calculations (6) and (7) are completed for all steps n (=0, 1, 2, . . . , N w  +1) and for all states j (=1, 2, . . . , J), a resultant cumulative distance g w  (M(N w  +1), N w  +1, J e ) is stored in the state memory 110 (accumulator). In this manner, the following resultant cumulative distances g w  (M(N w  +1)+1, N w  +1, J e ), g w  (M(N w  +1)+2, N w  +1, J e ), . . . , g w  (T, N w  -1, J e ) corresponding to sampling instants M(N w  +1)+1, . . . , T, respectively, are sequentially obtained and stored in the state memory 110 (accumulator). The resultant cumulative distances g w  (M(N w  +1), N w  +1, J e ), g w  (M(N w  +1)+1, N w  +1, J e ), . . . , g w  (T, N w  +1, J e ) obtained are output to a mapping decision section 111, which determines the time alignment function n(t) as will be described hereinafter. 
     The mapping decision section 111 (synchronizer) calculates g w  (M(N w  +1), N w  +1, J e )/M(N w  +1), g w  (M(N w  +1)+1, N w  +1, J e )/(M(N w  +1)+1), . . . , g w  (T, N w  +1, J e )/T corresponding to the sampling instants M(N w  +1), M(N w  +1)+1, . . . , T, respectively. And the mapping decision section 111 (synchronizer) selects a minimum one from them to determine a sampling instant t o  at which the minimum one is obtained. When the sampling instant t o  is determined, the mapping decision section 111 (synchronizer) determines the time alignment function n(t) by using the following equation: ##EQU5## Further, the mapping decision section 111 (synchronizer) outputs the time alignment function n(t) to the Viterbi decoder 107 which produces the synchronized decoded sequence by backtracking a selected survivor path corresponding min {g w  (t o  -pM, N w  +1-p, J NW  =0), g w  (t o  -pM, N w  +1-p, J NW  =1)}, where p=0, 1, 2, . . . The Viterbi decoder 107 performs the well-known decoding process using a digital received signal which is obtained from the received signal S IN  by a band-pass filter 112 and an ADC 113. 
     The distance calculator 106, the adder 108, the minimum distance detector (selector), the mapping decision section 111 (synchronizer) and the Viterbi decoder 107 may be formed with a program-controlled processor such as DSP. 
     More specifically, the details of an operation when M=2 will be described referring to FIG. 2. Needless to say, the higher the sampling rate of the ADC 103, the higher the precision of bit synchronization. 
     As shown in FIG. 2, assuming that a received sequence {x 1 , X 2 , . . . , X T  } during an extracted period is stored in the buffer memory 105. In this case, the equations (6) and (7) are calculated during a period 201 from the sampling instant t=1 to 2(N w  +1) to produce the resultant cumulative distance g w  (2(N w  +1), N w  +1, J e ) which is stored in the state memory 110 (accumulator). Similarly, at the end of a period 202 from the sampling instant t=1 to 2(N w  +1)+1, the subsequent resultant cumulative distance g w  (2(N w  +1)+1, N w  +1, J e ) is produced. In this way, the following resultant cumulative distances are produced, and finally, at the end of a period 203 from the sampling instant t=1 to T, the resultant cumulative distances g w  (T, N w  +1, J e ). These resultant: cumulative distances g w  (2(N w  +1), N w  +1, J e ), g w  (2(N w  +1)+1, N w  +1, J e ), . . . , g w  (T, N w  +1, J e ) are used to determine the time alignment function n(t) by the mapping decision section 111 using the equation (8), as shown in FIG. 3. 
     The mapping decision section 111 (synchronizer) calculates average cumulative distances: g w  (2(N w  +1), N w  +1, J e )/2(N w  +1), g w  (2(N w  +1)+1, N w  +1, J e )/(2(N w  +1)+1), . . . , g w  (T, N w  +1, J e )/T, and then searches for a minimum one, here g w  (2(N w  +1)+i, N w  +1, J e )/(2(N w  +1)+i). Since they correspond to the sampling instants 2(N w  +1), 2(N w  +1)+1, . . . , T, respectively, the minimum one g w  (2(N w  +1)+i, N w  +1, J e )/(2(N w  +1)+i) indicates the sampling instant t o  =2(N w  +1)+i at which the distance between the received sequence and the generated convolutional code becomes shortest. In other words, the sampling instant t o  =2(N w  +1)+i represents the location of the Viterbi-decoded sequence in the received sequence. Using the sampling instant t o  =2(N w  +1)+i, the mapping decision section 111 determines the time alignment function n(t) which is used by the viterbi decoder 107 to produce synchronized sequence as described before.