基于TMS320C6678的通用嵌入式软件开发平台的研究_第1页
基于TMS320C6678的通用嵌入式软件开发平台的研究_第2页
基于TMS320C6678的通用嵌入式软件开发平台的研究_第3页
基于TMS320C6678的通用嵌入式软件开发平台的研究_第4页
基于TMS320C6678的通用嵌入式软件开发平台的研究_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    基于tms320c6678的通用嵌入式软件开发平台的研究    殷耀文摘           要  论述了基于tms320c6678 dsp通用嵌入式软件开发平台构建过程,从时钟、外设、资源分配三个维度的构建进行论述。通用嵌入式软件平台具有高度集成性、通用性、可扩展性。平台的构建成功为使用此款dsp开发的人员提供了极大的便利性。关    键   词  tms320c6678;通用嵌入式软件开发平台;外设;时钟;资源 

2、tp319              文献标志码  a               2096-0603(2019)12-0158-02tms320c6678是德州仪器公司研发的一款高性能定点计算和浮点计算数字信号处理器(dsp),基于ti的keystone多核体系结构,集成了八个c66x coripac dsp,每个dsp的主频为11.25 ghz,最高能达到10 ghz主频。该dsp功耗低,支持高性能信号处理应用,广泛应用于

3、机器视觉领域、通信、雷达领域、嵌入式分析领域、高端机床领域、多媒体领域、成像领域和计算机处理等领域。一、概述由于该dsp高速外设较多,主要有srio、pcie、hyperlink、gigabit ethernet、64-bit ddr3、emif、uart。如此多的外設加上时钟、电源、存储资源划分的配置,通常情况下,都是按需选取一两种外设进行开发使用。笔者结合多年的嵌入式软件开发工作经验,借鉴软件无线电的思想,将众多的外设、时钟配置、ram存储资源整合在一个通用的软件开发平台上。本文将重点论述构建此平台的过程。构建此平台的核心思想是追求通用性与易用性,能确保使用此款dsp芯片的开发者不用关心芯

4、片的各种外设和使用细节,开发者所要做的只是在这个平台上部署自己的编程逻辑,通过与各种封装好的函数来操控dsp,平台达到了封装dsp硬件细节的作用,通过在实际项目过程中的实际应用,极大地简化了发者的开发过程。构建平台的主要过程为:选择ccs v5开发环境配置dsp时钟->配置dsp的ddr存储器->配置uart->配置配置spi->配置srio->配置edma->配置gpio->配置ndk(千兆网)->配置cfg->配置l1p、l1d、l2->平台构建完成。通用开发平台为ccs v5.3,开发语言为c语言,库文件为ti公司的bios_m

5、csdk_02_00_09_21_setupwin32,下文将按类型分步论述平台构建的具体过程。二、时钟tms320c6678 dsp常用的时钟为1ghz,此外还有1.25ghz和800mhz,本文以配置主频是1ghz的过程来进行论述,具体配置过程如下:通过配置pllc_hwsetup存器结构体来设置pllc硬件参数->通过调用corepllgethwsetup()函数来配置pll ->通过调用setpapllconfig()函数配置pa_ss pll->配置完成,封装成config_pll()函数。上述过程描述了时钟的配置过程,主要是通过一系列配置寄存器和调用系统函数完成,

6、最终封装成配置时钟的函数configpll()函数供开发者调用。三、外设tms320c6678 dsp集成了丰富的外设,该通用软件开发平台将众多的外设集成在一起,以供用户的不同实际调用需求,开发过程中的难点,一是各个软件外设驱动的开发,二是各外设在软件平台集成过程中资源冲突的问题,下文将以几个代表性的外设论述具体的外设集成过程。(一)uarttms320c6678 dsp拥有一个uart串口,波特率可设置为1115200bps、9600bps、4800 bps等多种速率,主要用途为在数据量和速率要求较低时的数据通信和控制外围设备作用,uart的具体配置过程如下:通过调用uartinit()函数

7、初始化uart外设->通过调用uartsetbaudrate()函数设置uart外设波特率->通过封uartreaddata()函数和uartreaddata()函数设置uart读写函数->配置完成,封装成config_uart()函数。上述过程表述了外设uart的配置过程,完成对应的配置后,用户可根据实求通过集成通用平台调用读写函数(uartreaddata()和uartwritedata()函数)完成通信和外围设备通信和控制功能。(二)sriosrio是tms320c6678 dsp的一个主要外设,具有高速率通信速度,如果配置成4*5ggbps模式,则最高速率可达20gb

8、ps通信速率,同时支持读写两种数据传输模式,是本芯片的主要通信方式,承担骨干通信的任务,具体配置过程如下所示:配置cppi和qmss设备->配置srio寄存器(通信模式、大小端、速率)->建立srio通信链路链接->注册srio中断函数->设置srio读写函数->配置完成,最终封装成config_srio()初始化函数、srio_send()数据发送函数、srio_read()数据接收函数、srio_doorbell()门铃发送函数、sriodioisr()中断响应函数。通过上述的配置过程,开发者根据实际需要,调用集成平台的config_srio()初始化函数、s

9、rio_send()数据发送函数、srio_read()数据接收函数、srio_doorbell()门铃发送函数、sriodioisr()中断响应函数实现tms320c6678外设srio的使用。四、资源tms320c6678 dsp有内部存储空间(l2sram),每个核的地址范围为(0x00800000-0x00078000),每个核的容量为512k,八个核共计4mb,属于高速读写存储介质。外部存储空间(ddr3),最大容量支持2g,起始地址为(0x80000000),属于低速大容量读写存储介质。共享存储空间(msmcsram),地址范圍为(0x0c000000-0x00400000),容量

10、共计4mb,属于较高速读写存储介质。根据每种存储资源的属性和特性,存储资源的配置规则如下:1.将用户要求实时性处理最高的数据、程序段、系统开销,高速外设配置应该配置内部存储空间(l2sram);2.将用户要求实时性处理较高的数据、程序段应该配置在共享存储空间(msmcsram);3.将用户要求实时性处理较低的数据、代码段、大容量数据、低速外设配置在片外空间(ddr3);4.l1p和l1d由系统自动分配,按不同存储区域对dsp各存储元素进行了归类配置,经过实际验证,dsp在此配置模式下,通用软件集成平台能较稳定快速的运行。五、结束语tms320c6678是当下一款非常主流多核dsp,此软件集成开发平台将开发者从繁重的底层设计中“解脱”出来,可以专注于自己算法功能的具体实现。该通用软件开发平台集通用性、便利性、集成性于一体,在实际的科研开发实践中,已应用于多个科研开发机构,并形成一定的标准化思想,下一步准备从优化平台框架入手,开发出更具轻便性的通用嵌入式软件开发平台。参考文献:1牛金海.tms320c66x keystone 架构多核 dsp 入门与实例精解m.上海:上海交通大学出版社,2014.2邓豹.tms320c6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论