ehsanica
Joined: 15 Nov 2005 Posts: 83 Helped: 10
|
03 Nov 2007 12:17 phase noise dbc/hz matlab |
|
|
|
|
| bkhoa wrote: |
Please help me about Matlab code (M.file) for "phase noise" (How to simulate the phase noise).
1. The phase noise due to laser diode
2. The phase noise due to Local oscillator
Your help is highly appreciated. |
this is for OSCILLATOR:
http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=8844&objectType=file
Description:
function Sout = add_phase_noise( Sin, Fs, phase_noise_freq, phase_noise_power )
Oscillator Phase Noise Model
INPUT:
Sin - input COMPLEX signal
Fs - sampling frequency ( in Hz ) of Sin
phase_noise_freq - frequencies at which SSB Phase Noise is defined (offset from carrier in Hz)
phase_noise_power - SSB Phase Noise power ( in dBc/Hz )
OUTPUT:
Sout - output COMPLEX phase noised signal
NOTE:
Input signal should be complex
EXAMPLE ( How to use add_phase_noise ):
Assume SSB Phase Noise is specified as follows:
-------------------------------------------------------
| Offset From Carrier | Phase Noise |
-------------------------------------------------------
| 1 kHz | -84 dBc/Hz |
| 10 kHz | -100 dBc/Hz |
| 100 kHz | -96 dBc/Hz |
| 1 MHz | -109 dBc/Hz |
| 10 MHz | -122 dBc/Hz |
-------------------------------------------------------
Assume that we have 10000 samples of complex sinusoid of frequency 3 KHz
sampled at frequency 40MHz:
Fc = 3e3; % carrier frequency
Fs = 40e6; % sampling frequency
t = 0:9999;
S = exp(j*2*pi*Fc/Fs*t); % complex sinusoid
Then, to produse phase noised signal S1 from the original signal S run follows:
Fs = 40e6;
phase_noise_freq = [ 1e3, 10e3, 100e3, 1e6, 10e6 ]; % Offset From Carrier
phase_noise_power = [ -84, -100, -96, -109, -122 ]; % Phase Noise power
S1 = add_phase_noise( S, Fs, phase_noise_freq, phase_noise_power );
|
|
hardev15
Joined: 21 Oct 2009 Posts: 2 Location: india
|
21 Oct 2009 13:43 |
|
|
|
|
hi
i have a problem about the matlab code of diode equation for noise given below
k = 1.38e-23;
q = 1.6e-19;
t1 = 273 + 25;
vt = k*t1/q;
df=0.001;
f =[0:df:100]
kf=1.0e-26;
af=1.2;
v1=0.7;
%v1 =0.25:0.05:1.1;
id = 1.0e-12*(exp(v1/(2.0*vt)));
%pst= 2*q*id;
psflk= kf*(id.^af/f);
plot(f,psflk,'b')
xlabel('frequency (khz)')
ylabel('sflk (A/hz2)')
axis([0,2, 0, 0.0015])
i need the plot in psflk and frequency(f)
so pls help me
thanks
|
|