在安全手册看到对各模块“Software Read Back of Written Configuration”和“Periodic Read Back of Configuration Registers” 这两项诊断。在halcogen生成的寄存器配置回读函数,应该是针对后者吧? 对于前者的诊断看到解释说要用到MPU,应该怎样做呢? 这两个诊断项有有什么区别吗?
Jason ZHANG (MCU FAE):
Software Read Back of Written Configuration针对的是在更改寄存器的配置时,当完成写入后,再将寄存器的实际值读回来,与想要写入的值比较一下,看看是不是配置正确了。这时要求MPU将存储器映射寄存器的空间配置为 strongly ordered和 non-bufferable memory 空间,以防止产生误操作,关于MPU的具体设置,需要参考HALCoGen中的配置和技术手册中的说明。
而Periodic Read Back of Configuration Registers针对的是配置完成后,要周期性的去检测是不是寄存器的配置值被误操作所修改,这种修改不是出于本意的,可能是由于某些软件设计缺陷导致的,也可能是由于干扰导致的,因此要极力去避免。
谢谢!
ron chow:
回复 Jason ZHANG (MCU FAE):
hi,Jason
非常感激您的回答!配置 “ non-bufferable memory”为了防止配置写入“buffer“而不是模块寄存器吧。这个”strongly ordered“是什么意思呢? zai HALCOGEN看到有MPU的配置,在芯片资料上没有找到MPU相关相关说明。 非常感激!