FEE驱动(一)

FEE在DFlash0进行模拟EEPROM功能,擦除、读、写在FLS中进行,DFlash1预留给HSM。

驱动配置

FEE驱动可以配置为以下三种模式:

FEE_DOUBLE_SECTOR_AND_QUASI_STATIC_DATA、FEE_DOUBLE_SECTOR_DATA_ONLY or FEE_QUASI_STATIC_DATA_ONLY.

在FeeBlockTypeConfigured选项设置。

 注意:

对于普通数据(双扇区),FeeBlockTypeConfigured应该设置FEE_DOUBLE_SECTOR_DATA_ONLY。

仅对于QS配置,FeeBlockTypeConfigured应该设置为FEE_QUASI_STATIC_DATA_ONLY。

根据用户选择的配置,应该在FeeBlockConfiguration中配置相应的数据块。例如,如果将FeeBlockTypeConfigured设置为FEE_DOUBLE_SECTOR_AND_QUASI_STATIC_DATA,那么在FeeBlockConfiguration部分中需要配置普通双扇区和QS块。

 注意,FeeQsBlockAddress仅适用于QS块。在上面的示例中,它是Oxc0000,因为这个地址是在FLS中配置的。此地址不应与正常的双扇区大小地址重叠。此外,在配置QS块地址(FeeQsBlockAddress)和QS块大小(FeeBlockSize)时,用户必须注意正确填写每个QS数据块的值,以确保它们不会违反在FLS中配置的QS扇区大小。QS地址也不应该重叠,应该是连续的。

如果FeeBlockTypeConfigured配置为FEE_DOUBLE_SECTOR_DATA_ONLY,则只应配置正常的双扇区数据块。如果选择FEE_QUASI_STATIC_DATA_ONLY,则只应该配置QS数据块。

与在FEE中完成的配置相对应的配置也必须在FLS中完成。可以这样做:

1. 进入FLS配置,配置扇区为普通双扇区和QS扇区。

2. 提及每个扇区的大小。

3.适当地给出两个扇区的起始地址。

请注意,QS扇区地址应该在正常双扇区地址的扇区之后。例如,在FEE中,普通双扇区的每个扇区的大小为Ox60000或393216字节(384 KB),两个扇区(双扇区)的总大小为768 KB或786432字节,因此QS地址的值为OxC0000(786432),位于双扇区使用的地址之后。因此,Qs扇区的总大小为Ox40000,这是在分配正常双扇区的两个扇区的扇区大小后的剩余大小。

QS扇区起始地址的计算方法如下:

QS扇区起始地址=双扇区算法中一个扇区的扇区大小x2

根据上面的例子:

—双扇区算法的一个扇区大小= 0x60000

-QS扇区起始地址= 2 × 0x60000 = 0xC0000

在使用普通双扇区的情况下,QS扇区大小的计算可以总结如下:

QS扇区大小=总闪存大小-(双扇区算法的一个扇区大小x2)

如图所示:

Flash总大小= Oxfa000

双扇区算法的单个扇区大小= 0x60000

QS扇区= Oxfa000-(2 × 0x60000) = 0x3a000

 

注意:

QS的FlsSectorStartaddress不应该与NVM块重叠。

如果feblocktypeconfigure配置为FEE_DOUBLE_SECTOR_DATA_ONLY,那么应该只配置一个FlsSector, FlsNumberOfSectors的值为2。

如果配置为FEE_QUASI_STATIC_DATA_ONLY,则FlsNumberOfSectors只有一个值为1的FlsSector。因此,在上面的例子中,应该配置值为1的FlsSector_0。

如果feblocktypeconfig被配置为FEE_DOUBLE_SECTOR_AND_QUASI_STATIC_DATA,那么FLS配置中的扇区顺序应该是:FlsSector_0应该配置为2个扇区,然后FlsSector_1应该配置为扇区数量的值为1。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值