Reply by ofdm December 8, 20062006-12-08
>hi gon, > >i have this script written by matt wilbur (dowloaded) that returns the I >and Q channels of MSK/GMSK modulated waveforms. hope it helps. > >-fahim > >%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >function [msk_phase,gmsk_phase,xi,xq,t] =gmsk(bits,Rb,ns,BT) > >% Title: bbgmsk.m >% Author: Matt Wilbur >% Date: October 19, 1998. >% >% Description: This function takes a NRZ sequences of bits >% (one sample per bit) and returns the phase >% of an MSK and GMSK signal modulated by them. >% >% It also returns the baseband in-phase >% and quadrature components of the GMSK >% signal ready for upconverting. >% >% This function accepts as arguments: >% >% bits - NRZ bit stream (one sample/bit) >% Rb - baseband bit rate >% ns - number of samples per bit >% BT - normalized bandwidth of Gaussian filter >% >% Modified: > >% Set up some timing variables > > Tb = 1/Rb; > fs = ns*Rb; > Ts = 1/fs; > >% Extend the number of bits by one to make the convolution below >% work out nicely > > numbits = max(size(bits)); > bits(numbits+1) = bits(numbits); > >% Generate the msk phase first > > bup = upfirdn(bits,ones(ns,1),ns,1); > bscale = bup * pi/2/ns; > bscale(1) = 0; > msk = cumsum(bscale); > >% Get the Gaussian impulse response > > % 3-dB BW of filter > > Bb = BT / Tb; > > % Time scale for filter --- 6 Bit periods to be safe > > t = -3*Tb:Ts:3*Tb; > > % Analog impulse from formulae > > h_a = sqrt(2*pi/log(2))*Bb*exp(-2*pi^2*Bb^2*t.^2/log(2)); > > % Digital impulse from impulse-response matching > > h_d = Ts*h_a; > >% Get the GMSK phase --- a few delay tricks so beware of shifting >% indices > > [temp,delay] = max(h_d); > > y = conv(h_d, msk); > upper_index = ns*numbits-1; > gmsk_phase = rem(y(delay:upper_index + delay), 2*pi); > msk_phase = msk(1:upper_index+1); > > t = 0:ns*numbits-1; > t = t/fs; > xi = cos(gmsk_phase); > xq = sin(gmsk_phase); >%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >>Hello, >> >>I am studying MSK modulation, does anyone know how to genrate a MSK >signal >>in matlab, pls help me..Thanks. >> >>Gon. >> >> >> > > >
thnks all
Reply by Steve Underwood December 6, 20062006-12-06
Heid the baw - goal!! wrote:
> "Jerry Avins" <jya@ieee.org> wrote in message > news:AemdnVBMaPwpd-nYnZ2dnUVZ_oidnZ2d@rcn.net... >> Heid the baw - goal!! wrote: >> >> ... >> >>> Not very helpful... >> Was it you in another guise who asked for help? If not, how do you know? >> >> Jerry >> -- >> Engineering is the art of making what you want from things you can get. >> &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295; > > Wasn't me,but saying' Try Googling...whatever' - we might as well all go > home. You can imaging even the smallest gnat knows that one.
If that's the case, why did he ask something so basic? He should have got the basics from a range of places Google will offer him, and be asking deeper questions. Steve
Reply by Jerry Avins December 5, 20062006-12-05
Heid the baw - goal!! wrote:
> "Jerry Avins" <jya@ieee.org> wrote in message > news:AemdnVBMaPwpd-nYnZ2dnUVZ_oidnZ2d@rcn.net... >> Heid the baw - goal!! wrote: >> >> ... >> >>> Not very helpful... >> Was it you in another guise who asked for help? If not, how do you know?
> Wasn't me,but saying' Try Googling...whatever' - we might as well all go > home. You can imaging even the smallest gnat knows that one.
http://users.erols.com/jyavins/google.gif Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Reply by Heid the baw - goal!! December 5, 20062006-12-05
"Jerry Avins" <jya@ieee.org> wrote in message
news:AemdnVBMaPwpd-nYnZ2dnUVZ_oidnZ2d@rcn.net...
> Heid the baw - goal!! wrote: > > ... > > > Not very helpful... > > Was it you in another guise who asked for help? If not, how do you know? > > Jerry > -- > Engineering is the art of making what you want from things you can get. > &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Wasn't me,but saying' Try Googling...whatever' - we might as well all go home. You can imaging even the smallest gnat knows that one. Tam -- Posted via a free Usenet account from http://www.teranews.com
Reply by fahim December 5, 20062006-12-05
hi gon,

i have this script written by matt wilbur (dowloaded) that returns the I
and Q channels of MSK/GMSK modulated waveforms. hope it helps.

-fahim

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function [msk_phase,gmsk_phase,xi,xq,t] =gmsk(bits,Rb,ns,BT)

% 	Title:	bbgmsk.m
%	Author: Matt Wilbur
%	Date:   October 19, 1998.
%
%	Description:  This function takes a NRZ sequences of bits
%		      (one sample per bit) and returns the phase
%		      of an MSK and GMSK signal modulated by them.
%
%		      It also returns the baseband in-phase
%		      and quadrature components of the  GMSK
%		      signal ready for upconverting.
%
%		      This function accepts as arguments:
%
%			bits - NRZ bit stream (one sample/bit)
%			Rb - baseband bit rate
%			ns - number of samples per bit
%		    BT - normalized bandwidth of Gaussian filter
%
%	Modified:

% Set up some timing variables

	Tb = 1/Rb;
	fs = ns*Rb;
	Ts = 1/fs;

% Extend the number of bits by one to make the convolution below
% work out nicely

	numbits = max(size(bits));
	bits(numbits+1) = bits(numbits);

% Generate the msk phase first

	bup = upfirdn(bits,ones(ns,1),ns,1);
	bscale = bup * pi/2/ns;
	bscale(1) = 0;
	msk = cumsum(bscale);

% Get the Gaussian impulse response

	% 3-dB BW of filter
	
	Bb = BT / Tb;

	% Time scale for filter --- 6 Bit periods to be safe
	
	t = -3*Tb:Ts:3*Tb;	

	% Analog impulse from formulae
	
	h_a = sqrt(2*pi/log(2))*Bb*exp(-2*pi^2*Bb^2*t.^2/log(2));

	% Digital impulse from impulse-response matching

	h_d = Ts*h_a;

% Get the GMSK phase --- a few delay tricks so beware of shifting
% indices

	[temp,delay] = max(h_d);
	
	y = conv(h_d, msk);
	upper_index = ns*numbits-1;
	gmsk_phase = rem(y(delay:upper_index + delay), 2*pi);
	msk_phase = msk(1:upper_index+1);

	t = 0:ns*numbits-1;
	t = t/fs;
	xi = cos(gmsk_phase);
	xq = sin(gmsk_phase);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>Hello, > >I am studying MSK modulation, does anyone know how to genrate a MSK
signal
>in matlab, pls help me..Thanks. > >Gon. > > >
Reply by Sastry December 5, 20062006-12-05
MATLAB communications blockset has MSK built in function that you can
use.

I totally agree with Jerry's response. No other better way to learn.
:-)

And hey, these days, Wikipedia is real rocking as far as communications
and Random Process concepts are concerned. :-) My take.


Tim Wescott wrote:
> Jerry Avins wrote: > > > ofdm wrote: > > > >> Hello, > >> I am studying MSK modulation, does anyone know how to genrate a MSK > >> signal > >> in matlab, pls help me..Thanks. > > > > > > Google "minimum-shift keying". Obce you know what it is, you'll probably > > know haw to generate it. If not, you'll learn Matlab trying. > > > > Jerry > > It was Googling (well, AltaVista-ing) "minimum-shift keying" that led to > me posting my Master's thesis on the web. > > Here it is again: http://www.wescottdesign.com/articles/MSK/mskTop.html. > > -- > > Tim Wescott > Wescott Design Services > http://www.wescottdesign.com > > Posting from Google? See http://cfaj.freeshell.org/google/ > > "Applied Control Theory for Embedded Systems" came out in April. > See details at http://www.wescottdesign.com/actfes/actfes.html
Reply by Tim Wescott December 5, 20062006-12-05
Jerry Avins wrote:

> ofdm wrote: > >> Hello, >> I am studying MSK modulation, does anyone know how to genrate a MSK >> signal >> in matlab, pls help me..Thanks. > > > Google "minimum-shift keying". Obce you know what it is, you'll probably > know haw to generate it. If not, you'll learn Matlab trying. > > Jerry
It was Googling (well, AltaVista-ing) "minimum-shift keying" that led to me posting my Master's thesis on the web. Here it is again: http://www.wescottdesign.com/articles/MSK/mskTop.html. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com Posting from Google? See http://cfaj.freeshell.org/google/ "Applied Control Theory for Embedded Systems" came out in April. See details at http://www.wescottdesign.com/actfes/actfes.html
Reply by Jerry Avins December 4, 20062006-12-04
Heid the baw - goal!! wrote:

   ...

> Not very helpful...
Was it you in another guise who asked for help? If not, how do you know? Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Reply by Heid the baw - goal!! December 4, 20062006-12-04
"Jerry Avins" <jya@ieee.org> wrote in message
news:weSdnXvfSdpQ9unYnZ2dnUVZ_s6dnZ2d@rcn.net...
> ofdm wrote: > > Hello, > > > > I am studying MSK modulation, does anyone know how to genrate a MSK
signal
> > in matlab, pls help me..Thanks. > > Google "minimum-shift keying". Obce you know what it is, you'll probably > know haw to generate it. If not, you'll learn Matlab trying. > > Jerry > -- > Engineering is the art of making what you want from things you can get. > &#4294967295;&#4294967295;&#4294967295;&#4294967295;
] Not very helpful... &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295; -- Posted via a free Usenet account from http://www.teranews.com
Reply by Jerry Avins December 4, 20062006-12-04
ofdm wrote:
> Hello, > > I am studying MSK modulation, does anyone know how to genrate a MSK signal > in matlab, pls help me..Thanks.
Google "minimum-shift keying". Obce you know what it is, you'll probably know haw to generate it. If not, you'll learn Matlab trying. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;