Skip to main content

Minimum Shift Keying (MSK)



Minimum Shift Keying (MSK)

In digital modulation, Minimum-Shift Keying (MSK) is a type of continuous-phase frequency-shift keying. Similar to OQPSK, MSK encodes bits alternating between quadrature components, with the Q component delayed by half the symbol period.

However, instead of using square pulses like OQPSK, MSK encodes each bit as a half sinusoid. This results in a constant-modulus signal, which reduces issues caused by non-linear distortion. In addition to being viewed as a variant of OQPSK, MSK is also seen as a Continuous Phase Frequency Shift Keyed (CPFSK) signal with a frequency separation of one-half the bit rate. 

 

Mathematical Representation

The resulting signal can be expressed as:

s(t) = aI(t)  cos(Ï€t / 2T)  cos(2Ï€fct) − aQ(t)  sin(Ï€t / 2T)  sin(2Ï€fct)

where aI(t) and aQ(t) encode even and odd bits respectively with square pulses of duration 2T.

Using trigonometric identities, the expression can be rewritten to show phase and frequency modulation more clearly:

s(t) = cos(2Ï€fct + φk + Ï€t / 2T  ·  bk)

where:

  • bk = +1 if aI(t) = aQ(t), and -1 otherwise
  • φk = 0 if aI(t) = 1, and Ï€ otherwise

This shows that the signal is modulated in both frequency and phase, and the phase changes in a continuous and linear manner. 

 

Minimum shift keying (MSK) is a type of continuous frequency shift keying (CFSK). Like continuous frequency shift keying, we can also define bit "1" and "0" by two distinct frequency carriers, but the frequency shift will be half of the baud rate, i.e., f2 - f1 will be Rb/2.

where f2 is the carrier frequency for binary bit "1"

f1 is the carrier frequency for binary bit "0"

Rb = Baud Rate  

Here, the frequency shift between two carrier frequencies is minimum (Baud Rate) / 2. So, it is called minimum shift keying.


Steps for minimum shift keying

1. Firstly, generate a bitstream of binary bits "1" and "0"

2. Then Convert it to NRZ Signal

3. Then perform MSK modulation on the NRZ Signal

4. If the carrier frequency is fc, then bit "1" will be represented by slightly higher than the carrier frequency, fc + (baud rate)/4, and bit "0" by slightly lower than the carrier frequency, fc - (baud rate)/4.


Gaussian minimum shift keying (GMSK) is quite similar to the MSK. Here, MSK modulation is followed by the Gaussian filtering.

 

Why Use MSK?

Binary data with sharp transitions (like from "1" to "0") can create wide sidebands around the carrier frequency, which causes interference with adjacent channels. MSK, with its constant envelope and smooth phase transitions, minimizes these sidebands and fits better within limited bandwidth, making it ideal for wireless communications.

 

Similarities between FSK and MSK

Frequency Shift Keying (FSK) Minimum Shift Keying (MSK)
1. Bits "1" and "0" are represented
by two different carrier frequencies

2. Here, you can define bits "1" and 
"0" by carrier frequencies f2 and f1
, respectively.
1. Here also, bits "1" and "0" are represented
by two different carrier frequencies, but the frequency
 difference between them will be half of the baud rate
2. Here, you can define bits "1" and 
"0" by fc + (baud rate)/4 and fc - (baud rate)/4
, respectively. Where fc is the carrier frequency.


Read more about

  1. Minimum Shift Keying (MSK) Simulator
  2. MATLAB Code for MSK
  3. Gaussian minimum shift keying (GMSK)
  4. MATLAB Code for GMSK 

People are good at skipping over material they already know!

View Related Topics to







Admin & Author: Salim

s

  Website: www.salimwireless.com
  Interests: Signal Processing, Telecommunication, 5G Technology, Present & Future Wireless Technologies, Digital Signal Processing, Computer Networks, Millimeter Wave Band Channel, Web Development
  Seeking an opportunity in the Teaching or Electronics & Telecommunication domains.
  Possess M.Tech in Electronic Communication Systems.


Contact Us

Name

Email *

Message *

Popular Posts

BER vs SNR for M-ary QAM, M-ary PSK, QPSK, BPSK, ...

📘 Overview of BER and SNR 🧮 Online Simulator for BER calculation of m-ary QAM and m-ary PSK 🧮 Online Simulator for Constellation Diagram of m-ary QAM 🧮 Online Simulator for Constellation Diagram of m-ary PSK 🧮 MATLAB Code for BER calculation of M-ary QAM, M-ary PSK, QPSK, BPSK, ... 🧮 MATLAB Code for BER calculation of ASK, FSK, and PSK 🧮 MATLAB Code for BER calculation of Alamouti Scheme 🧮 Different approaches to calculate BER vs SNR 📚 Further Reading Modulation Constellation Diagrams BER vs. SNR BER vs SNR for M-QAM, M-PSK, QPSk, BPSK, ... What is Bit Error Rate (BER)? The abbreviation BER stands for bit error rate, which indicates how many corrupted bits are received (after the demodulation process) compared to the total number of bits sent in a communication process. It is defined as,  In mathematics, BER = (number of bits received in error / total number of ...

Comparisons among ASK, PSK, and FSK | And the definitions of each

https://www.salimwireless.com/2024/11/constellation-diagram-in-matlab.html 📘 Overview 🧮 Simulator 🧮 Noise Sensitivity, Bandwidth, Complexity, etc. 🧮 MATLAB Code for BER vs. SNR Analysis of ASK, FSK, and PSK 🧮 MATLAB Code for Constellation Diagrams of ASK, FSK, and PSK 🧮 Simulator for ASK, FSK, and PSK Generation 🧮 Simulator for ASK, FSK, and PSK Constellation 🧮 Some Questions and Answers 📚 Further Reading Modulation ASK, FSK & PSK Constellation MATLAB Simulink MATLAB Code Comparisons among ASK, PSK, and FSK    Comparisons among ASK, PSK, and FSK   Simulator for Calculating Bandwidth of ASK, FSK, and PSK The baud rate represents the number of symbols transmitted per second. Both baud rate and bit rate are same for binary ASK, FSK, and PSK. Select Modulation Type: ASK FSK PSK Baud Rat...

MATLAB Code for Pulse Amplitude Modulation (PAM) and Demodulation

📘 Overview & Theory 🧮 MATLAB Code 1 🧮 MATLAB Code 2 🧮 MATLAB Code for Pulse Amplitude Modulation and Demodulation of Digital data 🧮 Other Pulse Modulation Techniques (e.g., PWM, PPM, DM, and PCM) 📚 Further Reading   Pulse Amplitude Modulation (PAM) & Demodulation MATLAB Script clc; clear all; close all; fm= 10; % frequency of the message signal fc= 100; % frequency of the carrier signal fs=1000*fm; % (=100KHz) sampling frequency (where 1000 is the upsampling factor) t=0:1/fs:1; % sampling rate of (1/fs = 100 kHz) m=1*cos(2*pi*fm*t); % Message signal with period 2*pi*fm (sinusoidal wave signal) c=0.5*square(2*pi*fc*t)+0.5; % square wave with period 2*pi*fc s=m.*c; % modulated signal (multiplication of element by element) subplot(4,1,1); plot(t,m); title('Message signal'); xlabel ('Time'); ylabel('Amplitude'); subplot(4,1,2); plot(t,c); title('Carrier signal'); xlabel('Time'); ylabel('Amplitu...

Constellation Diagrams of ASK, PSK, and FSK

📘 Overview 🧮 Online Simulator for constellation diagrams of ASK, FSK, and PSK 🧮 Theory 🧮 MATLAB Codes 🧮 Simulator for constellation diagrams of m-ary PSK 🧮 Simulator for constellation diagrams of m-ary QAM 📚 Further Reading BASK (Binary ASK) Modulation: Transmits one of two signals: 0 or -√Eb, where Eb​ is the energy per bit. These signals represent binary 0 and 1.    BFSK (Binary FSK) Modulation: Transmits one of two signals: +√Eb​ ( On the y-axis, the phase shift of 90 degrees with respect to the x-axis, which is also termed phase offset ) or √Eb (on x-axis), where Eb​ is the energy per bit. These signals represent binary 0 and 1.  BPSK (Binary PSK) Modulation: Transmits one of two signals: +√Eb​ or -√Eb (they differ by 180 degree phase shift), where Eb​ is the energy per bit. These signals represent binary 0 and 1.    Simulator for BASK, BPSK, and BFSK Constellation Diagrams ...

Relationship between Gaussian and Rayleigh distributions

📘 Introduction, Gaussian Distribution, Relationship Between Gaussian and Rayleigh Distribution 🧮 How to mitigate Rayleigh fading? 🧮 Equalizer to reduce Rayleigh Fading (or Multi-path Effects) in MATLAB 🧮 MATLAB Code for Effects of AWGN and Rayleigh Fading in Wireless Communication 🧮 Simulator for the effect of AWGN and Rayleigh Fading on a BPSK Signal 📚 Further Reading Wireless Signal Processing Gaussian and Rayleigh distributions ...   The Rayleigh distribution in classical fading models (like wireless communication) arises from modeling the real and imaginary parts of a complex baseband signal as independent, zero-mean Gaussian random variables — under specific assumptions . 1. Gaussian Distribution  The Gaussian distribution has a lot of applications in wireless communication. Since noise in wireless communication systems is unpredictable, we frequently assume that it has a Gaussian distribution...

Channel Impulse Response (CIR)

Channel Impulse Response (CIR) 📘 Overview & Theory 📘 How does the channel impulse response affect the signal? 🧮 Online Channel Impulse Response Simulator 🧮 MATLAB Codes 📚 Further Reading Wireless Signal Processing CIR, Doppler Shift & Gaussian Random Variable  The Channel Impulse Response (CIR) is a concept primarily used in the field of telecommunications and signal processing. It provides information about how a communication channel responds to an impulse signal.   What is the Channel Impulse Response (CIR) ? It describes the behavior of a communication channel in response to an impulse signal. In signal processing,  an impulse signal has zero amplitude at all other times and amplitude  ∞ at time 0 for the signal. Using a Dirac Delta function, we can approximate this.  ...(i) δ( t) now has a very intriguing characteristic. The answer is 1 when the Fourier Transform of  δ(...

MATLAB Code for Constellation Diagram of QAM configurations such as 4, 8, 16, 32, 64, 128, and 256-QAM

📘 Overview of QAM 🧮 MATLAB Code for 4-QAM 🧮 MATLAB Code for 16-QAM 🧮 MATLAB Code for m-ary QAM (4-QAM, 16-QAM, 32-QAM, ...) 🧮 Online Simulator for M-ary QAM Constellations (4-QAM, 16-QAM, 64-QAM, ...) 📚 Further Reading   One of the best-performing modulation techniques is QAM [↗] . Here, we modulate the symbols by varying the carrier signal's amplitude and phase in response to the variation in the message signal (or voltage variation). So, we may say that QAM is a combination of phase and amplitude modulation. Additionally, it performs better than ASK or PSK [↗] . In fact, any constellation for any type of modulation, signal set (or, symbols) is structured in a way that prevents them from interacting further by being distinct by phase, amplitude, or frequency. MATLAB Script (for 4-QAM) % This code is written by SalimWirelss.Com % This is an example of 4-QAM. Here constellation size is 4 % or total number of symbols/signals is 4 % We need...

Online Simulator for Constellation Diagram of M-ary PSK

Constellation Diagram of M-ary PSK Bitstream (e.g. 1,0,1,1): Generate Message Modulation Order (M): M must be a power of 2 (e.g., 2, 4, 8, 16) Plot Constellation Diagram Explore Signal Processing Simulations Further Reading   Online Simulator for M-ary PSK Online Simulator for ASK, FSK, and PSK   Explore DSP Simulations