您好!
在 TMS570LS3137上、当使用 TCRAM ECC 功能时、似乎当检测到一个单一位错误并纠正一次时、如果同一存储器位置发生一个后续的1位错误、
状态标志未设置。 如果在同一存储器位置、即使是双位错误也不会被检测到(不会产生中断、并且状态标志也不会被置位)。
为了再次发生检测(1位或2位)、需要先在不同的存储器位置检测到它、然后才能在第一个位置检测到它。
这种行为是否正常,或者 我是否错误配置 了 DSP ?
//首先配置,然后启用 ECC 检查
//必须先将 RAMOCCUR 寄存器清零,然后再设置阈值
regTcRam1.ramOccur.bit.s 勘误表= 0U;
regTcRam2.ramOccur.bit.s 勘误表= 0U;
regTcRam1.ramThreshold.bit.threshold = 1U;
regTcRam2.ramThreshold.bit.threshold = 1U;
//禁用单位错误中断。
regTcRam1.ramIntctrl.bit.sErrEn = 0U;
regTcRam2.ramIntctrl.bit.sErrEn = 0U;
//启用 ECC 检测
regTcRam1.ramCtrl.bit.eccDetEn = 0x1;
regTcRam2.ramCtrl.bit.eccDetEn = 0x1;
此致、