新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 分析复杂器件内部的实时可视性的设计方法

分析复杂器件内部的实时可视性的设计方法

作者:时间:2011-07-05来源:网络收藏

  2. 高水印计数器

  通常,开发者需要理解会运行的极限恶劣状况,例如,服务中断的最大时间或输入数据中的最小和最大抖动。高水印计数器提供硬件,这些硬件能被配置用于监测特定总线事件,并锁存最大的(高水印)或者最小的(低水印)的时间参数。在不需要太大的开销情况下,他们能提供非常宝贵的统计数据,否则需要用目标软件来实现,或采集数据并发送到片外以作后续处理。

  3. 跟踪

  一种成本很高但非常有用的硬件辅助监测是跟踪。在这种中,总线事务被记录在专用的片上存储器中,这样一来,可以捕获导致产生一个事件的最后的N个总线事务。

  上载捕获的数据

  一般来说,你会上载数据到一个开发系统中(如电脑),或者上载到一个监控模块作进一步。一旦确定需要采集什么样的调试信息,以及如何采集以尽量减少干扰,那么必须决定如何从芯片向外发送数据-理想的情况是在应用程序还在运行时能够发送。

  应该做的是缓冲器深度和上载频率之间的折衷。你调试数据缓冲器越小,上载数据的频率越高。频繁上载将对系统性能产生持续的影响。如果有一个大的存储器池用于缓存调试数据,那么采集数据对系统性能的影响就会较小。然而,更大缓冲器则需要更多的目标存储器,在运行期间上载数据对系统性能的影响将更显着。

  当采集比芯片上能提供的还多的数据时,将不可避免地在获取的数据中引入空隙。在这些情况中,有必要周期性地插入足够的关联信息,以确保数据在最终从片上捕获后能被成功解码。对数据打包或者引入周期性的“同步点”是在数据流中提供这种额外信息的两种。可以作为数据上载过程的一部分来完成这个工作,这样冗余的信息就不必存储在片上。

  如果在一个SoC中多个CPU内核共同工作,常常需要并行地对每个内核上载获取的信息,以便体现一个系统的完整情况。如果多个上载路径不可用,要么在上载之前将来自多个内核的数据结合起来放到一个缓冲器中,要么将它们按照某种方式复用起来以共享上载路径。同样的,在决定处理这些问题的最佳方法时,需要考虑系统的动态特性和数据的相对重要性。如果有很多相对不重要的数据来自其中的一个内核,而另外一个内核偶尔会发送一些重要信息,你需要采用一种方法确保重要的信息能优先于非重要的信息。

  可视化及

  可视化技术最早运用于计算科学中,并形成了可视化技术的一个重要分支——科学计算可视化(Visualization in Scientific Computing)。科学计算可视化能够把科学数据,包括测量获得的数值、图像或是计算中涉及、产生的数字信息变为直观的、以图形图像信息表示的、随时间和空间变化的物理现象或物理量呈现在研究者面前,使他们能够观察、模拟和计算

  将从SoC中产生的原始信息转换成一种易于理解的格式对SoC本身提出了许多挑战。能采集到的数据种类、用于采集这些数据需要的特定硬件机制以及各类不同的应用,用户需要解决所有这些特殊的问题,这通常是克服这些挑战所需的灵活性的最佳方法。使用一种模块化的框架使其很容易将来自不同的数据流的数据进行关联,针对特定类型的信息关联的数据,并以一种易于理解的形式显示这些从数据中得到的信息。这里描述了这种框架应该提供的一些功能类型实例:

  1. 关联数据点

  在解决一个多处理器SoC中的瓶颈、竞争或负载均衡这类系统级问题时,可能需要从多个处理器和加速器采集数据。在这种情况下,重构系统行为需要将多个记录关联到一个时间线。在某些系统上,从其它内核来访问的方式利用时钟。如果公共时钟不可行,可以使用其他机制来周期性地同步多个内核的时间。其中的一个方法是使用中断来将一个同步时间戳通过共享存储器传递。

  2. 分析基础架构

  一种模块框架能够将常见的分析活动制作成模块,这些模块能用来实现很多不同的分析和可视化工具,例如,一种普通的可定制数据转换器和表格,可以很容易用于创建一种消息记录浏览器;来构造送往其它分析模块的数据;一种用来分析过去一段时间的高水位标志的模块能为特定应用的Dashboard、带宽利用率监测器等提供一些基本依据。

  3. 可扩展性

  这是指音箱是否支持多声道同时输入,是否有接无源环绕音箱的输出接口,是否有USB输入功能等。低音炮能外接环绕音箱的个数也是衡量扩展性能的标准之一。普通多媒体音箱的接口主要有模拟接口和USB接口两种,其它如光纤接口还有创新专用的数字接口等不是非常多见,因此不多作介绍。

  尽管可以用一些普通组件来评估所采集的大量数据,但最好是能够构造定制组件来扩展工具的环境。

  4. 可配置性

  可视化工具对于从大的缓冲器上载中提取有意义的信息非常关键,开发者需要能配置工具来强调特殊的差异性和数据峰值以发现一般的行为和异常的行为。为了从目标对象上卸载数据处理,所用工具应该提供允许将智能特性构建到工具中的可编程基本功能,并减少需要采集的数据量。还应该提供足够的控制以确定在任何给定的时间,来规定应该采集什么样的数据。

  看看现实

  获得对SoC系统的挑战当然并不是微不足道的小事。采集到足够的信息来产生不需要校正的有意义的结果,需要一种系统级的方法。通过使用软件工具库,利用硬件辅助监测以及对数据如何从芯片上发送出来的管理,增加准确性、宽度、深度和采集数据的粒度,使得开发者能采集更多的可靠信息。新的灵活工具套件和软件开发策略将帮助开发者来应对测试和调试用于具有高精度和高置信度的应用的SoC架构的挑战。



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭