3 cache error detection and correction – ARM Cortex R4F User Manual

Page 216

Advertising
background image

Level One Memory System

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

8-20

ID013010

Non-Confidential, Unrestricted Access

Invalidate by Set/Way combination

Clean by address (MVA)

Clean by Set/Way combination

Clean and Invalidate by address (MVA)

Clean and Invalidate by Set/Way combination

Data Memory Barrier (DMB) and Data Synchronization Barrier (DSB) operations.

The system control coprocessor operations supported for the instruction cache are:

Invalidate all

Invalidate by address.

For more information on cache operations, see Cache operations on page 4-54.

8.5.3

Cache error detection and correction

This section describes how the processor detects, handles, reports, and corrects cache memory
errors. Memory errors have Fault Status Register (FSR) values to distinguish them from other
abort causes.

This section describes:

Error build options

Address decoder faults on page 8-21

Handling cache parity errors on page 8-21

Handling cache ECC errors on page 8-22

Errors on instruction cache read on page 8-23

Errors on data cache read on page 8-23

Errors on data cache write on page 8-23

Errors on evictions on page 8-23

Errors on cache maintenance operations on page 8-23.

Error build options

The caches can detect and correct errors depending on the build options used in the
implementation. The build options for the instruction cache can be different to the data cache.

If the parity build option is enabled, the cache is protected by parity bits. For both the instruction
and data cache, the data RAMs include one parity bit per byte of data. The tag RAM contains
one parity bit to cover the tag and valid bit.

If the ECC build option is enabled:

The instruction cache is protected by a 64-bit ECC scheme. The data RAMs include eight
bits of ECC code for every 64 bits of data. The tag RAMs include seven bits of ECC code
to cover the tag and valid bit.

The data cache is protected by a 32-bit ECC scheme. The data RAMs include seven bits
of ECC code for every 32 bits of data. The tag RAMs include seven bits of ECC code to
cover the tag and valid bit. The dirty RAM includes four bits of ECC to cover the dirty bit
and the two outer attributes bits.

Advertising
This manual is related to the following products: