﻿================================================================================
                                样例使用说明
================================================================================
Date            Author      IAR       MDK       GCC
2024-09-13      CDT         7.70      5.36      gcc-arm-none-eabi-10.3-2021.10-win32

================================================================================
平台说明
================================================================================
GCC工程，由Eclipse IDE外挂GNU-ARM Toolchain，再结合pyOCD GDB Server实现工程的编译、
链接和调试。在用Eclipse导入工程后，请将xxxx_PyOCDDebug中pyocd-gdbserver和SVD文件
设置为正确的路径；请将xxxx_PyOCDDownload中pyocd设置为正确的路径。注意，这些路径不
能包含非英文字符。

================================================================================
功能描述
================================================================================
本例程演示了如何制造DCache ECC校验错误，以及校验错误后操作（系统复位或产生NMI中断）。

说明：
1. DCache ECC校验错误。如下几个步骤的操作会产生ECC校验错误：
   1）复位缓存，使能Flash DCache功能
   2）使能SRAM错误注入功能；
   3）配置错误注入bit（可以是1bit错误或2bit错误）；
   4）读Flash某一个地址（样例中为0x10000UL）；
   5）读Flash另外一个地址，与第一个地址间隔至少128bit（样例中为0x20000UL）；
   6）读取已存入Cache中的地址（样例中为0x10000UL），会触发Cache ECC校验错误。

================================================================================
测试环境
================================================================================
测试用板:
---------------------
EV_A4A8_LQ176_Rev1.0

辅助工具:
---------------------

辅助软件:
---------------------

================================================================================
使用步骤
================================================================================
1）打开工程，重新编译；
2）启动IDE下载和调试功能，全速运行；
3）程序默认现象：蓝灯亮，红灯灭；按下按键 K1，触发ECC校验错误，蓝灯灭，红灯亮。

================================================================================
注意
================================================================================
1.下载代码前保证flash已被片擦除。
2.由于需产生DCache ECC校验错误，应确保程序在RAM中运行
3.使用MDK工程时，请将drivers\cmsis\Device\XHSC\hc32a4xx\Source\ARM\flshloader\HC32A4A8_RAM.FLM
  文件复制到KEIL的对应路径下(通常为Keil_v5\ARM\Flash)
  如果更改工程默认的debug方式，还需在Option->Utilities->Settings->Flash Download->Add里添加
  HC32A4A8 RAM文件，且修改RAM for Algorithm 框里Start address为0x20000000。
4.下载代码前保证flash已被片擦除。


================================================================================
