12.11.3.1 开始CRC32计算
一个存贮器的CRC32计算是在把开始地址写入到地址寄存器(ADDR)并且存贮器的长度写进长度寄存器(LENGTH).两者必须字对齐。
CRC32计算初始化值必须被写入数据寄存器。这个值通常写为0xFFFFFFFF
当完成时,CRC32值能被从数据寄存器中读出来。读出的值完全匹配CRC32标准执行或保持不翻转如果用作后续的起点。
如果芯片在NVMCTRL 安全比特保护状态,当操作外部地址空间时,它只能算出整个flash阵列的CRC32。在通常情况下这个区域是非易失性存贮。地址,长度和数据寄存器将要重新定义,当CRC32开始的时候,用户写的值被忽略,这允许用户效验被保护设备的内容。
实际测试是在循环容余寄存器的CTRL.CRC位写1。一个正在运行的CRC32操作能被禁止通过重设模式(在CRTL.SWRST写1)。
12.11.3.2 解释结果
用户可以监视状态A寄存器。当操作完成,STATUSA.DONE被置位。状态寄存器A的Error比特(STATUSA.BERR)必须被告读出确保没有总线错误发生。
|