GMSK tail biting modulation method
By using Gaussian filters and phase change function curves in GMSK modulation, the tail biting modulation of GMSK signal is achieved, solving the problem of multiple transmit data occupying air interface resources, saving air interface transmission resources and improving bandwidth efficiency.
Patent Information
- Application Number
- CN202310730765.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-19
- Publication Date
- 2024-12-27
AI Technical Summary
The prior art requires sending more modulated data to return the modulator state to the initial value, occupying limited air-interface transmission resources.
The Gaussian filter is used to filter the cache data before GMSK modulation, define the tail biting modulation, and the tail biting modulation of the GMSK signal is realized through the simplified IQ structure and phase change function curve, avoiding the excessive transmission of modulated data.
This greatly saves air-interface transmission resources, improves bandwidth efficiency, and reduces the use of air-interface bit resources.
Smart Images

Figure CN119210960A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of signal modulation, and in particular to a GMSK tail-biting modulation method. Background Art
[0002] Convolutional code is a type of error correction code in communication coding. It can disrupt the original information code. At this time, even if large-scale sudden errors occur, these can be dispersed by the deinterleaver, thereby dispersing large-scale errors more evenly to different code segments, which is conducive to the realization of channel error correction. The convolutional encoder is a circuit that implements convolutional code encoding.
[0003] In digital transmission systems, interference factors such as noise and channel fading can cause errors in transmitted signals and generate bit errors. Although digital signal transmission uses channel coding to prevent bit errors and increase the redundancy of transmission codes, such as adding supervision bits to overcome errors in signal transmission during channel transmission, this error detection and correction capability is limited.
[0004] According to some data, taking (2, 1, 4) convolutional code as an example, there are two encoding methods for data D(i) (i=0 to n-1) with a coding length of n bits.
[0005] One is that the initial value of the convolutional code encoder {reg1 reg2 reg3} is 000, which requires that after the encoding of n data is completed, 3 more 0s are input to make the encoder state return to {reg1 reg2 reg3} = 000. This method requires the transmission of 3 more encoded data corresponding to 0.
[0006] The other is the tail-biting convolutional code. The initial value of the convolutional code encoder {reg1 reg2 reg3} is {D(n-3)D(n-2)D(n-1)}, and the encoding of n data is completed.
[0007] Convolutional code decoding usually uses the Viterbi decoding method. The reason for this encoding of convolutional codes is that during Viterbi decoding, due to the backtracking depth, the final data output to be decoded requires more data to be input to the decoder.
[0008] In the field of signal modulation, some responses to CPM modulation introduce inter-symbol interference artificially for bandwidth efficiency. The optimal demodulation of this type of modulation uses the Viterbi method. Due to the traceback depth, the final demodulated data output requires more modulation data to be input to the Viterbi demodulator.
[0009] Take GMSK, BT=0.3 as an example. The data N(i) (i=0 to n-1) with a length of n bits is modulated. The initial value of the GMSK modulator {reg1 reg2 reg3} is 000. It is required to continue to input 3 0s after the encoding of n data is completed, so that the GMSK modulator returns to {reg1 reg2 reg3}=000. This method requires the transmission of 3 more modulated data corresponding to 0s. For example, the GSM protocol is implemented in this way.
[0010] Chinese patent document CN102916707B discloses a "compatible convolutional code generator polynomial determination method, encoding method and encoder". The following steps are used to determine the target convolutional code generator polynomial of the 1 / (k+1) code rate, where k is a positive integer: if k=1, then by traversing all the convolutional code generator polynomials of the 1 / 2 code rate convolutional code and calculating their free distances, at least one of the preset number of convolutional code generator polynomial vectors with larger free distances or the convolutional code generator polynomial vector with the largest free distance among the traversed convolutional code generator polynomials is used as the target convolutional code generator polynomial vector; if k>1, first determine the target convolutional code generator polynomial vector of the 1 / k code rate convolutional code, recorded as vector group Ak, and then determine the target convolutional code generator polynomial vector of the 1 / (k+1) code rate convolutional code based on the vector group Ak. The above technical solution requires sending more encoded data to return the state of the encoder to the initial value, occupying limited air interface bit resources. Summary of the invention
[0011] The present invention mainly solves the technical problem that the original technical solution needs to send more modulated data to make the state of the modulator return to the initial value, which occupies limited air interface transmission resources. A GMSK tail-biting modulation method is provided. By referring to the convolutional code, a Gaussian filter is used before modulation. The initial value of the filtering cache data is the last few bits of the burst frame data content to be modulated (such as gmsk BT=0.3, which is the last 3 bits; gmsk BT=0.25, which is the last 4 bits; and so on). This is defined as tail-biting modulation. There is no need to send more modulated data, which greatly saves limited air interface transmission resources.
[0012] The above technical problem of the present invention is mainly solved by the following technical solution: The present invention comprises the following steps:
[0013] S1 constructs the GMSK modulation signal expression;
[0014] S2 realizes the simplified change of the phase of the GMSK modulated signal;
[0015] S3 obtains modulation phase data;
[0016] S4 implements tail-biting GMSK modulation based on the phase data.
[0017] There are many ways to express GMSK modulation signals. To demonstrate tail-biting modulation, a simplified IQ structure is used to generate GMSK modulation signals directly from binary data. Other expressions can also use the tail-biting modulation method.
[0018] Preferably, the GMSK modulated signal expression in step S1 is specifically:
[0019]
[0020] Among them, ω c =2πf c is the carrier frequency, is the phase of the GMSK modulated signal.
[0021] Preferably, the expression of the GMSK modulated signal phase is:
[0022]
[0023] Where A0 is the amplitude of the code element, erf(x) is the error function, B is the 3dB bandwidth of the Gaussian filter, T b is the code element width.
[0024] Preferably, the error function erf(x) is expressed as:
[0025]
[0026] Inter-symbol interference mainly comes from adjacent bits. Taking GMSK with BT=0.3 as an example, inter-symbol interference mainly comes from adjacent bits, which can be simplified as the following expression.
[0027] Preferably, the simplified phase formula of the GMSK modulated signal in step S2 is:
[0028]
[0029] According to the values of the three adjacent code elements b(n-1), b(n) and b(n+1), the corresponding GMSK signal phase path changes in different situations.
[0030] Preferably, the GMSK signal phase path change is specifically to substitute three adjacent code elements into the GMSK modulation signal phase simplified formula to obtain f l(n) (t), where l(n)=4b(n-1)+2b(n)+b(n+1),f l(n) The specific expression of (t) is:
[0031] f0(t)=-1
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038] f7(t)=-f0(t)=1.
[0039] Preferably, the step S3 specifically includes that the expression of the GMSK modulated signal is expressed as:
[0040]
[0041]
[0042] Among them, θ l(n) (t) is the modulation phase of the GMSK signal,
[0043]
[0044] Among them, f m It is 1 / 4 times the symbol rate, that is, f m =1 / 4T b , f c is the carrier frequency, and the phase change of each code element is
[0045] Preferably, the step S4 specifically includes:
[0046] S4.1 There are 3 bits {B0 B1 B2} in the GMSK modulator, which are used to select the corresponding phase change function curve;
[0047] S4.2 According to the {B0 B1 B2} data, the phase change function curve adopts different f l(n) (t);
[0048] S4.3 The burst data frame content of the modulation length L is F = b(n), (n = 0, .... L-1);
[0049] S4.4 The initial state of {B0 B1 B2} is {b(L-3)b(L-2)b(L-1)}. Input b(0), and the value of {B0 B1 B2} changes to {b(L-2)b(L-1)b(0)}. Select the corresponding phase change function curve.
[0050] S4.5 inputs b(1) again, the value of {B0 B1 B2} changes to {b(L-1)b(0)b(1)}, and the corresponding phase change function curve is selected, and so on, until all data modulation is completed.
[0051] Similarly, GMSK with BT=0.25 uses 4-bit {B0 B1 B2 B3} state. GMSK with other different BT values can use similar tail-biting GMSK modulation method as long as there is inter-symbol interference, but the number of truncated bits is different.
[0052] In the common GMSK modulation, the initial state of {B0 B1 B2} is {000}. Input b(0), the value of {B0 B1 B2} changes to {00b(0)}, and the corresponding phase change function curve is selected; then input b(1), the value of {B0 B1 B2} changes to {0b(0)b(1)}, and the corresponding phase change function curve is selected, and so on, until all data modulation is completed. Then input 3 0s, so that the state of {B0 B1B2} changes from {b(L-3)b(L-2)b(L-1)} to {b(L-2)b(L-1)0}, then to {b(L-1)0 0}, and then to {00 0}. The modulation is completed.
[0053] The beneficial effect of the present invention is that: by referring to the convolutional code, a Gaussian filter is used before modulation, and the initial value of the filtered cache data is {X100 X99 X98}, which is defined as tail-biting modulation. There is no need to send more modulated data, which greatly saves limited air interface transmission resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] Figure 1 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0055] The technical solution of the present invention is further specifically described below through embodiments and in combination with the accompanying drawings. Embodiment: A GMSK tail biting modulation method of this embodiment, such as Figure 1 As shown, the following steps are included:
[0056] S1 constructs the GMSK modulation signal expression, which is specifically:
[0057]
[0058] Among them, ω c =2πf c is the carrier frequency, is the phase of the GMSK modulated signal.
[0059] The expression of the GMSK modulated signal phase is:
[0060]
[0061] Where A0 is the amplitude of the code element, erf(x) is the error function, B is the 3dB bandwidth of the Gaussian filter, T b is the code element width.
[0062] The error function erf(x) is expressed as:
[0063]
[0064] Taking GMSK with BT=0.3 as an example, the inter-symbol interference mainly comes from adjacent bits, which can be simplified into the following expression.
[0065] S2 realizes the simplified change of the phase of the GMSK modulation signal. The simplified phase formula of the GMSK modulation signal is as follows:
[0066]
[0067] According to the values of the three adjacent code elements b(n-1), b(n) and b(n+1), the corresponding GMSK signal phase path changes in different situations.
[0068] The specific change of the GMSK signal phase path is to substitute the three adjacent code elements into the simplified phase formula of the GMSK modulation signal to obtain f l(n) (t), where l(n)=4b(n-1)+2b(n)+b(n+1),f l(n) The specific expression of (t) is:
[0069] f0(t)=-1
[0070]
[0071]
[0072]
[0073]
[0074]
[0075]
[0076] f7(t)=-f0(t)=1.
[0077] S3 obtains the modulation phase data. The expression of the GMSK modulation signal is expressed as:
[0078]
[0079]
[0080] Among them, θ l(n) (t) is the modulation phase of the GMSK signal,
[0081]
[0082] Among them, f m It is 1 / 4 times the symbol rate, that is, f m =1 / 4T b , f c is the carrier frequency, and the phase change of each code element is
[0083] S4 implements tail-biting GMSK modulation based on the phase data.
[0084] There are 3 bits of {B0 B1 B2} in the GMSK modulator, which are used to select the corresponding phase change function curve. When {B0 B1 B2} is {000}, the phase change function curve uses f0(t); when {B0 B1 B2} is {001}, the phase change function curve uses f1(t); and so on, when {B0 B1 B2} is {111}, the phase change function curve uses f7(t).
[0085] Take the burst data frame content F=b(n), (n=0, ....L-1) with a modulation length of L as an example.
[0086] In the common GMSK modulation, the initial state of {B0 B1 B2} is {000}. Input b(0), the value of {B0 B1 B2} changes to {00b(0)}, and the corresponding phase change function curve is selected; then input b(1), the value of {B0 B1 B2} changes to {0b(0)b(1)}, and the corresponding phase change function curve is selected, and so on, until all data modulation is completed. Then input 3 0s, so that the state of {B0 B1B2} changes from {b(L-3)b(L-2)b(L-1)} to {b(L-2)b(L-1)0}, then to {b(L-1)0 0}, and then to {00 0}. The modulation is completed.
[0087] When using tail-biting GMSK modulation, the initial state of {B0 B1 B2} is {b(L-3)b(L-2)b(L-1)}. Enter b(0), the value of {B0 B1 B2} becomes {b(L-2)b(L-1)b(0)}, and the corresponding phase change function curve is selected. Then enter b(1), the value of {B0B1 B2} becomes {b(L-1)b(0)b(1)}, and the corresponding phase change function curve is selected, and so on, until all data modulation is completed.
[0088] Similarly, GMSK with BT=0.25 uses 4-bit {B0 B1 B2 B3} state. GMSK with other different BT values can use similar tail-biting GMSK modulation method as long as there is inter-symbol interference, but the number of truncated bits is different.
[0089] For tail-biting GMSK modulation, the Viterbi demodulation method is introduced as follows:
[0090] Take gmsk with BT=0.3 as an example,
[0091] When demodulating the usual gmsk modulation, since it is known that the initial state of {B0 B1 B2} is {000}, the state node starts Viterbi demodulation from {000} until the burst frame data is received. However, at this time, due to the existence of the decision delay d (or traceback depth), only the data of b(Ld) can be demodulated and output, and all data cannot be demodulated. Since it is known that {B0 B1B2} returns to the state {0 0 0} after completing the modulation, the modulated data of {0 0 0} can be generated locally to continue Viterbi demodulation until the data of b(L-1) is demodulated.
[0092] When demodulating tail-biting gmsk modulation, because the initial state of {B0 B1 B2} is unknown, we can start demodulation from the second half of the received burst frame, and then continue demodulation from the head of the burst frame. Similarly, when the received burst frame data ends, due to the existence of the decision delay d (or traceback depth), only b(Ld) data can be demodulated and output, and all data cannot be demodulated. Because it is known that {B0 B1 B2} will continue from the head of the burst frame, Viterbi demodulation will continue from the head of the burst frame until b(L-1) data is demodulated.
[0093] In addition, the data state of the tail-biting GMSK is continuous from beginning to end, so the Viterbi demodulation can be cyclically performed multiple times to improve the Viterbi demodulation capability. The Viterbi demodulation method is similar to the Viterbi decoding method of the tail-biting convolutional code.
Claims
1. A GMSK tail biting modulation method, characterized in that: The following steps are involved: S1 constructs the GMSK modulation signal expression; S2 realizes the simplified change of the phase of the GMSK modulated signal; S3 obtains modulation phase data; S4 implements tail-biting GMSK modulation based on the phase data.
2. A GMSK tail biting modulation method according to claim 1, characterized in that: The GMSK modulation signal expression in step S1 is specifically: Among them, ω c =2πf c is the carrier frequency, is the phase of the GMSK modulated signal.
3. A GMSK tail biting modulation method according to claim 1, characterized in that: The expression of the GMSK modulated signal phase is: Where A0 is the amplitude of the code element, erf(x) is the error function, B is the 3dB bandwidth of the Gaussian filter, T b is the code element width.
4. A GMSK tail biting modulation method according to claim 3, characterized in that: The error function erf(x) is expressed as: Inter-symbol interference mainly comes from adjacent bits.
5. A GMSK tail biting modulation method according to claim 1, characterized in that: The simplified phase formula of the GMSK modulation signal in step S2 is specifically: According to the values of the three adjacent code elements b(n-1), b(n) and b(n+1), the corresponding GMSK signal phase path changes in different situations.
6. A GMSK tail biting modulation method according to claim 5, characterized in that: The GMSK signal phase path change is specifically as follows: Substituting three adjacent code elements into the simplified GMSK modulation signal phase formula to obtain f l(n) (t), where l(n)=4b(n-1)+2b(n)+b(n+1),f l(n) The specific expression of (t) is: f0(t)=-1 f7(t)=-f0(t)=1.
7. A GMSK tail biting modulation method according to claim 1, characterized in that: The step S3 specifically includes that the expression of the GMSK modulated signal is expressed as: Among them, θ l(n) (t) is the modulation phase of the GMSK signal, i l(n) (t)=2πf m ∫0 t f l(n) (t)d τ +θ l(n) (0) Among them, f m It is 1 / 4 times the symbol rate, that is, f m =1 / 4T b , f c is the carrier frequency, and the phase change of each code element is 8. A GMSK tail biting modulation method according to claim 6, characterized in that: The step S4 specifically includes: S4.1 There are 3 bits {B0 B1 B2} in the GMSK modulator, which are used to select the corresponding phase change function curve; S4.2 According to the {B0 B1 B2} data, the phase change function curve adopts different f l(n) (t); S4.3 The burst data frame content of the modulation length L is F = b(n), (n = 0, .... L-1); S4.4 The initial state of {B0 B1 B2} is {b(L-3) b(L-2) b(L-1)}. Input b(0), and the value of {B0 B1 B2} changes to {b(L-2) b(L-1) b(0)}. Select the corresponding phase change function curve. S4.5 inputs b(1) again, the value of {B0 B1 B2} changes to {b(L-1) b(0) b(1)}, and the corresponding phase change function curve is selected, and so on, until all data modulation is completed.
