MATLAB Answers

CA code for GPS PRN-1

20 views (last 30 days)
1-Does anyone know how to generate the CA code for GPS
for i=1:1023
for j=1:10;
ca_1(i,:)=[x1 x2 x3 x4 x5 x6 x7 x8 x9 x10];
if y==2
else x1=1
if G_1==(G_1/2)
if y==2
else x2=1
I want to know how to shift the first value to right side if we have 10 value in the one row. So new data is entering at 1st place is sum of the 3rd and 10th place then convert it into binary form which is new value at 1st position. Hence we have to do till 1023 times.
One can see the video to know more what we have to do in the exercise.


Sign in to comment.

Accepted Answer

Kaashyap Pappu
Kaashyap Pappu on 27 Nov 2019
Edited: Kaashyap Pappu on 14 Jan 2020
You can use the comm.PNSequence object to generate the gold code for both generators. For the second generator, you will have to set the mask property to the appropriate phase delay polynomial, and number of bits out as 1023.
chips = 1023;
genG1 = [10 7 0]; % 1 + x^3 + x^10
initVector =[1 1 1 1 1 1 1 1 1 1];
generator = comm.PNSequence('Polynomial',genG1,...
Generate similarly for generator G2 using the phase delay polynomial as the mask, add both sequences using Modulo-2 addition using xor and you will have your sequence.
Hope this helps!


Show 1 older comment
Kaashyap Pappu
Kaashyap Pappu on 5 Dec 2019
The comm.PNSequence object works only if the Communications Toolbox is installed.
vimal kumar chawda
vimal kumar chawda on 5 Dec 2019
Hello Sir
1-In this mask is our initial vector. What does mask means ? for every respective satellite i have to set up the data or algorithm such set up is known as mask?
2- What should be Genpoly?
3-what is InitialStates? What type of value does it take like chip is 1023.
4-CurrentStates means ?
5- What does ... means ?
As per my understanding the blue data is reference and i have to substitute the value or data at beside that in black color like genG1,initVector..
Kaashyap Pappu
Kaashyap Pappu on 16 Dec 2019
  1. The mask would be the phase selection polynomial for each satellite vehicle. You can use a switch case setup for each satellite separately.
  2. Generator polynomial is given the in the technical specification. Specify powers of X as a vector.
  3. Initial states is a binary vector indication the starting state of the Linear Feedback Shift Register setup.
  4. Current state is the current output values for each the registers.
  5. ... is basically to inform the MATLAB compiler that the command is continued on the next line. This is used for readability.
The Blue data indicate properties of the specific object. The black highlighted variables are the user defined property values.

Sign in to comment.

More Answers (1)

Rajkumar Mishra
Rajkumar Mishra on 17 Sep 2020
in the solution above is not the second term be '3' inplace of '7' as mentioned in this line
genG1 = [10 7 0]; % 1 + x^3 + x^10


Sign in to comment.




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!