第一范文网 - 专业文章范例文档资料分享平台

基于MATLAB平台的DSP嵌入式应用程序设计的研究

来源:用户分享 时间:2025/6/13 22:14:03 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

基于MATLAB平台的DSP嵌入式应用程序设计的研究 测071 邢广金 07235

[摘 要]随着DSP的广泛应用及DSP产品复杂度的提高,传统的DSP嵌入式应用系统设计方案面临许多困难。文章介绍了新的设计方案,以TI的DSP为例,研究了基于MATLAB R2009B版本的DSP嵌入式应用程序综合开发平台、设计流程以及相关技术。研究表明,新的设计方案具有难度更小、开发周期更短、开发成本低、可移植性好等优点,且便于多人协作完成任务,完全能够满足当前DSP系统的性能要求,是解决传统设计方案困境的重要途径。

高效、低风险地进行产品设计及科学研究是每个科技工作者的愿望。近年来, DSP的性能飞速提高,应用范围不断扩大。同时,激烈的市场竞争要求更低的产品开发成本;急剧变化的产品需求,多样、复杂的新产品结构及功能,使产品研发难度激增。相应地,硬件平台的更新换代较以往更快,产品的生命周期越来越短,对嵌入式DSP软件可移植性提出了更高的要求。总之,巨大的市场风险要求产品的方案设计、系统实现以及测试等工作并行运作,给传统的DSP系统设计方案带来严重挑战[1]。

在MATLAB软件平台上开发嵌入式DSP应用程序可以解决传统设计方案面临的困难。MathWorks公司推出的MATLAB软件,主要包含MATLAB和Simu-link两大部分,其中有多个工具箱(Toolbox)和模块集(Blocksets)广泛应用于技术计算、控制系统设计、信号处理和通信、图像处理、测试和测量等领域。从概念到实现,从理论科学研究到产品研发,MATLAB的应用不仅极大地提高了工作效率,也给传统的工作方式带来了变革。结合MATLAB软件中的嵌入式MATLAB ( Embedded MATLAB )、Simulink、RTW (RTW EmbeddedCoder)、Embedded IDE Link和TargetSupportPackage以及开发DSP应用程序的集成开发环境(如用于TI的Code Composer Studio集成开发环境)构建的DSP软件系统综合开发平台,采用基于模型的嵌入式应用软件设计理念,包括算法设计及仿真、代码及项目生成、代码验证以及在线调试等在内的系统研发任务可以一气呵成,极其便于DSP嵌入式软件开发[2][3]。

本文以TI的DSP为例,结合MATLAB R2009B版本以及CCS3·3版本,详细介绍基于MATLAB和Simulink产品嵌入式DSP应用程序开发的流程以及主要产品的功能特点。

1 相关产品及其功能

1·1 Real-timeW orkshop(RTW ) /RTW EmbeddeCoder

RTW是Simulink的重要组成部分,是Simulink代码生成的基础。程序员开发算法的Simulink模型,或以嵌入式MATLAB语言开发的算法,应用RTW技术整个算法模型或单个子系统可以生成符合ASNI/IS标准的C代码,根据系统目标文件(System TargFile)选项指定的目标系统,生成的代码能够运行在相应的微处理器或实时操作系统上。RTW还能将生成独立的C代码编译成可执行的程序,用于算法的开发和测试。生成的代码还可用于许多实时的和非实时的应用程序中,包括加速仿真、快速原型以及硬件在环测试(hardware- in-the-loop testing)。用Simulink模块及内置的分析工具可调节或检测生成的代码,或者,在MATLAB及Simulink环境之外运行代码并与之交互。

Real-Time Workshop Embedded Coder扩展了RTW代码生成的功能,扩展的这些功能对嵌入式软件开发尤为重要。使用RTW Embedded Coder附加产品,不仅可以使用RTW技术的各个方面,还可以生成清晰、高效的专业技术水平级代码。

1·2 Embedded IDE Lin

Embedded IDE Link的功能是将MATLAB、Simu-link和DSP嵌入式软件的集成开发环境联接起来。通过Embedded IDE Link,可以生成、编译、测试以及优化将部署到用于原型研制或实际产品中的嵌入式代码。Embedded IDE Link自动完成调试、项目生成以及运行在嵌入式处理器或集成开发环境(IDE)提供的指令集模拟器上的目标代码验证等任务。此外,可以在MATLAB和Simulink中创建测试工作台( tesbench),用于处理器在环测试方式(Processor-in-the-Loop testing)验证手写代码及生成的代码。

Simulink中有四个处理器支持库,分别对应于Embedded IDE Link支持的四个集成开发

环境: Altium的TASKING, AnologDevices的VisualDSP++, GreenHills的MULTIple,以及Texas Instruments的CodComposerStudio。在MATLAB平台上可以开发以上四个制造商相关DSP系列产品的应用程序。

Embedded IDE Link/For use with TI’s CCS专门针对TI的DSP系列产品,它与RTW及RTW Embedded Coder联用,能在Simulink中以图形化方式创建的算法模型顺利地转换为CCS中完整的项目(projects文件,并能进一步编译成在嵌入式处理器上可执行的实时独立程序。所生成项目不仅包含生成的应用程序的C代码,还有嵌入式软件架构需要的初始化、调度以及处理器实时执行的应用程序代码的管理。硬件平台改变时,只需要改变目标选择模块中处理器及开发板的相应参数,即可重新生成适合新硬件平台的嵌入式C代码,几乎不需手动改写代码,具有极强的可移植性。Embedded IDE Link主要功能有:

(1)用MATLAB调试CCS环境中的项目

MATLAB与CCS集成开发环境的自动接口(Atomation Interface),仅与MATLAB单独使用(不用Simulink),即应用MATLAB语言编写脚本文件,自动调试和分析CCS中的项目,在MATLAB环境中察看运行时的数据并通过MATLAB改变目标板上运行程序的参数。Embedded IDE Link支持所有CCS支持的TI处理器,接口包含两种方式:调试模式(DebMode)和RTDX模式。

(2)与Simulink联合仿真

应用Embedded IDE Link和RTW Embedded Cder,可以将MATLAB和Simulink的算法运行在目标处理器或集成开发环境提供的指令集仿真器上、仿真模型作为测试工作台进行联合仿真。算法部署到目标平台, PIL仿真功能可以让开发者验证算法代码,而不必手工搭建一个嵌入式测试平台。

(3)用RTW进行项目生成和代码优化

项目生成(Project Generator)使用RTW以及RTW EmbeddedCoder将Simulink模型生成完整的CCS项目。这些产品生成应用程序的C源代码,并根据需要包含汇编代码以及链接描述文件。应用RTW Em-bedded Coder,可以在MATLAB支持的C2000/C55x/C6000系列的DSP上生成代码并进行PIL测试。RTW从MATLAB和Simulink模型生成与目标无关的算法ANSIC代码,与RTW联用时, Embedded IDE Link为算法代码添加上实时的嵌入式框架代码,包括在目标处理器上实时运行的必备调度程序和中断处理机制。Embedded IDE Link还添加处理器专用的优化表,自动将ANSIC代码尽可能地替换为优化的内部对象,减少手工修改代码,提高代码执行效率。

对于MATLAB及Simulink不能生成应用程序的项目及代码的处理器, RTW仍然支持,但必须手工完成外设软件集成及项目创建的工作。

1·3 Target SupportPackage

Target Support Package用于将MathWorks产品生成的实时程序代码部署到嵌入式微处理器、微控制器以及DSP上。它使外围设备和实时操作系统与用Simulink模型、Stateflow流程图以及嵌入式MATLAB语言子集结合起来,不必手写底层驱动程序和运行时代码。合成的可执行程序可以被部署到嵌入式硬件上,用于目标板上快速原型、实时性能分析以及现场生产。

Target Support Package/For Use with TI s C2000、C5000、C6000模块集分别支持TIC2000系列, C500系列以及C6000系列的DSP。MATLAB对TI的DS支持主要有以下几个方面:

一是开发板级的支持。如Avnet S3ADSP、DM6437、C5510 DSK和C6713 DSK,不仅支持DSP芯片及片上资源,还支持板上外设,能直接生成专用的驱动程序,将模型生成的代码直接运行在目标板上。

二是对DSP芯片级的支持。除了上面列出的特定硬件开发板,也支持使用C2000、C55xx

以及C600处理器的定制开发板(custom boards)。对定制开发板的支持需要使用Embedded IDE Link和Texas Instruments(Code Composer Studio adaptor。只要采用CC支持的DSP芯片, MATLAB均能支持。内核支持库(Core Support library)提供输入/输出、通信以及访问DSP外设或板上外设的模块,比如CPU Timer和Hardware Interrupt模块。但板上外设的驱动程序需要用户自己开发,集成到模型中,在编译时一同转化为项目的代码。

三是提供TI某些DSP专用的优化算法库,如C28x的优化模块C28x IQmath库等, IQMath库可以通过Simulink的对话框修改这些模块的参数,生成高效优化的代码。

再者就是用于MATLAB平台和CCS集成开发环境之间的联系,如C2000系列的RTDX以及HostSCBlocks。对选定的处理器系列支持片上外设和板上的外设以及实时操作系统。

1·4 Code Composer Studio (CCS) IDE

CCS IDE是用于TIDSP、微处理器和应用处理的集成开发环境,包含了一整套用于开发和调试嵌式应用程序的工具。CCS IDE包含适用于每个TI器系列的编译器、源代码编辑器、项目开发环境、调器、优化器、仿真器以及许多其它的功能。CCS提供的单用户界面能使用户完成应用程序开发流程每一步。CCS主要部分为:

(1) CCS代码生成工具; (2) CCS集成开发环境;

(3) DSP/BIOS插件程序和API; (4) RTDX插件、主机接口和API。

2 实现思路

在MATLAB平台上设计嵌入式DSP实时应用序的步骤,以算法模型开始,添加并配置目标选择块(TargetReferences block),设置仿真参数,编译型,在处理器上运行生成的代码。从算法设计到证、从概念到代码实现的整个环节,所有的重点落方案的验证及算法开发上,代码开发的工作变得相简单。

2·1 设置代码生成的工作环境

首先必须配置好代码生成的软件环境。EmbedIDE Link要求特定版本的第三方工具和相关软件。函数checkEnvSetup为开发板或处理器检查并配Embedded IDE Link和TargetSupportPackage环境。如,要列出C6713DSP需要的第三方工具和相关软件在MATLAB命令窗口中运行:

checkEnvSetup (‘ccs’,‘C6713’,‘list’)

回显信息如下(视工作需要,某些列出的必要具和软件在具体的任务中未必需要): (1) CCS (Code ComposerStudio) Required version: 3·3·80·11

Required by : Embedded IDE Link 4·0 Required for : Automation and Code Gen- eration

(2) CGT (CodeGeneration Tools) Required version: 6·1·4

Required by : Embedded IDE Link 4·0 Required for : Code generation

(3) DSP/BIOS (RealTimeOperating System) Required version: 5·32·04

Required by : Embedded IDE Link 4·0

基于MATLAB平台的DSP嵌入式应用程序设计的研究.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c75oj92itn947le14lle3_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top