PowerPC架构嵌入式系统内核与模块调试方法

2 下载量 108 浏览量 更新于2024-08-30 收藏 222KB PDF 举报
"嵌入式系统/ARM技术中的Powerpc构架系统内核和内核模块调试" 在嵌入式系统开发中,特别是在基于PowerPC架构的系统中,内核和内核模块的调试是至关重要的一个环节。本文档由易松华,华清远见嵌入式学院深圳中心的讲师撰写,主要针对freescale MPC8349E-mITX平台,同时也适用于采用PowerPC、MIPS或ARM芯片的其他系统。文档中强调了简化内核调试流程的方法,通过利用目标系统的UBoot来初始化板子,并通过UBoot或BDI2000加载内核到目标板的RAM中运行。 BDI2000(Background Debug Module)是一种常见的微处理器调试工具,它允许开发者在目标系统运行时进行调试。在MPC8349E-mITX平台上,需要配置BDI2000以适应该特定硬件。配置文件包含了对CPU类型、JTAG时钟速度、启动模式等关键参数的设定。例如,设置CPUTYPE为8349以匹配处理器型号,JTAGCLOCK设为1,表示使用默认时钟。STARTUPRUN意味着在启动后立即运行代码,BREAKMODEHARD则指定使用硬断点进行调试,而STEPMODEHWBP则指示使用硬件断点进行单步调试。BOOTADDR用于指定内核加载的地址。 在实际操作中,可能遇到如“Writing to workspace failed”这样的错误,此时可以通过修改RCW(Reset Control Word)设置来解决。RCW是控制处理器复位行为的字,文档中提到的RCW0xb060a0000x04040000设置,可以调整闪存窗口的位置,以便在DDR内存低地址空间保留足够的空间。 此外,调试过程中可能会遇到目标板在重置后无法在0x100地址处暂停的问题,这可能需要断电几秒钟后再尝试。这样的提示对于解决硬件层面的调试问题非常有用。 这份文档提供了一种实用的方法来调试基于PowerPC架构的嵌入式系统内核和模块,不仅适用于freescale MPC8349E-mITX,还能够为其他类似架构的系统提供参考。通过理解BDI2000配置和UBoot在内核调试中的作用,开发者可以更有效地定位和解决问题,提升开发效率。