1. 实时调试工具和传统仿真器的区别? DSP 侧重于数据流处理,而MCU(如X86,ARM)侧重于事件处理。数据流需要 实时处理,所以DSP 子系统通常是实时系统。实时系统需要实时调试,但一般 的DSP 仿真器是不支持实时调试。 2.传统Debuger 与实时调试的区别? 一般来说调试是通过调试工具完成的,调试工具通常是一个在PC 上运行 的软件。Debugger 调试工具的主要任务是从目标CPU 获取信息并控制程序在目 标CPU 上的运行。(例如单步执行,设置断点,运行)但通常的仿真器在执行上 述工作时需要把在目标CPU 上运行的程序停下来。 实时系统需要实时调试工具,实时调试工具是在不停止目标CPU 工作的情 况下,从目标CPU 获取信息并控制程序在目标CPU 上的运行。 想要实现实时调试,需要在调试工具和目标CPU 之间建立一条实时信息通道。 实时通道包括两个方面:硬件通道和软件通道。我们称实时硬件通道为实时仿 真器,实时软件通道为实时调试工具。 3. DSP 实时调试---Realtime emulator 要在调试工具和目标CPU 之间实现硬件实时通信通道,需要在PC 端和目标 DSP 端定义硬件接口。 TI 的DSP 用JTAG 作为硬件调试接口,我们通常所用的PC 端的硬件接口有 PCI,USB,EPP,PCMCIA,所以DSP 实时调试工具通常是一个盒子或一个PC 插卡加 盒子。实时调试工具的代表是TI 的XDS560 和闻亭公司的XDS560。TI 的XDS510 和闻亭公司的XDS510 是准实时仿真器(510 不支持AET) 4. Realtime debugger----High speed RTDX 为在调试工具和目标CPU 之间实现软件实时数据交换通道,TI 在CCS 中定义 了RTDX 技术。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。 5. Real time Event debug----Advance Event Trigger (AET) 在实时系统,需要处理(像硬件中断,定时器)这样的实时事件。我们在 处理一般事件时,通常是在中断程序入口插入一个软件中断,事件一旦被触发, 程序将停在中断处,我们可以观察所需要的信息。但目标DSP 被停止运行后, 我们将丢失其他的实时事件和实时数据流。 为解决这样的问题TI 提出了AET(高级事件触发),我们可以在不停止DSP 运行的情况下捕捉到实时事件。要运行AET,我们需使用560 和选择有EJTAG 接口的DSP 芯片(621X,64X,55X,OMAP)。510 不支持AET。 6. Summary Ÿ 560----支持高速RTDX,ATE(选用有EJTAG 接口的DSP 芯片)---我们称 之为实时调试工具 Ÿ 510----支持低速RTDX,不支持AET-----我们称之为“准实时仿真器”或 “非实时仿真器” Ÿ 标注:560 包含了510 的主要函数,将在CCS2.3 版本中包含所有的函数, 客户通过选择560 可以使他们的投资保值,因为他们早晚要将510 升级成560. |