I work on a GMSK modulation and trying to understand the concept of the Laurent decompositon of GMSK signal.

My main reference is Pierre Laurent, "Exact and Approximate Construction of Digital Phase Modulations by Superposition of Amplitude Modulated Pulses", IEEE Transactions of Communications, Vol. 34, No. 2, Feb 1986.

In the book “Bandwidth-Efficient Digital Modulation with Application to Deep Space Communications” by Marvin K. Simon, chapter 2 gives an overview of GMSK modulation.

The following equation I try to implement. In the equation there are two pulse shapes C0 and C1 which are descrived in the Laurent paper. enter image description here

In the computation of them we use L, pulse shape length.

enter image description here

L = 3 , 4 and 5 I have seen.

How to choose L? Does L affect to C0 and C1? Is it important what L I use?


enter image description here


1 Answer 1


L is the overlap of successive symbols as L is given in symbol duration. "Full response signaling" is with $L=1$ and one symbol completes before the next symbol starts. Any $L>1$ is partial response signaling where subsequent symbols start before prior symbols complete their response (resulting in inter-symbol interference but also better spectral efficiency since we send more data in less time).

This is illustrated with the plot below showing instantaneous frequency versus time for GMSK modulation for the case of $L=1$ and $L=2$. The real advantage of the Laurent Decomposition is in the implementation of the receiver as it simplifies the number of possible combinations we need to search over to optimally determine which combination of symbols was transmitted for a given received waveform (the longer the overlap, the more combinations of past symbols will contribute to any given sample in the receiver).


To answer the OP’s final question; yes, $L$ directly effects the Laurent Decomposition and must be specified in the waveform design. See this related post where $L$ is determined from the waveform's specified Bandwidth-Time product. This is a decision made in the design of the waveform and trades bandwidth efficiency with receiver complexity. The more overlap of symbols then the more combinations of phase trajectories must be compared for an optimum Minimum Mean-Square Error (MMSE) receiver implementation: given each symbol rotates the phase either positive or negative 90 degrees, the number of possible phase trajectories will be $2^L$. This is the motivation for the Laurent Decomposition; it can significantly simplify the receiver for a sub-optimum implementation for the case of $L>1$.

  • $\begingroup$ could you share how you plotted the figures on your answer? I want to plot the same for L= 3, 4, 5 to study intersymbol interference of my signal $\endgroup$
    – FrimHart64
    Apr 12, 2022 at 7:38
  • $\begingroup$ It is just a graphic depiction that I hand drew but you could do what you want by putting Gaussian weighted coefficients (the shape you see in my drawing) in an FIR filter and feeding impulses into the filter as symbols. (Which is exactly how I generate GMSK as an input waveform to an NCO.) $\endgroup$ Apr 12, 2022 at 12:17
  • $\begingroup$ sorry I havent understand your answer, would you share details? maybe some math equation or code, what ever $\endgroup$
    – FrimHart64
    Apr 12, 2022 at 12:34
  • $\begingroup$ I'm not sure which part you don't understand-- are you familiar with FIR filters and how to create a filter with a given set of coefficients? The top drawing is the symbols as impulses and the bottom drawing is the response of the filter (so the impulse response). $\endgroup$ Apr 12, 2022 at 12:50
  • $\begingroup$ I did as you suggested before ( see results in EDIT 1). It si a plot of y = conv(h, x), where h- filter coeff of Gaussian filter, x- NRZ sequence. My results doesnt look similar $\endgroup$
    – FrimHart64
    Apr 12, 2022 at 14:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.