前言
Fee调用Fls接口操作DFlash,而Fls会因不同的芯片而不同,在详解Fee模块前先介绍TC37x芯片的一些DFlash概念,方便后面理解后面的Fee功能。
参考文档:
【Memory协议栈】AUTOSAR架构下Fee详细分析
【Memory协议栈】AUTOSAR架构下Fls详细分析
正文
1.TC37x芯片FLASH概念介绍
1.1 Bank
官方定义:
一块Bank可以包含多个Physical Sector(后文解释),Bank之间是物理隔离的。比如:DFlash0等同于一个Bank,包含1个Physical Sector。物理隔离指的是两块内存不相关,比如DFlash0于DFlash1在物理上隔离,即使没有DFlash1也不影响DFlash0,这也是不同芯片型号内存空间可以不同的原因。不同芯片型号,Bank数量不同,内存大小也有所不同。
TC37x芯片DFlash有两块Bank:
Bank 0也就是DFlash0:
起始地址:0xAF000000
结束地址:0xAF03FFFF
大小:256Kbyte
Bank 1也就是DFlash1:
起始地址:0xAFC00000
结束地址:0xAFC1FFFF
大小:128Kbyte
TC37x芯片PFlash有两块Bank:
1.2 Sector
官方定义:
Physical Sector(物理扇区):内存的一个物理区域与另一个内存区域隔离。一个物理扇区包含多个逻辑扇区。
Logical Sector(逻辑扇区):Flash擦除的最小单位。一个逻辑扇区可以包含多个wordline。
1.2.1 DFlash中Bank与Physical Sector/Logical Sector关系
TC37x芯片中DFlash0(256 KBytes)有1个Physical Sector(256 KBytes),在Single Ended Mode下1一个Physical Sector包含64个Logical Sector,每个Logical Sector大小是4 Kbyte。
TC37x芯片中DFlash0(256 KBytes)有1个Physical Sector(256 KBytes),在Complement Sensing Mode下1一个Physical Sector包含128个Logical Sector,每个Logical Sector大小是2 Kbyte。
TC37x芯片中DFlash1(128 KBytes)有1个Physical Sector(128 KBytes),在Single Ended Mode下1一个Physical Sector包含32个Logical Sector,每个Logical Sector大小是4 Kbyte。
TC37x芯片中DFlash1(128 KBytes)有1个Physical Sector(128 KBytes),在Complement Sensing Mode下1一个Physical Sector包含64个Logical Sector,每个Logical Sector大小是2 Kbyte。
1.2.2 PFlash中Bank与Physical Sector/Logical Sector关系
TC37x芯片中PFlash0/1(3M)有3个Physical Sector(1M,1024 KBytes),每个Physical Sector包含64个Logical Sector(16 KBytes)。也就是说:PFlash0/1(3M)== 3 * 1M (3 *Physical Sectors)== 3 * 64 * 16(192 * Logical Sectors)。
1.3 Wordline
官方定义:
Wordline: 字节对齐单位,不同的Flash,对齐字节数不同。TC3xx芯片中,PFlash的Wordline是1024字节,DFlash在single ended模式下的wordline是512字节,在complement sensing mode下是256字节。
1.4 Page
Page: Flash进行Programme编程(写)的最小单位。TC3xx芯片中,PFlah中一个Page为32 Bytes,DFLash中一个Page为8 Bytes。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_36056498/article/details/133975374
|