微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > 基于嵌入式的SoC验证效率测试方案

基于嵌入式的SoC验证效率测试方案

时间:01-08 来源:互联网 点击:

随着科技的发展,系统级芯片(SoC)更高的功能集成度与更快的内部时钟速度以及复杂的高速I/O相结合,这意味着提供正常运行、并经过全面验证的系统比以前变得更难。由于通常情况下,软件团队和硬件团队各自为政,前者专注于编程模型内部的软件执行,后者则在硬件开发框架内进行调试,其中时钟周期精度、并行运行及调试数据回溯原始设计的关系是关键。但在实际环境中,无差错协同运行的情况不多,正因如此,经常会导致关键成本上升及产品开发周期延误。

为在合理的成本和时间范围内实现更高的集成度,业界必须转向新的方法:设计的洞察。本文介绍了使用嵌入式仪器调试SoC的一种方法,说明了通过整合硬件调试视图和软件调试视图,可以更快、更高效地调试整个系统。

调试基础设施过程

处理器核心开发人员一般会提供调试基础设施或是某个核心的一套固定特性或一群核心的可配置插件。不管是哪种形式,调试基础设施都变成了被制造的核心的一部分。然后调试软件使用这个基础设施,为软件开发人员提供调试特性。

与大多数现代处理器类似,这里突出显示的处理器核心支持一套基本调试功能。在本例中,可以通过JTAG访问的“后门”,允许软件调试程序(如GDB)读取和写入系统中的存储器,检测处理器的运行状态。通过这些机制及访问原始软件源代码,GDB和其它软件调试程序可以提供软件断点、单步操作、变量值检查、堆栈跟踪、初始条件配置、交替存储器值及恢复功能。

在大多数情况下,硬件调试设施并不是与构成SoC的硬件IP核心一起提供的。相反,硬件调试设施通常叠加到现有的SoC设计上。造成这种差异的原因有很多。首先,与软件调试不同,硬件要求的底层功能具有多样化特点,通常只有在SoC组装时才能得到全面了解。此外,每种新的SoC通常要求不同的调试基础设施。最后,作为新兴领域,硬件调试的标准化程度不高,生态系统建设不够。因此,硬件调试设施通常被留给各个设计人员,这些设计人员会创建针对不同功能领域的特定调试特性。在大型机构中,通常会开发拥有内部支持的工具和结构。但是,随着SoC的复杂程度不断提高,创建高效硬件调试设施的复杂程度也在不断提高,内部开发工作难以为继。

作为替代方案,测试和测量厂商可以提供完整的设计工具、IP库和工作流程,创建硬件调试设施。图2所示的设置称为Tektronix Clarus Post-Silicon Validation Suite,这一验证套件由多种可以重复配置的嵌入式仪器组成,这些仪器可以连接起来,分布在整个SoC中,创建满足特定功能要求的调试基础设施。Implementer工具可以在RTL级(Vreilog、System Verilog和VHDL)把硬件设计中任何层级的任何信号仪器化。Analyzer通过JTAG或以太网连接,配置和控制嵌入式仪器。最后,Investigator把嵌入式仪器收集的数据向回映射到原始RTL(在仿真环境中),实现更复杂的调试。

图2: Clarus Post-Silicon Vlidtion Suite套件的结构。

嵌入式仪器被应用到SOC中,提供调试基础设施,如图3所示。其中一个重要方面是能够在调试过程中重新配置仪器,针对SoC不同领域中的各种信号和场景。基本仪器称为捕获站,其独立管理观测数据的选择、压缩、处理和存储。多台捕获站通常一起使用,为某个SoC创建特定设计基础设施。在插入过程中,捕获站配置一系列关心的潜在信号、最高同时观测数量以及最大RAM容量。捕获站一般被分配给特定时钟域,同时捕获观测数据。Analyzer从每个捕获站中收集数据,颠倒压缩算法,把每个站中捕获的数据对准,在所有捕获站中生成时间相关的视图。

图3: 硬件调试基础设施。

本例中使用的SoC有四个捕获站:一个位于处理器时钟域,标为1号捕获站(60MHz),针对362个信号;一个位于RX以太网域,标为2号捕获站(25MHz),针对17个信号;一个位于TX以太网域,标为3号捕获站(25MHz),针对17个信号;最后一个位于闪存时钟域,标为4号捕获站(33MHz),针对178个信号。每个捕获站都并行运行,能够选择性地观测任意信号组合。Analyzer工具的最终输出是一个表示实际硅片器件中时钟周期准确信号事务的波形,如图4所示。

图4: SoC波形实例。

尽管软件调试设施和硬件调试设施在目标平台上观测只限于软件问题或硬件问题时效果很好,但在了解涉及软件和硬件交互的行为时,则面临着明显挑战。表1列出了我们的测试台开发过程中遇到的部分问题,以及我们在业界看到的代表性问题。

主要挑战在于,尽管使用软件调试设施或硬件调试设施能够“看到”非预期行为的影响,但通常很难确定观测到的不正确行为到底是因还

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top