DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 129|回复: 0
打印 上一主题 下一主题

基于LabVIEW的DSP设计

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 14:06:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                      1 引言
  LabVIEW (Laboratory Virtual Instrument Engineering Workbench) 是美国NI公司的创新软件产品,也是目前应用最广泛、发展最快、功能最强的图形化软件开发环境。LabVIEW DSP模块,它包含了用于设计、实现和分析DSP算法的系统工具。它将LabVIEW图形化开发环境扩展至嵌入式信号处理应用程序设计,提供了一个易于使用的、现成的方法来学习信号处理技术,使得DSP开发者拥有了一个图形化和系统级的设计开发选择。随着我们的设备在性能和复杂度方面的提升,图形化和系统级的设计和开发工具的作用起到越来越重要的作用。
  本文以TMS320C6713EVM开发板为硬件平台,利用LabVIEW DSP模块和LabVIEW DSP Test Toolkit for TI DSP工具包实现LabVIEW与DSP的整合,完成了基于TMS320C6713EVM硬件平台的自适应滤波器系统辨识应用的设计。
  2 DSP在虚拟仪器设计中的应用
  数字信号处理是一门极其重要的学科和技术领域,在众多领域得到了广泛的应用。DSP(数字信号处理器)与在嵌入式系统中常用的其它微处理器(如单片机、通用处理器)相比,DSP强大的数据处理能力和高速的数据吞吐率使其在图像处理、语音处理等方面的性能远远优于其它微处理器。同时,随着超大规模集成电路的发展,生产成本进一步降低,DSP解决方案在嵌入式图像、语音处理这样的数字信号处理典型应用中已成为工程师的首选。
  虚拟仪器在很多情况下采用上位机实现,微机也可以进行数字处理,并且微机可以直接采用浮点运算,其运算精度也可以做得很高。但是与用微机实现虚拟仪器相比,采用DSP芯片实现虚拟仪器具有以下优点:(1)DSP芯片特有的存储及总线结构可以保证在一个机器周期内多次访问程序空间和数据空间及在一个指令周期内同时进行运算,满足了数字信号处理中的并行运算要求;(2)在数据采集和输出时,都要用到A/D和D/A,其刷新是通过定时器来完成的,DSP芯片内置在片定时器,用户可以通过控制程序对定时器进行精确的设置,从而实现精确定时和采样处理,这在上位机实现中是做不到的。
  通常作为虚拟仪器硬件部分的数据采集卡所完成的仅仅是采集数据和传输数据,而虚拟仪器中最耗时最复杂的数据分析处理却留给计算机的CPU去完成,从而导致了虚拟仪器实时性和精确性的不足。DSP可以从数据采集到数据处理再到数据的传输,把数据分析处理的工作留给DSP来完成,那么计算机的工作就仅仅是完成数据的简单整理、显示、存储和输出,这样很好地弥补了以往虚拟仪器速度和精度方面的不足。
  此外,当系统运行在Windows等多任务操作系统时,特别是在处理如FFT等大容量、高精度的运算时,CPU资源会造成严重不足,这给虚拟仪器的应用带来一定的不便。虚拟仪器能借助DSP处理系统,将采集来的数据在DSP中进行预处理,然后再将数据传递给软件部分,这样不但没有增加系统的负担,而且可以让系统用更多的时间来处理其他事情。因此,把DSP技术有机地应用到虚拟仪器中是虚拟仪器设计的一个重要发展方向。
  3 基于LabVIEW 的DSP系统级设计
  3.1 LabVIEW DSP模块
  LabVIEW DSP模块是一个全功能可视化数字信号处理器算法和系统的设计、实现与分析的工具。该模块与LabVIEW集成,功能强大,可生成专为DSP优化的应用程序,是DSP开发的新思路。其特点有如下:
  (1)将LabVIEW核心性能扩展至可直接利用信号处理函数和编程组件对NI SPEEDY-33、TI C6416 DSK、TI C6713 DSK以及TI C6711 DSK进行编程,无需单独的DSP编译器,且不必重写代码即可在支持的DSP目标之间切换,具有多DSP目标的代码移植性。
  (2)全面支持Express VI功能,具有图形化和系统级的选择对DSP设备进行编程,具有面向未来设计的代码模块性和独立应用开发能力等。
  (3)可更快地减少反复的设计周期和总体的开发时间,并且在实时地对目前的DSP硬件作出改变的同时马上显示结果。
  (4)具有易于访问DSP目标的模拟和数字I/O线以及满足实时交互需要的交互式GUI,可以建立实时的应用程序。
  同时,LabVIEW DSP模块集成了最新的NI LabVIEW数字滤波器设计工具包,可以将使用LabVIEW设计的滤波器下载至TI和NI DSP硬件设备。LabVIEW DSP模块非常适合通信、自定义控制算法、数字和最小方均根(LMS)滤波以及音频处理和分析等领域的应用。
  3.2 LabVIEW DSP TeST Toolkit
  利用LabVIEW工具包中的DSP Test Toolkit可以使在LabVIEW环境下设计的DSP系统可以全部或部分运行于硬件平台上。DSP Test Toolkit与DSP模块不同,利用DSP模块可直接对DSP硬件进行编程,无需单独的DSP编译器。而DSP Test Toolkit则必须通过CCS (Code Composer Studio) 实现对DSP的开发。DSP Test Toolkit提供了一系列可以使LabVIEW和CCS接口的VI,如图1所示。






  图2 CCS Automation.vi程序框图
  一部分是在图中左侧的顺序结构。对应于CCS自动进程,包括CCS打开项目VI、CCS创建VI、CCS复位VI、CCS加载代码VI和CCS运行VI。此外,还有顺序结构右侧的CCS中断VI和CCS关闭项VI目也是CCS自动进程的一部分。顺序结构中的文件I/O模版的三个函数用来创建CCS项目文件路径,这样就可以在CCS中打开项目文件。通过这些VI和函数,打开CCS、创建项目、在DSP上加载和运行程序,这些进程都可以通过LabVIEW一端来控制。顺序结构中的Dsp.pjt是DSP项目,如LMS.pjt、FFT.pjt等,由设计者依据不同设计要求在CCS中创建。
  程序框图中的另一部分为While循环结构,包括系统数据、参数的输入输出显示及分析等图形化代码及CCS RTDX通信模块。CCS RTDX通信模块使得LabVIEW和DSP之间连续交换数据。
  在程序运行中,通过前面板上的Code Composer Status可以清楚地显示CCS运行状态,如图3所示。






  图4 系统辨识的基本结构
  在自适应滤波器的应用中,一个重要的问题是确立使可调节的滤波器参数最优的标准(或准则)。最小均方(LMS)算法能够产生一个二次性能指数作为滤波器系数的函数,从而具有单一的最小值,它是自适应滤波器的一种最基本的算法,所以本文采用LMS算法来实现自适应滤波器的应用。
  4.2 基于TMS320C6713EVM的系统辨识设计
  硬件平台选用的是TMS320C6713EVM高速语音信号(采集)处理平台。该平台采用了Texas Instruments公司高性能浮点DSP器件 TMS320C6713B。使用的仿真器为5100USB V2.0系列DSP仿真器。
  软件设计部分如图5所示。由LabVIEW的Express VI产生的正弦波作为输入信号,以巴特沃思滤波器VI作为信号所通过的未知系统。在CCS开发环境下用C语言编写实现自适应滤波器的LMS算法程序,在LabVIEW开发环境下用G语言开发自适应滤波器的应用程序与图形界面,通过LabVIEW与CCS之间的实时数据交换(RTDX)实现通信。






  图6 系统辨识运行结果
  5 结论
  本文在LabVIEW开发环境下实现了基于TMS320C6713EVM DSP硬件开发平台的自适应滤波器应用设计——系统辨识。其设计方法区别于传统的DSP设计开发方法,是DSP设计新方法的有益尝试。这种设计方法大大缩短了DSP的开发周期,充分发挥了DSP和LabVIEW的特点,将复杂运算交给DSP去实现,同时通过LabVIEW的可视化界面可以清楚地看到程序运行的结果与波形,方便实现在线调试,运行结果直观、清晰。使用LabVIEW开发环境进行DSP的开发摆脱了繁琐的基于文本的语言代码和复杂的调试过程,可以轻松实现对DSP的开发,是DSP设计的一个新的发展方向,可以很好地应用于工程实践及DSP教学。
            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-24 02:05 , 耗时 0.118315 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表