Not applicable
Jan 22, 2015
06:23 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jan 22, 2015
06:23 AM
Hi all,
I'm working on AURIX TC277TU architecture and I'm not able to find how to invalidate CPUs data caches.
TC277TU has two different processors: TC1.6P and TC1.6E. TC1.6E has not data cache but uses a buffer.
Is it possible to invalidate (clear) all caches and buffer during run-time execution?
Thanks to everybody,
best greetings!
----------------------------
Italo
I'm working on AURIX TC277TU architecture and I'm not able to find how to invalidate CPUs data caches.
TC277TU has two different processors: TC1.6P and TC1.6E. TC1.6E has not data cache but uses a buffer.
Is it possible to invalidate (clear) all caches and buffer during run-time execution?
Thanks to everybody,
best greetings!
----------------------------
Italo
- Tags:
- IFX
7 Replies
Not applicable
Jan 23, 2015
02:35 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jan 23, 2015
02:35 AM
I found that is possible to invalidate every single cache line by using one of the following instructions:
* CACHEA.I
* CACHEA.W
I didn't find anything about full cache lines invalidation.
Now the question is: which is CACHEA.I and CACHEA.W syntax?
* CACHEA.I
* CACHEA.W
I didn't find anything about full cache lines invalidation.
Now the question is: which is CACHEA.I and CACHEA.W syntax?
Feb 11, 2015
10:31 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Feb 11, 2015
10:31 AM
Try this instead:
// invalidate all data caches
OVCCON.U = 0x00040007; // DCINVAL = 1, CSEL2=1, CSEL1=1, CSEL0=1
// invalidate program cache
PCON1.B.PCINV = 1;
// invalidate program line buffer
PCON1.B.PBINV = 1;
// invalidate all data caches
OVCCON.U = 0x00040007; // DCINVAL = 1, CSEL2=1, CSEL1=1, CSEL0=1
// invalidate program cache
PCON1.B.PCINV = 1;
// invalidate program line buffer
PCON1.B.PBINV = 1;
Not applicable
Mar 16, 2015
07:16 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Mar 16, 2015
07:16 AM
These registers are write protected?
How can I disable the protection to write on OVCCON register?
How can I disable the protection to write on OVCCON register?
Mar 17, 2015
08:13 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Mar 17, 2015
08:13 AM
By default, the CPU is in supervisor mode (PSW.IO=2), and OVCCON access is enabled (SCU_ACCEN0 = 0xFFFFFFFF). If you're in user mode (PSW.IO=0 or 1), or SCU_ACCEN0 has been changed, you'll need to change that before you can write to OVCCON.
Feb 13, 2020
07:28 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Feb 13, 2020
07:28 AM
Hello,
I want to invalidate Program cache. i used the suggested instruction :
// invalidate program cache
PCON1.B.PCINV = 1;
But that generates a Trap (Trap_instructionError) and the CPU enter into Debug State.
I'm working with a TC275 (a shieldBuddy).
Any suggestion please ?
I want to invalidate Program cache. i used the suggested instruction :
// invalidate program cache
PCON1.B.PCINV = 1;
But that generates a Trap (Trap_instructionError) and the CPU enter into Debug State.
I'm working with a TC275 (a shieldBuddy).
Any suggestion please ?
Feb 13, 2020
11:25 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Feb 13, 2020
11:25 AM
PCON1 is a Core Special Function Registers (CSFR)
__mtcr(CPU_PCON1, 1);
Feb 25, 2020
05:35 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Feb 25, 2020
05:35 AM
Thank you cwunder.