DSP仿真器的必要性及原理

我们在硬件学习时通常会接触到仿真器以及编程器:
在线仿真器 (In-Circuit Emulator,ICE) 是用来调试嵌入式系统软件的硬件设备。嵌入式系统开发者要面对一般软件开发者所没有的特殊问题,因为嵌入式系统往往不像商业计算机那样具有键盘、显示屏、磁盘机和其他各种有效的用户界面和存储设备。当仿真器被插入到待开发芯片的某个部分的时候,在线仿真也被称作硬件仿真。这样的在线仿真器,可以在系统运行实时数据的情况下,提供相对很好的调试能力。
编程器:有两个部分组成,分别为编程器(又叫烧录器、烧写器)和连接线。把裸芯片(非裸芯片电擦除后再烧写、OTP的报废)放入编程器中,启动软件连接,就可以烧写了。

一般来说调试是通过调试工具完成的,调试工具通常是一个在PC 上运行的软件。Debugger 调试工具的主要任务是从目标CPU 获取信息并控制程序在目标CPU 上的运行(例如单步执行,设置断点,运行)。但仿真器在执行上述工作时需要把在目标CPU 上运行的程序停下来。对于实时系统需要实时调试工具,实时调试工具是在不停止目标CPU 工作的情况下,从目标CPU 获取信息并控制程序在目标CPU 上的运行。想要实现实时调试,需要在调试工具和目标CPU 之间建立一条实时信息通道。实时通道包括两个方面:硬件通道和软件通道。我们称实时硬件通道为实时仿真器,实时软件通道为实时调试工具。

仿真器应该与目标MCU在电气及物理上等价,并能在开发系统中替代MCU。目标系统的操作可由调试工具得以控制及观察。在开发初期,开发系统依靠仿真器工作,当目标功能完善后,仿真器将被真正的MCU取代。

1、DSP实时调试——Realtime Emulator
	要在调试工具和目标CPU 之间实现硬件实时通信通道,需要在PC 端和目标DSP 端定义硬件接口。TI 的DSP 用JTAG 作为硬件调试接口,我们通常所用的PC 端的硬件接口有PCI、USB、EPP、PCMCIA,所以ICE包括两个接口,一个是连接到目标板上的MCU插座,另一个与PC相连。(使用仿真器前一定要检查一下供给的电源是否正确,否则很容易造成仿真器损坏。)实时仿真器的代表是TI 的XDS560 和闻亭公司的XDS560,支持高速RTDX、ATE,并包含了510的主要函数。TI 的XDS510和闻亭公司的XDS510 是准实时仿真器,支持低速RTDX,但不支持AET。

2、Realtime Debugger——High Speed RTDX
	为在调试工具和目标CPU之间实现软件实时数据交换通道,TI在CCS中定义了RTDX技术(实时数据交换)。在PC上使用CCS调试工具的使用者要在目标DSP中使能RTDX模块,DSP软件工程师要把RTDX.obj与他自己的程序连接起来,然后在他的应用软件中调用RTDX功能。当使用RTDX功能时,需要停止目标DSP的运行,然后在调试工具和DSP之间建立数据通道。当使用TDS510或XDS510型号的仿真器时,RTDX的速度仅有5-10K bytes/S,对于DSP的应用来说,这远远不够。仿真器与DSP的JTAG接口造成了RTDX的瓶颈,想要增大RTDX的带宽就需要使用TDS560 或XDS560 和选择DSP的EJTAG接口(如6211,64x,55x)。如果使用XDS560和6211芯片,RTDX速度可以提高到1.5M bytes/S,我们称之为高速RTDX。

3、Real Time Event Debug——Advance Event Trigger (AET)
	在实时系统,需要处理(像硬件中断,定时器)这样的实时事件。我们在处理一般事件时,通常是在中断程序入口插入一个软件中断,事件一旦被触发,程序将停在中断处,我们可以观察所需要的信息。但目标DSP被停止运行后,我们将丢失其他的实时事件和实时数据流。为解决这样的问题TI 提出了AET(高级事件触发),我们可以在不停止DSP运行的情况下捕捉到实时事件。要运行AET,我们需使用560和选择有EJTAG接口的DSP芯片(621X,64X,55X,OMAP)。

DSP仿真器为什么必须连接目标系统(Target)?
	DSP的仿真器同单片机的不同,仿真器中没有DSP,提供IEEE标准的JTAG口对DSP进行仿真调试,所以仿真器必须有仿真对象,及目标系统。目标系统就是你的开发板,上面必须有DSP。仿真器提供JTAG同目标系统的DSP相接,通过DSP实现对整个目标系统的调试。

仿真工作正常对于DSP的基本要求
       1)DSP电源和地连接正确。
       2)DSP时钟正确。
       3)DSP的控制信号RS和HOLD信号接高电平。
       4)Watchdog关掉。
       5)不可屏蔽中断NMI上拉高电平。
CCS或Emurst运行时提示“Can't Initialize Target DSP”
       1)仿真器连接是否正常?
       2)仿真器的I/O设置是否正确?
       3)仿真器的电源是否正确?
       4)目标系统是否正确?
       5)仿真器是否正常?建议使用目标板测试。



 
	
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在设计需求规范,确定设计目标,其实要解决二个方面的问题:即信号处理方面和非信号处理的问题。   信号处理的问题包括:输入、输出结果特性的分析,DSP算法的确定,以及按要求对确定的性能指标在通用机上用高级语言编程仿真。非信号处理问题包括:应用环境、设备的可靠性指标,设备的可维护性,功耗、体积重量、成本、性能价格比等项目。   算法研究与仿真这是DSP应用实际系统设计中重要的一步。系统性能指标能否实现,以何种算法和结构应对需求,都是在这一步考虑的。这种仿真是在通用机上用高级语言编程实现的,编程最好能仿DSP处理器形式运行,以达到更好的真实性。   DSP芯片选择中通常有下列几条应注意的:   (1)精度:表数格式(定点或浮点),通常可以用定点器件解决的问题,尽量用定点器件,因为它经济、速度快、成本低,功耗小。但是在编程要关注信号的动态范围,在代码中增加限制信号动态范围的定标运算。   (2)字长的选择:一般浮点DSP芯片都用32位的数据字,大多数定点DSP芯片是16位数据字。而MOTOROL公A司定点芯片用24位数据字,以便在定点和浮点精度之间取得折中。字长大小是影响成本的重要因素,它影响芯片的大小、引脚数以及存储器的大小,设计在满足性能指标的条件下,尽可能选用最小的数据字。   (3)存储器安排:包括存储器的大小,片内存储器的数量,总线寻址空间等。片内存储器的大小决定了芯片运行速度和成本,例如TI公司同一系列的DSP芯片,不同种类芯片存储器的配置等硬件资源各不相同。   (4)开发工具:在DSP系统设计中,开发工具是必不可少的,一个复杂的DSP系统,必须有功能强大的开发工具支持。开发工具包括软件和硬件两部分。软件开发工具主要包括:C编译器、汇编器、链接器、程序库、软件仿真器等,在确定DSP算法后,编写的程序代码通过软件仿真器进行仿真运行,来确定必要的性能指标。硬件开发工具包括在线硬件仿真器和系统开发板。在线硬件仿真器通常是JTAG周边扫描接口板,可以对设计的硬件进行在线调试;在硬件系统完成之前,不同功能的开发板上实运行设计的DSP软件,可以提高开发效率。甚至在有的数量小的产品中,直接将开发板当作最终产品。   (5)功耗与电源管理:在一些手提便携式的消费类电子产品中,供电电源的节省是很重要的问题,因而目前DSP生产厂商越来越重视这方面。它通常包括供电电压的选择和电源的管理功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值