新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于獨(dú)立DSP平臺(tái)的實(shí)時(shí)衛(wèi)星導(dǎo)航接收機(jī)的設(shè)計(jì)

基于獨(dú)立DSP平臺(tái)的實(shí)時(shí)衛(wèi)星導(dǎo)航接收機(jī)的設(shè)計(jì)

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

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

本文引用地址:http://butianyuan.cn/article/152134.htm

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

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



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉