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.

TMS320C6678: 核0启动核1,核1没有运行起来

Part Number: TMS320C6678

1、我设计是单镜像带SYSBISO系统的程序。分别做了以下实验。

2、实验一:Debug模式,用仿真器给每个核都加载程序,对所有核都点击resume , 所有核都能正常运行。

3、实验二:Debug模式,用仿真器给每个核都加载程序,只对核0点击resume,则只有核0正常运行,核1没有启动。(由此结果推测,不是cfg文件里的段内存分配问题,因为每个核都加载了代码)

4、实验三:Debug模式,用仿真器给每个核都加载程序,对所有核都点击resume ,对核1的代码设置断点,查看0x87fffc里有没有程序入口地址,发现是有的。

由以上我推测是IPC中断失效。可是要使IPC中断有效,还需设置哪些。

#define BOOT_MAGIC_ADDRESS0 (*((volatile unsigned int *)(0x1087FFFC)))
#define BOOT_MAGIC_ADDRESS1 (*((volatile unsigned int *)(0x1187FFFC)))
#define BOOT_MAGIC_ADDRESS2 (*((volatile unsigned int *)(0x1287FFFC)))
#define BOOT_MAGIC_ADDRESS3 (*((volatile unsigned int *)(0x1387FFFC)))
#define BOOT_MAGIC_ADDRESS4 (*((volatile unsigned int *)(0x1487FFFC)))
#define BOOT_MAGIC_ADDRESS5 (*((volatile unsigned int *)(0x1587FFFC)))
#define BOOT_MAGIC_ADDRESS6 (*((volatile unsigned int *)(0x1687FFFC)))
#define BOOT_MAGIC_ADDRESS7 (*((volatile unsigned int *)(0x1787FFFC)))

#define IPCGR_0_REGS (*((volatile unsigned int *)(0x02620240)))
#define IPCGR_1_REGS (*((volatile unsigned int *)(0x02620244)))
#define IPCGR_2_REGS (*((volatile unsigned int *)(0x02620248)))
#define IPCGR_3_REGS (*((volatile unsigned int *)(0x0262024C)))
#define IPCGR_4_REGS (*((volatile unsigned int *)(0x02620250)))
#define IPCGR_5_REGS (*((volatile unsigned int *)(0x02620254)))
#define IPCGR_6_REGS (*((volatile unsigned int *)(0x02620258)))
#define IPCGR_7_REGS (*((volatile unsigned int *)(0x0262025C)))