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.

C6455自启动



选择EMIFA口进行加载,但是在上电后程序指针停留在内部rom中,无法跳转到0xb0000000,也就是无法将flash的前1k的二次引导代码加载到0x00800000处,因此无法完成正常加载。板子可以在线调试,上电后的配置引脚状态也对,有没有知道是什么原因的?

调试时将程序指针手动改到0xb0000000处,即可将1k代码复制到0x00800000处,然后也可以正常的将后续程序搬移到L2中。

  • 核实一下Device Status Register (DEVSTAT)寄存器的 BOOTMODE[3:0] = 0100b? EMIFA_EN=1?

  • 这些寄存器的设置是对的,另外我的PCI_EN引脚设置为1,HPI和PCI复用功能选择的PCI。然后今天我更改了PCI_EEAI(P25)引脚为低,HPI_WIDTH(R25)引脚为高,做了如此的更改以后,DSP可以正常进行自启动了。我查看了这两个引脚的作用,貌似跟自启动没有关系,但是更改后确实可以正常工作了,不知道是什么原因。

  • 您好

    我最近刚上手6455,现在也在调自加载的部分。想问一下如何运行二次加载的程序,是在1K字节搬移完成后直接从0X00000000地址运行程序么?如果是,那么二次加载的程序是否需要主函数?或者二次加载的程序只是一个子函数,只需将子函数放到0x00000000地址即可?