<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于獨立DSP平臺的實(shí)時(shí)衛星導航接收機的設計

基于獨立DSP平臺的實(shí)時(shí)衛星導航接收機的設計

作者: 時(shí)間:2010-01-14 來(lái)源:網(wǎng)絡(luò ) 收藏

2 系統軟件結構
2.1多星座軟件
  在多星座軟件中,對于來(lái)自多個(gè)不同星座的中頻數據的一部分軟件處理模塊可能是相同的。例如,對于GPS和Galileo接收機可以采用共同的定位模塊。與單星座的軟件接收機相比,多星座的軟件接收機可能會(huì )有多個(gè)EDMA/McBSP的中斷處理程序和信號跟蹤處理模塊。因此,在針對多星座接收機的軟件中,對這些模塊的處理需要額外進(jìn)行。軟件接收機的結果輸出如圖4所示。

本文引用地址:http://dyxdggzs.com/article/152134.htm

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

2.3 接收機任務(wù)調度設計
  軟件接收機程序是在CCS3.1開(kāi)發(fā)環(huán)境下用C語(yǔ)言開(kāi)發(fā)移植完成的。由于DSP資源有限,為了滿(mǎn)足性,TI公司的DSP/BIOS操作系統將應用程序按線(xiàn)程結構化設計,每個(gè)線(xiàn)程完成1個(gè)模塊化的功能,并允許高優(yōu)先級線(xiàn)程搶占低優(yōu)先級線(xiàn)程以及線(xiàn)程間的同步和通信[5]。把接收機的跟蹤、捕獲、定位等功能模塊設置成相互的線(xiàn)程,線(xiàn)程之間的切換通過(guò)硬件中斷或軟件中斷來(lái)實(shí)現,并根據性要求為各個(gè)線(xiàn)程分配優(yōu)先級,其中跟蹤優(yōu)先級最高,捕獲優(yōu)先級最低,定位線(xiàn)程通過(guò)周期(PRD)函數來(lái)實(shí)現,優(yōu)先級介于跟蹤和捕獲之間。軟件接收機各個(gè)線(xiàn)程的功能以及它們之間的關(guān)系如下:
  (1) 數據采集硬件中斷
  EDMA觸發(fā)的硬件中斷具有最高優(yōu)先級。該中斷由McBSP端口產(chǎn)生,并通過(guò)EDMA中斷觸發(fā),每20 ms中斷1次。中斷響應程序中主要完成乒乓緩沖區的切換和數據拷貝工作。中斷處理完成后,會(huì )立刻觸發(fā)跟蹤軟中斷,以保證及時(shí)完成信號的跟蹤。
  (2) 信號處理軟中斷
  跟蹤線(xiàn)程軟中斷處理程序如果發(fā)現有需要跟蹤的導航,則對緩沖區中的數據進(jìn)行跟蹤運算。跟蹤線(xiàn)程結束后,會(huì )根據當前DSP處理器占用情況分時(shí)隙調用捕獲軟中斷。跟蹤線(xiàn)程具有最高的軟中斷優(yōu)先級。該中斷執行時(shí)間與同時(shí)跟蹤的衛星數量有關(guān)。
  捕獲線(xiàn)程中斷處理程序可被所有其他線(xiàn)程搶占,當所有高優(yōu)先級的線(xiàn)程執行完畢后,捕獲才能繼續執行。捕獲線(xiàn)程對緩沖區數據進(jìn)行捕獲處理,將已捕獲的衛星信息告知系統,以在下一次硬件中斷后對其進(jìn)行跟蹤,在DSP的平均執行時(shí)間為50 ms。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>