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.

DM8148双核通信



各位前辈大家好

    看了几天用户手册,想自己调试下双核通信的例子,用的是CCS 5.4.0,仿真器是xds100 v2,DM8148板上只有两个核(arm和dsp),建立arm和dsp工程,选择IPC例子中的TI81xx模板的messageq工程,然后将两个工程编译并分别加载到对应的核中。当我单步调试的时候发现程序貌似跑到ipc_start函数中出不来了。我现在不清楚问题出在哪里,例子中说是4个核,应该要改成2个核的话,但是我在cfg.xs文件中没找到配置两个核的地方。请各位前辈能够指导下怎么才能把这个例子正确地运行起来,谢谢啦

 

某小白

  • messageq例子可以参考:

    http://e2e.ti.com/support/embedded/linux/f/354/t/199108.aspx

  • 谢谢kooking的回答,但是回复中提到的帖子对我来说难度太大,有很多不懂的地方。能不能指导下怎么把简单的IPC例子用起来呢?在模板工程的基础上,因为我没有找到在cfg文件中配置核的相关部分,所以我把DSP工程的目标处理器(nextProcID)改为ARM的ID,把ARM工程的目标处理器改为DSP的ID,将procSync值改为ProcSync_PAIR,手动attach两个核,这样使得ARM和DSP互相通信。但是这样不对,因为Ipc_start函数在Ipc_attach前调用,程序在Ipc_start函数中出不来。哪位大神能指导下啊,谢谢

  • 可以参考syslink包中example的例子。

  • 谢谢您的回答。

    我感觉我弄明白了。问题出在ipc_attach函数中,由于IPC例子中的ipc_start函数是在bios_start函数之前执行的,此时核处于初始化的状态,并没有准备好,所以核会持续尝试导致ipc_start不能返回。在bios系统中,ipc_attach函数需要放在task里,这样就可以了。

    现在我出现的新问题是,ccs v5.4.0中我在ARM上debug IPC例子时有时候会找不到main函数,很奇怪。哪位大侠能解答下吗?