Other Parts Discussed in Thread: LAUNCHXL2-570LC43
Hello
I have a question about the TMS570LC4357.
We cannot operate the caches with their replacement mechanism, because in the worst-case the performance with cache is lower than without cache, which is not acceptable for a safety critical system. For this reason, we are planning to simulate a lock mechanism to use the data and instruction cache of that processor. To achieve this goal we have planned the following actions:
- The cacheable MPU regions are limited to the size of the cache to avoid cache misses.
- During the initialisation of the SW, data and instructions are loaded into the cache.
Questions:
- For the instructions to be loaded into the cache, we plan to execute all of them during the initialisation, so that they are loaded into the instruction-cache. Is this procedure sufficient to ensure that these instructions are always deterministically loaded into the cache?
- For the data to be loaded into the cache, we plan to write all of them during the initialisation, so that they are loaded into the data-cache. Is this procedure sufficient to ensure that this data set is always deterministically loaded into the cache?
- What is the best method to check that a set of data or instructions is loaded into the cache?
- Can the instructions to be loaded into the cache allocated to two not contiguous segments? For instance one of 8 Kb and another of 24 Kb. could it be for the cache line (8 Words = 32 Bytes) a problem due to the alignment?
Best regards and thanks for the support!!
Mathieu