软件接收机的GPS信号实时采集方案设计

分享到:
点击量: 214921

    要在通道13上实现乒乓缓存,需要使用位于0x01A00600和OxOlA00618的2个可重新加载RAM参数块A、B,以及位于外部SDRAMOx80000000~0x80000FBF和0x80001000~0x80001FBF的2个缓冲区BUFl和BUF2。设定ADST=0x80000000指向BUFl,RLD=0x00000618指向RAM参数块B,BDST=0x80001000指向BUF2,RLD=0x00000600指向RAM参数块B,同时置位每个RAM块中OPT中的LINK控制位。这样,当ARAM块*后一个单元传输结束时,会自动加载RLD指向的BRAM块参数。当下次触发事件到来时,EDMA就将数据搬移到Ox80001000指向的BUF2;相反BRAM块*后一个单元传输结束时,会自动加载RLD指向的ARAM块参数将后续数据搬移到BUFl,实现乒乓缓存。此外,RAM参数块A和B的OPT设置为Ox00020002,使通道13工作在*高优先级的固定地址到递增地址的32位一维元素同步链接模式。SRC设置为McBSP0DRR地址0x018C0000,CNT设置为Ox000003FO进行1008个字的单帧传输,IDX不影响一维元素的同步传输,设置为Ox00000000。

    为了保持McBSP和EDMA操作的同步性,所有ED-MA通道共享的EDMA-INT在使能通道13前,通过MXL[25:21]映射到可屏蔽中断INT_8,并置位ICRBit8**所有挂起中断,置位IERBitl、Bit8使能NMI和INT_8,*后置位全局中断使能GIE。使能通道13时,需先置位EDMA事件**寄存器ECRL和中断挂起寄存器CIPRLBitl3,以**先前发生的McBSP0REVT事件和挂起的中断信号;然后依次置位EDMA中断使能寄存器CIERL和通道使能寄存器EERLbitl3,使能通道13和相应的中断。

    4采集过程分析

    采用基于McBSP、EDMA、SDRAM构成的GPS信号采集方案,主要分为接口配置和信号采集两个阶段。接口配置阶段依次完成EMIFA、EMDA、中断和McBSP0配置,使其工作在一定工作模式下,*后通过置位McBSP接口控制寄存器中的RRST启动采集过程。信号采集过程基于硬件实现,完全与CPU并发,在ms数据接收完成后与CPU通过中断INT_8同步数据。具体采集过程如图4所示。

    McBSP32.258MHz接收时钟连续32个下降沿接收一个32位字,产生一个REVT事件,对应16.129MHz射频采样时钟16次下降沿采样。REVT事件驱动EDMA完成一次DRR32位接收数据到SDRAM缓冲区搬移,并将CNT减1,缓冲区地址加4指向下一个缓冲单元。假设EDMA当前执行RAM参数A传输,那么32.258MHz接收时钟1ms内共32258个下降沿,可接收1008个32位接收数据,产生1008次REV事件;对应16.129MHz采样时钟16128次下降沿采样,共驱动EDMA1008次32位搬移,占用BUFlOx80000000~0x80000FBF4032字节空间,CNT减少到O。一旦CNT减小为O,EDMA就触发INT_8,通知CPUms数据采集完毕;同时,根据RLD的设定,加载位于0x01A00618的参数RAMB到通道13的自身参数RAM。当下次REVT事件到来时,EDMA就执行RAM参数B传输,在Ox80001000~Ox80001FBFBUF2缓冲,此时CPU可处理BUFl中的采集数据。当CNT再次减小到0时,EDMA再次触发INT_8,通知CPUms数据采集完毕;同时,根据RLD的设定加载位于0x01A00600的参数RAMA到通道13,实现乒乓缓冲。需要注意的是,McBSPRFIG=1工作在帧忽略模式,在**个CLKF下降沿完成同步后一直忽略后续同步信号,直到32位帧结束才能实现下一帧同步。

    结语

    本文提出的基于NJl006AK和TSM320C6416的GPS实时信号采集方案,充分利用了DSP内部外设,具有电路简单可靠、配置方法灵活和CPU同步并发的特点。该方案很好地解决了软件GPS接收机中数据采集实时性和基带处理实时性冲突的问题,实现了GPS信号的实时、连续采集,对提升软件GPS接收机实时性能具有重要意义。