diff options
Diffstat (limited to '3446/CH11')
-rw-r--r-- | 3446/CH11/EX11.1/Ex11_1.sce | 16 | ||||
-rw-r--r-- | 3446/CH11/EX11.2/Ex11_2.sce | 59 | ||||
-rw-r--r-- | 3446/CH11/EX11.3/Ex11_3.sce | 13 | ||||
-rw-r--r-- | 3446/CH11/EX11.4/Ex11_4.sce | 25 | ||||
-rw-r--r-- | 3446/CH11/EX11.5/Ex11_5.sce | 32 | ||||
-rw-r--r-- | 3446/CH11/EX11.6/Ex11_6.sce | 75 | ||||
-rw-r--r-- | 3446/CH11/EX11.7/Ex11_7.sce | 21 | ||||
-rw-r--r-- | 3446/CH11/EX11.8/Ex11_8.sce | 35 |
8 files changed, 276 insertions, 0 deletions
diff --git a/3446/CH11/EX11.1/Ex11_1.sce b/3446/CH11/EX11.1/Ex11_1.sce new file mode 100644 index 000000000..67146bdd8 --- /dev/null +++ b/3446/CH11/EX11.1/Ex11_1.sce @@ -0,0 +1,16 @@ +// Exa 11.1
+// To calculate the processing gain and improvement in information rate.
+
+clc;
+clear all;
+
+CR1=1.2288; //Mcps(Clock rate 1)
+CR2=5;//Mcps(Clock rate 2)
+R1=9.6; //Information rate in Kbps for CR1
+PG2=256; //Processing Gain for CR2
+
+//solution
+PG1=10*log10(CR1*10^3/9.6);//Processing Gain for CR1
+R2=CR2*10^3/PG2;//information rate in Kbps for CR2
+printf('The processing gain for clock rate 1.2288Mcps is %d dB\n ',PG1);
+printf('Improvemrnt in information rate is %.2f Kbps\n',R2-R1);
diff --git a/3446/CH11/EX11.2/Ex11_2.sce b/3446/CH11/EX11.2/Ex11_2.sce new file mode 100644 index 000000000..b93fca912 --- /dev/null +++ b/3446/CH11/EX11.2/Ex11_2.sce @@ -0,0 +1,59 @@ +// Exa 11.2
+// To show that the transmitted signals to mobiles 1, 2, and 3 are recovered at the mobile receivers by despreading the resultant signal z(t).
+
+clc;
+clear all;
+
+//solution
+disp("From figure 11.4, we note that transmitted data for mobile1 as [0 1 1 0 0 ], for mobile2 as [0 0 1 0 0 ] and for mobile3 as [0 1 0 0 1] ");
+disp("From figure 11.5 we get resultant demodulated signal at a mobile ");
+Rx={[1 1 1 1 -3 1];[1 -3 1 1 1 1 ];[1 -3 1 1 1 -3];[1 -3 1 1 1 1];[-1 3 3 -1 3 -1]};//Resultant demodulated signal at mobile
+disp(Rx);
+//from Figure 11.4
+c1={[-1 -1 -1 -1 1 1];[1 -1 1 1 -1 -1];[1 -1 1 -1 -1 -1];[-1 1 1 1 -1 1];[1 -1 -1 1 -1 1]};
+c2={[1 1 -1 1 1 -1];[-1 1 -1 1 -1 -1];[-1 -1 1 1 1 -1];[1 1 -1 -1 1 -1];[1 -1 -1 -1 -1 -1]};
+c3={[-1 -1 1 -1 1 -1];[-1 -1 -1 1 1 1];[-1 1 1 -1 -1 1];[-1 1 -1 -1 -1 -1];[1 1 1 -1 1 1]};
+//t={[1 2 3 4 5 6];[7 8 9 10 11 12];[13 14 15 16 17 18];[19 20 21 22 23 24];[25 26 27 28 29 30]};
+//for Mobile 1
+for i= 1:5
+
+Demod1(i)=c1(i,1)*Rx(i,1)+c1(i,2)*Rx(i,2)+c1(i,3)*Rx(i,3)+c1(i,4)*Rx(i,4)+c1(i,5)*Rx(i,5)+c1(i,6)*Rx(i,6);
+if(Demod1(i)<0)
+ B1(i)=1;
+else
+ B1(i)=0;
+ end
+end
+//for mobile 2
+for i= 1:5
+
+Demod2(i)=c2(i,1)*Rx(i,1)+c2(i,2)*Rx(i,2)+c2(i,3)*Rx(i,3)+c2(i,4)*Rx(i,4)+c2(i,5)*Rx(i,5)+c2(i,6)*Rx(i,6);
+if(Demod2(i)<0)
+ B2(i)=1;
+else
+ B2(i)=0;
+ end
+end
+//for mobile 3
+for i= 1:5
+
+Demod3(i)=c3(i,1)*Rx(i,1)+c3(i,2)*Rx(i,2)+c3(i,3)*Rx(i,3)+c3(i,4)*Rx(i,4)+c3(i,5)*Rx(i,5)+c3(i,6)*Rx(i,6);
+if(Demod3(i)<0)
+ B3(i)=1;
+else
+ B3(i)=0;
+ end
+end
+disp("Value of integration at end of bit period for mobile1");
+disp(Demod1');
+disp("Value of integration at end of bit period for mobile2");
+disp(Demod2');
+disp("Value of integration at end of bit period for mobile3");
+disp(Demod3');
+disp("The recovered signal at mobile 1 is ");
+disp(B1');
+disp("The recovered signal at mobile 2 is ");
+disp(B2');
+disp("The recovered signal at mobile 3 is ");
+disp(B3');
+disp("In all cases, Recovered signal is negated value of transmitted signal")
diff --git a/3446/CH11/EX11.3/Ex11_3.sce b/3446/CH11/EX11.3/Ex11_3.sce new file mode 100644 index 000000000..55bbea795 --- /dev/null +++ b/3446/CH11/EX11.3/Ex11_3.sce @@ -0,0 +1,13 @@ +// Exa 11.3
+// To find the minimum number of PN chips.
+
+clc;
+clear all;
+
+BW=100; //in MHz
+Fspac=10; //frequency spacing in kHz
+
+//solution
+FreqTones=BW*10^3/Fspac;
+Chips=log2(FreqTones);
+printf('Minimum number of chips required are %d chips \n ',Chips);
diff --git a/3446/CH11/EX11.4/Ex11_4.sce b/3446/CH11/EX11.4/Ex11_4.sce new file mode 100644 index 000000000..ddecf7818 --- /dev/null +++ b/3446/CH11/EX11.4/Ex11_4.sce @@ -0,0 +1,25 @@ +// Exa 11.4
+// To calculate-
+//(a) data symbol transmitted per hop, and
+//(b) the number of nonoverlapping hop frequencies.
+
+clc;
+clear all;
+
+R=120; //transmission rate in kbps
+Hop=2000; //per second
+Spectrum=10; //in MHz
+
+//solution
+//For 32-FSK
+Bits_sym=log2(32);
+SR=R/Bits_sym;
+printf('Bits per symbol are %d \n ',Bits_sym);
+printf('Hops per second are 2000 and Symbol rate is %d kbps\n ',SR);
+disp("Since the symbol rate is higher than the hop rate, the system is a slow FHSS system.");
+Sym_hop=SR*10^3/Hop;
+Min_BW=Sym_hop*SR;
+Nonoverlap_hop=Spectrum*10^3/Min_BW;
+disp("");
+printf(' Symbols transmitted per hop are %d \n ',Sym_hop);
+printf('Number of non-Overlapping hop frequencies are %d \n ',round(Nonoverlap_hop));
diff --git a/3446/CH11/EX11.5/Ex11_5.sce b/3446/CH11/EX11.5/Ex11_5.sce new file mode 100644 index 000000000..6ae798e0b --- /dev/null +++ b/3446/CH11/EX11.5/Ex11_5.sce @@ -0,0 +1,32 @@ +// Exa 11.5
+// To Calculate:
+//(a) minimum separation between frequency tones,
+//(b) number of frequency tones produced by a frequency synthesizer,
+//(c) processing gain, and
+//(d) hopping bandwidth.
+
+clc;
+clear all;
+
+R=200;//input data rate in bps
+Fhop=200;//per second
+k=1;//Multipication_Factor
+
+//solution
+// We have 32-FSK modulation scheme
+Bits_sym=log2(32);
+Rs=Fhop/Bits_sym;
+printf('There are 200 hops per second and Symbol rate is %d symbols per sec \n',Rs);
+disp("The hop rate is higher than symbol rate, the system is a fast FHSS system.");
+SDur=1/Rs;
+L=Fhop/Rs;
+CDur=SDur/L;
+Separation=1/CDur;
+M=2^Bits_sym;
+Hop_BW=k*M*Fhop*L;
+Gp=M*k*L;
+disp("");
+printf(' Minimum separation between frequency tones should be %d Hz\n',Separation);
+printf(' Number of different frequency tones produced by a frequency synthesizer are %d\n',M);
+printf(' Processing Gain is %d\n ',Gp);
+printf('Hopping bandwidth is %d kHz\n',Hop_BW/1000);
diff --git a/3446/CH11/EX11.6/Ex11_6.sce b/3446/CH11/EX11.6/Ex11_6.sce new file mode 100644 index 000000000..277ebf108 --- /dev/null +++ b/3446/CH11/EX11.6/Ex11_6.sce @@ -0,0 +1,75 @@ +// Exa 11.6
+// To show how the signal is recovered at mobile by using two-rake receivers.
+
+clc;
+clear all;
+
+//solution
+disp("As we are given that actual bit values for mobile are [1 0 0 1 1] ");
+M1=[1 0 0 1 1];
+
+Rx1={[1 1 1 1 -3 1];[1 -3 1 1 1 1 ];[1 -3 1 1 1 -3];[1 -3 1 1 1 1];[-1 3 3 -1 3 -1];[1 -1 -1 0 0 0]};//Resultant demodulated signal at mobile(Z(t)) from path1
+
+Rx2={[-1 -1 1 1 1 1 ];[-3 1 1 -3 1 1 ];[1 1 1 -3 1 1 ];[1 -3 1 -3 1 1 ];[1 1 -1 3 3 -1 ];[3 1 -1 0 0 0]};//Resultant demodulated signal at mobile(Z(t-2Tc)) from path2
+
+Rx=Rx1+Rx2; //since,Z(t)=z(t)+Z(t-2Tc)
+
+//from Figure 11.13 (d) & Figure 11.14
+c1={[-1 -1 -1 -1 1 1];[1 -1 1 1 -1 -1];[1 -1 1 -1 -1 -1];[-1 1 1 1 -1 1];[1 -1 -1 1 -1 1]};
+c2={[-1 1 -1 -1 -1 -1 ];[1 1 1 -1 1 1 ];[-1 -1 1 -1 1 -1 ];[-1 -1 -1 1 1 1 ];[-1 1 1 -1 -1 1 ];[-1 1 0 0 0 0]};
+
+//case-1:Z(t)*C1(t);
+for i= 1:5
+
+Demod_1(i)=c1(i,1)*Rx(i,1)+c1(i,2)*Rx(i,2)+c1(i,3)*Rx(i,3)+c1(i,4)*Rx(i,4)+c1(i,5)*Rx(i,5)+c1(i,6)*Rx(i,6);
+if(Demod_1(i)<0)
+ B1(i)=1;
+else
+ B1(i)=0;
+ end
+end
+
+//case-2:Z(t)*C1(t-2Tc);
+for j=1:5
+
+Demod_2(j)=c2(j,3)*Rx(j,3)+c2(j,4)*Rx(j,4)+c2(j,5)*Rx(j,5)+c2(j,6)*Rx(j,6)+c2(j+1,1)*Rx(j+1,1)+c2(j+1,2)*Rx(j+1,2);
+if(Demod_2(j)<0)
+ B2(j)=1;
+else
+ B2(j)=0;
+ end
+ end
+ disp("case-1:z(t)*c1(t)");
+disp("Value of integration at end of bit period for mobile(case-1)");
+disp(Demod_1');
+disp("The recovered signal at mobile(case-1) is ");
+disp(B1');
+disp("Actual bit values are");
+disp(M1);
+disp("Recovered and actual values are not matching");
+disp("case-2:z(t)*c1(t-2Tc)");
+disp("Value of integration at end of bit period for mobile(case-2)");
+disp(Demod_2');
+disp("The recovered signal at mobile(case-2) is ");
+disp(B2');
+disp("Actual bit values are");
+disp(M1);
+disp("Recovered and actual values are not matching");
+//case3-Sum of path1 and path2
+disp("case-3:Sum of path1 & path2 integrator");
+disp("Sum of integrator outputs(rake receiver output)");
+Demod_3=Demod_1+Demod_2;
+disp(Demod_3');
+for k=1:5
+
+if(Demod_3(k)<0)
+ B3(k)=1;
+else
+ B3(k)=0;
+end
+end
+disp("Detected bit value ");
+disp(B3');
+disp("Actual bit values are");
+disp(M1);
+disp("Recovered and actual values are matching");
diff --git a/3446/CH11/EX11.7/Ex11_7.sce b/3446/CH11/EX11.7/Ex11_7.sce new file mode 100644 index 000000000..62f4b9ee3 --- /dev/null +++ b/3446/CH11/EX11.7/Ex11_7.sce @@ -0,0 +1,21 @@ +// Exa 11.7
+// To find power value to be set as a first approximation ans time required by mobile station to make changes as directed by base station.
+
+clc;
+clear all;
+
+Prm=-97;//the signal strength from the base stations in dBm
+
+//The constant ( K ) is the part of the broadcast message that is sent to the mobile by the base station on the paging channel.
+K=-73; //dB
+P2=18; //power as directed by BS (dBm)
+
+//solution
+Ptm=K-Prm;
+printf('The mobile transmitter power be set as a first approximation of %d dBm \n ',Ptm);
+Pwr_Redu=Ptm-P2;//power reduction
+printf('Power reduction = %d dBm \n ',Pwr_Redu);
+disp("Therefore, mobile requires 6 decrements each at 1.25 ms (1/800 sec) ");
+Time=6*1.25;
+printf(' Time required by mobile station to make changes as directed by base station is %.1f msec\n',Time);
+
diff --git a/3446/CH11/EX11.8/Ex11_8.sce b/3446/CH11/EX11.8/Ex11_8.sce new file mode 100644 index 000000000..cb20c71c9 --- /dev/null +++ b/3446/CH11/EX11.8/Ex11_8.sce @@ -0,0 +1,35 @@ +// Exa 11.8
+// To determine a possible pair of the SOFT-SLOPE and ADD-INTERCEPT values that will trigger the mobile station to send a PSMM to the base station and if the mobile station is IS-95 compliant, find the value of T-COMP that could trigger the mobile station to generate a PSMM.
+
+clc;
+clear all;
+
+P1=-95; //pilot1 in dBm
+P2=-100; //pilot2 in dBm
+P3=-101; //pilot3 in dBm
+P4=-105; //pilot4 in dBm
+P5=-102; //pilot in dBm
+NoiseP=-107; //Receiver sensitivity(dBm)
+Tadd=-13; //dB
+
+//solution
+//Pcj = received power of the jth pilot in the candidate set
+// Pai= received power of the ith pilot in the active set
+Pa1=P1-NoiseP;
+Pa2=P2-NoiseP;
+Pa3=P3-NoiseP;
+Pa4=P4-NoiseP;
+Pc5=P5-NoiseP;
+
+X=10*log10(10^(0.1*Pa1)+10^(0.1*Pa2)+10^(0.1*Pa3)+10^(0.1*Pa4)+10^(0.1*Pc5));
+disp("Max {14.22 *(SOFT-SLOPE)+ (ADD-INTERCEPT),-13 }<=5");
+disp("Thus we have two equations as follows");
+disp("14.22*SOFT-SLOPE+ADD-INTERCEPT>=-13 and");
+disp("14.22*SOFT-SLOPE+ADD-INTERCEPT<=5");
+disp(" Solving these equations, we get SOFT-SLOPE= 0.5 and ADD-INTERCEPT=-4");
+disp("For an IS-95-compliant mobile station (Pcj-Pai)>=0.5*T-COMP");
+disp("Since P1>P2>P3>P4, we replace P4");
+T_COMP=(P5-P4)/0.5;
+disp("");
+printf('The value of T-COMP that could trigger the mobile station to generate a PSMM should be <= %d dB (<= %d) .\n ',T_COMP,round(10^(0.1*T_COMP)));
+
|