GPS軟件接收機(jī)信號(hào)實(shí)時(shí)接收與傳輸技術(shù)
MCBSP通過(guò)7個(gè)引腳(DX、DR、CLKX、CLKR、FSX、FSR和CLKS)與外設(shè)接口。在接收GPS信號(hào)的時(shí)候,DR引腳上接收到的數(shù)據(jù)首先進(jìn)入接收轉(zhuǎn)移寄存器(RSR),然后被復(fù)制到接收緩沖寄存器(RBR),RBR再將數(shù)據(jù)復(fù)制到數(shù)據(jù)接收寄存器(DRR)中,等待EDMA控制器讀取。GPS軟件接收機(jī)不需要向前端發(fā)送數(shù)據(jù),所以發(fā)送功能不作介紹。信號(hào)傳輸的操作由串行口控制寄存器SPCR和引腳控制寄存器PCR來(lái)決定。接收控制寄存器RCR設(shè)置接收的各種參數(shù),如幀長(zhǎng)度等。
信號(hào)在MCBSP中傳輸時(shí)需要提供同步時(shí)鐘以及幀同步信號(hào),它們既可以由內(nèi)部采樣速率產(chǎn)生器。產(chǎn)生,也可以由外部脈沖源驅(qū)動(dòng)。在本文介紹的方案中,射頻前端的SIGN和MAG信號(hào)的時(shí)鐘CLK由FPGA提供。GP2015的LVDS接口產(chǎn)生差分信號(hào),與同樣具有LVDS接口的ALT。ERA公司的FPGA芯片EPlC3T144C8N接口,由FPGA通過(guò)對(duì)輸入的40 MHz的差分信號(hào)進(jìn)行7分頻,得到5.714 MHz的時(shí)鐘并提供給GP2015及DSP分別用作中頻采樣時(shí)鐘信號(hào)和MCBSP的外部時(shí)鐘信號(hào)。同時(shí)再對(duì)5.714 MHz信號(hào)進(jìn)行一次32分頻,提供給DSP處理器的McBSP0、MCBSP1用作幀同步信號(hào)。系統(tǒng)接口的示意圖和相關(guān)信號(hào)的時(shí)序圖如圖2、圖3所示。本文引用地址:http://butianyuan.cn/article/158022.htm
2.2 EDMA設(shè)置
TMS320C6713的EDMA控制器提供16個(gè)增強(qiáng)通道,各通道之間彼此獨(dú)立。在沒(méi)有CPU參與的情況下,EDMA控制器可以在后臺(tái)完成片內(nèi)存儲(chǔ)器和外設(shè)之間的數(shù)據(jù)搬移。它由以下幾部分組成:事件和中斷處理寄存器、事件編碼器、參數(shù)RAM、地址硬件發(fā)生器。其中事件寄存器完成對(duì)EDMA事件的捕獲控制,事件產(chǎn)生同步信號(hào)觸發(fā)EDMA通道開始數(shù)據(jù)傳輸;EDMA的參數(shù)RAM存放有與事件相關(guān)的傳輸參數(shù);地址硬件發(fā)生器產(chǎn)生EMIF與外設(shè)之間讀/寫操作所需的地址信號(hào)。EDMA的16個(gè)通道共享1個(gè)中斷信號(hào)EDMA_INT,當(dāng)EDMA完成1次傳輸任務(wù),可觸發(fā)EDMA中斷。TMS320C6713的EDMA的參數(shù)RAM包括6個(gè)字,其結(jié)構(gòu)如圖4所示。在OPT中,用戶可以通過(guò)對(duì)各個(gè)位置“0”或“1”來(lái)設(shè)置事件優(yōu)先級(jí)別、數(shù)據(jù)單元大小、源地址/目的地址變更模式、傳輸結(jié)束代碼、是否使能鏈接(1inking)功能、同步傳輸方式等。
3 乒乓緩存實(shí)時(shí)傳輸
3.1 傳輸分析
GPS軟件接收機(jī)通過(guò)MCBSP端口接收信號(hào),將衛(wèi)星數(shù)據(jù)保存在指定映射的存儲(chǔ)器中,隨后EDMA通道搬運(yùn)數(shù)據(jù)至片內(nèi)L2緩存以供CPU提取并處理。L2緩存有CPU一半的時(shí)鐘速度,CPU處理數(shù)據(jù)速度較塊。CPU數(shù)據(jù)處理必須與EDMA數(shù)據(jù)傳輸保持同步,也就是要保證在CPU訪問(wèn)之前EDMA把數(shù)據(jù)傳輸?shù)骄彌_區(qū)中。但是受片內(nèi)二級(jí)存儲(chǔ)器容量和數(shù)據(jù)實(shí)時(shí)性的限制,會(huì)面臨這樣一個(gè)問(wèn)題:后寫入緩沖區(qū)的數(shù)據(jù)可能會(huì)覆蓋先期寫入但尚未處理的數(shù)據(jù)。為此,需要在L2緩存開辟2對(duì)乒乓緩存(ping-pong buffer),分別接收GPS的SIGN和MAG信號(hào),并利用EDMA的多組參數(shù)鏈接功能,根據(jù)數(shù)據(jù)實(shí)時(shí)傳輸?shù)奶攸c(diǎn),對(duì)EDMA參數(shù)RAM進(jìn)行設(shè)置。
以接收SIGN信號(hào)為例,首先開辟1個(gè)EDMA通道1,它的觸發(fā)事件設(shè)為MCBSP0的傳輸。入口參數(shù)0PT設(shè)置為一維單幀傳輸,采用讀/寫同步方式,數(shù)據(jù)單元長(zhǎng)度為32位,源地址固定不變,目的地址按1個(gè)數(shù)據(jù)單元長(zhǎng)度遞增,并使能鏈接功能。SRC設(shè)為MCBSP中DRR2的映射地址,:DST設(shè)為ping―buffer的首地址,ELECNT設(shè)為緩沖區(qū)的大小,F(xiàn)RMCNT、FRMIDX、ELEIDX、ELERLD均設(shè)為0。隨后再開辟2路空閑的EDMA通道――通道2和通道3,它的設(shè)置和之前相同,只是在DST目的地址處分別指向pong―buffer和ping―buffer。隨后將EDMA通道1的鏈接地址link指向通道2,通道2的link地址指向通道3,通道3的鏈接地址指向通道2。MAG信號(hào)的EDMA鏈接功能和乒乓緩沖的配合設(shè)置相同,不再描述。乒乓緩存的相關(guān)設(shè)置如圖5所示。
評(píng)論