3.11.1 FLS基础知识
flash操作中有两个术语:block和page。block是flash最小的擦除单位,page则是flash写入的最小单位。以我们使用的F1KM-S4(R7F7016533)来说,它的是64 bytes, page是4bytes。这也就意味着,如果要擦除的话,最小要擦除64 bytes,但是写入可以按4字节的大小写入。s
flash的擦除时间和擦写次数也是我们需要特别关注的,F1KM-S4(R7F7016533)的这两个参数如下:
另外我们还需要关注一下data flash的大小,F1KM-S4(R7F7016533)的data flash分布如下:
Data flash的擦除时间一般都比较长,F1KM-S4(R7F7016533)擦除64 bytes都需要10ms,这会给整个系统造成很大的负担。如果系统中有很多数据要频繁写入flash的话,如果按正常流程先擦除、再写入的话,那整个系统将无法承受。
Autosar采用的方法是:
1)分配一块数倍于数据的存储区域,比如数据大小为8byte, 那系统可以配置一块8N的flash块(sector),比如8*8=64Byte
2)数据的修改先