專(zhuān)利名稱(chēng):Gps和glonass多信道并行信號(hào)追蹤方法及相關(guān)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及衛(wèi)星信號(hào)追蹤系統(tǒng),主要是指一種GPS和GLONASS多信道并行信號(hào)追蹤方法及相關(guān)器。
背景技術(shù):
已知GPS采用碼分多址信號(hào),GLONASS采用平分多址信號(hào)。傳統(tǒng)的衛(wèi)星信號(hào)追蹤系統(tǒng)只能接收GPS或GLONASS信號(hào),不能同時(shí)接收GPS和GLONASS信號(hào)。
發(fā)明內(nèi)容
本發(fā)明的目的就是提供一種GPS和GLONASS多信道并行信號(hào)追蹤方法及相關(guān)器,通過(guò)天線(xiàn)兼容、解碼、載波分離混頻、編程控制信道,實(shí)現(xiàn)了一臺(tái)接收機(jī)可同時(shí)接收GPS和GLONASS多信道信號(hào),較好地克服了現(xiàn)有技術(shù)存在的不足。實(shí)現(xiàn)本發(fā)明的方法是捕獲和追蹤衛(wèi)星信號(hào)包括如下步驟對(duì)CHx_SATCNTL寄存器編程以選擇想要的GPS黃金碼(RPN編號(hào))或者GLONASS碼,同時(shí)也要為相關(guān)器的追蹤臂選擇編碼類(lèi)型,一般在捕獲模式,把追蹤臂定在”Dithering”模式(在”Early”和”Late”模式不停切換)立即在兩個(gè)相位展開(kāi)搜索,然后一旦找到衛(wèi)星就切換至追蹤模式;對(duì)CHx_SIGSEL寄存器編程來(lái)為相關(guān)器選擇輸入信號(hào)和為窄帶轉(zhuǎn)換器(如果是GLONASS)選擇中心頻率;對(duì)CHx_CARR_INCR_L0寄存器編程編程到這個(gè)寄存器的數(shù)值是用來(lái)為12信道的相關(guān)器中的混合操作選擇本地振蕩器的頻率,來(lái)把輸入的2位元數(shù)字化信號(hào)從射頻前端降頻到基帶,要被編程的數(shù)值等于本地振蕩器的標(biāo)稱(chēng)頻率加上多普勒位移的補(bǔ)償估計(jì)值,再加上用戶(hù)時(shí)鐘頻率漂移的補(bǔ)償估計(jì)值;對(duì)CHx_C0DE_INCR_L0寄存器編程編程到這個(gè)寄存器的數(shù)值是C/A編碼標(biāo)稱(chēng)碼率(2. 046MHz或者I. 022MHz)的兩倍,如果需要,再加上多普勒位移和用戶(hù)時(shí)鐘頻率的小量補(bǔ)償;解除追蹤信道的重置借助對(duì)RESET_C0NTR0L寄存器編程寫(xiě)入合適的數(shù)值。這個(gè)操作會(huì)啟動(dòng)相關(guān)進(jìn)程;獲取累加數(shù)據(jù)數(shù)據(jù)來(lái)自對(duì)累加數(shù)據(jù)寄存器的讀取,對(duì)同一追蹤信道的幾次連續(xù)的讀取可以相加以增加相關(guān)積分的周期;確定GNSS信號(hào)是否已經(jīng)被找到是通過(guò)把相關(guān)積分結(jié)果和一個(gè)閾值相比較,如果確定信號(hào)找到那就跳轉(zhuǎn)到信號(hào)拉進(jìn)算法。要注意的是同相的信號(hào)和垂直相的信號(hào)的累加數(shù)據(jù)都要被考慮,因?yàn)樵谶@個(gè)時(shí)候本地載波數(shù)字控制振蕩器還不一定和輸入GNSS信號(hào)同相;如果GNSS信號(hào)沒(méi)有被找到就需要重新編程以改變載波數(shù)字控制振蕩器,編碼數(shù)字控制振蕩器頻率或者黃金代碼來(lái)重新嘗試。典型的做法是先保持兩個(gè)數(shù)字控制振蕩器的頻率不變,撥動(dòng)黃金碼的相位直到2046或者1022個(gè)可能的位置都被覆蓋到,如果信號(hào)沒(méi)找至IJ,那就少量地改變載波數(shù)字控制振蕩器的頻率然后再對(duì)黃金碼的相位進(jìn)行掃描,黃金碼相位的撥動(dòng)是通過(guò)對(duì)CHx_CODE_SLEW寄存器的編程實(shí)現(xiàn)的;一旦GNSS信號(hào) 被找到編碼相位對(duì)齊,載波相位對(duì)齊以及多普勒和用戶(hù)始終偏差補(bǔ)償都還很粗糙,編碼相位對(duì)齊精度之能在半個(gè)碼位,載波數(shù)字控制振蕩器信號(hào)和輸入信號(hào)并不同相,而頻率的誤差也可以達(dá)到連續(xù)嘗試時(shí)的步進(jìn)值。實(shí)現(xiàn)本發(fā)明的相關(guān)器是包括多信道相關(guān)器,該多信道相關(guān)器包括時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器、地址解碼器、總線(xiàn)界面、多個(gè)追蹤模塊,其中多個(gè)追蹤模塊經(jīng)總線(xiàn)并聯(lián),并聯(lián)后的多個(gè)追蹤模塊分別連接時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器,并經(jīng)總線(xiàn)界面連接地址解碼器。還包括所述追蹤模塊包括載波數(shù)字控制振蕩器、編碼數(shù)字控制振蕩器、載波循環(huán)計(jì)數(shù)器、C/A編碼發(fā)生器、信號(hào)源選擇器、載波混合器、編碼混合器、累加和丟棄、編碼相位計(jì)數(shù)器、編碼撥動(dòng)計(jì)數(shù)器、歷元計(jì)數(shù)器,其中所述寄存器包括控制寄存器、狀態(tài)寄存器、累加器數(shù)據(jù)寄存器、測(cè)量數(shù)據(jù)寄存器。本發(fā)明具有的有益效果采用兼容的天線(xiàn)、相對(duì)獨(dú)立的信道、不同的解碼方式,及通過(guò)編程控制信道接收信號(hào),實(shí)現(xiàn)了一臺(tái)接收機(jī)可同時(shí)接收GPS和GLONASS多信道信號(hào)。
圖I是本發(fā)明的整合載波相位圖,展示了積分載波相位等式是如何被推到出來(lái)的。其中1·Reading at TICo (在 TICo 時(shí)刻讀取):CHx_CARR_DCO_PHASE。= PH02Reading at TICo (在 TICo 時(shí)刻讀取):CHxJ^ARtLDOU3HASE1 = PH1CHx.CARR.CYCLEi = K1+13. Reading at TICo (在 TICo 時(shí)刻讀取):CHx_CARR_DCO_PHASE2 = PH2CHx_CARR_CYCLE2 = K2+1Λ Yl = 2π Kl+ (2π -ΡΗΟ) +PHl= 2π (Κ1+1)-ΡΗ0+ΡΗ1= 2π (CHX_CARR_CYCLEI-CHX_CARR_DC0_PHASE0/1204+CHX_CARR_DCO_PHASE1/1024);
LASTΣ
Σ ΛΥ1 = 2 兀(κ CHX—CARR—CYCLE1-CHX—CARR一DCO—PHASE0/1024-CHX一 CARR—DCO—PHASELAST/1024);NOTE The carrier cycle counter counter value is stored at every TIC andthe counter is reset(注意載波周期計(jì)數(shù)器的數(shù)字在每個(gè)TIC時(shí)刻被存儲(chǔ),同時(shí)計(jì)數(shù)器復(fù)位)圖2是本發(fā)明的TAME標(biāo)記發(fā)生器的結(jié)構(gòu)圖。其中40MhzMASTER CLOCK (40Mhz 主時(shí)鐘);20-bit counter (20-位計(jì)數(shù)器);CNTL (控制);
CONTROL LOGIC (控制邏輯);21-BIT PROGRAMMABLE DOWN (21-位可編程倒計(jì)時(shí));MARK FBx (FBx 標(biāo)記);I SEC. TIME MARK (I 秒時(shí)刻標(biāo)記);EXTERNAL LINE DRIVERS (外部線(xiàn)路驅(qū)動(dòng));圖3是本發(fā)明的TAME標(biāo)記計(jì)時(shí)的結(jié)構(gòu)圖。其中NAVSOLUTION COMPUTATION DELAY (導(dǎo)航結(jié)果計(jì)算延遲);TIME BETWEEN TICs IS CONSTANT (TIC 時(shí)刻之間的時(shí)間間隔是常量); OUTPUT UTC TIME MARK (輸出世界時(shí)標(biāo)記);圖4是本發(fā)明的更新模式下清空時(shí)序。其中1023CHIPS(1023位);DUMP (清空);C/A CODE CHIP NO (C/A 編碼位編號(hào));Tl Load 4into CHx_SLEff register = 2*5chip delay (Tl :向 CHx_SLEW 寫(xiě)入 5 =2*5位延遲);圖5是本發(fā)明的相關(guān)器結(jié)構(gòu)圖。圖6是本發(fā)明的原理圖。中英文對(duì)照CLOCK GENERATOR(時(shí)鐘發(fā)生器)、CONTROL REGISTER(控制寄存器)、ADDRESS DECODER (地址解碼器)、BUS INTERFACE 總線(xiàn)接口、STATUS REGISTERS 狀態(tài)寄存器、TIME BASE GENERATOR 時(shí)基發(fā)生器、TRACKING MODULE CHANNEL I 跟蹤模塊通道 I、REGISTER SELECTS (寄存器選擇信號(hào))、32-BIT BUS32 (位總線(xiàn)信號(hào))、C0NTR0L (控制信號(hào))、MULTIPHASE CLOCKS (多相位時(shí)鐘信號(hào))、SYSTEM STATUS BITS系統(tǒng)狀態(tài)位信號(hào);信號(hào)其余在英文縮寫(xiě)后加上“信號(hào)”兩字即可。圖7是本發(fā)明的追蹤I旲塊不意圖。其中ADC (數(shù)模轉(zhuǎn)換);MUX (多路復(fù)選器);SIG MAG (信號(hào)強(qiáng)度);TESTOiHi);NA PROW BAND CONVERTER (導(dǎo)航可編程基帶整流器);SELECT S0URCE&SELCET MODE (選擇信號(hào)源 & 選擇模式);SOURCE SELECTOR (信號(hào)源選擇);CARRIER DCO (載波 DC0);CARRIER CYCLE COUNTER (載波周期計(jì)數(shù)器);32-BIT ACCUMULATE&DUMP Q_TARCKING (32-位累加 & 清空 Q_ 追蹤);32-BIT ACCUMULATE&DUMP Q_TARCKING (32-位累加 & 清空 Q_ 提示);CODE SLEW (編碼位滑動(dòng));C/A, L2, GLO CODE GENERATOR (C/A, L2, GLO 編碼發(fā)生器);CODE PHASE COUNTER (編碼相位計(jì)數(shù)器);CODE DCO (編碼 DC0);
EPOCH COUNTER (歷元計(jì)數(shù)器);32-BITACCUMULATE&DUMP I_TARCKING (32-位累加 & 清空 I_ 追蹤); 3 2-B I TACCUMULATE&DUMP I_TARCKING (32-位累加 & 清空 I_ 提示);IN and OUTDATABUSes (輸入輸出總線(xiàn));圖8是本發(fā)明的真實(shí)時(shí)間時(shí)鐘時(shí)序示意圖。其中RTC TIME READ HERE BYPROCESSOR (真實(shí)時(shí)間在此被處理器讀取);POSITION FIX COMPUTED ON THIS TIC. TIC IS GNSS TIME TRAGGED (位置信息在這個(gè) TIC計(jì)算出來(lái)。TIC是GNSS時(shí)間觸發(fā)的);NOTES (注意) ID = delay between RTC timebase and system time ta(ID =真實(shí)時(shí)間時(shí)鐘的時(shí)間基和系統(tǒng)時(shí)間ta之間的延遲);2consecutive measurement of D give an indication of RTC drift (2 連續(xù)車(chē)輛的D給出真實(shí)時(shí)間時(shí)鐘漂移的提示);3Resolution of D is a function of clock to RTC_DELAY counter (3D 的分辨率是RTC_DELAY計(jì)數(shù)器時(shí)鐘的方程);圖9是本發(fā)明的微小誤差時(shí)序示意圖。其中ERR0RTERMS(誤差術(shù)語(yǔ));in tSl equal to error terms of GPS time computation while getting theNAV solution(對(duì)于tSl :相當(dāng)于取得導(dǎo)航結(jié)果時(shí)的GPS時(shí)間計(jì)算值);in Dl Can be too long or too short by r, where r = RTC_DELAY counterclock period (對(duì)于Dl :用r有可能會(huì)太長(zhǎng)或者太短,在這里,r = RTC_DELAY計(jì)數(shù)器時(shí)鐘周期);inD2 same asDl (對(duì)于 D2 :和 Dl 相同);in DRTC Residual error in RTC drift estimate = effectiveRTCdrift-estimated RTCdrift (對(duì)于DRTC :真實(shí)時(shí)間時(shí)鐘漂移估算的殘余誤差=有效的真實(shí)時(shí)間時(shí)鐘漂移-估算的真實(shí)時(shí)間時(shí)鐘漂移);圖10是本發(fā)明的真實(shí)時(shí)間時(shí)鐘示意圖。其中REALHME CLOCK(真實(shí)時(shí)間時(shí)鐘);MICROPROCESSOR SYSTEM (微處理器系統(tǒng));ENABLE (激活)RTC DELAY (真實(shí)時(shí)間時(shí)鐘演示);NOTE :(注意)llatch counter value saved on TIC (I 將 TIC 時(shí)刻儲(chǔ)存的計(jì)數(shù)器數(shù)字鎖存);2regulator read with measurement data (2 校準(zhǔn)器和測(cè)量數(shù)據(jù)一起讀取);圖11是本發(fā)明的系統(tǒng)結(jié)構(gòu)框圖。圖12是本發(fā)明的信號(hào)連接圖。圖13是本發(fā)明的存儲(chǔ)器I框圖。圖14是本發(fā)明的存儲(chǔ)器2框圖。圖15是本發(fā)明的存儲(chǔ)器3框圖。
圖16是本發(fā)明的存儲(chǔ)器4框圖。圖17是本發(fā)明的內(nèi)部一層示意圖。圖18是本發(fā)明的內(nèi)部一層元件結(jié)構(gòu)示意圖。圖19是本發(fā)明的頂層封裝管腳示意圖。圖20是本發(fā)明的內(nèi)部二層元件結(jié)構(gòu)示意圖。圖21是本發(fā)明的內(nèi)部二層示意圖。圖22是本發(fā)明的搜索引擎芯片內(nèi)部原理圖。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明本發(fā)明包括方法和相關(guān)器兩部分。方法部分因?yàn)榇嬖诤芏喾N不同的GNSS接收機(jī),所以進(jìn)行相關(guān)操作也要有不同的方式。為了適應(yīng)這一點(diǎn),也是為了容許循環(huán)參數(shù)的動(dòng)態(tài)調(diào)整,相關(guān)器的軟件被設(shè)計(jì)為適應(yīng)盡可能多的功能。這樣的適應(yīng)性意味著器件無(wú)法脫離一個(gè)緊密連接的微處理器使用,但是因?yàn)榭偸切枰⑻幚砥靼严嚓P(guān)器的輸出轉(zhuǎn)換成有用的信息,所以這并不是一個(gè)很大的限制。和相關(guān)器相關(guān)聯(lián)的軟件可以被分成兩大獨(dú)立的模塊I.捕獲和追蹤衛(wèi)星信號(hào)以給出偽距。2.處理偽距以得出導(dǎo)航信息然后封裝為適合用戶(hù)的格式。為了能夠得到導(dǎo)航信息,所有的偽距的時(shí)鐘誤差必須一致,以便在油足夠衛(wèi)星(如果高度已知那就是三顆,否則是四顆)被追蹤的情況下能夠使用迭代的方法被剔除來(lái)得到真正的距離。這個(gè)對(duì)時(shí)鐘誤差匹配的高精度要求解釋了 12個(gè)信道的相關(guān)器的復(fù)雜的同步處理的必要性。以下的內(nèi)容至和軟件的信號(hào)處理方面油關(guān)系,以捕獲和追蹤最多12顆衛(wèi)星信號(hào)以獲取偽距和導(dǎo)航信息。導(dǎo)航軟件的操作并不取決與相關(guān)器的具體信息,所以將不會(huì)被包含在這份數(shù)據(jù)表中。一對(duì)片上中斷時(shí)間基信號(hào)被提供用來(lái)在特定的時(shí)間段執(zhí)行微處理器和12信道相關(guān)器之間的數(shù)據(jù)傳輸協(xié)議;這些信號(hào)是I. INTOUT-用來(lái)中斷微處理器以檢索累加數(shù)據(jù)(長(zhǎng)達(dá)I. 023ms)-中斷時(shí)間一般小于 1ms。2. MEAS_INT-用來(lái)中斷微處理器以檢索每個(gè)TIC時(shí)刻的測(cè)量數(shù)據(jù)(大約IOOms的時(shí)間)。這些中斷信號(hào)可以被用來(lái)通過(guò)中斷服務(wù)程序達(dá)到微處理器的立即響應(yīng)。否則就需要基于軟件的投票機(jī)制了 ;由應(yīng)用程序作出選擇。如果使用INTOUT中斷或者可能加上投票機(jī)制,數(shù)據(jù)傳輸速率大約是每個(gè)信道的相關(guān)結(jié)果速率的兩倍。所以很多傳輸可能都不會(huì)給出新數(shù)據(jù)。所以在傳輸之前先檢查寄存器狀態(tài)來(lái)查驗(yàn)新數(shù)據(jù)是否已經(jīng)可用,這樣可以減少對(duì)總線(xiàn)的無(wú)效使用必須注意的是,每個(gè)信道的相關(guān)處理計(jì)時(shí)都是鎖定在該信道的輸入信號(hào)上,而不是互相鎖定,或者和微處理器中斷鎖定,所以新數(shù)據(jù)的生成是異步的。但是每個(gè)信道測(cè)量數(shù)的采樣時(shí)刻都是一樣的,以給出一致的導(dǎo)航信息。為了盡快地得到對(duì)衛(wèi)星的捕獲,從上次校正得到的數(shù)據(jù)必須保存下來(lái)作為下次校正的起點(diǎn)。使用芯片上的嵌入式實(shí)時(shí)時(shí)鐘給下次校正一個(gè)好的GNSS時(shí)間估計(jì)也是有用的;導(dǎo)航信息可以被用來(lái)測(cè)量時(shí)鐘漂移和計(jì)算時(shí)鐘校正以克服時(shí)鐘老化。通過(guò)用戶(hù)的位置(或者足夠精確的估計(jì)值)加上衛(wèi)星年歷(Almanac)以及正確的時(shí)間就可以知道應(yīng)該搜索哪些衛(wèi)星。這些可以用來(lái)尋找多普勒效應(yīng)的估計(jì)值,同時(shí)上次的時(shí)鐘誤差是最好的可用的本次時(shí)鐘誤差的估計(jì)值。如果這些信息都沒(méi)有那導(dǎo)航接收機(jī)的搜索范圍就很大,會(huì)極大地增加衛(wèi)星捕獲的時(shí)間。衛(wèi)星時(shí)鐘校正信息和衛(wèi)星星歷表是取得導(dǎo)航信息所必須的,所以如果一個(gè)最近的設(shè)置被保存在存儲(chǔ)器里,導(dǎo)航信息的計(jì)算就可以在衛(wèi)星捕獲的同時(shí)就開(kāi)始了,而不是必須等待衛(wèi)星重新發(fā)送導(dǎo)航信息(18-36秒)。
60信道相關(guān)器包含了四種不同的寄存器■控制寄存器(Control Registers),用來(lái)編制器件的功能?!鰻顟B(tài)寄存器(Status Registers),用來(lái)只是器件內(nèi)的進(jìn)程的狀態(tài)。■累加器數(shù)據(jù)寄存器(Accumulated Data Registers),每毫秒提供一次C/A編碼的累加結(jié)果。這是捕獲和追蹤衛(wèi)星信號(hào)的原始數(shù)據(jù)。■測(cè)量數(shù)據(jù)寄存器(Measurement Data Registers),鎖存載波數(shù)字控制振蕩器相位,載波周期計(jì)數(shù),編碼數(shù)字控制振蕩器相位,一毫秒內(nèi)的歷元數(shù),還有每9. 09或者100毫秒間隔的以20-毫秒為單位的歷元數(shù)。這是用于計(jì)算偽距的原始數(shù)據(jù)?!黾拇嫫髟敿?xì)描述ZVM2060IP寄存器列表寄存器地址寄存器
(十六進(jìn)制)
CNTL x08 to xOFCH2/14/26/38 Control
CNTL xlO to xl7CH3/15/27/39 Control CNTL X18 to xlF CH4/16/28/40 Control
CNTL x20 to x27CH5/17/29/41 Control
CNTL x28 to x2FCH6/18/30/42 Control CNTL X30 to x37 CH7/19/31/43 Control
CNTL x38 to x3FCH8/20/32/44 Control
CNTL x40 to x47CH9/21/33/45 Control
CNTL X48 to x4FCH10/22/34/46 Control
CNTL x50 to x57CHl 1/23/35/47 Control
CNTL x58 to x5FCH12/24/36/48 Control
CNTL x60 to x67MULTI Control
68TMARK—SI
6BPROG—ACCUM_INT
6DPROG—TIC CNTL x70 to x77 ALL Control
79TMARK—LOAD
x7CTEST—CONTROL
x7DMULTI—CHANNEL一 SELECTECT
x7ESYSTEM—SETUP
x7FRESET—CONTROL
x80 to x83Status Registers
CHI/13/25/37 Accumulate
ACCUM x84 to x87AccumulateACCUM x88 to x8B CH2/14/26/38 AccumulateACCUM x8C to x8F CH3/15/27/39 AccumulateACCUM x90 to x93 CH4/16/28/40 AccumulateACCUM x94 to x97 CH5/17/29/41 AccumulateACCUM x98 to x9B CH6/18/30/42 AccumulateACCUM X9C tox9F CH7/19/31/43 AccumulateACCUM xAO to xA3 CH8/20/32/44 AccumulateACCUM xA4 to xA7 CH9/21/33/45 AccumulateACCUM xA8to xAB CH10/22/34/46 AccumulateACCUM xAC to xAF CHl 1/23/35/47 AccumulateACCUM xBO to xB3 CH11/23/35/47 AccumulateACCUM XDO to xD3 ALL AccumulateACCUM XD4 to xD7 MULTI AccumulateACCUM XD8 to WHOOLALL xDBulate
External CORTC_DELAY_L
event
External CIRTC—DELAYJH
event
CNTL COReset ON
CNTL ClReset OFF
Bus Test xC2 DATA BUS TEST CNTL EO to El WHOOL MULTI Control CNTL FO to F7 WHOOL ALL Control CNTL FFRESET_CONTROL表4.寄存器列表
地址
(十六進(jìn)制)寫(xiě)入函數(shù)讀取函數(shù)
x80STATUSACCUM—STATUS_C
x81未使用MEAS_STATUS_A
x82未使用ACCUM_STATUS—A
x83未使用ACCUM—STATUS_B表5.地址
(十六進(jìn)制)寫(xiě)入函數(shù)讀取函數(shù)
CNTL+OSATCNTLCODE—SLEW
CNTL+1CODE PHASE COUNTER (I)CODE_PHASE
CNTL+2CARRIER_CYCLE_COUNTER (I) CARRIER_CYCLE_LOW
CNTL+3CARRIERDCOJNCRHIGHCARRIERDCOPHASE
CNTL+4CARRIER DCO_INCR—LOWEPOCH (Latched 0)
CNTL+5CODE—DCOJNCR—HIGHCODE—DCO—PHASE
CNTL+6CODE—DCO—INCR—LOWCARRIER—CYCLEHIGH
CNTL+7EPOCH COU NT LOADEPOCH—CHECK (Not latched)
ACCUM+0CODE_SLEW_COUNTERI_TRACK
ACCUM+1ACCUM_RESETQTRACK
ACCUM+2SIG SELI—PROMPTACCUM+3 CODE_DCO_PRESET_PHASE Q_PR0MPT表6.追蹤信道寄存器注意C0DE_PHASE_C0UNTER 和 CARRIER_CYCLE_C0NTR0L 寄存器只能在測(cè)試模式在通過(guò)把TEST CONTROL寄存器的第三位置高而選中之后才能被寫(xiě)入。X含義O對(duì)應(yīng)I..信道,I對(duì)應(yīng)13. .24信道,2對(duì)應(yīng)25. .36信道,3對(duì)應(yīng)37. .48信道,4對(duì)應(yīng)49. .60信道。ZVM2060IP寄存器列表相關(guān)器寄存器相關(guān)寄存器的地址可以通過(guò)一個(gè)基礎(chǔ)地址和特定的寄存器增量來(lái)計(jì)算。相關(guān)器每個(gè)信道的CNTL和ACCUM寄存器單元的基礎(chǔ)地址顯示在表4中,增量在表6中給出。比如CH3_C0DE_DC0_INCR = 18H+06H = 1EH.CH23_C0DE_DC0_INCR = 118H+06H = 11EH.在ACCUM和CNTL部分都有一些地址在CHx的地方被標(biāo)記了 ALL或者M(jìn)ULTI。一次操作寫(xiě)入這些地址就會(huì)寫(xiě)入所有一組的12個(gè)信道或者一組通過(guò)MULTI_CHANNEL_SELECT選擇的信道所以可以用來(lái)快速初始化系統(tǒng)或者使用很少的總線(xiàn)加載下個(gè)搜設(shè)置。這是一個(gè)只寫(xiě)操作所以相應(yīng)的CHx讀取操做在標(biāo)記了 ALL或者M(jìn)U LTI的地址是無(wú)效的。要同時(shí)寫(xiě)入所有的芯片信道要使用WH00LALL控制地址。可以看到CNTL中的地址被用來(lái)在寫(xiě)模式下控制器件但是在讀模式給出測(cè)量數(shù)據(jù)數(shù)據(jù)被寫(xiě)入32位接口的輸入緩沖器然后會(huì)在接下來(lái)的7 (或者6)相位時(shí)鐘的整個(gè)周期被傳輸?shù)剿哪繕?biāo)寄存器。所以寫(xiě)入周期應(yīng)該至少有300ns。相關(guān)器寄存器分配如下,有兩個(gè)只寫(xiě)寄存器沒(méi)有任何數(shù)據(jù)位,它們是I.對(duì)CHx_ACCUM_RESET寄存器的寫(xiě)操作(和寫(xiě)入的數(shù)據(jù)是什么無(wú)關(guān))會(huì)重置該信道的 ACCUM_STATUS_A,ACCUM_STATUS_B,and ACCUM_STATUS_C 寄存器。2.對(duì)STATUS寄存器的寫(xiě)操作O會(huì)把所有信道的各種狀態(tài)標(biāo)記的狀態(tài)值鎖存到ACCUM_STATUS_A, ACCUM_STATUS_B and ACCUM_STATUS_C 寄存器中。這就允許了追蹤機(jī)制是輪詢(xún)?yōu)榛A(chǔ)的,而不是由中斷驅(qū)動(dòng)的。寄存器是以字母順序而不是以地址順序排列的,以便各部分更容易地參考。除非另外聲明否則LSB是O位而MSB是31位或者鎖存在數(shù)據(jù)寄存器的最高位。注意大多數(shù)寄存器不同時(shí)具備讀和寫(xiě)的功能,所以很多地址被不同功能的只讀或者只寫(xiě)寄存器共享。 ACCUM_STATUS_A (讀取地址)ACCUM_STATUS_A是一個(gè)包含了十二個(gè)狀態(tài)位狀態(tài)
位元位元名
31 to 15ACCUM_INT
14未使用-低位
13未使用—低位
12未使用-低位
11CH12_NEW_ACCUM_DATA
10CH11_NEW_ACCUM_DATA
9CHlO一NEW_ACCUM_DATA
8CH9—NEW_ACCUM—DATA
7CH8_NEW一ACCUM—DATA
「…「廠(chǎng)6CH7 NEW ACCUM DATA-_
5CH6 NEW ACCUM DATA一— —
4CH5_NEW_ACCUM_DATA
3CH4_NEW_ACCUM_DATA
2CH3_NEW_ACCUM_DATA
ICH2_NEW_ACCUM_DATA
0CH1_NEW_ACCUM_DATA表7的寄存器,它在每個(gè)INTOUT的有效邊被采樣和鎖存。它們也可以通過(guò)對(duì)STATUS寄存器執(zhí)行一個(gè)寫(xiě)操作在要求下被采樣和鎖存(這只在通過(guò)設(shè)置SYSTEM_SETUP寄存器中NTERRUPT_ENABLE位使中斷被終止的情況下才是安全的)。微處理器必須在該信道的下個(gè)DUMP操作前響應(yīng)每個(gè)INT0UT,然后讀取信道寄存器。The ACCUM_INT bit在每個(gè)INTOUT中斷被置高,它通過(guò)讀取ACCUM_STATUS_A寄存器被重置。這個(gè)狀態(tài)位是通過(guò)硬件主重置而不是軟件重置被重置的(MSB)。The CHx_NEff_ACCUM_DATA狀態(tài)位表明在該信道一個(gè)DUMP操作已經(jīng)發(fā)生,而且新的累加數(shù)據(jù)已經(jīng)可以讀取了。每一位都是在相關(guān)的CHx_Q_PR0MPT寄存器的讀取操作或者CHx_ACCUM_RESET寄存器的寫(xiě)入操作的下降沿被清除的。注意該寄存器的信道特定位在INTOUT或者STATUS寄存器寫(xiě)入操作的有效邊之前是不會(huì)顯示它們的新數(shù)值的。但是禁用一個(gè)信道會(huì)馬上清除這些狀態(tài)位。The ACCUM_INT bit在每個(gè)INTOUT中斷被置高,它通過(guò)讀取ACCUM_STATUS_A寄存器被重置。這個(gè)狀態(tài)位是通過(guò)硬件主重置而不是軟件重置被重置的(MSB)。The CHx_NEff_ACCUM_DATA狀態(tài)位表明在該信道一個(gè)DUMP操作已經(jīng)發(fā)生,而且新的累加數(shù)據(jù)已經(jīng)可以讀取了。每一位都是在相關(guān)的CHx_Q_PR0MPT寄存器的讀取操作或者CHx_ACCUM_RESET寄存器的寫(xiě)入操作的下降沿被清除的。注意該寄存器的信道特定位在INTOUT或者STATUS寄存器寫(xiě)入操作的有效邊之前是不會(huì)顯示它們的新數(shù)值的。但是禁用一個(gè)信道會(huì)馬上清除這些狀態(tài)位。ACCUM_STATUS_B (讀取地址)
BitBit name
31 to 14未使用-低位
13TIC
12MEASJ NT
11CH12MISSED ACCUM
10CHl 1_MISSED ACCUM
9CH10_MISSED ACCUM
8CH9—MISSED ACCUM
7CH8一MISSED ACCUM
6CH7_MISSED ACCUM
5CH6 MISSED ACCUM
4CH5—MISSED ACCUM
3CH4—MISSED ACCUM
2CH3—MISSED ACCUM
ICH2—MISSED ACCUM
0CHI一MISSED ACCUM表8 ACCUM_STATUS_B的低12位在每個(gè)INTOUT信號(hào)的有效邊被采樣和鎖存。它們可以通過(guò)對(duì)STATUS寄存器執(zhí)行一個(gè)寫(xiě)操作來(lái)在要求下被采樣和鎖存(和ACCUM_STATUS_A類(lèi)似)。The TIC bit在每個(gè)TIC被置高而且通過(guò)讀取ACCUM_STATUS_B寄存器被清空。它存在的意義是告訴微處理器新的測(cè)量數(shù)據(jù)已經(jīng)就位了。它通過(guò)一個(gè)硬件主重置(RESET置低)而不是一個(gè)軟件重置(RESET_C0NTR0L中的MRB)被重置。如果TIC周期大于50ms,那么在被告知中斷被啟用的情況下,MEAS_INT位在每個(gè)TIC和每個(gè)TIC之前的50ms被置高,同時(shí)也通過(guò)讀取這個(gè)寄存器被清空。這個(gè)狀態(tài)位可以被微處理器用作一個(gè)標(biāo)記,來(lái)個(gè)軟件模塊交換計(jì)時(shí)。它通過(guò)一個(gè)硬件主重置(RESET置低)而不是一個(gè)軟件重置被重置。CHx_MISSED_ACCUM狀態(tài)位(置高時(shí))表示在前一個(gè)數(shù)據(jù)被讀取前有一個(gè)因?yàn)镃Hx中的DUMP操作被遺漏的累加數(shù)據(jù)。這個(gè)狀態(tài)位直到CHx_ACCUM_RESET被寫(xiě)入后才被鎖存。軟件必須考慮到會(huì)有數(shù)據(jù)因?yàn)樽x取過(guò)程太慢而遺漏數(shù)據(jù)的情況,比如不考慮累加數(shù)據(jù)讀取的導(dǎo)航信息數(shù)據(jù)位傳輸?shù)臋z驗(yàn)。一旦太多的數(shù)據(jù)被遺漏,那系統(tǒng)的信號(hào)信噪比會(huì)降低。這個(gè)位元的主要的存在目的是一個(gè)作為追蹤慣例工作質(zhì)量的校驗(yàn)-一旦整個(gè)設(shè)計(jì)完成,這個(gè)位元不應(yīng)該被設(shè)置。注意該寄存器的信道特定位在INTOUT或者STATUS寄存器寫(xiě)入操作的有效邊之前是不會(huì)顯示它們的新數(shù)值的。但是禁用一個(gè)信道會(huì)馬上清除這些狀態(tài)位。
相關(guān)器追蹤信道的硬件允許有通過(guò)CHx_CARRIER_CYCLE_HIGH和_L0W以及CHx_CARRIER_DCO_PHASE寄存器的積分載波相位的測(cè)量,這個(gè)測(cè)量數(shù)據(jù)是每個(gè)TIC時(shí)刻采樣的測(cè)量數(shù)據(jù)的一部分。CHx_CARRIER_CYCLE_HIGH和_L0W寄存器包含了載波數(shù)字控制振蕩器正向零相干的20位數(shù)值(_HIGH4位,_L0W16位)。周期小數(shù)可以從CHx_Carrier_DCO_Phase寄存器被讀取。在CHx_CARRIER_CYCLE計(jì)數(shù)器中,一個(gè)TIC產(chǎn)生兩個(gè)連續(xù)的操作。首先它把4位周期計(jì)數(shù)器的較高有效位鎖存到CHx_CARRIER_CYCLE_HIGH中,把16位較低有效位鎖存到CHx_CARRIER_CYCLE_LOW中。然后它再重置周期計(jì)數(shù)器。每次TIC之后,只要載波數(shù)字控制振蕩器累加器生成一個(gè)作為載波周期完成的溢出,周期計(jì)數(shù)器就加一。沒(méi)有多普勒和振蕩器漂移補(bǔ)償?shù)妮d波數(shù)字控制振蕩器的標(biāo)稱(chēng)頻率是 I 405396825MH,所以在IOOms內(nèi)會(huì)有大約140540個(gè)周期。幾乎在所有的應(yīng)用下從一個(gè)TIC間隔到另外一個(gè)之間的載波數(shù)字控制振蕩器周期數(shù)的差別不大,所以可以預(yù)測(cè)這個(gè)值的最高有效位,這樣就只用讀取CHx_CARRIER_CYCLE_L0ff寄存器。CHx_CARRIER_CYCLE_HIGH和_L0W寄存器中的內(nèi)容沒(méi)有被寫(xiě)覆蓋保護(hù)機(jī)制所保護(hù)所以必須在下個(gè)TIC之前被讀取。關(guān)于載波周期計(jì)數(shù)器更多的信息請(qǐng)參照第七頁(yè)的追蹤模塊章節(jié)。CHx_CARRIER_DCO_INCR,MULTI_CARRIER_DCO_INCR,ALL_CARRIER_DCO_INCR(寫(xiě)入地址)Bits 25to 0 :載波數(shù)字控制振蕩器(相位增量)。一個(gè)26位的增量數(shù)值對(duì)一個(gè)27位的累加器數(shù)字控制振蕩器就足夠了,因?yàn)樽罡哂行坏脑隽靠偸橇?。INCR寄存器的最低有效位表示了如下給出的步進(jìn)最小步進(jìn)頻率=(40MHz+7) +227 = 42 57475mHz輸出頻率=CHx_CARRIER_DCO_INCR*(最小步進(jìn)頻率).如果是GP2015/GP2010類(lèi)型的前端,在考慮多普勒偏移或者晶振誤差之前的中頻標(biāo)稱(chēng)值是I 405396826MHz。通過(guò)對(duì)CHx_CARRIER_DCO_INCR寄存器寫(xiě)入01F7B1B9H就可以生成一個(gè)I 405396845MHz的本地振蕩器頻率。ACCUM_STATUS_C (讀取地址)
位元位元名
31 tol2未使用-低位
11CH12_NARROW_WIDE
10CHl l_NARROW_WIDE
9CHlO NARROW—WIDE8CH9_NARR0W_WIDE
7CH8_NARROW_WIDE
6CH7_NARR0W_WIDE
5CH6_NARR0W_WIDE
4CH5_NARROW_WIDE
3CH4_NARROW—WIDE
2CH3_NARROW—WIDE
ICH2_NARR0W_WIDE
OCHl—NARROW—WIDE表 16ACCUM_STATUS_Cbits在每個(gè)INTOUT信號(hào)的有效邊被采樣和鎖存。它們可以通過(guò)對(duì)STATUS寄存器執(zhí)行一個(gè)寫(xiě)操作來(lái)在要求下被采樣和鎖存(和ACCUM_STATUS_A類(lèi)似)。The CHx_NARR0ff_WIDE status bit表明CHx頻道的累加數(shù)據(jù)的編碼類(lèi)型。高位表示NARROW類(lèi)的編碼而地位表示W(wǎng)IDE類(lèi)型的編碼。每一位都在DUMP是被確定,把該信道的CHx_NEff_ACCUM_DATA位置高。其他模式下該位無(wú)用。注意該寄存器的信道特定位在INTOUT或者STATUS寄存器寫(xiě)入操作的有效邊之前是不會(huì)顯示它們的新數(shù)值的。但是禁用一個(gè)信道會(huì)馬上清除這些狀態(tài)位。CHx_ACCUM_RESET (寫(xiě)入地址)Bits 15to 0:未使用。提供了只寫(xiě)地址以允許和給定信道或者所有信道相關(guān)的狀態(tài)位ACCUM_STATUS_A,ACCUM_STATUS_B,and ACCUM_STATUS_C的重置。當(dāng)這些地址被寫(xiě)入是,數(shù)據(jù)是不相干的。CHx_CARRIER_CYCLE_COUNTER,MULTI_CARRIER_CYCLE_COUNTER,ALL_CARRIER_CYCLE_COUNTER(寫(xiě)入地址)對(duì)這些寄存器的寫(xiě)操作只在測(cè)試模式下有效(TEST_C0NTR0L寄存器的第三位被置高)??偩€(xiàn)的數(shù)值被載入CHx_CARRIER_CYCLE_COUNTER寄存器的低16位,同時(shí)該寄存器的高4位被置零。CHx_CARRIER_CYCLE_HIGH,CHx_CARRIER_CYCLE_LOff(讀取地址)_HIGH bits 15to 4 :未使用_讀取時(shí)置低 _HIGH bits 3to 0 :載波周期計(jì)數(shù)位 19-16._L0ff bits 15to 0 :載波周期計(jì)數(shù)位 15-0.相關(guān)器追蹤信道的硬件允許有通過(guò)CHx_CARRIER_CYCLE_HIGH和_L0W以及CHx_CARRIER_DCO_PHASE寄存器的積分載波相位的測(cè)量,這個(gè)測(cè)量數(shù)據(jù)是每個(gè)TIC時(shí)刻采樣的測(cè)量數(shù)據(jù)的一部分。CHx_CARRIER_CYCLE_HIGH和_L0W寄存器包含了載波數(shù)字控制振蕩器正向零相干的20位數(shù)值(_HIGH4位,_L0W16位)。周期小數(shù)可以從CHx_Carrier_DCO_Phase寄存器被讀取。在CHx_CARRIER_CYCLE計(jì)數(shù)器中,一個(gè)TIC產(chǎn)生兩個(gè)連續(xù)的操作。首先它把4位周期計(jì)數(shù)器的較高有效位鎖存到CHx_CARRIER_CYCLE_HIGH中,把16位較低有效位鎖存到CHx_CARRIER_CYCLE_LOW中。然后它再重置周期計(jì)數(shù)器。每次TIC之后,只要載波數(shù)字控制振蕩器累加器生成一個(gè)作為載波周期完成的溢出,周期計(jì)數(shù)器就加一。沒(méi)有多普勒和振蕩器漂移補(bǔ)償?shù)妮d波數(shù)字控制振蕩器的標(biāo)稱(chēng)頻率是
I 405396825MH,所以在IOOms內(nèi)會(huì)有大約140540個(gè)周期。幾乎在所有的應(yīng)用下從一個(gè)TIC間隔到另外一個(gè)之間的載波數(shù)字控制振蕩器周期數(shù)的差別不大,所以可以預(yù)測(cè)這個(gè)值的最高有效位,這樣就只用讀取CHx_CARRIER_CYCLE_LOW寄存器。CHx_CARRIER_CYCLE_HIGH和_L0W寄存器中的內(nèi)容沒(méi)有被寫(xiě)覆蓋保護(hù)機(jī)制所保護(hù)所以必須在下個(gè)TIC之前被讀取。關(guān)于載波周期計(jì)數(shù)器更多的信息請(qǐng)參照第七頁(yè)的追蹤模塊章節(jié)。
CHx_CARRIER_DCO_INCR,MULTI_CARRIER_DCO_INCR,ALL_CARRIER_DCO_INCR(寫(xiě)入地址)Bits 25to 0 :載波數(shù)字控制振蕩器(相位增量)。一個(gè)26位的增量數(shù)值對(duì)一個(gè)27位的累加器數(shù)字控制振蕩器就足夠了,因?yàn)樽罡哂行坏脑隽靠偸橇恪NCR寄存器的最低有效位表示了如下給出的步進(jìn)最小步進(jìn)頻率=(40MHz+7) +227 = 42 57475mHz輸出頻率=CHx_CARRIER_DCO_INCR*(最小步進(jìn)頻率).如果是GP2015/GP2010類(lèi)型的前端,在考慮多普勒偏移或者晶振誤差之前的中頻標(biāo)稱(chēng)值是I 405396826MHz。通過(guò)對(duì)CHx_CARRIER_DCO_INCR寄存器寫(xiě)入01F7B1B9H就可以生成一個(gè)I 405396845MHz的本地振蕩器頻率。CHx_CARRIER_DCO_PHASE (讀取地址)Bits 31to 10 :未使用_讀取時(shí)置低 Bits 9to 0 :在最后的TIC采樣的CHx_CARRIER_DCO_PHAS寄存器的較高有效位(26到17)。最低有效位的權(quán)重是一個(gè)載波數(shù)字控制振蕩器周一的2/1024弧度。這些位元組成一個(gè)0到1023無(wú)符號(hào)數(shù)。CHx_CARRIER_DCO_PHASE提供子周期相位測(cè)量信息,和CHx_CARRIER_CYCLE_HIGH 和 _L0W 提供的信息互補(bǔ)。寄存器數(shù)值在每個(gè)TIC被鎖存,而且沒(méi)有任何寫(xiě)覆蓋保護(hù)機(jī)制。CHx_C0DE_DC0_INCR_L0ff,MULTI_C0DE_DC0_INCR_L0ff,ALL_C0DE_DC0_INCR_L0ff(Write Address)Bits 31to 25 :未使用。Bits 24to 0 :編碼數(shù)字控制振蕩器相位增量。一個(gè)25位的增量數(shù)值對(duì)一個(gè)26位的累加器數(shù)字控制振蕩器就足夠了,因?yàn)閷?duì)最高有效位的增量總是O。INCR寄存器的最低有效位表不了如下給出的步進(jìn)step
Min. step frequency= (40MHz + 7) +226 = 85 14949mHzOutput frequency= CHx_CARRIER_DCO_INCR* (最小步進(jìn)頻率) 注意編碼數(shù)字控制振蕩器驅(qū)動(dòng)編碼發(fā)生器以提供半個(gè)碼位時(shí)間的步進(jìn)量,所以必須被編程以使需要的碼率加倍。這意味著碼率的分辨率是42 57475mHz在考慮多普勒偏移或者晶振誤差之前,GPS的編碼標(biāo)稱(chēng)頻率是I. 023000000MHz。通過(guò)對(duì)CHx_C0DE_DC0_INCR寄存器寫(xiě)入016EA4A8H就可以生成一個(gè)I. 022999968MHz的碼率。CHx_C0DE_DC0_PHASE (讀取地址) Bits 15to 10:未使用(讀取時(shí)置低)。Bits 9to 0 :CHx_C0DE_DC0_PHASE :包含了編碼數(shù)字控制振蕩器相位累加器中在每個(gè)TIC時(shí)間采樣的十位較高有效位(25to 16)。這是一個(gè)0到1023的無(wú)符號(hào)整數(shù)。最低有效位的權(quán)重是2 /1024弧度。2 是半個(gè)碼位的長(zhǎng)度,所以偽距分辨率是1/2048個(gè)碼位(相當(dāng)于0. 15m或者0. 5ns)。CHx_C0DE_DC0_PHAS中的內(nèi)容沒(méi)有任何寫(xiě)覆蓋保護(hù)機(jī)制。CHx_C0DE_DC0_PRESET_PHASE,MULTI_CODE_DCO_PRESET_PHASE,ALL_C0DE_DC0_PRESET_PHASE(寫(xiě)入地址)Bits 31 到 8 :未使用Bits 7到0 :編碼數(shù)字控制振蕩器相位的較高有效位(25到18),在預(yù)置模式中會(huì)在下個(gè)TIC時(shí)間被載入。在預(yù)置模式中,CHx_C0DE_DC0_PRESET_PHASE寄存器中的八位用零填滿(mǎn)低位,然后在下個(gè)TIC被傳送到編碼數(shù)字控制振蕩器累加器中。之前的累加器相位完全被改寫(xiě)。PRESET_PHASE寄存器是個(gè)只寫(xiě)寄存器,它可以在預(yù)置模式和更新模式的任意時(shí)刻被寫(xiě)入,但是只在進(jìn)入預(yù)置模式之后才有效。PRESET相位的最低有效位的權(quán)重是半個(gè)碼位周期的
2/256弧度。在更新模式中,這個(gè)寄存器除了為預(yù)置模式做準(zhǔn)備意外,沒(méi)有任何作用。關(guān)于預(yù)置模式的更多的內(nèi)容請(qǐng)參考16頁(yè)的ZVM2060IP詳細(xì)操作。CHx_C0DE_PHASE (讀取地址)CHx_C0DE_PHASE_C0UNTER,MULTI_60DE_PHASE_C0UNTER,ALL_C0DE_PHASE_C0UNTER(寫(xiě)入地址)Bits 31to 11 :未使用(讀取時(shí)置低)。Bits IOto 0 :CHx_C0DE_PHASE(讀)它反映了編碼相位計(jì)數(shù)器(一個(gè)在編碼發(fā)生器時(shí)鐘驅(qū)動(dòng)下的11位二進(jìn)制加計(jì)數(shù)器)的狀態(tài),在每個(gè)TIC被保存。相位被表示為一些0到2046的半碼位位長(zhǎng)。讀取到2046是非常少見(jiàn)的,只有在TIC獲得編碼相位的時(shí)刻正好處于計(jì)數(shù)器到達(dá)2046之后以及被C/A編碼發(fā)生器的DUMP信號(hào)重置計(jì)數(shù)器之前。DUMP信號(hào)同樣增加歷元計(jì)數(shù)器數(shù)值,所以相位值2046加上之前的歷元值的意義等同于0加上增加的歷元值,兩個(gè)一個(gè)都是有效的。如果TIC發(fā)生在編碼撥動(dòng)時(shí),讀取的數(shù)值將會(huì)是零,這種情況下該信道的測(cè)量數(shù)據(jù)是沒(méi)用的。Bits IOto 0 :(寫(xiě))載入 CHx_C0DE_PHASE_C0UNTER 中的 11 位。這些寄存器只有在測(cè)試模式中才可能被寫(xiě)入,激活測(cè)試模式是通過(guò)把CHx_C0DE_PHASE_C0UNTER中的TM_TEST位置高。CHx_C0DE_SLEff (讀取地址)CHx_C0DE_SLEff_C0UNTER,MULTI_C0DE_SLEff_C0UNTER,ALL_C0DE_SLEff_C0UNTER (寫(xiě)入地址)Bits 31to 11 :未使用Bits IOto 0 :一個(gè)0到2047的無(wú)符號(hào)整數(shù),博啊是要被撥動(dòng)的半碼位數(shù)。在更新模式,撥動(dòng)在下個(gè)DUMP信號(hào)之后立即執(zhí)行,在預(yù)置模式要等到下個(gè)TIC。因?yàn)镚PS C/A編碼只有2046個(gè)半碼位,所以編程值2047等譯I,但是下個(gè)DUMP時(shí)間或在Ims之后發(fā)生。在預(yù)置模式,撥動(dòng)計(jì)時(shí)值有TIC可以設(shè)置,同時(shí)也會(huì)重置編碼發(fā)生器,(不需要DUMP信號(hào))。在預(yù)置模式,必須有一個(gè)非零的撥動(dòng)值被編程。CHx_C0DE_SLEff寄存器可以在任何時(shí)刻被寫(xiě)入。如果在更新模式的DUMP之前或者預(yù)置模式的TIC之前發(fā)生了兩次訪(fǎng)問(wèn)寫(xiě)入,那最后一次的數(shù)據(jù)會(huì)在撥動(dòng)操作中被使用。如果一個(gè)信道不活動(dòng),一個(gè)非零的撥動(dòng)數(shù)值應(yīng)該在信道被釋放之前被寫(xiě)入CHx_C0DE_SLEff寄存器。這個(gè)寫(xiě)入操作會(huì)在重置釋放前立刻生效。如果TIC事件發(fā)生在撥動(dòng)時(shí)或者撥動(dòng)后一小會(huì),信道將不會(huì)被鎖定到衛(wèi)星,所以該信道的測(cè)量數(shù)據(jù)沒(méi)有用。讀取撥動(dòng)計(jì)數(shù)器的功能只是為了硬件或者軟件的測(cè)試。它只是在讀操作發(fā)生在真正的撥動(dòng)操作的情況下給出一個(gè)非零的結(jié)果。圖4是一個(gè)撥動(dòng)事件的例子CHx_EPOCH_CHECK (讀取地址)Bits 31to 14 :未使用 Bits 13to 8 CHx_20MS_EP0CH 的瞬時(shí)值.Bits 7to 5 :未使用Bits 4to 0 CHx_lMS_EP0CH 的瞬時(shí)值讀取這個(gè)地址給出CHx_lMS_EP0CH和CHx_20MS_EP0CH計(jì)數(shù)器的瞬時(shí)值。它可以用來(lái)校驗(yàn)歷元計(jì)數(shù)器是否被軟件正確地初始化了。它的數(shù)值不會(huì)被鎖存,而是在每個(gè)DUMP時(shí)刻增加。為了保證正確的結(jié)果,這個(gè)寄存器應(yīng)該在確保讀取周期內(nèi)沒(méi)有DUMP的前提下進(jìn)行讀取操作,這是通過(guò)把讀取操作和NEW_ACCUM_DATA寄存器進(jìn)行同步來(lái)完成的。這些值的范圍和之前在CHx_EP0CH寄存器中看到的是一樣的。CHx_EP0CH (讀取地址)Bits 31. 14,7,6and 5 :未使用,讀取時(shí)置低Bits 13to 8 CHx_20MS_EP0CH在最后一個(gè)TIC事件采樣的20ms歷元計(jì)數(shù)器數(shù)值,范圍是0至IJ 49。Bits4to 0 CHx_lMS_EP0CH在最后一個(gè)TIC事件采樣的Ims歷元計(jì)數(shù)器數(shù)值,范圍是O到19。CHx_EP0CH_C0UNT_L0ADMULTI_EP0CH_C0UNT_L0ADALL_EP0CH_C0UNT_L0AD(Write Address)Bits 31. 14,7,6and 5 :未使用Bits 13to 8 :CHx_20MS_EP0CH會(huì)被載入20ms歷元計(jì)數(shù)器的數(shù)值,數(shù)值范圍是0到49.
Bits 4to 0 CHx_lMS_EP0CH會(huì)被載入Ims歷元計(jì)數(shù)器的數(shù)值,數(shù)值范圍是0到 19。這個(gè)操作手當(dāng)前的信道模式影響(預(yù)置或者更新)。在更新模式,寫(xiě)入這些寄存器的數(shù)據(jù)會(huì)被立刻傳送到Ims和20ms歷元計(jì)數(shù)器。而在預(yù)置模式,數(shù)據(jù)會(huì)在下個(gè)TIC之后被傳送。很重要的一點(diǎn)是在預(yù)置模式的載入序列中要把CHx_EP0CH寄存器的載入放在最后,因?yàn)閷?duì)這個(gè)寄存器的寫(xiě)操作的后沿在下個(gè)TIC激活這個(gè)預(yù)置操作。關(guān)于預(yù)置模式請(qǐng)參考16頁(yè)的ZVM2060IP的詳細(xì)操作。CHx_l_TRACK,CHx_Q_TRACK,CHx丄PROMPT,CHx_Q_PR0MPT(讀取地址)Bits 31to 0 :累加數(shù)據(jù)寄存器,用來(lái)在每個(gè)DUMP存儲(chǔ)32位積分和丟棄累加器的結(jié)果。包含在寄存器中的數(shù)值是二進(jìn)制補(bǔ)碼,范圍是-2**31到+(2**31-1)。這些寄存器是只讀的,可以在任意時(shí)刻被讀取。它們沒(méi)有任何寫(xiě)覆蓋保護(hù)機(jī)制,所以這些四個(gè)寄存器的組必須在一個(gè)ACCUM INT之后很快被讀取以確保新來(lái)的數(shù)據(jù)不會(huì)造成
寫(xiě)覆蓋。CHx_l_PR0MPT和CHx_Q_PR0MPT寄存器包含了來(lái)自準(zhǔn)時(shí)臂的累加數(shù)據(jù)。CHx_l_TRACK和CHx_Q_TRACK寄存器包含了來(lái)自追蹤臂的累加數(shù)據(jù)。為了準(zhǔn)確地追蹤衛(wèi)星,只有伴隨CHx_NEW_ACCUM_DATA位置高的數(shù)據(jù)讀取是被允許的。溢出或者下溢的情況是不會(huì)發(fā)生的。CHx_SATCNTL,MULTI_SATCNTL,ALL_SATCNTL(寫(xiě)入地址)
位元位元名15GPS_NGLON
14-13TRACK一 SEL
12PRESET/UPDATEB
11CODE一OFF/ONB
10Not used
9-0G2_LOAD (9 to 0)表17CHx_SATCNTL是一個(gè)只寫(xiě)寄存器,可以在任意時(shí)刻被寫(xiě)入。在更新模式,任何對(duì)寄 存器內(nèi)容的修改都會(huì)在下個(gè)DUMP生效,而在預(yù)置模式則是在下個(gè)TIC。無(wú)論在哪個(gè)模式,對(duì)每個(gè)位元都有效。重要的一點(diǎn)是,在開(kāi)始預(yù)置序列初始化以使信道進(jìn)入預(yù)置模式的時(shí)候,這個(gè)寄存器要首先被編程,否則其他寫(xiě)操作會(huì)進(jìn)行得太快。G2_L0AD (9to 0),bits 9to 0 C/A 編碼選擇功能CHx_SATCNTL 寄存器通過(guò)把 G2寄存器設(shè)置到適當(dāng)?shù)钠鹗寄J絹?lái)對(duì)編碼發(fā)生器編程以生成需要的GPS或者INMARSAT-GIC編碼。G2_L0AD可以在任一時(shí)刻被編程但是數(shù)值值在編碼序列重新開(kāi)始的時(shí)候才被使用,更新模式下是下個(gè)DUMP,在預(yù)置模式下是下個(gè)TIC。要被載入的模式是第二個(gè)編碼位時(shí)刻的寄存器狀態(tài)。下面的圖表顯示了選擇37個(gè)GPS或者8個(gè)INMARSAT-GIC之一的可能的PRN(Pseudo Random Noise)模式所要求的數(shù)值。在更新模式下,編碼發(fā)生器產(chǎn)生的C/A編碼會(huì)在CHx_SATCNTL寄存器寫(xiě)操作之后的DUMP時(shí)刻被改變,而且在這個(gè)DUMP時(shí)刻累加數(shù)據(jù)會(huì)對(duì)新編碼有效。如果G2寄存器的所有位都被載入0,那它就不會(huì)有輸出,Gl發(fā)生器的編碼會(huì)顯示在輸出。這是一個(gè)非法的狀態(tài),只在芯片測(cè)試的時(shí)候被使用。注意 _PRN序列33到37是為非衛(wèi)星使用保留的(比如地面發(fā)射器-‘偽衛(wèi)星’)。
_C/A編碼34和37是一樣的. _PRN序列120到138是為廣域增強(qiáng)系統(tǒng)(WAAS)選定的。
_PRN序列201到211是為INMARSAT GIC (GPS系統(tǒng)綜合頻道)選定的。由于提前-準(zhǔn)時(shí)-滯后寄存器的初始化,在編碼變化或者編碼撥動(dòng)之后所有編碼的序列第一位總是以’ I’開(kāi)始。GPS G2-LOA GPS G2JLOA GPS GPS G2JLOA PRN DPRN DPRN D
signal [9:0]signal [9:0]signal [9:0]
no. (hex)no. (hex)no.(hex)
13F6243381271E7
23EC252701282B5
33D826 OEO12922A
43B027 ICO130IOE
504B28 38013112D
609629 22B132215
72CB30 056133337
819631 OAC1340C7
932C32 1581350E2
103BA13620F
1137433 2B01373C0
12IDO34 058138029
133A035 18B
1434036 316201GIC 2C4
1528037 058202GIC IOA
16100205GIC 3E3
17113120 2C4206GIC 0F8
18226121 30A207GIC 25F
1904C122 IDA208GIC 1E7
20098123 0B2209GIC 2B5
21130124 3E32 IlGIC IOE
22260125 0F8
23267126 25F表18.衛(wèi)星接收所要求的G2_L0AD寄存器的設(shè)置C0DE_0FF/0NB, bit 11 :如果是低位,編碼正常地輸出,但是如果是高位,準(zhǔn)時(shí),提前和之后編碼被保持高位(編碼混合器精確地輸出之后的輸入),提前-減去-之后編碼被保持低位。PRESET/UPDATEB, bit 12 :如果是高位,把信道設(shè)置進(jìn)入預(yù)置模式;或者如果是低位,把信道設(shè)置進(jìn)入更新模式。這個(gè)位元在預(yù)置功能執(zhí)行后被清除到低位,也就是在歷元計(jì)數(shù)器載入之后的第一個(gè)TIC。TRACK_SEL(land 0), bits 14and 13 :選擇編碼發(fā)生器的追蹤臂輸出產(chǎn)生的合適的編碼,如表19所示
位元編碼選擇
1413
00提前編碼
0I滯后編碼
1X滯后 525 BM 350表19.追蹤臂編碼選擇的TRACK_SEL位設(shè)置
所有編碼類(lèi)型的輸出都是+1和-I的序列。GPS_NGL0N, bit 15 :設(shè)置這個(gè)位元到低位改變C/A編碼發(fā)生器模式至GL0NASS模式,以產(chǎn)生所有GL0NASS衛(wèi)星使用的511位序列。在一個(gè)主重置之后(RESET置低),GPS模式被選中,G2發(fā)生器里全部是零,Gl編碼顯示在C/A編碼發(fā)生器的輸出。CHx_SIG_SEL,MULTI_SIG_SEL,ALL_SIG_SEL
(寫(xiě)入地址)Bit 22to 20 :選擇模數(shù)轉(zhuǎn)換輸入搜索4位元_31:28,27:24...Bit 19 :選擇模數(shù)轉(zhuǎn)換搜索I輸入量位元-I或者Q。Bit 18 :選擇模數(shù)轉(zhuǎn)換搜索Q輸入量位元-Q或者I。Bit 17 :倒轉(zhuǎn)I&Q輸入最高有效位-I [I]和Q[I]。Bit 16 :把 I&Q 輸入 SIG,MAGN 轉(zhuǎn)換到。Bits 15to 14 :選擇輸入信號(hào)。參見(jiàn)表20。Bits 13,12 :對(duì)于信道I到49未使用,但是對(duì)于信道49到60是GPS L2編碼發(fā)生器控制。Bit 11 :窄帶寬帶相關(guān)器開(kāi)關(guān)。Bits IOto 8:未使用。Bit 7to 0 :窄帶轉(zhuǎn)換器編程的編碼。MULTY_CHANNEL_SELECT
位元編碼選擇
13 12
00GPS C/A 或者 GLONASS
0IGPS L2 CM Code
10GPS L2 CL Code
IIGPS L2 both Code (CL & CM)表20
位元輸入選擇
1514 低頻輸入11
00低頻輸入12
0I高頻輸入
10測(cè)試輸入
II表20a位元位元名
31到12未使用
11CH12SELECT
10CH11SELECT
9CH10SELECT
8CH9SELECT
7CH8SELECT
6CH7SELECT
5CH6SELECT
4CH5SELECT
3CH4SELECT
2CH3SELECT
ICH2SELECT
0CH1SELECT表22MULTY_CHANNEL_SELECT(寫(xiě)入地址)對(duì)于對(duì)一顆衛(wèi)星的并行搜索,比如設(shè)置各個(gè)載波數(shù)字控制振蕩器至同樣的頻率,或者在搜索過(guò)程中,用相同的數(shù)值調(diào)整所有選擇的信道(例如編碼撥動(dòng)值來(lái)把編碼相位一起移動(dòng)到一個(gè)新的搜索范圍)等操作可以使用這樣的功能。所有的CHx SELECT寄存器都通過(guò)一個(gè)主重置(軟件的或硬件的)來(lái)置低。MEAS_STATUS_A(寫(xiě)入地址)CHx_MISSED_MEAS_DATA狀態(tài)位,置高的時(shí)候意味著一個(gè)或者更多的測(cè)量數(shù)據(jù)組在上次對(duì)這個(gè)寄存器讀取之后丟失了。它是通過(guò)被同一信道的編碼相位計(jì)數(shù)器讀取來(lái)置高的,前提是編碼相位計(jì)數(shù)器的前一個(gè)數(shù)值還沒(méi)有被讀取。它是通過(guò)來(lái)自MEAS_STATUS_A寄存器的讀取操作或者禁用信道來(lái)完成重置的。如果這個(gè)寄存器總是在編碼相位計(jì)數(shù)器之后被讀取,意味著編碼相位計(jì)數(shù)器在上一次被讀取之后有測(cè)量數(shù)據(jù)丟失了。CHx_MISSED_MEAS_DATA的所有位都是通過(guò)硬件(RESET)或者軟件(MRB)被置低。The MEAS_INT bit在每個(gè)TIC和每個(gè)TIC之前50ms (如果TIC周期大于50ms)被置高,并且通過(guò)對(duì)這個(gè)寄存器的讀取被清空。這個(gè)位元被用作微處理器的時(shí)間軟件模塊交換的標(biāo)志,并且通過(guò)硬件主重置(RESET置低)而不是MRB軟件重置來(lái)重置。The TIC bit在每個(gè)TIC被置高而且通過(guò)讀取這個(gè)寄存器被清空。這個(gè)位元的作用是告訴微處理器新的測(cè)量數(shù)據(jù)已經(jīng)就位了。這個(gè)位元通過(guò)硬件主重置(RESET置低)而不是MRB軟件重置來(lái)重置。The RTC_TIC_ACK bit在接收到實(shí)時(shí)時(shí)鐘中斷和這個(gè)中斷發(fā)生之后的TIC被設(shè)置。它通過(guò)讀取RTC_DELAY寄存器或者硬件主重置(RESET置低)而不是RESET_C0NTR0L 中的 MRB 來(lái)重置。The MARK_FB_ACK_bit 在 MARKFB 管腳接收到一個(gè) TMARK反饋信號(hào)或者在TICO信號(hào)的選取邊被設(shè)置。它通過(guò)讀取TMARK_L0W寄存器或者硬件主重置(RESET置低)而不是RESET_C0NTR0L中的MRB來(lái)重置。PR0G_ACCUM_INT
(寫(xiě)入地址)Bits 15to 13 :未使用.Bits 12to 0 :ACCUM_INT 分割比.PR0G_ACCUM_INT 寄存器地址和 SYSTEM_SETUP 寄存器的 INTERRUPT_PERIOD 位協(xié)同合作設(shè)置INTOUT輸出的周期。INTOUT信號(hào)是一個(gè)13位的二進(jìn)制倒數(shù)計(jì)數(shù)器(倒數(shù)到零)產(chǎn)生的。
位元位元名
31 to 16未使用
15MARK—FB—ACK
14RTC—TIC—ACK
13TIC
12MEAS—INT
11CH12MISSED_MEAS_DATA
10CH11MISSED—MEAS—DATA
9CHIOMIS SED_MEAS_DATA
8CH9MISSED_MEAS_DATA
1CH8MISSED一MEAS一DATA
6CH7MISSED_MEAS_DATA
5CH6MISSED_MEAS—DATA
4CH5MISSED—MEAS_DATA
3CH4MISSED—MEAS—DATA
2CH3MISSED_MEAS_DATA
ICH2MISSED—MEAS—DATA
0CH1MISSED_MEAS_DATA表 21然后它加載一個(gè)儲(chǔ)存在它的預(yù)置寄存器中的預(yù)置值并開(kāi)始重新倒計(jì)時(shí)。如果預(yù)置值是P,計(jì)數(shù)順序是P,P-I,P-2,... ,1,0, P, P-I0因此,計(jì)數(shù)器除以P+1就產(chǎn)生一個(gè)長(zhǎng)度是(P+1)*時(shí)鐘周期的輸出。因?yàn)镮NTOUT計(jì)數(shù)器是由多相時(shí)鐘終驅(qū)動(dòng)的,時(shí)鐘周期是7*時(shí)鐘周期(標(biāo)稱(chēng)值是40MHz,25ns)。儲(chǔ)存在PRESET寄存器中的數(shù)值可以通過(guò)兩種方法來(lái)修改一個(gè)是通過(guò)切換SYSTEM_SETUP寄存器中的INTERRUPT_PERIOD位,或者通過(guò)寫(xiě)入PR0G_ACCUM_INT地址。任意一個(gè)操作都會(huì)把前一個(gè)預(yù)置值的內(nèi)容覆蓋掉,兩個(gè)方法可以單獨(dú)使用也可以同時(shí)使用。INTERRUPT_PERIOD = low 的值也是在一個(gè)主重置時(shí)-0B45H (505. 05microsecond)加載的。INTERRUPT_PERIOD = high 的值 _1313H(854. 7microsecond)。INTOUT 計(jì)數(shù)器可以通過(guò)直接寫(xiě)入PR0G_ACCUM_INT地址被加載。在這種情況下新的ACCUM_INT周期如下INTOUT 周期=(PR0G_ACCUM_INT l)x 7/40MHZPR0G_TIC_HIGH,PR0G_TIC_L0ff(寫(xiě)入地址)用來(lái)設(shè)置TIC的周期。TIC是一個(gè)21位的二進(jìn)制倒數(shù)計(jì)數(shù)器產(chǎn)生的。當(dāng)它數(shù)到零時(shí),它會(huì)加載它的預(yù)置寄存器中的預(yù)置值然后開(kāi)始重新倒數(shù)。如果預(yù)置值是P,計(jì)數(shù)順序是P,P-l,P-2,...,1,0,P,P-1。因此,計(jì)數(shù)器除以P+1就產(chǎn)生一個(gè)長(zhǎng)度是(P+1)*時(shí)鐘周期的輸出。因?yàn)門(mén)IC計(jì)數(shù)器是由多相位時(shí)鐘驅(qū)動(dòng)的,時(shí)鐘周期是7*時(shí)鐘周期(標(biāo)稱(chēng)值是40MHz,25ns)。寫(xiě)入PROG_TIC地址可以修改儲(chǔ)存在預(yù)置寄存器中的值。這些操作會(huì)把之前的預(yù)
置值寫(xiě)覆蓋。PR0G_TIC Bits 20to 19 :計(jì)數(shù)器分割比。TIC計(jì)數(shù)器可以通過(guò)直接向PR0G_TIC地址寫(xiě)入的方式來(lái)加載。需要注意的一點(diǎn)是對(duì)TIC計(jì)數(shù)器數(shù)據(jù)鎖存其的數(shù)據(jù)傳輸是在多相位時(shí)鐘的寫(xiě)周期的控制下的,對(duì)一只寄存器的寫(xiě)入發(fā)生在主內(nèi)部寫(xiě)操作之后。使用PR0G_TIC寫(xiě)入地址時(shí)TIC周期如下
TIC 周期=((PR0G_TIC_HIGH x 65536) +PR0G_TIC_L0ff+l) x 7/40MHZ)RESET_C0NTR0L (寫(xiě)入地址)MRB :如果是低(一個(gè)軟件重置信號(hào)),效用相當(dāng)于一個(gè)硬件重置,但是時(shí)鐘發(fā)生器,時(shí)間基發(fā)生器,測(cè)量數(shù)據(jù)和外圍設(shè)備功能,ACCUM_INT,MEAS_INT以及TIC狀態(tài)位不受影響。MRB應(yīng)該被置高以允許對(duì)所有各種寄存器的訪(fǎng)問(wèn)。MRB被硬件重置置高。CHx_RSTB :當(dāng)被設(shè)置為低有效,重置位就禁止時(shí)鐘相位傳輸?shù)紺Hx追蹤信道,然后重置累加數(shù)據(jù)標(biāo)記,編碼數(shù)字控制振蕩器和載波數(shù)字控制振蕩器累加器,以及I&Q累加器,編碼相位計(jì)數(shù)器。CHx_RSTB并不重置載波周期,編碼撥動(dòng)或者歷元計(jì)數(shù)器。在重置的末尾,信道激活重置編碼發(fā)生器至之前編程好的起始相位。在對(duì)單個(gè)衛(wèi)星信號(hào)的的并行搜索算法中,這些都是必須的。這個(gè)算法使用很多信道追蹤一個(gè)衛(wèi)星,以使搜索從所有信道的一個(gè)已知的相對(duì)編碼相位開(kāi)始。在重置狀態(tài),CHx中所有的控制寄存器都可以入場(chǎng)被編程和讀取。為了在幾個(gè)不同的信道同時(shí)重啟常規(guī)的操作,相應(yīng)的CHx_RSTB位在相同的寫(xiě)操作過(guò)程中應(yīng)該被置高。所有的CHx_RSTB都通過(guò)主重置(硬件的和軟件的)被置低,所以對(duì)這個(gè)寄存器的第0位置低會(huì)迫使12到I位都置低,不管他們之前在總線(xiàn)中是什么值。可以通過(guò)在信道不被使用時(shí)把CHx_RSTB置低來(lái)達(dá)到功耗最小化。STATUS (寫(xiě)入地址)Bits 31o 0 :未使用對(duì)這個(gè)地址的寫(xiě)入操作,不管總線(xiàn)中的數(shù)據(jù)是什么,會(huì)所錯(cuò)ACCUM_STATUS_C寄存器中的所有狀態(tài)位的狀態(tài)。在讀取狀態(tài)位寄存器之前對(duì)STATUS進(jìn)行寫(xiě)操作可以保證讀取的狀態(tài)值的穩(wěn)定。鎖存在寫(xiě)入操作脈沖下降沿之后300納秒之內(nèi)有效。INTOUT信號(hào)的有效邊傳輸也會(huì)鎖存狀態(tài)位的狀態(tài),所以在一個(gè)中斷處理管理中,不需要在狀態(tài)位寄存器被當(dāng)作一個(gè)對(duì)INTOUT信號(hào)響應(yīng)而讀取的時(shí)候?qū)TATUS進(jìn)行寫(xiě)入操作。對(duì)STATUS的寫(xiě)操作之在狀態(tài)寄存器在沒(méi)有和中斷同步的時(shí)候被讀取的情況下才需要。這兩個(gè)機(jī)制是互相排斥的,所以不應(yīng)該同時(shí)被使用;如果兩個(gè)同時(shí)使用,在INTOUT信號(hào)發(fā)生后不久的對(duì)STATUS寫(xiě)操作會(huì)導(dǎo)致混亂的讀取。為了避免沖突,SYSTEM_SETUP寄存器中的INTERRUPT_ENABLE位在寫(xiě)入STATUS機(jī)制被使用時(shí)應(yīng)該被置低。如果SYSTEM_SETUP寄存器中的INTERRUPT_ENABLE
位被置低,中斷將不會(huì)鎖存狀態(tài)寄存器中的狀態(tài)位,但是STATUS寫(xiě)入訪(fǎng)問(wèn)會(huì)。位元位元名
31 to 13未使用
12CH12RSTB
11CH11—RSTB
10CHlO RSTB
9CH9_RSTB
8CH8_RSTB
7CH7_RSTB
6CH6RSTB
5CH5—RSTB
4CH4RSTB
3CH3—RSTB
2CH2 RSTB_
ICH1RSTB
0MRB,低有效軟件重置表23SYSTEM_SETUP (寫(xiě)入地址)
位元位元名
31 to 11未使用
10MEAS_INT_SOURCE
9未使用
8未使用
7INTERRUPT—PERIOD
6EX_IMP_POL
5INTERRUPT ENABLE
4未使用
3未使用
2未使用
I未使用
0CARRIER_MIX_DISABLE表24MEAS_INT_SOURCE :當(dāng)被置高時(shí)MEAS_INT的輸出通過(guò)讀取清空,
當(dāng)被置低是通過(guò)讀取MEAS_STATUS_A清空。INTERRUPT_PERIOD :當(dāng)置低時(shí),中斷周期被設(shè)置為大約505秒,但置高時(shí)設(shè)置位
854秒。更詳細(xì)的信息參見(jiàn)22頁(yè)對(duì)PR0G_ACCUM_INT的描述。主重置迫使INTERRUPT_PERIOD
位被置低。EX_IMP_P0L :當(dāng)置低時(shí),RTC開(kāi)始依靠低到高的轉(zhuǎn)變,否則依靠高到低。INTERRUPT_ENABLE :當(dāng)置低是INTOUT和MEAS_INT中斷被禁用(被屏蔽),置高時(shí)
都被激活。重置迫使INTERRUPT_ENABLE位被置低。CARRIER_MIX_DISABLE :當(dāng)置高時(shí),載波混合器都被載波數(shù)字控制振蕩器輸入端的
固定的‘+I’電平驅(qū)動(dòng),所以輸入數(shù)據(jù)不做更改就傳送到編碼混合器。主重置迫使CARRIER_MIX_DISABLE位被置低。TEST_C0NTR0L (寫(xiě)入地址)TEST_C0NTR0L寄存器的作用完全是激活各種測(cè)試模式。一個(gè)主重置(RESET位置低)能把所有位都置低,給出常規(guī)的操作。FE_TEST :當(dāng)置高,這個(gè)測(cè)試控制信號(hào)強(qiáng)制信道11的SIGN (符號(hào))輸入和信道5的MAG (強(qiáng)度)輸入置低。這就允許了對(duì)前端SIGN (信道5)和MAG (信道11)占空比的評(píng)估。要被測(cè)試的前端是通過(guò)CH5_SATCNTL和CH11_SATCNTL寄存器的S0URCESEL位來(lái)選擇。要正確地傳送SIGN和MAG數(shù)至累加器,載波和編碼混合器都要被設(shè)置成透明的。
位元位元名
31 to 6未使用
5TESTDATA
4未使用
3TMTEST
2FE 一TEST
I未使用
0未使用表25載波混合可以通過(guò)兩種方式禁用(I)把CARRIER_MIX_DISABLE位(SYSTEM_SETUP寄存器的第0位)置高以迫使所有信道載波數(shù)字控制振蕩器的輸入為a+1 (2)如果在測(cè)試過(guò)程中要求后續(xù)位置搜索,通過(guò)設(shè)置CH5_和CH11_CARRIER_DC0_INCR為全0以給出恒定的電平(頻率為0).應(yīng)該在信道5和11的載波數(shù)字控制振蕩器被編程至頻率為0時(shí),通過(guò)把這兩個(gè)信道簡(jiǎn)單地設(shè)置進(jìn)重置狀態(tài)(通過(guò)使用RESET_C0NTR0L寄存器的6和12位)被設(shè)置為一個(gè)已知的數(shù)值,把這個(gè)電平設(shè)置的到一個(gè)已知的數(shù)值。這個(gè)重置迫使所有的相位為0,所以驅(qū)動(dòng)準(zhǔn)時(shí)同相混合器為固定的1,I而不是隨機(jī)從_2,-I, +1,或者-2中選取。
C/A編碼混合必須通過(guò)把C0DE_0FF/0NB位(CH5_和CHl 1_SATCNTL寄存 器中的11位)置高來(lái)禁用。然而因?yàn)橛?jì)數(shù)器的周期是通過(guò)編碼發(fā)生器的DUMP信號(hào)來(lái)設(shè)置的,編碼發(fā)生器的數(shù)字控制振蕩器時(shí)鐘必須通過(guò)對(duì)編碼數(shù)字控制振蕩器編程來(lái)設(shè)置為要求的頻率,即使編碼輸出被禁用。典型的數(shù)值是標(biāo)稱(chēng)編碼碼率的頻率,所以SIGN和MAG的計(jì)數(shù)要超過(guò)毫秒。監(jiān)視接收機(jī)前端的結(jié)果可以用于故障診斷,也可以同于通過(guò)設(shè)置軟件參數(shù)對(duì)特定前端或者SIGN/MAG占空比進(jìn)行衛(wèi)星追蹤優(yōu)化。信道5被用來(lái)尋找SIGN信號(hào)的占空比。同相累加器的CH5_I_PR0MPT位在置高時(shí)會(huì)給每個(gè)SIGN采樣加I,置低時(shí)減I,所以如果占空比是正確值50 %,累加和總是會(huì)接近0,小的誤差來(lái)自于累加周期開(kāi)始和結(jié)束時(shí)采樣的不平衡。占空比可以通過(guò)下式計(jì)算N=累加周期的總采樣數(shù)NSIGNl = SIGN為高時(shí)的總采樣數(shù)NSIGNO = SIGN為低時(shí)的總采樣數(shù)ACC5 = DUMP之后讀取的CH5_I_PR0MPT累加器的總值
N = NSIGN1+NSIGN0ACC5 = NSIGN1-NSIGN0SIGN duty cycle = Rs = NSIGN1/N = (N+ACC5) /2N(標(biāo)稱(chēng)值50%)信道11被用來(lái)尋找MAG信號(hào)的占空比。同相累加器的CH11_I_PR0MPT位在置高時(shí)會(huì)給每個(gè)MAG采樣減3,置低時(shí)減I。如果占空比正確30),累加和是-1.6(采樣數(shù))加上留給累加周期開(kāi)始和結(jié)束時(shí)采樣的不平衡的富余量。占空比可以通過(guò)下式計(jì)算N =累加周期的總采樣數(shù)
NMAG3 = MAG為高時(shí)的總采樣數(shù)NMAGl = MAG為低時(shí)的總采樣數(shù)ACCll = DUMP之后讀取的CH11_1_PR0MPT累加器的總值N = NMAG3+NMAG1ACCl I = -3x (NMAG3) -NMAGlMAG duty cycle, Rm = NMAG3/N = - (N+ACC11) /2N(nominalIy 30% ).TM_TEST:置高時(shí)這個(gè)位元把所有的追蹤模塊設(shè)置進(jìn)入測(cè)試模式,這個(gè)模式下可以對(duì)所有的 CHx_CARRIER_CYCLE_COUNTER 位和 CHx_C0DE_PHASE_C0UNTER 位進(jìn)行寫(xiě)入操作。TEST_DATA :這個(gè)位元設(shè)置當(dāng)TEST_S0URCE被設(shè)置時(shí)生成的測(cè)試數(shù)據(jù)的調(diào)制符號(hào)(正的或是負(fù)的)。RTC_DELAY_HIGH,RTC_DELAY_L0ff (讀取地址)RTC_DELAY_L0W是一個(gè)包含無(wú)符號(hào)整數(shù)的16個(gè)較低有效位16位寄存器,存儲(chǔ)的數(shù)值是從一個(gè)RTC中斷發(fā)生到下個(gè)TIC之間的時(shí)鐘周期數(shù)。每個(gè)計(jì)數(shù)表示175納秒。RTC_DELAY_HIGH是一個(gè)包含同上整數(shù)的4個(gè)較高有效位的4位寄存器。寄存器內(nèi)容是無(wú)符號(hào)數(shù),有效范圍是0到TIC/175納秒。RTC_DELAY 中的誤差是土 175 納秒。MEAS_STATUS_A 寄存器的 RTC_TIC_ACK 狀態(tài)位指示是否收到了一個(gè)RTC中斷。通過(guò)讀取RTC_DELAY寄存器或者主重置可以清空RTC_TIC_ACK狀態(tài)位。TMARKSI (讀取地址)Bits 31to 3:未使用。Bits 19to 4 :時(shí)間標(biāo)記長(zhǎng)度+1,單位是毫秒Bits 3 :時(shí)間標(biāo)記的反向性0_低到高,1_高到低。Bits 2to 0 :時(shí)間標(biāo)記反饋有效邊選擇000-上升沿 MARKFB001-下降沿 MARKFBxlO-上升沿 TICOxll-下降沿 TICO100-上升沿 TMARK100-下降沿 TMARK
TMARK_L0AD (寫(xiě)入)
這兩個(gè)寄存器是用來(lái)對(duì)時(shí)間標(biāo)記發(fā)生器進(jìn)行編程的。使用21位無(wú)符號(hào)整數(shù)字進(jìn)行編程,有效范圍是0到IFFFFF(16進(jìn)制數(shù))。數(shù)值表示時(shí)間延遲,該延遲小于25納秒,從下個(gè)TIC到TMARK輸出信號(hào),單位是50納秒。對(duì)TMARK_L0AD寫(xiě)操作的下降沿激活時(shí)間標(biāo)記發(fā)生器。當(dāng)下個(gè)TIC發(fā)生時(shí),時(shí)間標(biāo)記計(jì)數(shù)器被加載,然后倒數(shù)到零,在這個(gè)時(shí)候TMARK被輸出。TMARK_HIGH, TMARK_L0ff (讀取)TMARK_L0W是一個(gè)包含一個(gè)無(wú)符號(hào)整數(shù)的16個(gè)較低有效位的16位寄存器,數(shù)值是從TMARK輸出信號(hào)產(chǎn)生開(kāi)始經(jīng)過(guò)的50納秒間隔數(shù)減去I.·TMARK_HIGH是一個(gè)包含同上數(shù)值的5個(gè)較高有效位的5位寄存器。MEAS_STATUS_A寄存器中的MARK_FB_ACK狀態(tài)位應(yīng)該在對(duì)TMARK_X寄存器進(jìn)行讀取訪(fǎng)問(wèn)之前就被響應(yīng)。外圍設(shè)備功能寄存器外圍功能寄存器的地址請(qǐng)參照Z(yǔ)VM2060IP寄存器列表。DATA_BUS_TEST(讀/寫(xiě)地址)這是一個(gè)16位的讀/寫(xiě)寄存器,功能是允許對(duì)一個(gè)16位寬的數(shù)據(jù)總線(xiàn)進(jìn)行簡(jiǎn)單的測(cè)試,具體方法是通過(guò)寫(xiě)入一個(gè)16位數(shù)字然后確認(rèn)讀回的數(shù)據(jù)是否是一樣的。同時(shí)這個(gè)寄存器可以用來(lái)存儲(chǔ)預(yù)設(shè)值,這個(gè)值可以被檢驗(yàn),以確定是否發(fā)生了一個(gè)完全的動(dòng)力喪失(低于數(shù)據(jù)保持水準(zhǔn))。衛(wèi)星捕獲的軟件序列(Software Sequence ForAcquisition)衛(wèi)星信號(hào)的頻譜是擴(kuò)頻調(diào)制的黃金碼。這個(gè)導(dǎo)致了衛(wèi)星信號(hào)在GNSS接收者看來(lái)非常微弱,被淹沒(méi)在了噪聲中以至只能通過(guò)相關(guān)才能被探測(cè)到。所以為了對(duì)接收到的信號(hào)做相關(guān),必須選擇一個(gè)本地生成的,編碼類(lèi)型,碼率和相位都匹配的編碼復(fù)制品。然后這個(gè)樣板就和輸入的數(shù)據(jù)流進(jìn)行位乘,得到的結(jié)果在編碼長(zhǎng)度上進(jìn)行積分來(lái)恢復(fù)這個(gè)信號(hào)。信號(hào)捕獲的過(guò)程其實(shí)就是簡(jiǎn)單的匹配接收機(jī)設(shè)置和真實(shí)的信號(hào)值。但是實(shí)際情況要復(fù)雜一些,衛(wèi)星載波信號(hào)頻率會(huì)因?yàn)樾l(wèi)星運(yùn)動(dòng)產(chǎn)生的多普勒效應(yīng)而被少量的偏移,用戶(hù)的時(shí)鐘會(huì)隨機(jī)地漂移,以及(大多數(shù)情況下)一些衛(wèi)星的的信噪比很不理想。所以就要求軟件必須既是“寬頻的”以便能找到信號(hào),同時(shí)又要是“窄頻的”以降低噪聲,造成不同應(yīng)用環(huán)境下程序的巨大差異。在所有的追蹤信道,信號(hào)處理軟件需要以下的活動(dòng)序列I.對(duì)CHx_SATCNTL寄存器編程以選擇想要的GPS黃金碼(RPN編號(hào))或者GLONASS碼,同時(shí)也要為相關(guān)器的追蹤臂選擇編碼類(lèi)型。一般在捕獲模式,最好是把追蹤臂定在”Dithering”模式(在”Early”和”Late”模式不停切換)立即在兩個(gè)相位展開(kāi)搜索,然后一旦找到衛(wèi)星就切換至追蹤模式2.對(duì)CHx_SIGSEL寄存器編程來(lái)為相關(guān)器選擇輸入信號(hào)和為窄帶轉(zhuǎn)換器(如果是GLONASS)選擇中心頻率3.對(duì)CHx_CARR_INCR_L0寄存器編程編程到這個(gè)寄存器的數(shù)值是用來(lái)為12信道的相關(guān)器中的混合操作選擇本地振蕩器的頻率,來(lái)把輸入的2位元數(shù)字化信號(hào)從射頻前端降頻到基帶。要被編程的數(shù)值等于本地振蕩器的標(biāo)稱(chēng)頻率加上多普勒位移的補(bǔ)償估計(jì)值,再加上用戶(hù)時(shí)鐘頻率漂移的補(bǔ)償估計(jì)值。4.對(duì)CHx_C0DE_INCR_L0寄存器編程編程到這個(gè)寄存器的數(shù)值是C/A編碼標(biāo)稱(chēng)碼率(2. 046MHz或者I. 022MHz)的兩倍。如果需要,再加上多普勒位移和用戶(hù)時(shí)鐘頻率的小量補(bǔ)償。5.解除追蹤信道的重置借助對(duì)RESET_C0NTR0L寄存器編程寫(xiě)入合適的數(shù)值。這個(gè)操作會(huì)啟動(dòng)相關(guān)進(jìn)程。6.獲取累加數(shù)據(jù)數(shù)據(jù)來(lái)自對(duì)累加數(shù)據(jù)寄存器的讀取。對(duì)同一追蹤信道的幾次連續(xù)的讀取可以相加以增加相關(guān)積分的周期。7.確定GNSS信號(hào)是否已經(jīng)被找到是通過(guò)把相關(guān)積分結(jié)果和一個(gè)閾值相比較。如果確定信號(hào)找到那就跳轉(zhuǎn)到信號(hào)拉進(jìn)算法。要注意的是同相的信號(hào)和垂直相的信號(hào)的累加數(shù)據(jù)都要被考慮,因?yàn)樵谶@個(gè)時(shí)候本地載波數(shù)字控制振蕩器還不一定和輸入GNSS信號(hào)同相。 8.如果GNSS信號(hào)沒(méi)有被找到就需要重新編程以改變載波數(shù)字控制振蕩器,編碼數(shù)字控制振蕩器頻率或者黃金代碼來(lái)重新嘗試。典型的做法是先保持兩個(gè)數(shù)字控制振蕩器的頻率不變,撥動(dòng)黃金碼的相位直到2046或者1022個(gè)可能的位置都被覆蓋到,如果信號(hào)沒(méi)找到,那就少量地改變載波數(shù)字控制振蕩器的頻率然后再對(duì)黃金碼的相位進(jìn)行掃描。黃金碼相位的撥動(dòng)是通過(guò)對(duì)CHx_C0DE_SLEW寄存器的編程實(shí)現(xiàn)的。9. 一旦GNSS信號(hào)被找到編碼相位對(duì)齊,載波相位對(duì)齊以及多普勒和用戶(hù)始終偏差補(bǔ)償都還很粗糙。編碼相位對(duì)齊精度之能在半個(gè)碼位,載波數(shù)字控制振蕩器信號(hào)和輸入信號(hào)并不同相,而頻率的誤差也可以達(dá)到連續(xù)嘗試時(shí)的步進(jìn)值。10.信號(hào)處理軟件下一步必須采用一個(gè)拉進(jìn)算法以完善這些對(duì)齊操作。有很多合適的算法可供選擇,比如連續(xù)的小量步進(jìn)直到誤差可以忽略不計(jì),像模擬PLL,或者使用更復(fù)雜的信號(hào)處理來(lái)估計(jì)誤差然后跳轉(zhuǎn)到一個(gè)好的多的數(shù)據(jù)組。然后信號(hào)拉進(jìn)算法會(huì)對(duì)CHx_CARR_INCR_L01寄存器編程寫(xiě)入載波數(shù)字控制振蕩器的更精確的值。對(duì)黃金碼小于半個(gè)碼位的修正無(wú)法通過(guò)對(duì)編碼發(fā)生器中的CHx_C0DE_SLEW寄存器的編程來(lái)實(shí)現(xiàn),而應(yīng)該通過(guò)設(shè)置CHX_C0DE_INCR_L0寄存器來(lái)引導(dǎo)編碼數(shù)字控制振蕩器慢慢地把黃金碼相位調(diào)整到正確的數(shù)值。11.信號(hào)追蹤(Signal Tracking)12.因?yàn)樾l(wèi)星箱對(duì)于接收者會(huì)有一個(gè)不均勻的移動(dòng),所以輸入的GNSS信號(hào)會(huì)表現(xiàn)出一個(gè)在時(shí)間域變化的多普勒位移,同時(shí)用戶(hù)時(shí)鐘偏移也傾向于在時(shí)間域變化。最終結(jié)果就是,除非對(duì)編碼和載波數(shù)字控制振蕩器進(jìn)行動(dòng)態(tài)的校正,否則GNSS信號(hào)就會(huì)丟失。這個(gè)導(dǎo)致了兩個(gè)伺服循環(huán)必不可少一個(gè)保持對(duì)黃金碼相位的鎖定,另一個(gè)保持對(duì)載波的鎖定。這個(gè)可以通過(guò)以下的方法實(shí)現(xiàn)。13.引導(dǎo)這兩個(gè)伺服循環(huán)的原始數(shù)據(jù)是累加數(shù)據(jù),這個(gè)數(shù)據(jù)由追蹤信道以每毫秒一次的頻率輸出一次。追蹤臂的累加數(shù)據(jù)被用在黃金碼循環(huán);一些近似方法是用“提前減去滯后”(’early minus late’)黃金碼執(zhí)行一種無(wú)引導(dǎo)循環(huán),其他使用一種在半個(gè)碼位之后和半個(gè)碼位提前的編碼之間交替的抖動(dòng)編碼。在ZVM2060IP中,抖動(dòng)頻率是每路20ms (20編碼歷元),在重置之后從一個(gè)提前代碼開(kāi)始,這種編碼是通過(guò)CHx_CNTL寄存器選取的。黃金碼循環(huán)是通過(guò)使用CHx_C0DE_INCR_L0寄存器有規(guī)律地更新編碼數(shù)字控制振蕩器頻率來(lái)閉合的。準(zhǔn)時(shí)臂的累加數(shù)據(jù)被用于載波相位循環(huán)(盡管追蹤臂的抖動(dòng)模式也可能被使用)。一種方法是改變載波數(shù)字控制振蕩器的相位以保持所有的相關(guān)能量都在同相相關(guān)器臂而一點(diǎn)都不在垂直相相關(guān)器臂。載波相位循環(huán)是通過(guò)使用CHx_CARR_INCR_LO寄存器有規(guī)律地更新載波數(shù)字控制振蕩器頻率來(lái)閉合的。數(shù)據(jù)解調(diào)(DataDemodulation)C/A編碼和空間交通工具(SV)數(shù)據(jù)在50波特被調(diào)制。這種調(diào)制方式是對(duì)C/A編碼和SV數(shù)據(jù)求異或。這意味著每隔20毫秒(也就是20C/A編碼歷元),如果新的數(shù)據(jù)位和之前的不同那C/A編碼的香味就要被翻轉(zhuǎn)(移動(dòng)180度)。在準(zhǔn)時(shí)臂,一旦信號(hào)被正確地追蹤,這樣一個(gè)數(shù)據(jù)位傳輸會(huì)改變累加數(shù)據(jù)的符號(hào)。數(shù)據(jù)解調(diào)就通過(guò)下面兩步實(shí)現(xiàn)
I.定位數(shù)據(jù)位傳輸時(shí)刻,以辨別出哪個(gè)C/A編碼歷元對(duì)應(yīng)新數(shù)據(jù)位的開(kāi)端。這就允許ZVM2060IP的歷元計(jì)數(shù)器初始化(通過(guò)CHx_lMS_EP0CH和CHx_20MS_EP0CH寄存器),以從0到19和數(shù)據(jù)位同相計(jì)數(shù)編碼歷元。在每個(gè)Ims歷元計(jì)數(shù)器的新循環(huán),20ms歷元計(jì)數(shù)器會(huì)增長(zhǎng)。2.在每個(gè)20ms的數(shù)據(jù)位周期在準(zhǔn)時(shí)臂記錄累加數(shù)據(jù)的符號(hào),通過(guò)濾波來(lái)降低信號(hào)噪聲的影響。注意解調(diào)過(guò)程存在符號(hào)模棱兩可的情況,因?yàn)闊o(wú)法從信號(hào)本身判定哪個(gè)數(shù)據(jù)位是0那個(gè)是I。這個(gè)模棱兩可的情況會(huì)在下個(gè)步驟當(dāng)完整的導(dǎo)航信息被解析后解決。偽距測(cè)量(Pseudorange Measurement)測(cè)量數(shù)據(jù)寄存器提供計(jì)算偽距所需要的原始數(shù)據(jù),這個(gè)原始數(shù)據(jù)是一個(gè)采樣,在一個(gè)20ms或者Ims歷元計(jì)數(shù)器,C/A編碼相位計(jì)數(shù)器和編碼數(shù)字控制振蕩器相位的TIC信號(hào)設(shè)置的時(shí)刻。按照定義,偽距被表示成時(shí)間單位,等于衛(wèi)星到接收者的信號(hào)傳播延時(shí)加上用戶(hù)時(shí)鐘偏差。用戶(hù)時(shí)鐘偏差首先是被估計(jì)出來(lái)的(如果是冷啟動(dòng)那多半就是瞎猜,但是要消耗更多的遞歸時(shí)間)然后作為導(dǎo)航結(jié)果的副產(chǎn)品被計(jì)算出來(lái)。偽距等于用戶(hù)信號(hào)的本地太陽(yáng)時(shí)(tl)減去GNSS信號(hào)傳輸?shù)恼鎸?shí)時(shí)間(t2)。通過(guò)解調(diào)的數(shù)據(jù),軟件就可以訪(fǎng)問(wèn)空間交通工具導(dǎo)航信息(SpaceVehicleNavigation Message),它包含了傳輸當(dāng)前子巾貞的GNSS系統(tǒng)時(shí)間信息。它等于時(shí)間t2。導(dǎo)航信息中的時(shí)間信息允許接收機(jī)時(shí)間在20ms的分辨率下(一個(gè)數(shù)據(jù)位周期)被初始化,但是如果對(duì)精度有了解那就可以達(dá)到好的多的分辨率,比如小于一個(gè)C/A編碼的碼位-比Ims小一點(diǎn)。因?yàn)楣鈴男l(wèi)星到接收機(jī)的傳播時(shí)間在60-80ms的范圍內(nèi),所以對(duì)本地時(shí)間第一次猜測(cè)的改良可以降低后面的遞歸計(jì)算時(shí)間。通過(guò)使用數(shù)據(jù)對(duì)TIC時(shí)刻貼上標(biāo)簽,以及歷元計(jì)數(shù)器數(shù)值,編碼發(fā)生器相位,以及編碼時(shí)鐘相位,測(cè)量SV信號(hào)在本地太陽(yáng)時(shí)的時(shí)間是有可能的。這就給出了偽距測(cè)量所需的tl的值,這樣偽距就可以通過(guò)tl-t2被計(jì)算出來(lái)。時(shí)間設(shè)置中表示的誤差是初始的用戶(hù)始終偏差值和各種計(jì)數(shù)器相位的限值。一旦一個(gè)導(dǎo)航結(jié)果被找到,就可以很精確地知道時(shí)鐘誤差,它可以被用在將來(lái)的偽距計(jì)算上。因?yàn)榻邮諜C(jī)時(shí)鐘隨著時(shí)間漂移,時(shí)鐘偏差隨著時(shí)間變化,所以它們必須用導(dǎo)航軟件來(lái)追蹤??刂芞VM2060IP接下來(lái)的小節(jié)描述了控制ZVM2060IP的典型方法。它們包括信號(hào)捕獲和追蹤,載波相位測(cè)量和時(shí)間記號(hào)的生成。搜索操作(SearchOperation)要執(zhí)行信號(hào)捕獲,載波頻率和編碼相位空間需要被搜索直到信號(hào)被檢測(cè)到。載波頻移相對(duì)它的標(biāo)稱(chēng)值的最大偏移由最大的載波多普勒位移加上最大的接收機(jī)時(shí)鐘誤差決定。最大的編碼相位由編碼長(zhǎng)度(固定的)決定。一般來(lái)說(shuō),在移動(dòng)到下個(gè)載波頻率之前,所有的編碼相位方格都會(huì)被搜索到,然后才移動(dòng)頻率方格重新搜索編碼相位。載波數(shù)字控制振蕩器編程以下的寄存器CHx_CARRIER_DCO_INCR
根據(jù)被搜索的頻率方格依次用相關(guān)的數(shù)據(jù)被編程。載波數(shù)字控制振蕩器編程在信道被釋放(激活)的同時(shí)生效。如果信道已經(jīng)被激活,對(duì)CHx_CARRIER_DCO_INCR的寫(xiě)操作馬上生效(會(huì)發(fā)生一個(gè)最大175ns的短暫的延時(shí),以允許處理器對(duì)芯片的寫(xiě)操作的同步)。編碼數(shù)字控制振蕩器編程以下的寄存器CHx_C0DE_DC0_INCR根據(jù)估計(jì)的編碼頻率偏移依次用相關(guān)的數(shù)據(jù)編程。編碼數(shù)字控制振蕩器編程在信道被釋放(激活)的同時(shí)生效。如果信道已經(jīng)被激活,對(duì)CHx_C0DE_DC0_INCR的寫(xiě)操作馬上生效(會(huì)發(fā)生一個(gè)最大175ns的短暫的延時(shí),以允許處理器對(duì)芯片的寫(xiě)操作的同步)。編碼發(fā)生器編程對(duì)每個(gè)信道,CHx_SATCNTL寄存器根據(jù)如下被編程I 設(shè)置S0URCESEL位選擇輸入信號(hào)源2.設(shè)置TRACK_SEL位設(shè)置追蹤臂編碼為”提前”或者”落后”(相對(duì)于”準(zhǔn)時(shí)”臂)。3.設(shè)置G2_L0AD位選擇要求的PRN編碼。4.根據(jù)期望的編碼相位偏差對(duì)CHx_C0DE_SLEW寄存器編程。撥動(dòng)操作會(huì)在CHx_RSTB被釋放時(shí)生效。第一個(gè)DUMP操作會(huì)為信道生成累加數(shù)據(jù)以及設(shè)置相關(guān)的CHx_NEW_ACCUM_DATA 狀態(tài)位。5.釋放 RESET_C0NTR0L 的 CHx_RSTB 位以激活信道。當(dāng)編碼時(shí)鐘被禁用(用來(lái)?yè)軇?dòng)編碼相位)“積分”和”丟棄”模塊保持重置。只有當(dāng)撥動(dòng)操作完成之后才會(huì)開(kāi)始累加相關(guān)結(jié)果。多信道搜索一顆衛(wèi)星可以通過(guò)使用MULTI信道地址和適當(dāng)差異的編碼撥動(dòng)值。讀取累加數(shù)據(jù)在每個(gè)”丟棄”操作相應(yīng)的CHx_NEW_ACCUM_DATA狀態(tài)位會(huì)在ACCUM_STATUS_A寄存器中被設(shè)置。狀態(tài)寄存器和所有的累加寄存器(CHx_l_TRACK,CHx_Q_TRACK, CHx_l_PR0MPT,CHx_Q_PR0MPT)被映射都連續(xù)的地址。如果需要,在每個(gè)ACCUM_INT中斷,這些寄存器數(shù)據(jù)都可以作為一個(gè)連續(xù)的區(qū)塊被讀取。或者,狀態(tài)寄存器可以被輪訓(xùn)?,F(xiàn)在累加寄存器是寫(xiě)覆蓋保護(hù)的,所以當(dāng)新的數(shù)據(jù)生效時(shí)系統(tǒng)必須很快響應(yīng)。是否需要在每個(gè)DUMP操作都處理累加操作取決于具體的應(yīng)用。讀取這些寄存器數(shù)據(jù)的順序是可以選擇的,但是理想的是CHx_Q_PR0MPT寄存器最后被讀取,因?yàn)檫@會(huì)重置CHx_NEW_ACCUM_DATA位。ACCUM_STATUS_B的CHx_MISSED_ACCUM位指示新的累加數(shù)據(jù)丟失了。這些寄存器位只能通過(guò)寫(xiě)入CHx_ACCUM_RESET或者重新激活信道來(lái)清除。搜索其他編碼相位當(dāng)期望在下個(gè)編碼相位進(jìn)行相關(guān),比如之后一整個(gè)碼位,C0DE_SLEW要被編程寫(xiě)入
2(單位是半個(gè)碼位)。撥動(dòng)操作會(huì)在下個(gè)DUMP進(jìn)行。C0DE_SLEW的效果和當(dāng)前的編碼相位有關(guān)。要重復(fù)C0DE_SLEW,寄存器要被重新寫(xiě)入,哪怕?lián)軇?dòng)的大小是一樣的?!┬l(wèi)星信號(hào)被探測(cè)到(達(dá)到了相關(guān)閾值),編碼和載波的追蹤循環(huán)就可以關(guān)閉了。追蹤循環(huán)的參數(shù)必須被整合到軟件中以適應(yīng)具體的應(yīng)用。數(shù)據(jù)位同步
數(shù)據(jù)位同步算法應(yīng)該找到數(shù)據(jù)位傳輸?shù)臅r(shí)刻。處理器計(jì)算當(dāng)前的一毫秒歷元,然后把這個(gè)數(shù)值寫(xiě)入1MS_EP0CH計(jì)數(shù)器。理想狀態(tài)下,歷元計(jì)數(shù)器的訪(fǎng)問(wèn)應(yīng)該發(fā)生在每個(gè)DUMP的累加寄存器寫(xiě)入操作之后?;蛘?,歷元計(jì)數(shù)器可以任由它自行運(yùn)轉(zhuǎn),偏差由軟件在每次它讀取歷元寄存器的時(shí)候加上去。注意如果積分操作穿越位元邊界,積分結(jié)果會(huì)很小。讀取測(cè)量數(shù)據(jù)在每個(gè)TIC時(shí)刻,測(cè)量數(shù)據(jù)都會(huì)被鎖存在測(cè)量數(shù)據(jù)寄存器中CHx_EP0CH,CHx_C0DE_PHASE,CHx_CARRIER_DCO_PHASE,CHx_CARRIER_CYCLE_HIGH,CHx_CARRIER_CYCLE_LOff,CHx_C0DE_DC0_PHASE.ACCUM_STATUS_B或者M(jìn)EAS_STATUS_A寄存器必須在一個(gè)大于TIC頻率的頻率上進(jìn)行輪詢(xún)(以查驗(yàn)一個(gè)TIC是否已經(jīng)發(fā)生),否則測(cè)量數(shù)據(jù)會(huì)丟失。ACCUM_INT或者M(jìn)EAS_INT事件可以用來(lái)啟動(dòng)這個(gè)操作。測(cè)量數(shù)據(jù)的讀取既可以由中斷發(fā)動(dòng)也可以是輪詢(xún)的。對(duì)于中斷發(fā)動(dòng)的防范微處理器在每個(gè)MEAS_INT中斷后讀取ACCUM_STATUS_B或者M(jìn)EAS_STATUS_A寄存器,如果TIC位被設(shè)置,跟著就讀取測(cè)量數(shù)據(jù)。對(duì)于輪詢(xún)法,ACCUM_STATUS_A寄存器總是在ACCUM_INT中斷后被讀取。另外ACCUM_STATUS_B寄存器在每個(gè)ACCUM_INT中斷后被讀取以保證沒(méi)有累加數(shù)據(jù)被丟失以及檢查T(mén)IC位(以及幾個(gè)狀態(tài)位)。軟件檢查T(mén)IC位來(lái)確定新的測(cè)量數(shù)據(jù)已經(jīng)可以被讀取。預(yù)置模式(PresetMode)寄存器的PRESET/UPDATEB位置高位,每個(gè)信道都可以被編程進(jìn)入預(yù)置模式。當(dāng)TIC事件發(fā)生,衛(wèi)星編碼,歷元數(shù)值和撥動(dòng)數(shù)被加載,一個(gè)新的相位被編程寫(xiě)入編碼數(shù)字控制振蕩器,這個(gè)相位和振蕩器中之前的數(shù)值無(wú)關(guān)。在TIC時(shí)間之前信道根據(jù)它之前的設(shè)置運(yùn)作。預(yù)置模式多載波數(shù)字控制振蕩器和載波周期計(jì)數(shù)器沒(méi)有影響。一旦預(yù)置模式被開(kāi)動(dòng),那它應(yīng)該被允許運(yùn)行至結(jié)束。要求的運(yùn)行序列如下I.寄存器選擇預(yù)置模式,同時(shí)寫(xiě)入合適的新設(shè)置2.加載編碼和載波數(shù)字控制振蕩器增量數(shù)值。注意這些立即生效所以會(huì)影響當(dāng)前的測(cè)量。3.加載以下的寄存器CHx_C0DE_DC0_PHASE,CHx_CODE_SLEff_andCHx_EP0CH_C0UNT_L0AD.CHx_EP0CH_C0UNT_L0AD最后加載很重要,因?yàn)樗鼤?huì)激活下個(gè)TIC的預(yù)置操作 中斷(Interrupts)存在一個(gè)中斷源INT0UT.默認(rèn)的INTOUT周期是505. 05s。這個(gè)周期可以通過(guò) PR0G_ACCUM_INT寄存器或者通過(guò)改變SYSTEM_SETUP寄存器的INTERRUPT_PERIOD位來(lái)重新設(shè)置。默認(rèn)的TIC 周期是 99. 9999ms。它可以通過(guò) PR0G_TIC_HIGH 和 PR0G_TIC_L0W 寄存
器重新配置。 硬件信號(hào)處理引入的信號(hào)通道延時(shí)當(dāng)期望從GNSS信號(hào)產(chǎn)生一個(gè)精確的時(shí)鐘參考或者給位置定位加上時(shí)間標(biāo)記,接收機(jī)的延時(shí)必須加以考慮。信號(hào)通道延時(shí)包括兩部分,一個(gè)是模擬通道延時(shí),隨著溫度和組件公差變動(dòng),一個(gè)數(shù)字通道延時(shí),如果振蕩器漂移變動(dòng)可以無(wú)視,那它就是常數(shù)。數(shù)字延時(shí)的估值簡(jiǎn)單些,它由以下幾部分組成I.從前端的(SMPCLK) SIGN和MAG位的采樣邊緣到采樣鎖存重采樣(比從SMPCLK到前端傳播延時(shí)少175ns)的時(shí)間。2.加上相關(guān)器在相同的SIGN和MAG位上的相關(guān)操作所需時(shí)間(175ns)。3.加上累加器中用來(lái)鎖存采樣數(shù)據(jù)的延時(shí)。4.減去相關(guān)操作和累加器鎖存相位(75ns)之前的TIC時(shí)鐘相位之間的時(shí)間。通過(guò)射頻接收機(jī)的模擬延時(shí)被設(shè)置為濾波器中的組延時(shí)參數(shù),對(duì)于C/A編碼所用的貸款或在I到2ms的范圍內(nèi),所以淹沒(méi)在數(shù)字延時(shí)中。但是它是可以被測(cè)量和修正的。 積分載波相位測(cè)量相關(guān)器追蹤信道的硬件允許通過(guò)CHx_CARRIER_CYCLE_HIGH/_LOW和CHx_CARRIER_DCO_PHASE寄存器的作為測(cè)量數(shù)據(jù)一部分的測(cè)量值在每個(gè)TIC時(shí)刻被采樣。CHx_CARRIER_CYCLE_HIGH/_LOff寄存器包含了 20位元的載波數(shù)字控制振蕩器的正向零相交的數(shù)值;這會(huì)比過(guò)去的整個(gè)周期的數(shù)值多一(4位在_HIGH,16位在_L0W寄存器)。CHx_CARRIER_DCO_PHASE寄存器包含了周期小數(shù)或者相位,以及10位的分辨率來(lái)給出2/2046弧度的增量。要獲取幾個(gè)TIC周期的積分載波相位,所需要做的就是在每個(gè)TIC時(shí)刻讀取CHx_CARRIER_CYCLE_HIGH和_L0W寄存器并且對(duì)讀取值求和。當(dāng)載波周期測(cè)量是從一個(gè)正向零相交到下個(gè)正向零相交,這會(huì)給出一個(gè)比完整的載波周期高I的數(shù)值。最后的載波周期小數(shù)必須被加到這個(gè)數(shù)值上,而開(kāi)始的載波周期小數(shù)必須被減去。兩個(gè)數(shù)值都是從CHx_CARR_DCO_PHASE寄存器被讀取??偟南辔蛔兓梢匀缦卤挥?jì)算出來(lái)積分載波相位=2* E Numbers in Carrier Cycle Counter+final Carrier DCOphase-initial Carrier DCO phase圖I展示了這個(gè)等式是如何被推到出來(lái)的
這個(gè)積分載波相位可以和”delta”距離(到各個(gè)衛(wèi)星的距離變化)聯(lián)系起來(lái)。當(dāng)和衛(wèi)星的軌道參數(shù)一起使用,” delta”距離會(huì)給出一個(gè)定位點(diǎn)之間接收機(jī)的移動(dòng)測(cè)量值,這個(gè)測(cè)量值是相對(duì)于定位點(diǎn)里的,所以可以用來(lái)對(duì)它們做平滑。它同時(shí)也可以直接給出速度值?!?delta”距離是包含噪聲的而且大多數(shù)數(shù)值取決于衛(wèi)星的運(yùn)動(dòng),所以速度的確定必須使用來(lái)自充分分離的TIC的數(shù)據(jù)。對(duì)于位置平滑所有的”delta”距離都會(huì)被包含在導(dǎo)航濾波器的輸入中。該濾波器會(huì)執(zhí)行一個(gè)” delta”距離和距離的動(dòng)態(tài)平均。 生成時(shí)間記號(hào)(TMARK)時(shí)間記號(hào)(Time Mark)發(fā)生器被設(shè)計(jì)成每一秒提供一個(gè)可以和給定的時(shí)間基(比如接收機(jī)時(shí)間基,GPS, GLONASS世界協(xié)調(diào)時(shí)同步單元或者世界協(xié)調(diào)時(shí))同步的時(shí)間記號(hào)輸出信號(hào)。時(shí)間記號(hào)在某個(gè)可編程的和TIC相關(guān)的延時(shí)后生成。選擇的結(jié)構(gòu)(參見(jiàn)圖2)只涉及到時(shí)鐘在高頻驅(qū)動(dòng)的最少的硬件所以給出了比較低的能量消耗。舉個(gè)例子,為了同步時(shí)間記號(hào)到世界協(xié)調(diào)時(shí)(UTC),軟件可以有以下的操作 流程(參見(jiàn)圖3)I.偶爾捕獲測(cè)量數(shù)據(jù)(在任一的TIC時(shí)刻)用來(lái)2.解算測(cè)量時(shí)刻的世界協(xié)調(diào)時(shí)(t0)。注意分辨率只能精確到接收機(jī)中的硬件傳輸速度,一般是幾個(gè)毫秒,除非這些延時(shí)被校準(zhǔn)過(guò)而且世界協(xié)調(diào)時(shí)分辨率根據(jù)校準(zhǔn)結(jié)果被修正。3. Compute on which 100ms TIC, tm, to take the next sample ofmeasurementdata such that :計(jì)算在哪個(gè)100毫秒TIC時(shí)刻對(duì)下個(gè)測(cè)量數(shù)據(jù)進(jìn)行采樣以滿(mǎn)足UTCTIMEMARK-tm = 8 1+62這里UTC TIME MARK =和一個(gè)世界協(xié)調(diào)時(shí)秒同步的期望時(shí)間記號(hào)8 I = k X (time between TICs),這里 k = INTEGER 而且 5 I >導(dǎo)航結(jié)果計(jì)算延時(shí)。6 2 =時(shí)間記號(hào)和100ms TIC標(biāo)記” tr”之間的時(shí)間偏差(擁有50ns的分辨率)6 2 < (TIC時(shí)刻之間的時(shí)間)4.在時(shí)刻tm捕獲測(cè)量數(shù)據(jù)。在時(shí)刻tm計(jì)算Nav結(jié)果。在UTC時(shí)刻傳輸Nav結(jié)果。通過(guò)已知的振蕩器漂移,時(shí)間記號(hào)生成器單元加上的25ns延時(shí)以及校準(zhǔn)過(guò)的傳播延時(shí),計(jì)算DOWN COUNT,要編程輸入可編程倒數(shù)計(jì)數(shù)器的數(shù)值以把時(shí)間記號(hào)延時(shí)6 2。5.在tr事件發(fā)生之前對(duì)倒數(shù)計(jì)數(shù)器編程寫(xiě)入DOWN COUNT值。6.在 tr 時(shí)間之后 2000ms 內(nèi)輸出 ARINC DATA (跟隨 ARINC743)。7.定位tm+1然后返回步驟4。 以下的誤差預(yù)算都和時(shí)間記號(hào)(Time Mark)的產(chǎn)生有關(guān)系總誤差=TDOP+時(shí)鐘分辨率+振蕩器漂移殘余誤差。+計(jì)算引入誤差。+時(shí)間記號(hào)傳輸通過(guò)器件/線(xiàn)路產(chǎn)生的延時(shí)。+ :硬件中的傳輸延時(shí),從天線(xiàn)到相關(guān)器到測(cè)量數(shù)據(jù)采樣器。其中的典型值是I. TDOP :當(dāng)選擇可用性(SA)打開(kāi),估計(jì)值為177ns (2 6數(shù))2.時(shí)鐘分辨率50ns (在21位可編程倒數(shù)計(jì)數(shù)器中)。
3.振蕩器漂移殘余誤差(a)來(lái)自從上個(gè)振蕩器漂移計(jì)算開(kāi)始的TCXO上的溫度變化⑴TCXO最大斜率是土 lppm/°C(ii)溫度最大變化是5°C /minute(iii)振蕩器漂移每秒計(jì)算一次所以在世界協(xié)調(diào)時(shí)記號(hào)中最多存在一秒鐘。比如以lppm/°C X 5°C /min x Isec = 83ns作為溫度步進(jìn)變化或者41. 5ns (取整到50ns)作為線(xiàn)性斜率(b)因?yàn)槠乒乐抵凶畲蟮恼`差是50ns (大致猜測(cè))總的振蕩器漂移誤差=(a)+ (b) >> 100ns.
4.計(jì)算引入誤差假設(shè)為足夠多的有用位被保留所以這個(gè)誤差趨近于O。5.時(shí)間記號(hào)傳輸通過(guò)器件/線(xiàn)路產(chǎn)生的延時(shí)這個(gè)會(huì)根據(jù)GPS接收機(jī)的輸出通過(guò)使用倒數(shù)計(jì)數(shù)器的反饋來(lái)校正和補(bǔ)償,會(huì)存在殘余誤差,因?yàn)?a)時(shí)鐘分辨率=50ns(b)反饋延時(shí)校正=25ns (估計(jì)值)6.硬件中的傳輸延時(shí)這些都被估計(jì)在幾個(gè)毫秒的范圍內(nèi)所以是時(shí)間記號(hào)(TimeMark)同步錯(cuò)誤的主要組成部分。當(dāng)整個(gè)硬件設(shè)計(jì)已經(jīng)完成,一個(gè)估計(jì)算法可以被包含在軟件中以提高總的精確度??傉`差=177ns+50ns+100ns+0+75ns+硬件延時(shí)總誤差=402ns+硬件延時(shí) 相關(guān)器部分包括多信道相關(guān)器,該多信道相關(guān)器包括時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器、地址解碼器、總線(xiàn)界面、多個(gè)追蹤模塊,其中多個(gè)追蹤模塊經(jīng)總線(xiàn)并聯(lián),并聯(lián)后的多個(gè)追蹤模塊分別連接時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器,并經(jīng)總線(xiàn)界面連接地址解碼器。如圖所示,本發(fā)明為60信道并行相關(guān)器,它可以用來(lái)捕獲和追蹤GPS C/A編碼或者GPS L2或者GLONASS信號(hào)。它包含一個(gè)60信道GNSS相關(guān)器(GNSS導(dǎo)航系統(tǒng)、高完整性組合接收器、GNSS測(cè)地學(xué)接收器、GNSS時(shí)間基準(zhǔn))。它擁有32-位元高級(jí)外圍總線(xiàn)(APB)高級(jí)微控制器總線(xiàn)架構(gòu)_2. 0界面,它的每個(gè)信道都包含獨(dú)立的數(shù)字頻率轉(zhuǎn)換至窄帶功能,獨(dú)立的數(shù)字頻率降頻至基帶功能,C/A和GLONASS編碼生成,相關(guān)功能和累加-丟棄寄存器。其中12個(gè)信道具備額外的GPS L2編碼生成功能。它包括以下模塊時(shí)鐘發(fā)生器(ClockGenerator)時(shí)鐘發(fā)生器模塊把主時(shí)鐘MCLK頻率除以7,給出一組多相位的中頻時(shí)鐘信號(hào)。MCLK—般是一個(gè)40MHz的時(shí)鐘信號(hào)。SMPCLK管腳給出一個(gè)標(biāo)記占空比位4 3的輸出。時(shí)間基發(fā)生器(TimebaseGenerator)時(shí)間基發(fā)生器提供四個(gè)重要的計(jì)時(shí)信號(hào)INT0UT,TICO(管腳),MEAS_INT和TMARK (管腳)。INTOUT是一個(gè)被用來(lái)控制相關(guān)器中的累加器和微處理器之間的數(shù)據(jù)傳輸?shù)闹袛嘈盘?hào)。它可以由INTOUT的平均值或者由讀取ACCUM_STATUS_A寄存器(該寄存器的第十五位元是一個(gè)表明INTOUT在上次被讀取之后又發(fā)生變化的標(biāo)志)得到。通過(guò)讀取ACCUM_STATUS_A可以清空INT0UT。開(kāi)機(jī)后這個(gè)中斷每505. 05秒發(fā)生一次。中斷周期可以通過(guò)以下兩種方法中的任意一種來(lái)改變更改SYSTEM_SETUP寄存器的INTERRUPT_PERIOD位,或者直接寫(xiě)入PR0G_ACCUM_INT寄存器。詳細(xì)的內(nèi)容請(qǐng)參照16頁(yè)的“寄存器詳細(xì)描述”章節(jié)。TIC是一個(gè)內(nèi)部信號(hào),默認(rèn)周期是99999. 90秒。它被用來(lái)同時(shí)鎖存所有12信道的測(cè)量數(shù)據(jù)(歷元計(jì)數(shù),編碼相位,編碼數(shù)字控制振蕩器相位,載波數(shù)字控制振蕩器相位,和載波循環(huán)計(jì)數(shù))。TIC周期可以通過(guò)寫(xiě)入RP0G_TIC_HIGH和PR0G_TIC_L0W寄存器來(lái)設(shè)置。MEAS_INT是一個(gè)從TIC計(jì)數(shù)器得到的信號(hào)。通過(guò)使用MEAS_STATUS輸出或者讀取 ACCUM_STATUS_B或ACCUM_STATUS_A寄存器,它可以被用作切換軟件模式的微處理器中斷信號(hào)。只要TIC周期大于50ms,MEAS_INT都在每個(gè)TIC時(shí)間點(diǎn)和每個(gè)TIC時(shí)間點(diǎn)之前50ms被激活。如果TIC周期小于50ms,MEAS_INT只在TIC時(shí)間點(diǎn)被激活。TIC計(jì)數(shù)器可以通過(guò)讀取ACCUM_STATUS_B或者ACCUM_STATUS_A寄存器來(lái)清空,具體取決于SYSTEM_SETUP寄存器的MEAS_INT_SOURCE位的狀態(tài)。信號(hào)的主要目的是給出一個(gè)鎖定在UTC或者GNSS時(shí)間上的每秒一次的脈沖信號(hào)。在它之后可能會(huì)有來(lái)自微處理器的校準(zhǔn)時(shí)間信號(hào)。TMARK信號(hào)可以被用作其他導(dǎo)航設(shè)備的基準(zhǔn)。要同步TMARK到GNSS時(shí)間,第一步是在任意的TIC捕獲測(cè)量數(shù)據(jù),然后計(jì)算完整的導(dǎo)航信息來(lái)給出在這個(gè)TIC的時(shí)間值。然后通過(guò)這個(gè)時(shí)間值確定下次信號(hào)捕獲的TIC。在導(dǎo)航信號(hào)計(jì)算延遲之后,一個(gè)更遠(yuǎn)的延遲將被寫(xiě)入TMARK_HI和_L0寄存器以在下個(gè)TIC啟動(dòng)。這樣就給出了在所要求的GNSS整秒內(nèi)的TMARK。這是一個(gè)相當(dāng)長(zhǎng)的啟動(dòng)過(guò)程。不過(guò)一旦第一個(gè)正確的TIC選擇和遞減計(jì)數(shù)器已經(jīng)知道,那么這個(gè)過(guò)程就可以順利向前繼續(xù),延遲計(jì)算是基于上一步的導(dǎo)航信息的。如果要使用UTC而不是GNSS時(shí)間的話(huà),只需要讀取導(dǎo)航彳目息,獲取整秒差異后把這個(gè)差異加到計(jì)算好的GPS時(shí)間上,或者獲取utcsu校準(zhǔn)后加到計(jì)算好的GLONASS時(shí)間上。一種可能的改良是,計(jì)算幾個(gè)測(cè)量周期的振蕩器漂移,使用這個(gè)漂移值來(lái)推算一個(gè)更精確的延遲計(jì)數(shù)器的值。可以達(dá)到的極限精度是非常理想的,但是要達(dá)到這樣的效果,一方面晶振要很穩(wěn)定,另一方面要具備軟件補(bǔ)償?shù)哪芰?;另外,接收器前端的延遲要已知而且被考慮至IJ,而且通過(guò)使用MARKFB管腳,輸出驅(qū)動(dòng)器和線(xiàn)路的延遲要被考慮到。輸出的主要目的是給客機(jī)上的電子系統(tǒng)提供每秒一次的脈沖時(shí)鐘基準(zhǔn)信號(hào),它必須是精確的而且被確定是精確的。精確度由從TMARK_HI和_L0加載校準(zhǔn)補(bǔ)償來(lái)達(dá)成,這樣的校準(zhǔn)補(bǔ)償來(lái)自對(duì)GNSSTIC的以50ns為單位的測(cè)量。因?yàn)門(mén)IC碼率名義上是比IOHz小lppm,D0WN_C0UNTer的值預(yù)計(jì)大概是每一秒TMARK增長(zhǎng)1ms,數(shù)值上是每個(gè)脈沖+20。這個(gè)數(shù)值需要持續(xù)地微調(diào)以容許穩(wěn)定或變化的晶振誤差。系統(tǒng)的完整性可以由兩種方法保證第一種是通過(guò)讀取111狀1(_111和_11)來(lái)檢查線(xiàn)路和驅(qū)動(dòng)器延遲,以確認(rèn)TMARK事件確實(shí)發(fā)生了,第二種是通過(guò)一個(gè)握手協(xié)議使微處理器能夠探測(cè)任何可能的硬件錯(cuò)誤。握手協(xié)議的流程如下I.寫(xiě)入TMARK_L0寄存器以啟動(dòng)TMARK發(fā)生器。
2.在下個(gè) TIC ZVM2060IP 啟動(dòng) D0WN_C0UNTer。3. ZVM2060IP會(huì)給出一個(gè)TMARK脈沖輸出信號(hào)并啟動(dòng)PR0P_DELAY計(jì)數(shù)器。4.通過(guò)MARKFB輸入反饋TMARK來(lái)終止PR0P_DELAY和設(shè)置MEAS_STATUS_A中的MARK_FB_ACK。5.讀取MEAS_STATUS_A,它一般是作為測(cè)量數(shù)據(jù)傳輸協(xié)議的一部分的6. 一旦MARK_FB_ACK被設(shè)置(而且被清空)就讀取MARK_X,以獲取最后一次延遲的穩(wěn)定值以及清空MARK_FB_ACK位。這也使TMARK發(fā)生器為從第一步重新開(kāi)始做好準(zhǔn)備。這個(gè)看起來(lái)很復(fù)雜,但是每秒只需要執(zhí)行一次,所以對(duì)簡(jiǎn)單的系統(tǒng)來(lái)說(shuō)這就是全部要求了。對(duì)完整精度的系統(tǒng),和計(jì)算所一致的各種寄存器操作必須完全滿(mǎn)足ARINC 743 規(guī)范。狀態(tài)寄存器(StatusRegisters)有四種狀態(tài)寄存器(ACCUM_STATUS_A,_B,_C和MEAS_STATUS_A)。這些寄存器存放與12個(gè)信道中的累加和測(cè)量數(shù)據(jù)相關(guān)的標(biāo)記。一些系統(tǒng)級(jí)的狀態(tài)位也包含在這些寄存器中。信號(hào)選擇模塊(Signal selection block)信號(hào)選擇模塊包含了一個(gè)多路復(fù)用器,這個(gè)多路復(fù)用器是可編程的,用來(lái)選通任意的16個(gè)二位數(shù)據(jù)(混合器模式)或者8個(gè)四位數(shù)據(jù)(二乘二復(fù)雜混合器模式),輸入至60個(gè)信道中的任意一個(gè)。模數(shù)轉(zhuǎn)換器輸入端支持三種格式的二位元數(shù)字信號(hào)無(wú)符號(hào)二進(jìn)制數(shù),符號(hào)加數(shù)值二進(jìn)制數(shù)或者二進(jìn)制補(bǔ)碼。模數(shù)轉(zhuǎn)換多路復(fù)用器輸入必須被配置成二位元混合器輸入(16個(gè)輸入信道)或者二位元復(fù)信號(hào)I&Q(8個(gè)輸入信道);采樣鎖存器把來(lái)自前端的數(shù)據(jù)和內(nèi)部的SMPCLK以及MCLKO同步起來(lái)。已經(jīng)降頻的衛(wèi)星信號(hào)在前端的輸出被SMPCLK或者M(jìn)CLKO采樣。然后這些信號(hào)就被送到追蹤模塊。當(dāng)使用的前端是GP2015或者GP2010,數(shù)據(jù)表現(xiàn)為中心頻率在4. 309MHz的帶通中頻信號(hào)。對(duì)它在5. 714MHz的頻率上進(jìn)行采樣把它升頻位I. 405MHz的中頻信號(hào)。對(duì)于高頻接收器,數(shù)據(jù)表現(xiàn)為從IMHz到19MHz的帶通信號(hào),對(duì)它在40MHz進(jìn)行采樣使其升頻至2IMH到39MHz。地址解碼器(AddressDecoder)地址解碼器為相關(guān)器執(zhí)行地址解碼??偩€(xiàn)界面(BusInterface)總線(xiàn)界面控制高級(jí)微處理器總線(xiàn)架構(gòu)(AMBA)的高級(jí)外圍總線(xiàn)(APB)和內(nèi)部32位元總線(xiàn)之間的數(shù)據(jù)傳輸。追蹤模塊(TrackingModules)追蹤模塊由60個(gè)編號(hào)從CHl到CH60的完全相同的信號(hào)追蹤信道組成,每一個(gè)都具備Figure 10所示的單元結(jié)構(gòu)。這些單元產(chǎn)生用來(lái)追蹤衛(wèi)星信號(hào)的數(shù)據(jù)。這些數(shù)據(jù)不具備寫(xiě)覆蓋保護(hù)機(jī)制。更多的信息請(qǐng)參見(jiàn)“控制ZVM2060IP”章。每個(gè)追蹤信道都是可以被獨(dú)立編程的,以使他們工作在更新(Update)或者預(yù)置(Preset)模式下。更新模式是一般的工作模式。預(yù)置模式是一個(gè)特殊的模式,在這個(gè)模式下對(duì)某個(gè)寄存器的寫(xiě)操作會(huì)被延遲到下個(gè)TIC,以達(dá)到同步寄存器和預(yù)置編碼數(shù)字控制振蕩器相位的目的。具體的信息參照13頁(yè)的“控制ZVM2060IP”章的“預(yù)置模式”小節(jié)。載波數(shù)字控制振蕩器(Carrier DC0)載波數(shù)字控制振蕩器同步于SMPCLK時(shí)鐘頻率,用來(lái)同步本地?cái)?shù)字振蕩器信號(hào),該信號(hào)被用來(lái)把混合器模塊的輸入信號(hào)降頻至基帶。它必須可以偏離標(biāo)稱(chēng)值以容許一定的多普勒偏移和基準(zhǔn)頻率誤差。當(dāng)和GP2015/GP2010 —起使用的時(shí)候,這個(gè)信號(hào)的標(biāo)稱(chēng)頻率是I 405396825MHz (分辨率是 42 57475mHz),通過(guò)加載 26 位元的 CHx_CARRIER_DCO_INCR寄存器來(lái)設(shè)定。這么高的分辨率是為了保證數(shù)字控制振蕩器能夠在一段足夠長(zhǎng)的時(shí)間內(nèi)和衛(wèi)星信號(hào)保持同相。載波數(shù)字控制振蕩器的相位無(wú)法直接設(shè)置,而必須通過(guò)改變其頻率來(lái)間接設(shè)置。 載波數(shù)字控制振蕩器輸出是四等八相位的正弦波,它在一個(gè)周期內(nèi)的序列如表2所示。終點(diǎn)臂序列 ILO _1+1+2+2+1_1_2_2QLO +2+2+1_1_2_2_1+1表2.載波數(shù)字控制振蕩器輸出因?yàn)镈CO的時(shí)鐘一般都要比輸出頻率低8倍,所以不是所有的相位都會(huì)在一個(gè)周期生成。如果是典型的5. 714MHz的時(shí)鐘頻率和I. 405MHz的輸出頻率,那么每個(gè)周期只有大約四個(gè)相位。這些相位會(huì)隨著時(shí)間推移而滑行過(guò)整個(gè)周期以覆蓋所有的值。編碼數(shù)字控制振蕩器(Code DC0)編碼數(shù)字控制振蕩器和載波數(shù)字控制振蕩器類(lèi)似。它也同步于SMPCLK時(shí)鐘頻率,同步相應(yīng)的晶振使其在兩倍于所要求的的碼率的頻率上驅(qū)動(dòng)編碼發(fā)生器。標(biāo)稱(chēng)的輸出頻率是 2 046MHz,給予 GPS I 023MHz 或者 I 022MHz 的碼率,給予 GLONASS 51IMHz 的碼率。這是通過(guò)加載25位元的CHx_C0DE_DC0_INCR寄存器設(shè)定的。當(dāng)和GP2015/GP2010前端一起使用的時(shí)候,晶振頻率分辨率被設(shè)置為85 14949mHz,同樣地,這么高的的分辨率是為了保持?jǐn)?shù)字控制振蕩器和衛(wèi)星信號(hào)保持同相。在預(yù)置模式下,編碼數(shù)字控制振蕩器的相位只能被精確地設(shè)置為衛(wèi)星信號(hào)的相位。在更新模式,它只能通過(guò)調(diào)節(jié)自身的頻率來(lái)和衛(wèi)星信號(hào)保持相位一致。載波周期計(jì)數(shù)器(CarrierCycle Counter)載波周期計(jì)數(shù)器具備20位元的長(zhǎng)度,用來(lái)計(jì)算TIC時(shí)刻之間的載波數(shù)字控制振蕩器周期?;镜膶?dǎo)航系統(tǒng)是不需要這個(gè)的,但是會(huì)被用于測(cè)量TIC時(shí)刻之間和每個(gè)衛(wèi)星距離的變化(delta-change)?!癲elta_change”可以被用來(lái)平滑編碼偽距。更具體地說(shuō),在每個(gè)TIC時(shí)刻載波數(shù)字控制振蕩器相位將被讀取,以給出周期數(shù)或者“delta-change”的小數(shù)部分。GPS C/A,GPS L2and GLONASS 編碼生成器(Code Generators) C/A 編碼生成器為 GPS衛(wèi)星(1-32),地面發(fā)射器(偽衛(wèi)星,33-37) ,INMARSAT-GIC衛(wèi)星(201-210)或者GLONASS衛(wèi)星生成選擇的黃金碼(Gold code)。黃金碼的選擇是通過(guò)對(duì)CHx_SATCNTL寄存器寫(xiě)入“寄存器詳細(xì)介紹”章列出的特定模式的10個(gè)位元,或者通過(guò)設(shè)置GPS_NGL0N為低位選擇GLONASS編碼。生成兩個(gè)輸出以同時(shí)給出一個(gè)PROMPT信號(hào)和一個(gè)TRACKING信號(hào)。TRACKING信號(hào)可以被設(shè)置為四個(gè)模式中的一種EARLY(比PROMPT信號(hào)提前一個(gè)半碼位),LATE (落后一個(gè)半碼位),F(xiàn)IXEDW (提前525ns)或者 FIXEDN (落后 525ns) 在每個(gè)編碼序列(GPS模式是1023位,GLONASS模式是511位)的結(jié)尾,一個(gè)DUMP信號(hào)會(huì)被生成,用來(lái)鎖存信號(hào)追蹤軟件所需的累加數(shù)據(jù)。每個(gè)信道都是獨(dú)立鎖存的,因?yàn)樾l(wèi)星信號(hào)被接收的時(shí)候相互之間不是同相的。GLONASS的特點(diǎn)是,每個(gè)衛(wèi)星信號(hào)都使用相同的PRN黃金碼,而在頻域上把這些信號(hào)區(qū)分開(kāi)來(lái)(1598MHz到1616MHz)。Navstar GPS是使用相同頻率的載波信號(hào)(LI =1575. 42MHz),調(diào)制以不同的PRN黃金碼。特殊的窄帶轉(zhuǎn)換器可以把GLONASS信號(hào)轉(zhuǎn)換到GPS頻段,然后在每個(gè)信道構(gòu)成需要的信號(hào)以解調(diào)GLONASS信號(hào)。因?yàn)榫邆溥@樣的能力,所以GZVM2060IP可以對(duì)GLONASS星群信號(hào)進(jìn)行高效的解碼。本發(fā)明包含一個(gè)C/A編碼發(fā)生器(通過(guò)將CHx_SATCNTL的GPS_NGL0N位置零來(lái)選取),用來(lái)對(duì)GLONASS信號(hào)進(jìn)行解碼。·本發(fā)明中有12個(gè)信道(49到60)包含了 GPS L2編碼發(fā)生器(通過(guò)設(shè)置CHx_SIGSEL寄存器的GPSL2_M和GPSL2_C位來(lái)選取),用來(lái)對(duì)GPS L2信號(hào)進(jìn)行解碼。信號(hào)源選擇多路復(fù)用器(SourceSelector Multiplexor)信號(hào)源選擇器是一個(gè)多路復(fù)用器。它決定使用哪個(gè)16—組的二位輸入信號(hào)(參見(jiàn)CHx_SIG_SEL寄存器的格式)。 載波混合器(Carrier Mixers)載波混合器把輸入信號(hào)和本地載波數(shù)字控制振蕩器產(chǎn)生的信號(hào)相乘得到基帶信號(hào)。I和Q的載波數(shù)字控制振蕩器相位都被發(fā)送到合適的混合器。本地載波數(shù)字控制振蕩器和輸入彳目號(hào)的混合廣生在區(qū)間+1,_1,+2,~2, +3, -3, +6和_6中取值的基帶"[目號(hào)。 編碼混合器(Code Mixers)編碼混合器把來(lái)自載波混合器輸出的基帶I&Q信號(hào)和本地復(fù)制生成的PROMPT以及TRACKING編碼相乘得到四個(gè)獨(dú)立的相關(guān)結(jié)果。相關(guān)結(jié)果會(huì)被送到”累加和丟棄”模塊進(jìn)行積分。 累加和丟棄”(Accumulate and Dump)累加和丟棄”模塊編碼對(duì)混合器的輸出在一個(gè)編碼周期內(nèi)(標(biāo)稱(chēng)是Ims)進(jìn)行積分。每個(gè)信道都有四個(gè)獨(dú)立的16位累加器。這些累加器的結(jié)果表示了在整個(gè)積分過(guò)程中I/Q信號(hào)和PROMPT以及TRACKING編碼的相關(guān)性。因?yàn)檫@些寄存器不具備寫(xiě)覆蓋保護(hù)機(jī)制,其中的數(shù)據(jù)必須在下個(gè)‘DUMP’操作之前就被讀取。 編碼相位計(jì)數(shù)器(Code Phase Counter)編碼相位計(jì)數(shù)器計(jì)算所生成編碼的半位的個(gè)數(shù),然后在每個(gè)TIC時(shí)刻把這個(gè)數(shù)值存放到CHx_C0DE_PHASE寄存器。 編碼撥動(dòng)計(jì)數(shù)器(Code Slew Counter)編碼撥動(dòng)計(jì)數(shù)器用來(lái)把生成的編碼在范圍0-2047的范圍內(nèi)以半個(gè)碼位的單位撥動(dòng)。在更新模式,撥動(dòng)發(fā)生在下個(gè)DUMP操作之后。在預(yù)置模式下它發(fā)生在下個(gè)TIC時(shí)刻。所有的波動(dòng)操作都和當(dāng)前的編碼相位有關(guān)。每次需要撥動(dòng)操作的時(shí)候都要多編碼撥動(dòng)計(jì)數(shù)器進(jìn)行寫(xiě)入操作。在撥動(dòng)過(guò)程中相應(yīng)信道的累加器是被禁用的,以使第一個(gè)結(jié)果有效。當(dāng)一個(gè)撥動(dòng)操作被寫(xiě)入時(shí)信道被禁用,那么撥動(dòng)將在信道被啟用的同時(shí)發(fā)生。
歷元計(jì)數(shù)器(Epoch Counter)歷元計(jì)數(shù)器持續(xù)計(jì)算一秒間隔內(nèi)的編碼周期。這個(gè)被表達(dá)為一個(gè)表示以Ims位單位的積分時(shí)間(0-19)的5位字,加上一個(gè)包含以20ms為單位的計(jì)數(shù)(0_49)的6位字。歷元計(jì)數(shù)器可以預(yù)先被加載以和來(lái)自衛(wèi)星的數(shù)據(jù)流同步。歷元計(jì)數(shù)器的值在更新模式下會(huì)馬上被傳送到計(jì)數(shù)器,或者在預(yù)置模式下,在下個(gè)TIC時(shí)刻被傳送。歷元計(jì)數(shù)器的數(shù)值在每個(gè)TIC時(shí)刻被鎖存至CHx_EP0CH寄存器。另外它的瞬時(shí)值可以從CHx_EPOCH_CHECK寄存器查驗(yàn)到。外圍功能(PERIPHERALFUNCTIONS) 實(shí)時(shí)時(shí)鐘延時(shí)計(jì)數(shù)器(RTC Delay Counter)下面的內(nèi)容請(qǐng)參考Fig. 11中的機(jī)構(gòu)圖。
假設(shè)選取的實(shí)時(shí)時(shí)鐘提供一個(gè)周期性的中斷輸出信號(hào),這個(gè)信號(hào)的周期是IOOms或者ls,這個(gè)信號(hào)同時(shí)被送往ZVM2060IP和微處理系統(tǒng)。在ZVM2060IP內(nèi)部,中斷信號(hào)被連接到RTC_INT管腳,它的上升沿會(huì)啟動(dòng)RTC_DELAY計(jì)數(shù)器。這個(gè)計(jì)數(shù)器由一個(gè)周期位175ns的時(shí)鐘信號(hào)驅(qū)動(dòng),計(jì)數(shù)器會(huì)一直增計(jì)數(shù)直至下個(gè)TIC時(shí)刻。以確定RTC和系統(tǒng)時(shí)鐘之間的延時(shí),其次,通過(guò)連續(xù)的讀取,RTC漂移也可以被估計(jì)。這兩條信息每次被計(jì)算出來(lái)后都被保存到永久性的RAM中。一旦發(fā)生電源毛刺脈沖,100ms_TIC時(shí)間基就會(huì)使用一個(gè)任意的相位重新開(kāi)始自由運(yùn)行。然后RTC中斷過(guò)程想之前描述的那樣重新發(fā)生,可能可以把新的系統(tǒng)TIC時(shí)間和毛刺脈沖發(fā)生之前的TIC時(shí)間聯(lián)系起來(lái)。理想狀態(tài)下,這個(gè)過(guò)程足夠精確的話(huà),數(shù)據(jù)位的同步將不會(huì)丟失,所有信道的控制寄存器可以被重新編程賦予合適的值。一旦時(shí)間關(guān)系已知,那預(yù)置模式可以被用來(lái)重建信號(hào)追蹤。 如果在一個(gè)給定的信道無(wú)法實(shí)現(xiàn)數(shù)據(jù)位的同步,但是獲得了合適的代碼和載波鎖定,那么軟件就應(yīng)該跳轉(zhuǎn)到數(shù)據(jù)位同步算法。如果沒(méi)有獲得合適的鎖定,那么軟件應(yīng)該跳轉(zhuǎn)到搜索算法。如果給定了保持?jǐn)?shù)據(jù)位同步需要的誤差項(xiàng)的大小(總計(jì))以及允許的最壞情況下的誤差,允許的最長(zhǎng)的電源毛刺脈沖長(zhǎng)度是可以被計(jì)算出來(lái)的。相關(guān)器模塊是基帶通過(guò)12個(gè)并行硬件相關(guān)信道進(jìn)行衛(wèi)星信號(hào)追蹤的硬件模塊;本發(fā)明采用的是Zoom Correlators技術(shù)。相關(guān)器的主要技術(shù)特點(diǎn)是2位I/Q輸入(I/Q信號(hào)相位相差180度);12個(gè)并行相關(guān)信道;每個(gè)信道都有4 個(gè) Zoom Correlators ;信道可以獨(dú)立啟用或者禁用,以減少能耗;追蹤模式設(shè)置很簡(jiǎn)便,可以很方便地實(shí)現(xiàn)信號(hào)快速捕獲;混合的獨(dú)立性和統(tǒng)一的存儲(chǔ)器轉(zhuǎn)貯所有輸出信號(hào)的采樣都是和該信道的編碼發(fā)生器同步的;一個(gè)中斷請(qǐng)求總是和指示中斷產(chǎn)生信道的中斷源寄存器同時(shí)生成的;所有的測(cè)量數(shù)據(jù)(載波和編碼數(shù)以及相位)在所有的信道都是同時(shí)采樣的;每次只產(chǎn)生一個(gè)中斷請(qǐng)求;存儲(chǔ)器轉(zhuǎn)貯頻率可以通過(guò)一個(gè)計(jì)數(shù)器進(jìn)行設(shè)置。管腳描述表I.管腳描述信號(hào)名類(lèi)型描述
高級(jí)微控制器總線(xiàn)架構(gòu)2.0高級(jí)外圍總線(xiàn)
PCLKI來(lái)自APB的外圍總線(xiàn)時(shí)鐘信號(hào)
PRESETnI來(lái)自APB的外圍總線(xiàn)復(fù)位信號(hào)
PSELI來(lái)自APB的芯片選擇信號(hào)
PWRITEI來(lái)自APB的外圍讀寫(xiě)指示信號(hào)
PADDR[3:2]I來(lái)自APB的外圍地址線(xiàn)
PWDATA[31:0] I來(lái)自APB的外圍數(shù)據(jù)寫(xiě)入總線(xiàn)
PRDATA[31:0] O通向APB的外圍讀取總線(xiàn) 外圍管腳
MARKFBITMARK線(xiàn)路驅(qū)動(dòng)反饋
RTCINTI外部脈沖中斷輸入
ADCP 1:0]I模數(shù)轉(zhuǎn)換數(shù)據(jù)輸入
MCLKI時(shí)鐘40MHz輸入
PCLKI反向模數(shù)轉(zhuǎn)換時(shí)鐘控制器
TMARKO每秒脈沖數(shù)(INT 2 )
ACCINTO測(cè)量中斷信號(hào)(INTl)
TICOO測(cè)量選通器(INTO)
ADCCLKO40 MHz模數(shù)轉(zhuǎn)換器時(shí)鐘
SMPCLKO5. 71 MHz模數(shù)轉(zhuǎn)換器時(shí)鐘
SIGT,MAGTOTEST 輸出信號(hào)
權(quán)利要求
1.一種GPS和GLONASS多信道并行信號(hào)追蹤方法,其特征是包括A.捕獲和追蹤衛(wèi)星信號(hào)以給出偽距;B.處理偽距以得出導(dǎo)航信息然后封裝為適合用戶(hù)的格式;其中 A包括下列步驟 對(duì)CHx_SATCNTL寄存器編程以選擇想要的GPS黃金碼(RPN編號(hào))或者GLONASS碼,同時(shí)也要為相關(guān)器的追蹤臂選擇編碼類(lèi)型,一般在捕獲模式,把追蹤臂定在” Dithering”模式(在”Early”和” Late”模式不停切換)立即在兩個(gè)相位展開(kāi)搜索,然后一旦找到衛(wèi)星就切換至追蹤模式; 對(duì)CHx_SIGSEL寄存器編程來(lái)為相關(guān)器選擇輸入信號(hào)和為窄帶轉(zhuǎn)換器(如果是GLONASS)選擇中心頻率; 對(duì)CHx_CARR_INCR_LO寄存器編程編程到這個(gè)寄存器的數(shù)值是用來(lái)為12信道的相關(guān)器中的混合操作選擇本地振蕩器的頻率,來(lái)把輸入的2位元數(shù)字化信號(hào)從射頻前端降頻到基帶,要被編程的數(shù)值等于本地振蕩器的標(biāo)稱(chēng)頻率加上多普勒位移的補(bǔ)償估計(jì)值,再加上用戶(hù)時(shí)鐘頻率漂移的補(bǔ)償估計(jì)值; 對(duì)CHx_C0DE_INCR_L0寄存器編程編程到這個(gè)寄存器的數(shù)值是C/A編碼標(biāo)稱(chēng)碼率(2. 046MHz或者I. 022MHz)的兩倍,如果需要,再加上多普勒位移和用戶(hù)時(shí)鐘頻率的小量補(bǔ)償; 解除追蹤信道的重置借助對(duì)RESET_C0NTR0L寄存器編程寫(xiě)入合適的數(shù)值。這個(gè)操作會(huì)啟動(dòng)相關(guān)進(jìn)程; 獲取累加數(shù)據(jù)數(shù)據(jù)來(lái)自對(duì)累加數(shù)據(jù)寄存器的讀取,對(duì)同一追蹤信道的幾次連續(xù)的讀取可以相加以增加相關(guān)積分的周期; 確定GNSS信號(hào)是否已經(jīng)被找到是通過(guò)把相關(guān)積分結(jié)果和一個(gè)閾值相比較,如果確定信號(hào)找到那就跳轉(zhuǎn)到信號(hào)拉進(jìn)算法。要注意的是同相的信號(hào)和垂直相的信號(hào)的累加數(shù)據(jù)都要被考慮,因?yàn)樵谶@個(gè)時(shí)候本地載波數(shù)字控制振蕩器還不一定和輸入GNSS信號(hào)同相; 如果GNSS信號(hào)沒(méi)有被找到就需要重新編程以改變載波數(shù)字控制振蕩器,編碼數(shù)字控制振蕩器頻率或者黃金代碼來(lái)重新嘗試。典型的做法是先保持兩個(gè)數(shù)字控制振蕩器的頻率不變,撥動(dòng)黃金碼的相位直到2046或者1022個(gè)可能的位置都被覆蓋到,如果信號(hào)沒(méi)找到,那就少量地改變載波數(shù)字控制振蕩器的頻率然后再對(duì)黃金碼的相位進(jìn)行掃描,黃金碼相位的撥動(dòng)是通過(guò)對(duì)CHx_C0DE_SLEW寄存器的編程實(shí)現(xiàn)的; 一旦GNSS信號(hào)被找到編碼相位對(duì)齊,載波相位對(duì)齊以及多普勒和用戶(hù)始終偏差補(bǔ)償都還很粗糙,編碼相位對(duì)齊精度之能在半個(gè)碼位,載波數(shù)字控制振蕩器信號(hào)和輸入信號(hào)并不同相,而頻率的誤差也可以達(dá)到連續(xù)嘗試時(shí)的步進(jìn)值。
2.如權(quán)利要求I所述的GPS和GLONASS多信道并行信號(hào)追蹤方法,其特征是所述方法還包括信號(hào)追蹤(SIGNAL TRACKING)、數(shù)據(jù)解調(diào)(DATA DEMODULATION)、偽距測(cè)量(PSEUDORANGEMEASUREMENT)、控制相關(guān)器、搜索操作(SEARCH OPERATION)、載波數(shù)字控制振蕩器編程、編碼數(shù)字控制振蕩器編程、編碼發(fā)生器編程、讀取累加數(shù)據(jù)、搜索其他編碼相位、數(shù)據(jù)位同步、讀取測(cè)量數(shù)據(jù)、預(yù)置模式(PRESET MODE)、中斷(INTERRUPTS)、硬件信號(hào)處理引入的信號(hào)通道延時(shí)、積分載波相位測(cè)量、生成時(shí)間記號(hào)(TMARK)、世界協(xié)調(diào)時(shí)(UTC)誤差預(yù)算、寄存器。
3.如權(quán)利要求2所述的GPS和GLONASS多信道并行信號(hào)追蹤方法,其特征是所述寄存器包括控制寄存器(CONTROL REGISTERS),用來(lái)編制器件的功能;狀態(tài)寄存器(STATUSREGISTERS),用來(lái)只是器件內(nèi)的進(jìn)程的狀態(tài);累加器數(shù)據(jù)寄存器(ACCUMULATEDDATAREGISTERS),每毫秒提供一次C/A編碼的累加結(jié)果,這是捕獲和追蹤衛(wèi)星信號(hào)的原始數(shù)據(jù);測(cè)量數(shù)據(jù)寄存器(MEASUREMENT DATA REGISTERS),鎖存載波數(shù)字控制振蕩器相位,載波周期計(jì)數(shù),編碼數(shù)字控制振蕩器相位,一毫秒內(nèi)的歷元數(shù),還有每9. 09或者100毫秒間隔的以20-毫秒為單位的歷元數(shù),這是用于計(jì)算偽距的原始數(shù)據(jù)。
4.實(shí)現(xiàn)權(quán)利要求I的GPS和GLONASS多信道相關(guān)器,其特征是包括多信道相關(guān)器,該多信道相關(guān)器包括時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器、地址解碼器、總線(xiàn)界面、多個(gè)追蹤模塊,其中多個(gè)追蹤模塊經(jīng)總線(xiàn)并聯(lián),并聯(lián)后的多個(gè)追蹤模塊分別連接時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器,并經(jīng)總線(xiàn)界面連接地址解碼器。
5.如權(quán)利要求4所述的GPS和GLONASS多信道相關(guān)器,其特征是所述追蹤模塊包括載波數(shù)字控制振蕩器、編碼數(shù)字控制振蕩器、載波循環(huán)計(jì)數(shù)器、C/A編碼發(fā)生器、信號(hào)源選擇器、載波混合器、編碼混合器、累加和丟棄、編碼相位計(jì)數(shù)器、編碼撥動(dòng)計(jì)數(shù)器、歷元計(jì)數(shù)器;
6.如權(quán)利要求4所述的GPS和GLONASS多信道相關(guān)器,其特征是所述寄存器包括控制寄存器、狀態(tài)寄存器、累加器數(shù)據(jù)寄存器、測(cè)量數(shù)據(jù)寄存器。
全文摘要
一種GPS和GLONASS多信道并行信號(hào)追蹤方法及相關(guān)器,包括多信道相關(guān)器,該多信道相關(guān)器包括時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器、地址解碼器、總線(xiàn)界面、多個(gè)追蹤模塊,其中多個(gè)追蹤模塊經(jīng)總線(xiàn)并聯(lián),并聯(lián)后的多個(gè)追蹤模塊分別連接時(shí)鐘發(fā)生器、時(shí)間基發(fā)生器、寄存器,并經(jīng)總線(xiàn)界面連接地址解碼器。
文檔編號(hào)G01S19/30GK102788983SQ201010188188
公開(kāi)日2012年11月21日 申請(qǐng)日期2010年5月31日 優(yōu)先權(quán)日2010年5月31日
發(fā)明者莊巍, 王星, 王澤復(fù), 謝德明, 陳躍斌 申請(qǐng)人:北京聯(lián)星科通微電子技術(shù)有限公司