I am currently doing an project which requires to partition the CPC of P4080DS by configuring its Partitioning Control Registers in the initialization script from CodeWarrior.
I have created 8 more LAWs, which are LAW10 to LAW 17, each with the size of 256MB. And I have configured 8 sets of CPC ID register, CPC way register and CPC allocation register, with PID from 1 to 8, matching with LAW10 to LAW17. For each coherency subdomain, I allocate 4 CPC ways to it. Attached is my modified initialization script.
After I modified the configuration. I found that it is working, the program on Core 0 will automatically write to LAW10, and hence write to CPC way 0 to 3. Similarly, the program on Core 1 will automatically write to LAW11 and hence write to CPC ways 4 to 7. The same situation applies for all 8 cores.
But I found three weird things, which I am not sure where I did wrong:
(1) When I run the program, the value of variables and their locations in Variables pane are not correct, quite strange. As shown here.
(2) The trace is not working as below.
(3) The profile tool cannot get results.
Can you take a look on this, it is quite urgent. Thanks!
Original Attachment has been moved to: P4080DS_init_core_cacheon.tcl.zip