0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于TMS320C6713 DSP和GP2015芯片实现GPS卫星数据实时传输系统的设计

电子设计 来源:单片机与嵌入式系统应用 作者:王浩为,陈小惠 2021-05-05 17:27 次阅读

引言

近些年来,GPS全球定位系统在城市交通、导航、气象、土地测量测绘以及*现代化建设等各个领域都发挥了重要的作用。相较于传统的GPS接收机射频前端和信号处理部分由专用芯片来实现,软件接收机以FPGADSP硬件平台作为基础,将GPS信号量化成数字信号,通过可移植的软件算法来实现各种功能。

在GPS软件接收机中,经射频前端(RF)将高频卫星信号3级下变频至中频信号,再交由DSP进行基带算法和导航解算处理。接收机对信号接收和传输的连续性和实时性要求很高。TI公司C67系列的DSP具有丰富的外设,其中增强型直接存储器访问(EDMA)和多通道缓冲串口(MCBSP)是其无需CPU的参与就能够完成GPS卫星数据实时传输的重要环节。

1 信号接收及传输方案

本系统采用TMS320C6713 DSP作为系统的核心处理器。射频前端选用ZARLINK公司的GP2015芯片完成信号的相关滤波、下变频以及A/D采样。在GP2015和DSP之间采用1片FPGA芯片EPlC3T144C8N进行相关的逻辑控制,如图1所示。接收机天线接收端的卫星信号功率约为2.7×10-6w,信噪比较低,必须先经过由有源天线和射频滤波器组成的前置滤波器模块,对频率为1 575.42 MH2的L1波段信号进行滤波,去除噪声及其他干扰。射频前端芯片选用ZARLINK公司的GP2015,一款针对GPS接收机的主流芯片。芯片本身使用温补晶振,通过1.4 GHz的PLL环路,产生3路本地载波信号对天线接收的高频信号实现3级变频:1 575.42 MHz→175.42 MHz→35.42 MHz→4.309 MHz,最后对4.309 MHz的模拟信号用5.714MHz的采样频率进行A/D转换得到SIGN、MAG两路信号,其中心频率落在1.405 MHz上。DSP使用MCBSP接收2路信号,再通过EI)MA从MCBSP的接收寄存器中取得数据,转存至指定外部存储器,以供CPU调用处理。

2 DSP 硬件设备设置

2.1 MCBSP设置

TMS320C6713提供2个MCBSP端口,可以与工业标准的编/解码器、 AICS(模拟接口芯片)以及其他串行A/D、D/A接口实现全双工串行通信。MCBSP提供了双缓存的发送寄存器和三缓存的接收寄存器,允许连续的数据流传输。

MCBSP通过7个引脚(DX、DR、CLKX、CLKR、FSX、FSR和CLKS)与外设接口。在接收GPS信号的时候,DR引脚上接收到的数据首先进入接收转移寄存器(RSR),然后被复制到接收缓冲寄存器(RBR),RBR再将数据复制到数据接收寄存器(DRR)中,等待EDMA控制器读取。GPS软件接收机不需要向前端发送数据,所以发送功能不作介绍。信号传输的操作由串行口控制寄存器SPCR和引脚控制寄存器PCR来决定。接收控制寄存器RCR设置接收的各种参数,如帧长度等。

信号在MCBSP中传输时需要提供同步时钟以及帧同步信号,它们既可以由内部采样速率产生器。产生,也可以由外部脉冲源驱动。在本文介绍的方案中,射频前端的SIGN和MAG信号的时钟CLK由FPGA提供。GP2015的LVDS接口产生差分信号,与同样具有LVDS接口的ALT。ERA公司的FPGA芯片 EPlC3T144C8N接口,由FPGA通过对输入的40 MHz的差分信号进行7分频,得到5.714 MHz的时钟并提供给GP2015及DSP分别用作中频采样时钟信号和MCBSP的外部时钟信号。同时再对5.714 MHz信号进行一次32分频,提供给DSP处理器的McBSP0、MCBSP1用作帧同步信号。系统接口的示意图和相关信号的时序图如图2、图3所示。

2.2 EDMA设置

TMS320C6713的EDMA控制器提供16个增强通道,各通道之间彼此独立。在没有CPU参与的情况下,EDMA控制器可以在后台完成片内存储器和外设之间的数据搬移。它由以下几部分组成:事件和中断处理寄存器、事件编码器、参数 RAM、地址硬件发生器。其中事件寄存器完成对EDMA事件的捕获控制,事件产生同步信号触发EDMA通道开始数据传输;EDMA的参数RAM存放有与事件相关的传输参数;地址硬件发生器产生EMIF与外设之间读/写操作所需的地址信号。EDMA的16个通道共享1个中断信号EDMA_INT,当EDMA 完成1次传输任务,可触发EDMA中断。TMS320C6713的EDMA的参数RAM包括6个字,其结构如图4所示。在OPT中,用户可以通过对各个位置“0”或“1”来设置事件优先级别、数据单元大小、源地址/目的地址变更模式、传输结束代码、是否使能链接(1inking)功能、同步传输方式等。

3 乒乓缓存实时传输

3.1 传输分析

GPS软件接收机通过MCBSP端口接收信号,将卫星数据保存在指定映射的存储器中,随后EDMA通道搬运数据至片内L2缓存以供CPU提取并处理。L2缓存有CPU一半的时钟速度,CPU处理数据速度较块。CPU数据处理必须与EDMA数据传输保持同步,也就是要保证在CPU访问之前EDMA 把数据传输到缓冲区中。但是受片内二级存储器容量和数据实时性的限制,会面临这样一个问题:后写入缓冲区的数据可能会覆盖先期写入但尚未处理的数据。为此,需要在L2缓存开辟2对乒乓缓存(ping-pong buffer),分别接收GPS的SIGN和MAG信号,并利用EDMA的多组参数链接功能,根据数据实时传输的特点,对EDMA参数RAM进行设置。

以接收SIGN信号为例,首先开辟1个EDMA通道1,它的触发事件设为MCBSP0的传输。入口参数0PT设置为一维单帧传输,采用读/写同步方式,数据单元长度为32位,源地址固定不变,目的地址按1个数据单元长度递增,并使能链接功能。SRC设为MCBSP中DRR2的映射地址,:DST 设为ping—buffer的首地址,ELECNT设为缓冲区的大小,FRMCNT、FRMIDX、ELEIDX、ELERLD均设为0。随后再开辟2路空闲的EDMA通道——通道2和通道3,它的设置和之前相同,只是在DST目的地址处分别指向pong—buffer和ping—buffer。随后将 EDMA通道1的链接地址link指向通道2,通道2的link地址指向通道3,通道3的链接地址指向通道2。MAG信号的EDMA链接功能和乒乓缓冲的配合设置相同,不再描述。乒乓缓存的相关设置如图5所示。

3.2 程序设置

利用EDMA和MCBSP实时传输GPS信号的程序在CCS3.3环境下进行编写和调试,结果证明数据传输正确无误。以下程序简要说明了GPS 软件接收机的软件传输配置。

结语

本文在基于GP2015和TMS320C6713的基础上,提出了一种软件接收机的大致方案,并且利用MCBSP和EDMA实现了对 GPS卫星信号的实时接收和传输。文章重点介绍了DSP硬件设备的有关参数设置,以及乒乓缓存的使用方法,并给出部分程序以供参考。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18026

    浏览量

    221546
  • dsp
    dsp
    +关注

    关注

    544

    文章

    7661

    浏览量

    343899
  • gps
    gps
    +关注

    关注

    22

    文章

    2735

    浏览量

    164073
收藏 人收藏

    评论

    相关推荐

    [共享] 卡尔曼滤波算法在TI TMS320C6713 DSP上的实现

    [共享] 卡尔曼滤波算法在TI TMS320C6713 DSP上的实现
    发表于 08-20 23:23

    关于TI公司的TMS320C6713求问

    本人新手,正在做研究生论文,老师给了我块儿板儿让我自己琢磨,眼下的任务是研究出TMS320C6713的数模模数转换功能,我现在只知道AD,DA转换实在AIC23上进行的,却不知道具体怎么测量。问题比较新手,还望各路大神多多指点!m_ _m
    发表于 06-02 22:26

    TMS320C6713 AD DA转换

    我是一个DSP新手,刚从老师那儿得到个题目,关于板子TMS320C6713的。现阶段老师让我测试板子功能,让我先了解板子上数模模数转换的功能,我现在只知道这块板子的数模模数转换是由AIC23来完成
    发表于 06-02 23:39

    TMS320C6713程序怎么烧进Flash里面

    求助,TMS320C6713程序怎么烧进Flash里面
    发表于 03-16 20:54

    跪求TMS320C6713的资料

    跪求TMS320C6713的资料!!!谢谢大神
    发表于 12-08 14:39

    请问TMS320C6713如何处理大量数据

    最近在做一个项目,目前遇到的问题是需要TMS320C6713处理外部输入的大量数据,一次可能4-5万个数据,或者30-40万个数据,想到的问题是: 1.这么多
    发表于 07-25 07:03

    TMS320C6713 DSP芯片与pc机间的数据传输

    。而PC机则可通过PCI总线控制器直接访问TMS320C6713的存储空间和外围设备,从而实现PC机与TMS320C6713之间的高速数据传输。在T
    发表于 06-05 05:00

    如何使用一个TMS320C6713的EMIF口是否可以和多个tms320c6416的HPI口通信?

    使用一个TMS320C6713的EMIF口是否可以和多个tms320c6416的HPI口通信?
    发表于 05-27 15:38

    如何采用TMS320C6713 DSP芯片设计嵌入式说话人身份识别系统

    本文介绍一种基于TMS320C6713 DSP芯片设计的嵌入式,10个人范围的说话人身份识别系统。该系统可以自举运行,并可灵活的选择训练、识
    发表于 04-09 06:06

    串行A/D、D/A与TMS320C6713的接口设计

    介绍了串行A/D、D/A 芯片 MAX1270 和DAC7734E,对于DSP 上的串行接口McBSP(多通道缓冲串口)进行了细致的说明,给出了TMS320C6713 与串行A/D、D/A 接口
    发表于 08-11 09:16 33次下载

    TI TMS320C6713 DSP板FlashBurn程序

    分析了将程序代码写入FLASH 的两种方法,并在基于TI TMS320C6713DSP 系统设计中,以28F128J3A 为例,讨论了用FlashBurn 软件和FBTC 目标组件程序烧写FLASH 的具体
    发表于 09-08 14:39 49次下载

    卡尔曼滤波算法在TI TMS320C6713 DSP上的实现

    卡尔曼滤波算法在TI TMS320C6713 DSP上的实现
    发表于 06-03 15:37 41次下载

    TMS320C6713 DSK原理图

    TMS320C6713 DSK原理图,下来看看
    发表于 08-05 18:37 49次下载

    TMS320C6713管脚分类

    TMS320C6713
    发表于 11-16 16:33 40次下载

    通过采用PCI9052接口实现TMS320C6713芯片与PC机间的高速数据传输

    TMS320C6713是TI公司在TMS320C6711的基础上推出的C6000系列新一代浮点DSP芯片,它是目前为止C6000系列DSP
    的头像 发表于 01-16 09:18 2799次阅读
    通过采用PCI9052接口<b class='flag-5'>实现</b><b class='flag-5'>TMS320C6713</b><b class='flag-5'>芯片</b>与PC机间的高速<b class='flag-5'>数据传输</b>