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/AM5728:运行init脚本时获取"(错误-1065 @ 0x3D5A)无法访问设备内存"。

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/661696/ccs-am5728-getting-error--1065-0x3d5a-unable-to-access-device-memory-on-running-the-init-script

部件号:AM5728

工具/软件:Code Composer Studio

大家好,  

我尝试在BeagleBoard X15的Cortex-M4上运行HelloWorld。  

连接A15并运行init脚本 AM572x_multicore_EnableAllCores()后,我得到以下输出。  

CortexA15_0:在长度0x4的第0页0x5416.0244万处写入内存块时出现问题:(错误-1065 @ 0x3D5A)无法访问设备内存。 验证内存地址是否在有效内存中。 如果错误仍然存在,请确认配置,关闭电源后重启板和/或尝试更可靠的JTAG设置(例如,Lower TCLK)。 (仿真软件包7.0 AM572x_multicore_EnableAllCores()) 100.0
不能进行评估。
目标无法在
	*(unsigned int *)(0x5416.02万+0x00000044)=(unsigned0.0044万=(unsigned int)(((0x5<4)|0x1)[AM572x_multicore_reset.gel:18]
	AM572x_multicore_EnableAllCores()处写入0x5416.0244万 

完整的调试控制台日志为:  

Cortex_M4_IPU2_C0:Gel输出:-->>AM572x Cortex M4启动顺序正在进行... <<!--
Cortex_M4_IPU2_C0:GEL输出:-->>AM572x Cortex M4启动顺序完成! <<!--
Cortex_M4_IPU2_C1:GEL输出:-->>AM572x Cortex M4启动顺序正在进行... <<!--
Cortex_M4_IPU2_C1:GEL输出:-->>AM572x Cortex M4启动顺序完成! <<!--
Cortex_M4_IPU1_C0:GEL输出:-->>AM572x Cortex M4启动顺序正在进行... <<!--
Cortex_M4_IPU1_C0:GEL输出:-->>AM572x Cortex M4启动顺序完成! <<!--
Cortex_M4_IPU1_C1:GEL输出:-->>AM572x Cortex M4启动顺序正在进行... <<!--
Cortex_M4_IPU1_C1:GEL输出:-->>AM572x Cortex M4启动顺序完成! <<---
IcePick_D: Gel输出:IPU RTOS从等待重置中释放。
IcePick_D:GEL输出:IPU SIMPC从等待重置中释放。
IcePick_D:凝胶输出:IVAHD C66从等待重置中释放。
IcePick_D:凝胶输出:IVAHD ICONT1从等待重置中释放。
IcePick_D:凝胶输出:IVAHD ICONT2已从等待重置中释放。
CS_DAP_DebugSS:Gel输出:-->>>将调试DPLL设置配置为1.9 GHZ <<--
CS_DAP_DebugSS: Gel输出:>设置DebugSS 1.9GHz进行中...
CS_DAP_DebugSS:Gel输出:<完成设置DebugSS跟踪导出时钟(TPIU)至97MHz
CS_DAP_DebugSS:Gel输出:<完成设置DebugSS PLL计时1.9GHz
CS_DAP_DebugSS:
Gel输出:<完成设置DebugSS ATB计时380MHz CS_DAP_DebugSS: < Done with Setup DebugSS Trace export clock (TPIU) to 97MHz
CS_DAP_DebugSS: Gel Output:-->>> Turning on L3_INSTR and L3_3 Clocks required for debug instrument.(将设置DebugSS跟踪导出时钟(TPIU)设置为97MHz CS_DAP_DebugSS: Gel输出:-->>>打开调试设备所需的L ----
CS_DAP_DebugSS:Gel输出:-<<< L3工具时钟已启用>>>-
-CS_DAP_DebugSS:Gel输出:-->>映射计时器将源代码禁止发送到默认内核<<<<< ---
CS_DAP_PC:Gel输出:Cortex-A15 1未处于WIR模式,因此没有什么可做的。
CortexA15_0:Gel输出:-->>>将计时器挂起源映射到默认内核<<<<< ---
CortexA15_0:在长度0x4的第0页上0x5416.0244万写入内存块时出现问题:(错误-1065 @ 0x3D5A)无法访问设备内存。 验证内存地址是否在有效内存中。 如果错误仍然存在,请确认配置,关闭电源后重启板和/或尝试更可靠的JTAG设置(例如,Lower TCLK)。 (仿真软件包7.0 AM572x_multicore_EnableAllCores()) 100.0
不能进行评估。
目标无法在
	*(unsigned int *)(0x5416.02万+0x00000044)=(unsigned0.0044万=(unsigned int)(((0x5<4)|0x1)[AM572x_multicore_reset.gel:18]
	AM572x_multicore_EnableAllCores()处写入0x5416.0244万 

感谢您的任何帮助。  

此致  

Chris  

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

    我发现地址在 L3_INSTR内存映射中,并且我发现PMIC不在POWERHOLD模式下,8秒后关闭。 我解决了这个问题。  

    现在,我在 0x4ae0.651万 ( L4_WKUP内存映射)上遇到了写入问题。  

    CortexA15_0:在长度0x4的第0页上0x4ae0.651万处写入内存块时出现问题:(错误-1065 @ 0x3D5A)无法访问设备内存。 验证内存地址是否在有效内存中。 如果错误仍然存在,请确认配置,关闭电源后重启板和/或尝试更可靠的JTAG设置(例如,Lower TCLK)。 (仿真包7.0 IPU1SSClkEnable_API() 100.0
    )无法评估。
    目标无法在
    	*(unsigned int *)(CPU_num=1)处写入0x4AE0.651万? (((((0x4AE0万+0x6000)+0x500)+0x10):6000:((((((0x4AE0万+0x6000)+0x700)+0x210)))))=(unsigned int)6000 int) 0x7 [AM572x_multicore_reset.gel:18]
    	IPUSSClkEnable(1)[AM572x_multice_reset_Multiore_CPU_RESET.1IP_IPD
    	出现故障
    

    有任何提示?

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

    您好,

    这似乎很奇怪,但我怀疑在目标上运行的预加载软件(Linux或预刷新软件)可能会导致此中断。

    您可以打开内存浏览器并检查故障内存区域。 您在特定地址看到了什么? 您可以修改它吗?  

    如果不能做到这一点,也许您可以尝试在u-boot上停止自动启动进程(在Linux启动之前),看看连接后情况是否有所改善。  

    我无法在大型AM572x EVM中重现此问题,但在我的案例中,我没有运行代码。

    希望这能有所帮助,

    拉斐尔

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

    您好,  

    感谢您的回复。  

    令人惊讶的是,eMMC正在运行Linux。  

    绕过A15内核是否仍然可以调试Cortex-M4? 是否有一些资源源/维基页面可以继续阅读?  

    此致  

    Chris  

    代码编辑器工作室:7.4 .0.0.0015万

    硬件:BeagleBoard X15

    调试探测器:来自Olimex的XDS100v3

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    切换至CCS 6.2 Tm0解决了我的问题。 现在,我可以在运行Linux时连接到Cortex M4,而不会收到错误消息。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Chris,

    感谢您反馈您的发现。 这当然是一个令人惊讶的结果,我可以想到一个可能对这有直接影响的组件:随6.2 一起提供的GEL文件与7.4 .0的文件不同。

    我将尝试查找BeagleBoard X15并在此处重现此问题。 如果我发现任何相关信息,我会报告。

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

    我做了进一步的测试,因为6.2 开始抛出错误并说“无法访问DAP”。我将RTOS SDK安装到CCSv6所在的目录中,然后单击整个更新过程。

    7.3 同样如此。 在没有RTOS SDK的情况下工作-并且"无法访问DAP"。使用RTOS SDK。

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

    我不确定我是否理解新方案,因为任何已安装的SDK只会在连接的设备加载到该设备时对其产生影响。 否则,它会安静地放置在硬盘中,而不会移动。

    如果您在将SDK代码加载到设备后遇到这些问题,则可能会解释错误消息-可能是软件导致设备意外锁定。

    如果发生这种情况,您可以尝试执行的一个细节是禁用自动运行到main(),并查看是否可以将代码从入口点单步执行到main。

    要禁用此功能,请检查"自动运行"和"启动"选项小节:
    software-dl.ti.com/.../sdto_ccs_debug-handbook.html

    此致,
    拉斐尔