【问题标题】:How does JTAG influence overall system performance and its downsidesJTAG 如何影响整体系统性能及其缺点
【发布时间】:2021-03-18 14:36:51
【问题描述】:

我来自非嵌入式软件领域,我想我了解 JTAG 的概念和用例,但我仍有一些悬而未决的问题。 我的最终目标是为芯片固件构建 CI 管道。该管道基本上包含两个主要内容:运行集成测试和在固件因某种原因失败时收集“内存转储”的能力。 我的问题:

  1. 使用 JTAG 是否会影响芯片的整体性能(功耗、任务执行时间等)?
  2. 是否可以在特定事件发生时收集内存寄存器状态?
  3. 一般来说使用 JTAG 的缺点?

【问题讨论】:

    标签: debugging embedded signal-processing firmware jtag


    【解决方案1】:

    使用 JTAG 是否会影响整体性能? 芯片(功耗、任务执行时间等)?

    通常不会,但您应该查看目标的数据表/参考手册以了解其特定片上调试实现的详细信息。在这种情况下,JTAG 本身只是对片上调试的通信接口的定义。

    这可能取决于您如何使用 JTAG。如果只对片上闪存进行编程,则不会对运行时产生影响。如果在运行时使用它来读取内存或流式调试数据,则可能是另一回事,因为片上调试和内核之间可能存在总线争用。

    是否可以在特定事件发生时收集内存寄存器状态?

    这取决于您目标的片上调试而不是 JTAG - 正如我上面所说,这只是通信接口,也没有定义任何特定的调试功能。

    一般来说使用 JTAG 的缺点是什么?

    如果您使用 JTAG,它通常会占用无法在应用中使用的多路复用引脚。一些目标使用替代的“单线”接口,例如 ARM 的 SWD。​​p>

    如果您使用片上调试来停止处理器,这可能会改变您的系统实时行为或导致通信链路上的数据丢失或错过异步事件或中断。

    【讨论】:

    • 谢谢。我仍然对性能感到有些困惑。当芯片与JTAG连接时,CPU时钟是由调试工具通过TCK管脚定义的,对吗?如果是这样,与在没有 JTAG 控制器逻辑的情况下运行时的时钟速度相比,它会成为芯片性能的瓶颈吗?
    • @GekaP 不,不正确,这只是单击 JTAG 中的数据。它也是零星的,仅在交换数据时计时。正如我所说,JTAG 与片上调试不同。如果不讨论特定设备,就不可能真正评论性能或功能。
    猜你喜欢
    • 2015-01-10
    • 1970-01-01
    • 2015-02-08
    • 1970-01-01
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多