This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/AM6548:DSS API 使用 System_View 而不是 APB_View

Guru**** 2193680 points
Other Parts Discussed in Thread: AM6548
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/782468/ccs-am6548-dss-api-to-use-system_view-instead-of-apb_view

器件型号:AM6548

工具/软件:Code Composer Studio

CCS 8.2.0、AM65xx IDK

当我使用 CCS 连接到 DAP (CS_DAP_0)时、我看到默认情况下、它会出现在 APB_View 中、并且我无法在各种地址看到我正在查找的数据。  切换到 System_View 可解决此问题。  我正在编写一个脚本、在其中连接到 CS_DAP_0并希望读取这些相同的地址、但我看不到如何从 DSS 中以编程方式选择相同的 System_View。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Brad、您好!

    [引用 user="Brad Griffies"]当我使用 CCS 连接到 DAP (CS_DAP_0)时,我看到它默认出现在 APB_View 中

    您是否参考了"Memory Browser"视图? 当我为 DAP 打开它时、它似乎始终默认为 System 视图。 但我使用的是不同的目标(Vayu)

    [引用用户="Brad Griffies"]。  我正在编写一个脚本、在其中连接到 CS_DAP_0并希望读取这些相同的地址、但我看不到如何从 DSS 中以编程方式选择相同的 System_View。

    我正在浏览 API 文档、但看不到在不同模式之间切换的方法。 我会不断挖掘并随时为您发布信息

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    APB 视图到底是什么?  我甚至找不到首字母缩略词的含义。  我可以理解为什么 ARM 内核有两种不同的视图、即我假设有不同的选项可能会考虑高速缓存和/或 MMU。  但是、对于 DAP、我只需要一个视图。

    顺便说一下、问题的另一种解决方案可能是有方法将我的 CCXML 文件设置为默认为 DAP 的 System_View、或者在某个位置有某种类型的 CCS 首选项来禁用 DAP 的 APB_View。  我们可以通过很多方法来解决这一问题。  DSS API 是我们想到的第一件事、但我愿意接受其他想法。  最终、我的目标是使用 DAP 读取寄存器位置列表。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我忘记了提到、我还确认了 APB_VIEW 似乎是 AM65xx 上 DAP 的默认设置。  例如、我执行了以下快速测试:

    1. 连接到 AM6548 DAP。  我看到 APB_VIEW 已设置。
    2. 手动更改为 System_View。
    3. 已从 DAP 断开。  一旦我断开连接、我就会看到窗口改回 APB_VIEW。
    4. 已重新连接到 DAP。  它保持在 APB_VIEW 上。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我刚刚在 AM65xx 上尝试过这种方法、您是对的。 在该器件上、每次内存浏览器视图默认为 APB_VIEW。

    如果我不得不猜测、我怀疑您可以指定 APB_VIEW 和 System_View 映射、这与使用 DSS 存储器 API 时指定存储器页面(Memory.Page)类似。 我需要确认这一点。

    谢谢
    Ki
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Brad Griffies"> APB 视图到底是什么?  我甚至找不到首字母缩略词的含义。  我可以理解为什么 ARM 内核有两种不同的视图、即我假设有不同的选项可能会考虑高速缓存和/或 MMU。  但是、对于 DAP、我只希望看到单个视图。

    我也不确定。 我在深入研究 ARM 文档并发现:

    http://infocenter.arm.com/help/topic/com.arm.doc.epm039795/coresight_technical_introduction_EPM_039795.pdf

    "外部托管的调试代理和片上调试代理(例如调试监视器)都需要访问调试组件。 在 CoreSight 内、这些调试组件在一个专用总线上、即调试 APB 上提供。 这可确保系统存储器空间和调试存储器空间之间的清晰分离。 Cortex-M 处理器是一个例外、其中共享 AHB 互连支持系统存储器和调试访问、这是一种面积缩减的折衷方案。"

    这似乎有点解释

    [引用 user="Brad Griffies"]最终我的目标是使用 DAP读取寄存器位置列表

    您是否尝试了 DSS ReadRegister API?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 USER="Ki-Soo Lee">如果我不得不猜测、我怀疑您可以指定 APB_View 和 System_View 映射、类似于在使用 DSS 存储器 API 时指定存储器页面(Memory.Page)。 我需要确认这一点。

    Ki --你是对的!  谢谢。  不是很直观、但设置 Page=2似乎对应于使用 System_View、即我在执行读取时返回预期结果。

    在我的脚本中、我做了这一简单的更改、一切都开始为我工作:

    已损坏:

    值= debugSessionDAP.memory.readWord (0、CTT_register[i]、false);

    工作:

    值= debugSessionDAP.memory.readWord (2、CTT_register[i]、false);

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Brad Griffies"]不是完全直观

    是的、当然不是。 我认为这应该记录在某个位置... 但在哪里呢? 从 DAP 访问系统内存是否是常见的问题? 我认为更好的更改是翻转它、以便 System_View 改为 PAGE 0 (默认值)。 我不仅怀疑这是更常见的用例、还会与其他将 System_View 作为默认值的器件保持一致。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Ki-Soo Lee"]正在从 DAP 访问系统内存,这是一种常见的操作

    我通常喜欢 DAP、因为您可以低调地查看存储器(即无需停止 ARM)。  它在基于 ARM 的器件中特别方便、因此您不必担心 MMU。  关于 Sitara 器件上的调试问题、我主要使用 DAP 在基于 Linux 的系统中进行低级调试。  RTOS 用户可能已经在使用 JTAG 与 ARM 通信、因此不太常见。

    [引用 USER="Ki-Soo Lee">我认为更好的更改是将其翻转、以便 System_View 改为第0页(默认)。 [/报价]

    对于任何新器件、是的、将 System_view 设置为默认值会非常有意义。  如果您更改 AM65xx 上的行为、您会使我的操作更加困难、因为我需要向脚本添加一些额外的智能功能、以确定是使用 PAGE 0 (例如、对于较新的 CCS 版本)还是使用 PAGE 2 (对于较旧版本)。  我以前做过这种事情、所以这不会是世界的尽头。

    做出这种改变可能会避免很多尝试使用 DAP 的人提出的问题、并会混淆他们为什么看不到内存。  因此、让它单独或更改它对我来说是好的。  在文档方面、嗯、希望这个主题是人们在遇到问题时可以找到的内容。  我怀疑只有少数人使用 DAP、更小的一小部分是为 DAP 编写脚本。  因此、这可能不是一个需要解决的紧迫问题(尽管我感谢您帮助我解决了这个问题!)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的反馈 Brad。 我们将对此进行一些探讨、以了解对客户最有意义的是什么。 最好的做法可能是对此主题中的信息进行常见问题解答。