EDN China > 其它文章 > 微处理器与DSP > 多媒体处理器 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

Blackfin处理器的调试功能对成功设计的作用

David Katz和Rick Gentile?? 美国模拟器件公司Blackfin处理器应用部?? 2005年10月02日 ?? 收藏0

  随着嵌入式处理应用越来越复杂、投放市场的时间越来越急迫,调试技术变得越来越重要。调试技术对于拥有一大批供其使用的调试工具开发商来说同样重要,有理由表明对他们更加重要的是应该了解到从一开始选择什么样的调试工具能够跟踪并解决应用中的问题。为此, 本文将以ADI公司的Blackfin媒体处理器系列产品为例,讨论基于软件和硬件的内置调试功能

  软件工具
  软件工具在系统开发过程中起到两个重要作用。第一,软件工具允许在订制的硬件提供之前开始开发工作。它能够从功能角度对算法进行仿真,同时能够利用精确周期内核仿真,在开发过程的初期对性能进行评估。
  Blackfin 处理器VisualDSP++工具套件提供几项主要功能,允许软件开发商预测最终目标能够达到的性能。因为Blackfin处理器体系结构从根本上支持高效编译代码,因此大多数开发项目能够用C或C++完成。这项功能允许在项目开始的时候将现有的代码基快速整合到该项目中。这样就能利用很多设计结果而无需探究体系结构细节。
  一旦初始项目建立起来,程序员有几种仿真选择,允许在周期精度和仿真速度之间灵活地折衷。VisualDSP++开发工具提供

代码运行时间统计分析功能,作为其仿真器和模拟器的一部分。该工具允许程序员看到一个应用程序不同部分的运行时间是如何分配的,从而为优化工作提供方向。
  即使Blackfin编译器的性能对于信号处理应用和MCU应用(低周期数和低字节数)都是杰出的,但是总是有一部分代码需要利用基于汇编语言的程序库进一步优化。虽然这种情况在大型开发项目中不常见,但是VisualDSP++仿真器提供了流水线查看器以便用图形方式识别失速(停止),从而进一步优化。由于Blackfin指令流水线是互锁的,因此失速不需要程序员手动跟踪和管理。即使如此,这种查看重要部分代码失速的能力通常允许程序员能够进行小调整从而实现对周期数的极大改进。
  该仿真器的另外一个便捷功能是高速缓存查看器。由于始终存在系统设计工程师必须对片内和片外存储器大小进行折中的问题,所以对于预测如何根据指令流程完成高速缓存以及显示实际上如何访问数据,高速缓存查看器能起到非常重要的作用。(查看器语句示例如下)
  
  VisualDSP++ Debug Tools Aid Code Optimization="VisualDSP"++
  调试工具辅助代码优化
  Pipeline viewer finds stalls in critical sections of code=
  流水线查看器发现关键部分代码失速
  Cache viewer helps programmer understand cache efficiency (hits and misses)=
  高速缓存查看器帮助程序员了解高速缓存效率(命中率和缺失率)
  Code profiler shows where most time is spent during program execution=
  代码运行时间分析器显示在程序执行期间何处耗时最多

  硬件平台
  一旦整个系统经过仿真,算法和大多数外设都可以利用低成本的EZ-KIT Lite评估平台操作。EZ-KIT评估平台为开发商提供一种评估Blackfin处理器的方法,该处理器适合多种应用,例如音频、视频和其它处理计算量很大的算法。例如,ADSP-BF533 EZ-KIT Lite评估平台包括视频和音频解码器和编码器,以及板上SDRAM(32Mb)和闪存(2Mb)存储器。另外,可设置的标志引脚能够连接到按钮和LED。
  USB调试器接口允许利用简单的USB接口连接到评估板,如果直接访问VisualDSP++ PC主机上的工具套件,为了提高性能,JTAG在线仿真器能够很容易连接到评估板。
  可提供的ADSP-BF533 EZ-KIT 评估平台的EZ-Exterder 子卡允许开发商能够连接多个高速数据转换器评估板(ADC、DAC和混合信号转换器),CMOS图像传感器评估板和一些TFT LCD显示器。它还能为电路配置提供试验板区域,并且几乎可以为Blackfin处理器的每一个引脚提供检测。

  芯片内置功能
  Blackfin处理器的体系结构为设计工程师提供了内置硬件调试的附加功能。这些功能包括性能监视器、周期计数器、监测单元和跟踪单元。

  性能监视器
  Blackfin处理器系列中的每一种处理器都有两个寄存器,它们能够通过编程对特定“中心性能”事件的发生次数进行计数。下表总结了能够跟踪的独立事件。
  开发商可以利用性能监视事件来发现优化处理器的重点区域。通过性能监视器提供对芯片中实际发生事件的观察力,而不是通过仿真预测这些事件。
  我们以数据访问高速缓存和指令访问高速缓存性能为例。性能监视器


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

Blackfin? 调试功能? 嵌入式?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈