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的cpu reset的操作意义

我在ccs上,用sd卡的sbl的MLO文件启动内核,ccs连上A15核,采用memory load二进制文件的方法,load到0x80000000这个ddr地址中,能正常运行,但是我用sd卡中的uboot进行相同的操作时,连上A15核后需要进行cpu reset操作,否则无法正常运行bin文件,(现无法在uboot命令行启动bin文件)请问为什么sbl不需要cpu reset呢?两个问题,1.是sbl里面有对寄存器进行了相应的操作吗?2.cpu reset对cpu进行了何操作

  • 请问用的是哪款芯片?

    CPU reset的定义如下
    CPU Reset – Typically isolated to reset just the core, not the entire device. In multi-core devices typically isolated to a single core. In devices that support a software reset, a CCS Reset may be equivalent.
    processors.wiki.ti.com/.../Emulation_Resets
  • 你发的那个,我刚刚也搜到了,但是我观察寄存器,并没有发现cpu有进行相应的复位操作,复位寄存器的数值也没有改变
  • 在ccs里调试uboot的方法可以参考下面的文档。
    www.ti.com.cn/.../zhca539.pdf

    如果在脱机的情况下uboot能启动的话,那么仿真器里需要先CPU reset一下再执行代码就没影响了。
  • 问题1:如果我在仿真器里cpu reset,是否会把uboot代码擦除。因为我现在只是想uboot加载裸机程序,如果我在仿真器里reset,那的确能执行代码。问题2:如果我没有连仿真器,我在uboot命令行(也就是串口软件)该如何模仿这个reset的操作才能正常执行代码。问题3:为什么cpu reset 后能正常运行?
  • 1. CPU reset不会擦除uboot代码。
    2. 没有连仿真器时,uboot不能加载内核?
    3. 您看一下cpu reset后,是不是pc指针指到代码的入口地址了?
  • 没有连仿真器的时候,我在uboot 执行fatload bin文件到ddr的内存,然后go到内存(例程指定进入点)里面去,不能加载我的文件(普通例程不是内核)。仿真器连上cpu后,通过load memory(非load program,不会自动识别pc指针)将bin文件load到ddr内存里面,然后还需通过register将pc指针指导代码入口地址,此操作和uboot命令行是同等意义的。但唯一不同是,我在ccs上执行cpu reset操作后以上我所说的仿真过程才能正常运行,所以我uboot中无法执行此bin文件。
  • 调试的过程中gel文件也需要执行cpu reset,请问有sbl的详细解释吗