基于VisualDSP的中频信号模拟器的软件设计_第1页
基于VisualDSP的中频信号模拟器的软件设计_第2页
基于VisualDSP的中频信号模拟器的软件设计_第3页
全文预览已结束

下载本文档

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

文档简介

1、基于VisualDSP+的中频信号模拟器的软件设计    基于DSP技术、DDS技术的中频信号模拟器可以产生包括线性调频信号、相位编码信号、单频脉冲信号以及他们的组合在内的等多种雷达信号,是雷达等电子设备生产的主要测试设备。1VisualDSP+简介VisualDSP+是美国模拟器件公司的DSP开发工具CrossCore系列中的一部分,是一种能提供有效项目管理的集成开发和调试环境,他使编程人员能够利用一个界面在编辑、编译连接和调试之间轻松切换。VisualDSP+的高级功能包括VisualDSP+内核(VDK)、C/C+编译器、先进的3D标绘工具、软件代

2、码运行时间统计以及TCL脚本支持。VisualDSP+开发环境具有以下特点:(1)广泛的编辑功能通过使用多种语法高亮显示、拖放式、书签和别的标准编辑操作来创建和修改源文件。也可以查看由代码开发工具生成的文件。(2)灵活的工程管理规定一个工程定义,他是用来识别文件、相关文件和用来编译工程的工具。创建工程定义或者修改他来满足不同开发的需要。(3)易访问的代码开发工具AD公司提供如下的代码开发工具:C/C+编译器、汇编器、链接器和加载器。通过使用对话框而不是复杂的命令行脚本来规定选项。(4)灵活的工程编译选项控制文件级或工程级的编译。VisualDSP+能有选择地编译文件和工程、更新工程相关文件或者

3、编译那些在初次编译后又修改的文件。观察工程编译进程的状态。(5)VisualDSP+内核(VDK)支持为工程增加VDK 支持来构造和安排开发应用。工程窗口的(Kernel)内核标签页能够操作事件、事件位、优先级、信标和线程。(6)灵活的工作区管理创建多达十个工作区并且在他们之间快速切换。为每一个工作区分配不同的工程便可以在一个会话框中编译和调试多个工程。同时VisualDSP+提供了以下的一些特性以缩短调试时间:(1)易用的调试环境对所有处理器的模拟器和仿真器或硬件评估和开发板都用一个共同的、方便的接口来调试。且可以在他们之间自由切换。(2)多语言支持可以调试用C/C+或汇编语言写的程序,用机

4、器码观察程序。对于用C/C+写的程序,可以用C/C+或C/C+与汇编混合语言来观察源程序,并且显示局部变量的值和估计当前文本中的表达式(全局或局部)。(3)有效的调试控制在符号或地址处设置断点,然后单步调试程序以发现代码逻辑的问题。在寄存器、堆栈和存储器位置上设置watchpoint(条件断点)用来确定何时访问他们。(4)改善特性的工具使用跟踪、性能分析和线性或统计性能分析来鉴别DSP应用的瓶颈问题,用来确定程序中需要优化的地方。使用绘图来观察数据阵列。产生中断、输出和输入来模拟实时应用的情况。2复杂雷达信号中频模拟器的软件设计2.1模拟器系统介绍复杂雷达信号中频模拟器能够产生线性调频信号、相

5、位编码信号及其相互组合形成的复杂雷达信号,解决了电子战设备性能测试中对复杂调制雷达信号的仿真问题。整个信号模拟器的核心部件为高速数字信号处理器ADSPBF535和高性能直接数字频率合成器AD9854,前者用于高速控制及波形参数的计算,后者用于中频信号的产生。系统计算机通过本地计算机接口将需要调整的参数发送给中频模拟器。这些可调的参数包括:同时工作的雷达个数,每部雷达信号的重复周期、脉冲宽度、起始频率以及带宽、信号的幅度以及天线扫描速度等。中频模拟器由ADSPBF535接收这些参数,对其进行判断、计算、整理,随后把他们转化为所需要的控制数据并最终用这些数据控制AD9854产生波形。系统的工作流程

6、如图1所示。进一步抽象工作流程可以建立模拟器系统的软件工作机制(如图2所示):(1) 外来数据进入输入缓冲,经主程序判断、计算后被转换成控制数据。(2) 主程序将控制参数以固定的格式放入波形参数输出队列,并初始化输出缓冲。(3) 主程序给每部雷达分配定时器,并调用相应的波形模组。(4) 主程序不断更新波形参数输出队列内的数据。与此同时,定时器每隔一定时间产生中断。与该中断相对应的中断服务程序从输出缓冲里取出最新的控制参数并发送出去。2.2基于ADSPBF535的复杂雷达信号中频模拟器的软件实现VisualDSP+for Blackfin的C/C+编译器有两种方法支持混合汇编语言和C/C+,可以

7、把汇编源程序同一个C或C+程序连接起来:(1) 在C或C+程序中嵌入汇编源代码。(2) 将C或C+同汇编源程序链接起来。利用汇编器提供的数据伪指令和内部函数,可以使用具有C结构的高级编程功能。汇编器内部还包含一个预处理器,该预处理器允许在汇编源文件中使用C风格的预处理器命令。预处理器命令对于修改汇编代码很有用。例如,可以使用#include命令填充存储器、装载配置寄存器和设置DSP参数。可以使用#define命令定义常数和为经常使用的指令集定义别名。预处理器以相应的值和指令组代替每次出现的宏。这里以线性调频信号为例来说明C/C+编译器的这些功能。对于线性调频信号的一个脉冲,他的可见属性包括:脉

8、冲宽度、起始频率、扫频带宽等。针对这些属性,首先在头文件里定义如下的结构体类型来描述这个脉冲:如果要执行变量的读取,把线性调频信号的一个参数,如“重复周期”,从内存读入到某一指定的寄存器内,那么要编写的代码如下所示:在数据段中定义的结构体Strchirp经编译后会自动在内存区中开辟一块以Str_chirp命名的数据存储区。在程序段中,前两条指令是将结构体Str_chirp 的头地址赋给地址寄存器P0,由于ADSPBF535不支持32位立即赋值,所以P0的赋值要分两次进行,即要分别对P0寄存器的高16位和低16位赋值。第三条语句是将结构体中变量_span的值读入数据寄存器R0, 其中OS_Schirp_span 是预先定义的宏,他的意思是变量_span相对于结构体Str_chirp 的头地址的偏移地址。代码如下:3结语综上所述,得益于编译器的支持,在编写代码时使用了结构

温馨提示

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

评论

0/150

提交评论