# I-Cache Functions

CMSIS-Core (Cortex-M): I-Cache Functions

| CMSIS-Core (Cortex-M) Version 5.1.2 CMSIS-Core support for Cortex-M processor-based devices

- Main Page
- Usage and Description
- Reference

All Data Structures Files Functions Variables Enumerations Enumerator Groups Pages
Functions
I-Cache Functions
Cache Functions (only Cortex-M7)

Functions for the instruction cache. More...

## Functions

__STATIC_INLINE void | SCB_EnableICache (void)
| Enable I-Cache. More...
__STATIC_INLINE void | SCB_DisableICache (void)
| Disable I-Cache. More...
__STATIC_INLINE void | SCB_InvalidateICache (void)
| Invalidate I-Cache. More...

## Description

## Function Documentation

__STATIC_INLINE void SCB_DisableICache | ( | void |  | ) |

The function turns off the instruction cache.

__STATIC_INLINE void SCB_EnableICache | ( | void |  | ) |

The function turns on the instruction cache.

Note
  Before enabling the instruction cache, you must invalidate (SCB_InvalidateICache) the entire instruction cache if external memory might have changed since the cache was disabled.
  After reset, you must invalidate (SCB_InvalidateICache) each cache before enabling it.

__STATIC_INLINE void SCB_InvalidateICache | ( | void |  | ) |

The function invalidates the instruction cache. The instruction cache is never dirty so cache RAM errors are always recoverable by invalidating the cache and retrying the instruction.

Note
  After reset, you must invalidate each cache before enabling (SCB_EnableICache) it.