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.

F28377D 中cpu1的cmd 和cpu2的cmd问题

现在正使用F28377D的2837xD_RAM_lnk_cpu1.cmd  和2837xD_RAM_lnk_cpu2.cmd 发现cpu1里的cmd文件是有共享内存的,cpu2的cmd文件中,没有,这是问什么,那cpu2的一些变量怎么能放在共享内存里共享呢?


如上两图所示的cmd

  • GSx这一部分需要修改寄存器确定所属CPU,默认都是CPU1,所以CPU2里没有定义

    双核例程里有一个内核通讯的程序,可以参考

  • 您好,我看了一下数据手册上的说明,有一个GSxMSEL寄存器,由这个寄存器选择GSx归属哪。个cpu,现在有两个问题,
    1.初始化时用这个寄存器分配GSx,是不是提前也要把两个cpu的cmd文件改好,比如将GS1、2、3、4、5、6分配给CPU1,GS7-15分配给cpu2,就要把两个核的cmd文件改写,将下面这些写到cpu2的cmd里
    RAMGS7 : origin = 0x013000, length = 0x001000
    RAMGS8 : origin = 0x014000, length = 0x001000
    RAMGS9 : origin = 0x015000, length = 0x001000
    RAMGS10 : origin = 0x016000, length = 0x001000
    RAMGS11 : origin = 0x017000, length = 0x001000
    RAMGS12 : origin = 0x018000, length = 0x001000
    RAMGS13 : origin = 0x019000, length = 0x001000
    RAMGS14 : origin = 0x01A000, length = 0x001000
    RAMGS15 : origin = 0x01B000, length = 0x001000

    2.手册上说,这些GSX分配给一个CPU之后,另一个cpu就只能读了,不能写,那请问有没有一个区域,定义的变量两个cpu都能读写呢,谢谢

  • 各位专家指导一下

  • 急。求解

  • 你的第一个问题是什么?GSRAM确实需要在初始化分配的。一旦分配给一个CPU,另一个就不能写了。如果要互相读写,建议使用IPC总线