Hello,
I was playing with the MPC5777C using the NXP MPC5777CEVB and I wanted to develop some basic application that would make the two cores interact. I used the Green Hills toolset (compiler, debugger and probe) and followed AN5191 to initialize the board, integrating the code provided there with the Green Hills start files.
My application is:
====
已解决! 转到解答。
You can two options:
- either you use cache inhibited attribute for shared RAM memory region
- or you will configure cache coherency unit, on this device called Platform Coherency Unit (PCU) (Chapter 7), only in this case MMU TLB attribute M is applied.
If the issue is related to coherency. Another point is that SRAM is accessed over XBAR one port, and one core has priority over another. Easiest way to test it is to use round robing for all slaves as following:
/* set round robin for all slaves */
XBAR.PORT[0].CRS.B.ARB = 1;
XBAR.PORT[1].CRS.B.ARB = 1;
XBAR.PORT[2].CRS.B.ARB = 1;
XBAR.PORT[3].CRS.B.ARB = 1;
XBAR.PORT[4].CRS.B.ARB = 1;
XBAR.PORT[6].CRS.B.ARB = 1;
XBAR.PORT[7].CRS.B.ARB = 1;
You can two options:
- either you use cache inhibited attribute for shared RAM memory region
- or you will configure cache coherency unit, on this device called Platform Coherency Unit (PCU) (Chapter 7), only in this case MMU TLB attribute M is applied.
If the issue is related to coherency. Another point is that SRAM is accessed over XBAR one port, and one core has priority over another. Easiest way to test it is to use round robing for all slaves as following:
/* set round robin for all slaves */
XBAR.PORT[0].CRS.B.ARB = 1;
XBAR.PORT[1].CRS.B.ARB = 1;
XBAR.PORT[2].CRS.B.ARB = 1;
XBAR.PORT[3].CRS.B.ARB = 1;
XBAR.PORT[4].CRS.B.ARB = 1;
XBAR.PORT[6].CRS.B.ARB = 1;
XBAR.PORT[7].CRS.B.ARB = 1;
Hello David,
Thanks for your help! In my case, all I needed (at least, things look like they are working...) was some code to enable the PCU. I set PCU_CESR to 0x0000_3001 so that it would be active and monitoring global writes by both cores. Is that correct?
As for the XBAR, does it manage access over the internal Flash, too?
Thanks,
Ricardo