牧夫天文网

 找回密码
 加入牧夫(请注明天文爱好者,否则无法通过审核)

QQ登录

只需一步,快速开始

自制GPS接收机系列——信号格式

[复制链接]
longyun 发表于 2010-1-22 14:23 | 显示全部楼层 |阅读模式 来自: 湖北省武汉市 中国科学院武汉分院

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?加入牧夫(请注明天文爱好者,否则无法通过审核)

x
2.6 GPSGLONASS卫星发送格式
GPS卫星的C/A码和P码都使用码分复用方式。由于C/A码比较短,因此编码必须仔细选择以确保好的交叉相关特性。GPSC/A码采用Gold码,可以用两个最大长度的移位寄存器的模2和获得。

GPSC/A码生成器结构图见下,包括两个10bit的移位寄存器G1G2,都工作在1.023MHz,各自有独立的或非门反馈网络。每个都能生成1023位的序列。两个移位寄存器都初始化为“置1的态,因为他们都生成相同长度的码串所以移位寄存器本身就保证了同步。
Gold码用G1G2输出的模2和生成。不同的码可以通过改变两个移位寄存器的相对相位得到。比起重新同步两个移位寄存器,延迟其中一个移位寄存器的输出更加容易。这个变化的延迟通过对G2的另外两个个模2和选线来实现。或非反馈移位寄存器具有模2加上它本身的延迟序列可以得到与原来相同,时间延迟几个时钟周期的性质。
任选两个G2选线位置,可以得到45个不同的延迟即45个不同的具有好的自相关和交叉相关性质的Gold码。这45个可能的码中,GPS卫星用到其中32个,见下表。GPS
C/A码保证了两个信道的串扰小于-21.6dB

50bps的导航数据流于C/A信号发生器同步,所以在G1G2都“置1时开始位变换,速率50bps对应每个位20C/A码周期。

导航信号格式化为词(word)、子页、页格式。词长度为30bit包括24bit的数据和6bit奇偶校验,校验位根据前24位数据和前一个词的最后两位算出来。校验位用来检查是否有接受数据错误。10个词构成一个子页往往还包括一组同步码“10001011”和一组时间码(TOW)。每6s发送一份子页。五个子页构成一个页,包含了所有导航用到的信息。每30s发送一个页面。其中每页的第一子页包含星载时间数据:偏移和漂移量等。第二、第三子页包含精确的ephemeris数据,包含用Keplerian elements(开普勒元?轨道根数?)和修正系数描述的卫星轨道信息。最后第四、第五子页包括almanac数据,这仅只是25页数据的一部分,所以完整的almanac信息需要12.5min才传输一次。

这些数据参数大多是用8162432位有符号或者无符号整数的二进制补码描述。从0-360度的角度常用0 - 1800 - -180来描述以提高位利用率。

GPS使用自己的时间单位,秒和周。一周是604800秒,在星期六到星期天的时候周计数加一。GPS的时间起始于1980年一月50时。GPS上时间是连续计时有别于有闰秒的UTC。这个差别包含在almanac数据中。
 楼主| longyun 发表于 2010-1-22 14:25 | 显示全部楼层 来自: 湖北省武汉市 中国科学院武汉分院
1# longyun

2.6. GPS C/A-transmission format

GPS satellites use code-division multiplexing on both C/A- and P-transmissions. Since C/A-codes are relatively short sequences (only 1023 bits), the codes have to be carefully selected for good cross-correlation properties. GPS C/A-codes are Gold codes (named after their inventor Robert Gold) that can be generated as a modulo-2 sum of two maximum-length shift-register sequences.

The GPS C/A-code generator is shown on Fig.08. It includes two 10-bit shift registers G1 and G2, both clocked at 1.023MHz, each with a separate feedback network made of exclusive-or gates. Both feedback networks are selected so that both generated sequences have the maximal length of 1023 bits. Both shift registers are started in the "all-ones" state and since both sequences have the same length, the shift registers maintain the synchronization throughout the operation of the circuit.



                               
登录/注册后可看大图

Gold codes are obtained by a modulo-2 sum (another exclusive-or operation) of the outputs of the two shift registers G1 and G2. Different codes can be obtained by changing the relative phase of the two shift registers. Instead of resynchronizing the shift registers it is easier to delay the output of one of them (G2). This variable delay is achieved with yet another modulo-2 sum (exclusive-or) of two G2 register taps. Exclusive-or feedback shift-regiter sequences have the property that a modulo-2 addition of a sequence with its delayed replica produces the same sequence, but delayed by a different number of clocks.

Choosing two G2 register taps, 45 different delays can be generated yielding 45 different Gold codes with good auto-correlation and cross-correlation properties. Out of these 45 possible codes, 32 are allocated to GPS satellites as shown on Fig.09. The cross-correlation properties of GPS C/A-codes guarantee a crosstalk smaller than -21.6dB between the desired and undesired satellite signals.


                               
登录/注册后可看大图

The 50bps navigation data stream is synchronized with the C/A-code generator so that bit transitions coincide with the "all-ones" state of both shift registers G1 and G2. At 50bps one data bit corresponds to 20 C/A-code periods.

The navigation data is formatted into words, subframes and frames. Words are 30 bits long including 24 data bits and 6 parity bits computed over the 24 data bits and the last two bits of the previous word. Parity bits are used to check the received data for errors and to resolve the polarity ambiguity of the BPSK demodulator. 10 words (300 bits) form a subframe which always includes a subframe sync pattern "10001011" and a time code called "Time-Of-Week" (TOW). One subframe is transmitted every 6 seconds.

Five subframes form one frame (1500 bits) that contains all of the information required to use the navigation signals. One frame is transmitted every 30 seconds. The first subframe in the frame contains the on-board clock data: offset, drift etc. The second and third subframes contain the precision ephemeris data in the form of Keplerian elements with several correction coefficients to accurately describe the satellite's orbit. Finally, the fourth and fifth subframes contain almanac data that is not required immediately and are sub-commutated in 25 consecutive frames, so that the whole almanac is transmitted in 12.5 minutes.

The allocation of the single data words is completely described in [5]. Most numerical parameters are 8-, 16-, 24- or 32-bit integers, either unsigned or signed in the two's complement format. Angular values that can range from 0 to 360 degrees are usually expressed in semi-circles to make better use of the available bits.

GPS is also using its own time scale. The units are seconds and weeks. One week has 604800 seconds and the week count is incremented between Saturday and Sunday. GPS time starts on the midnight of January 5/6, 1980. GPS time is a continuous time and therefore it differs by an integer number of leap seconds from UTC. The difference between UTC and GPS time is included in the almanac message.
回复 支持 反对

使用道具 举报

本版积分规则

快速回复 返回顶部 返回列表