There are several possible reasons for incorrect behavior after enabling instruction/data cache:
1. MMU error or disabled MMU. There are several memory-mapped device registers in IMMR space, this space should be configured as cache-inhibited. This can be done only in MMU settings. If you enable cache without MMU enabled, all memory space, including internal memory space, will become cacheable and this will result to erratic behavior.
If you need an example for MMU initialization, please look CodeWarrior installation folder, \Templates\PowerPC_EABI\Sources\G2_core\
2. SDRAM configuration error. Cache controller, when enabled, starts using burst transactions to access external SDRAM memory. If your SDRAM memory is not properly configured and can support only single transactions, than there will be an instruction/data corruption when fetching instructions from this SDRAM with instruction cache enabled.
To check this, please test your SDRAM memory with data cache enaled.
This community was created to support customers worldwide, to let customers to communicate together and to re-use information, previously posted by/for another customers.
Because of above reasons, this community language is English-only. Therefore, I would ask you to use English for your further communications, just for information re-use reasons.
Thank you in advance.