《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于獨立DSP平臺的實時衛星導航接收機的設計
基于獨立DSP平臺的實時衛星導航接收機的設計
金 天, 師 林, 李曉白
北京航空航天大學 電子信息工程學院, 北京100191
摘要: 以TI公司的TMS320C6416芯片為例,設計實現了基于獨立DSP芯片的通用衛星導航接收機平臺,說明了如何通過單獨的DSP平臺實現中頻衛星信號的采集、程序和數據的存儲、線程調度等功能,以及如何支持多星座衛星導航接收機擴展。實驗結果表明,根據本方案實現的平臺能夠很好地實現實時衛星導航軟件接收機的功能。
Abstract:
Key words :

摘  要: 以TI公司的TMS320C6416芯片為例,設計實現了基于獨立DSP芯片的通用衛星導航接收機平臺,說明了如何通過單獨的DSP平臺實現中頻衛星信號的采集、程序和數據的存儲、線程調度等功能,以及如何支持多星座衛星導航接收機擴展。實驗結果表明,根據本方案實現的平臺能夠很好地實現實時衛星導航軟件接收機的功能。
關鍵詞: DSP; 衛星導航; 軟件接收機; 多星座

  目前,衛星定位系統的應用越來越廣泛,中國、歐盟和日本等國都在積極發展自己獨立的衛星定位系統。自1980年第一臺商品GPS信號接收機問世以來,GPS信號接收機不斷更新換代,目前的衛星導航接收機主要由專用集成芯片(ASIC)搭建而成,擁有集成度高、速度快的優點。但隨著衛星導航系統現代化的開展,在軌飛行的導航衛星日漸增多,衛星導航應用趨于多樣化,固定的硬件結構難以完成快速系統更新,暴露出硬件接收靈活度低、升級昂貴的弱點。而軟件接收機通常是通過下變頻芯片將衛星導航信號降到較低的中頻,然后通過模數轉換器對信號進行數字化,接收機的捕獲、跟蹤、定位等功能則由軟件在通用的信號處理平臺上實現,易于在現有系統的基礎上進行性能升級和功能擴展。
  從目前研究現狀來看,軟件接收機的實現大多基于PC機或FPGA/DSP組合平臺[1]。而FPGA平臺雖然是一個可編程的平臺,但其靈活性和擴展性與純軟件相比仍然有所欠缺,而DSP通常在此平臺中僅實現定位解算功能。因此,實現基于獨立DSP平臺的通用衛星導航接收機是一項十分有意義的工作,可以極大程度地擴展軟件接收機的靈活性。本文主要探討基于獨立DSP的軟件接收機平臺結構設計,討論如何在現有DSP平臺上提供多星座衛星導航軟件接收機支持,同時分析系統自舉引導功能的實現和基于DSP/BIOS操作系統的軟件接收機任務調度管理。
1 接收機平臺結構設計
  GNSS軟件接收機平臺采用模塊化設計,可以分為中頻數據采集模塊、數據存儲模塊、結果輸出模塊和電源及復位模塊。本文所設計的衛星導航接收機硬件系統原理框圖如圖1所示。

  基本的工作原理:由射頻前端GP2015對天線接收的信號進行下變頻,輸出模擬中頻信號,ADC對中頻信號進行采樣和量化,然后傳輸到TMS320C6416 DSP進行相關的運算處理,完成衛星信號的捕獲、跟蹤和定位解算等功能,最后將解算的結果通過輸出模塊傳送到顯示終端顯示定位結果及相關信息。
1.1 TMS320C6416簡介
  TMS320C6416是TI公司推出的高性能定點DSP[2],其時鐘頻率可達1 GHz,最高處理能力為8 000 MIPS,軟件與C62X完全兼容,采用先進的甚長指令結構(VLIW)的DSP內核有6個ALU(32/40 bit),每個時鐘周期可以執行8條指令,所有指令都可以條件執行。該DSP采用二級緩存結構,一級緩存(L1)由128 Kbit的程序緩存和128 Kbit的數據緩存組成,二級緩存(L2)為8 Mbit,有2個擴展存儲器接口(EMIF),1個為64 bit(EMIFA),1個為16 bit(EMIFB),可以提供64條獨立的DMA通道[3]。
  本系統使用50 MHz有源晶振作為DSP的外部輸入時鐘,內部鎖相環使用×20模式(CLKMODE1=1,CLKMODE0=0),系統的主頻為1 GHz。
1.2 多星座數據采集模塊
  為了使軟件接收機能夠支持多衛星導航星座的中頻數據采集與處理功能,本系統同時提供了模擬中頻采集接口和數字中頻采集接口,2個接口可以同時使用,也可以任選其一,從而使系統具備較高的軟件可擴展性。多星座中頻數據采集模塊的原理框圖如圖2所示。

  在本系統的設計中,采用ADI公司的高速A/D轉換器AD9283實現模擬中頻信號到數字中頻信號的轉化。由于接收到的衛星導航信號能量比噪聲信號能量低約為20 dB,因此量化位數的高低對檢測衛星導航信號的影響是有限的,若采用高位數量化會增加數據運算量和系統的復雜度,通常的商用接收機大多采用1 bit或2 bit量化。本設計中量化位數為1 bit和2 bit可選配置。經過ADC數字化的中頻信號送到DSP的McBSP0和McBSP2端口,并隨后觸發EDMA事件,完成數據拷貝和緩存[4]。與此同時,采樣時鐘作為McBSP口的外部時鐘同步輸入信號,將8 bit同步減法計數器74HC40103D設計成32進制計數器對采樣時鐘進行分頻來產生幀同步信號,實現串并數據轉換。為避免因負載過多時鐘驅動能力不足,采用了可配置時鐘驅動芯片CY2308作為時鐘驅動。圖3所示為多星座數據采集的硬件連接原理圖。

  為避免數據丟失,采用乒乓緩存的方法緩沖采集到的數據流,在DSP的片上內存為每個McBSP通道開設乒緩沖區和乓緩沖區。以12 MHz、1 bit采樣為例,在片上內存開辟2個30 KB的數據緩沖區,即每個緩沖區能夠存放20 ms的數據。系統運行后,EDMA控制器先將McBSP0采集到的數據寫入乒緩沖區,20 ms后乒緩沖區滿,EDMA控制器向CPU發出中斷請求,對緩沖區數據進行運算處理。同時,EDMA向乓緩沖區寫數據,這樣通過不斷的乒乓切換完成數據的緩沖存儲。
1.3 查找表數據存儲管理
  在捕獲、跟蹤中需要用到大量查找表,為了降低接收機的啟動時間,直接把這些數據表格作為固件燒入到Flash中,而不用每次都由DSP通過程序重新生成。所有查找表需要約15 MB的空間,為了降低存儲空間,使用LZW無損壓縮算法進行壓縮至約2 MB。系統初始化時,DSP先讀取Flash中的數據表格,然后執行解壓程序對其解壓,并存于片外的SDRAM中提供給接收機做運算時調用。
  本設計中使用了2片4 MB×32位的SDRAM芯片MT48LC4M32并聯連接到DSP的EMIFA口,把程序運行過程中對實時性要求較低的數據段和查找表分配到SDRAM中。總線運行在166 MHz的高速狀態,由專用的可配置的時鐘芯片ICS525對50 MHz的時鐘倍頻產生。
1.4 定位結果輸出模塊
  衛星導航接收機需要周期性地輸出定位結果以及其他相關信息,通常輸出速率為1 Hz~5 Hz,DSP的串行接口McBSP即可滿足要求。為了能夠將結果在顯示設備上顯示,數據的輸出需要兼容NMEA0183協議,因此需要將McBSP口擴展成符合RS-232標準的異步串行接口。
  將DSP的McBSP端口的工作模式設為SPI模式作為主設備,直接與MAX3111進行連接,DSP通過執行相關的指令,設置MAX3111的相關控制字,完成波特率、數據位、奇偶校驗等的設定,然后向MAX3111輸出有效信息,利用其片內的轉換器實現UART到RS-232格式及電平的轉換,從而實現DSP與RS-232設備進行異步數據傳輸。
2 系統軟件結構設計
2.1多星座接收機軟件設計
  在多星座軟件接收機中,對于來自多個不同星座的中頻數據的一部分軟件處理模塊可能是相同的。例如,對于GPS導航接收機和Galileo導航接收機可以采用共同的定位模塊。與單星座的軟件接收機相比,多星座的軟件接收機可能會有多個EDMA/McBSP的中斷處理程序和信號跟蹤處理模塊。因此,在針對多星座接收機的軟件設計中,對這些模塊的處理需要額外進行。軟件接收機的結果輸出如圖4所示。

2.2 自舉引導功能的實現
  為了保證接收機能夠脫離主機獨立工作,本設計采用ROM自舉加載模式,接收機程序作為固件存儲在外部的非易失存儲器Flash中,DSP復位后,先把外部存儲的程序加載到片上高速內存中,然后順序執行片上RAM中的程序。由于C64x只自動復制1 KB到片上內存,而接收機的程序遠遠大于這個數量,所以需要采用二級程序加載的方法。二級程序加載按照如下方式進行:
  編寫二次引導程序代碼,然后燒寫到Flash中。系統復位后,DSP將通過EDMA控制器按照默認的時序自動二次引導代碼加載到片上內存的首地址中,傳輸完成后CPU從首地址開始執行這段二次引導程序。二次引導代碼首先配置EMIFB的相關寄存器,使其工作在16 bit總線時序下,然后將衛星導航接收機相關程序加載到CPU的片上指定空間。當二次引導程序執行完畢后自動跳轉到主程序的入口處,開始執行軟件接收機的相關程序。
  值得注意的是本設計中Flash采用16 bit數據線,所以EMIFB的地址線的最低位BEA1沒有連接到Flash芯片地址線的最低位A-1,而C64x在ROM加載模式下是使用默認時序8 bit加載,即在自加載情況下EMIFB不能訪問本設計中Flash的奇地址。為了保證自加載成功,需要對二次引導程序生成的二進制(.bin)文件進行修改,將有效數據存放在偶地址單元,在奇地址單元填充任意數據。圖5所示為16 bit Flash與DSP的連接及自舉示意圖。

2.3 接收機任務調度設計
  軟件接收機程序是在CCS3.1開發環境下用C語言開發移植完成的。由于DSP平臺資源有限,為了滿足實時性,TI公司的DSP/BIOS操作系統將應用程序按線程結構化設計,每個線程完成1個模塊化的功能,并允許高優先級線程搶占低優先級線程以及線程間的同步和通信[5]。把接收機的跟蹤、捕獲、定位等功能模塊設置成相互獨立的線程,線程之間的切換通過硬件中斷或軟件中斷來實現,并根據實時性要求為各個線程分配優先級,其中跟蹤優先級最高,捕獲優先級最低,定位線程通過周期(PRD)函數來實現,優先級介于跟蹤和捕獲之間。軟件接收機各個線程的功能以及它們之間的關系如下:
  (1) 數據采集硬件中斷
  EDMA觸發的硬件中斷具有最高優先級。該中斷由McBSP端口產生,并通過EDMA中斷觸發,每20 ms中斷1次。中斷響應程序中主要完成乒乓緩沖區的切換和數據拷貝工作。中斷處理完成后,會立刻觸發跟蹤軟中斷,以保證及時完成衛星信號的跟蹤。
  (2) 信號處理軟中斷
  跟蹤線程軟中斷處理程序如果發現有需要跟蹤的導航衛星,則對緩沖區中的數據進行跟蹤運算。跟蹤線程結束后,會根據當前DSP處理器占用情況分時隙調用捕獲軟中斷。跟蹤線程具有最高的軟中斷優先級。該中斷執行時間與同時跟蹤的衛星數量有關。
  捕獲線程中斷處理程序可被所有其他線程搶占,當所有高優先級的線程執行完畢后,捕獲才能繼續執行。捕獲線程對緩沖區數據進行捕獲處理,將已捕獲的衛星信息告知系統,以在下一次硬件中斷后對其進行跟蹤,在DSP平臺的平均執行時間為50 ms。
  (3) 定位線程周期中斷
  定位周期線程執行1次定位解算任務,并將定位結果寫入專門開辟的緩沖區中,隨后EDMA控制器會自動將結果通過McBSP1端口傳輸到顯示設備。該中斷的優先級高于捕獲線程,但低于跟蹤線程,在DSP平臺的平均執行時間為3 ms。
  圖6所示為軟件接收機各線程之間的調度流程框圖。

3 實驗結果
  在實驗中,將接收機平臺設置為12 MHz,1 bit采樣,通過射頻前端與GPS天線相連,實時接收GPS衛星信號,利用RTDX技術通過JTAG口將結果傳輸到主機進行顯示。根據對各線程運算量的分析和實驗驗證可知,基于獨立DSP的衛星導航接收機平臺可以很好地完成6~10顆衛星的實時跟蹤,并能準確定位。圖7所示為對應的電子地圖結果。除此之外,本文所提到的多星座軟件接收機也開展了仿真試驗測試,目前能夠對每個星座系統實現4~5顆衛星的實時跟蹤,其性能仍需進一步提高。

  本文詳細介紹了基于單顆高速定點DSP的實時衛星導航軟件接收機平臺的設計實現。提供了詳細的硬件平臺結構設計方案,闡述了系統上電自加載功能的實現方法以及接收機軟件任務調度流程。根據本方案實現的衛星導航軟件接收機具有低成本、低功耗、通用性好、功能可升級擴展等優點。
參考文獻
[1] 李方慧,王飛,何佩錕. TMS320C6000系列DSPs原理與應用[M](第二版).北京:電子工業出版社,2003.
[2] LEDVINA B M, POWELL S P, KINTNER P M, et al. A  12-channel real-timer GPS L1 software receiver[C]. ION GPS 2003. Portland, OR, 2003. 679-688.
[3] Texas Instruments. TMS320C6414T/15T/16T fixed-point digital signal processors[EB/OL].Dallas,Texas: SPRS226J, Texas Instruments, http:// www.ti.com. 2006.
[4] Texas Instruments.TMS320C6000 DSP enhanced direct  memory access(EDMA)controller reference guide[J].Dallas, Texas: SPRU234, Texas Instruments,2003.
[5] Texas Instruments. DSP/BIOS user′s guide[J]. Dallas, Texas: SPRU423D, Texas Instruments, 2004.
 
 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美日韩天堂一区二区| 一个色综合导航| 亚洲精品视频在线观看网站| 黄色成人av网| 国产午夜精品麻豆| 国产精品久久久久久超碰| 欧美日韩天天操| 欧美精品观看| 欧美黄色aa电影| 免费亚洲一区二区| 免费在线观看日韩欧美| 老司机午夜精品视频在线观看| 久久久99精品免费观看不卡| 欧美中文在线视频| 久久电影一区| 久久久在线视频| 久久久久国色av免费看影院| 欧美在线一级va免费观看| 欧美在线不卡| 久久精品国产清高在天天线| 欧美一区二区三区喷汁尤物| 欧美一级日韩一级| 久久国产精品免费一区| 久久精品国产亚洲高清剧情介绍| 久久国产天堂福利天堂| 久久精品30| 久久久99精品免费观看不卡| 噜噜噜噜噜久久久久久91| 蜜臀91精品一区二区三区| 欧美成人亚洲成人| 欧美精品一区视频| 欧美日韩一区在线视频| 国产精品捆绑调教| 国产人久久人人人人爽| 国产一区二区三区自拍| 在线不卡亚洲| 亚洲精品国产欧美| 中文精品一区二区三区| 亚洲欧美视频在线观看| 欧美一区二区三区视频免费播放 | av成人免费观看| 亚洲免费影院| 久久久97精品| 欧美美女福利视频| 国产精品一区二区欧美| 激情文学一区| 亚洲美女av在线播放| 亚洲一区二区三区中文字幕在线| 欧美在线一级视频| 亚洲美女精品一区| 午夜国产欧美理论在线播放| 久久久一二三| 欧美日韩国产三区| 国产伦精品一区二区三区| 在线观看欧美成人| 中国女人久久久| 亚洲第一精品久久忘忧草社区| 9人人澡人人爽人人精品| 久久er精品视频| 欧美猛交免费看| 国产午夜精品一区二区三区视频| 亚洲国产专区| 亚洲免费婷婷| 99精品国产热久久91蜜凸| 久久国产精品久久久久久久久久| 欧美激情在线狂野欧美精品| 国产性猛交xxxx免费看久久| 日韩视频免费大全中文字幕| 欧美一区二区三区免费观看| 一本大道久久a久久精品综合| 欧美一区二区视频在线| 欧美激情一区二区三区在线| 国产亚洲欧美另类中文| 一二三区精品| 亚洲精品国产拍免费91在线| 香蕉成人久久| 欧美精品一区二区三区视频| 国模私拍视频一区| 中日韩高清电影网| 亚洲精品小视频| 久久久另类综合| 国产精品久久久一本精品| 亚洲成人在线| 欧美制服丝袜| 亚洲欧美制服另类日韩| 欧美大片在线观看一区| 国产一区二区三区av电影| 一区二区三区久久| 99成人免费视频| 六月婷婷久久| 国产一区二区成人久久免费影院| 一本久久综合亚洲鲁鲁| 亚洲精美视频| 理论片一区二区在线| 国产欧美大片| 亚洲性夜色噜噜噜7777| 中文久久乱码一区二区| 欧美xxx在线观看| 激情婷婷亚洲| 欧美伊久线香蕉线新在线| 亚洲欧美高清| 欧美视频日韩| 亚洲精品一区二区网址| 亚洲欧洲精品一区二区三区波多野1战4 | 亚洲国产99精品国自产| 久久激情视频| 国产日韩欧美| 性久久久久久久久| 欧美一级精品大片| 国产精品日韩精品| 亚洲无玛一区| 亚洲一区久久久| 欧美午夜在线一二页| 日韩一级免费观看| 一区二区电影免费观看| 欧美日韩免费一区二区三区视频| 亚洲精品视频啊美女在线直播| 亚洲精品美女在线观看| 欧美国产第二页| 亚洲国产美女| 日韩亚洲精品电影| 欧美日韩成人在线| 亚洲精品午夜| 亚洲一区日本| 国产精品视频大全| 亚洲欧美日韩一区在线| 久久精品国产清高在天天线| 国内精品国产成人| 欧美资源在线| 久久综合国产精品台湾中文娱乐网| 国模私拍视频一区| 亚洲国产高清在线观看视频| 欧美国产日本高清在线| 亚洲美女福利视频网站| 亚洲专区一二三| 国产精品永久免费在线| 欧美在线免费观看| 欧美88av| 日韩图片一区| 亚洲欧美视频在线观看视频| 国产欧美视频一区二区三区| 欧美一区二区日韩| 久久综合色婷婷| 亚洲精品乱码久久久久久久久| 亚洲视频日本| 国产欧美精品在线播放| 久久爱www久久做| 欧美激情第五页| 在线一区二区日韩| 欧美主播一区二区三区美女 久久精品人| 国产一区久久| 亚洲精品一区在线| 国产精品高潮久久| 欧美一区三区三区高中清蜜桃 | 亚洲大胆美女视频| 中文网丁香综合网| 国产婷婷一区二区| 亚洲精品日韩在线| 国产精品扒开腿爽爽爽视频| 小辣椒精品导航| 欧美大片免费观看在线观看网站推荐| 亚洲免费精品| 久久精品久久综合| 亚洲激情欧美| 午夜在线精品| 亚洲国产婷婷| 香蕉久久夜色精品| 尤物yw午夜国产精品视频明星| 一区二区三区久久网| 国产日韩欧美综合精品| 日韩视频欧美视频| 国产精品久久午夜夜伦鲁鲁| 亚洲电影观看| 欧美体内谢she精2性欧美| 久久av二区| 国产精品xxxav免费视频| 久久精品视频在线看| 欧美性猛交99久久久久99按摩| 欧美中文字幕视频在线观看| 欧美日韩视频在线观看一区二区三区 | 欧美日韩精品免费观看视一区二区| 亚洲在线观看视频网站| 欧美成人精品在线| 亚洲欧美中文日韩在线| 欧美剧在线免费观看网站| 欧美一区二区三区免费视| 欧美日韩一级黄| 亚洲国产日韩美| 国产精品一区二区在线观看| 99精品国产在热久久| 国模私拍一区二区三区| 亚洲欧美日韩在线| 91久久精品一区二区别| 久久精品综合| 亚洲天堂av在线免费观看| 欧美黑人国产人伦爽爽爽| 欧美在线观看日本一区| 国产精品日韩一区| 中文一区字幕| 亚洲国产成人tv|