您现在的位置: 主页 > 嵌入式处理器 > FPGA > 如何利用嵌入式仪器调试SoC? - 片上可编程系统 -
本文所属标签:
为本文创立个标签吧:

如何利用嵌入式仪器调试SoC? - 片上可编程系统 -

来源: 网络用户发布,如有版权联系网管删除 2018-08-11 

  随着系统级芯片(SoC)的复杂度不断提高,软、硬件开发融合所带来的挑战已经不可小觑。这些功能强大的系统现在由复杂的软件、固件、嵌入式处理器、GPU、存储控制器和其它高速外设混合而成。更高的功能集成度与更快的内部时钟速度以及复杂的高速I/O相结合,意味着提供正常运行、并经过全面验证的系统比以前变得更难。

  传统上,软件验证和调试及硬件验证和调试一直是两个不同的世界。通常情况下,软件团队和硬件团队各自为政,前者专注于编程模型内部的软件执行,后者则在硬件开发框架内进行调试,其中时钟周期精度、并行运行及调试数据回溯原始设计的关系是关键。理论上,经过全面调试后,软件和硬件应无差错地协同运行。但在实际环境中,无差错协同运行的情况不多,正因如此,经常会导致关键成本上升及产品开发周期延误。

  为在合理的成本和时间范围内实现更高的集成度,业界必须转向新的方法:设计的洞察。换句话说,如果我们想能够高效地持续验证和调试这些系统,工程师们必须提前设计成能够提供全面的系统视图。其中的关键是能够了解涵盖硬件领域和软件领域的各种行为之间的临时关系。本文介绍了使用嵌入式仪器调试SoC的一种方法,说明了通过整合硬件调试视图和软件调试视图,可以更快、更高效地调试整个系统。

  构建测试台

  图1所示的SoC 由一块32位RISC指令集处理器及一条AMBA APB外设总线组成,处理器连接到AMBA AHB系统总线上。SoC还包含一个DDR2存储控制器、一个千兆位以太网网络适配器、一个Compact Flash控制器、VGA控制器及多个低速外设接口。SoC运行Debian GNU Linux操作系统第4版,这一操作系统运行v2.6.21内核。处理器核心工作频率为60MHz,DDR存储控制器工作频率为100MHz,其它I/O 外设在33MHz~12MHz之间的基本频率上运行。整个SoC在Virtex-5开发板卡上实现。

 图1. SoC基线测试台 

  图1. SoC基线测试台

  总体上看,这一系统是一台全功能计算机,能够提供基于终端的用户接入,能够连接互联网,运行应用程序,安装文件系统等等。SoC的这些特点产生了复杂的调试场景,给硬件调试设施和软件调试设施的功能带来了压力。在大多数情况下,关键操作都同时涵盖硬件和软件。

  调试基础设施

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

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



              查看评论 回复



嵌入式交流网主页 > 嵌入式处理器 > FPGA > 如何利用嵌入式仪器调试SoC? - 片上可编程系统 -
 

"如何利用嵌入式仪器调试SoC? - 片上可编程系统 -"的相关文章

网站地图

围观()