Nios® II Processor Reference Guide

ID 683836
Date 8/28/2023
Public
Document Table of Contents

3.6.3.2. Instruction Cache Data RAM

  1. Ensure all code up to the JMP instruction is in the same instruction cache line or is located in an ITCM.
  2. Use a FLUSHI instruction to flush an instruction cache line other than the line containing the executing code.
  3. Use a FLUSHP instruction to flush the pipeline.
  4. Use a WRCTL instruction to set ECCINJ.ICDAT to INJS or INJD. This setting causes an ECC error to occur on the start of the next line fill.
  5. Use a JMP instruction to jump to an instruction address in the flushed line.
  6. The ECC error is injected when writing the tag RAM at the start of the line fill.
  7. Use a RDCTL instruction to ensure that the value of ECCINJ.ICDAT is NOINJ.
  8. Execute the target of the JMP instruction twice (first to inject the ECC error and second to be triggered by it).