This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

在Bootloader和应用程序之间共享FEE块

Other Parts Discussed in Thread: HALCOGEN

在Bootloader和应用程序之间共享FEE块

本应用笔记介绍了如何在引导加载程序和应用程序之间共享FEE块。在正常使用情况下,引导加载程序不会经常更新,而应用程序会经常更新。

1 问题

如果应用程序经常更改,并且与引导加载程序共享一些FEE块,则引导加载程序必须随应用程序一起更改(因为引导加载程序必须知道应用程序已配置了多少个块)。为了避免这种情况,可以将引导加载程序配置为复制未配置但由应用程序配置的所有块。图1显示了如何安排块以在引导加载程序和应用程序之间共享。

图1.一个部门中的块

如果引导加载程序中存在扇区交换,则可能无法将应用程序块复制到新扇区,如图2所示。

图2.错误的扇区交换

注意:如果应用程序和引导加载程序使用的块数相同(例如,共享块1,共享块2和无应用程序块),则两者都应使用相同的FEE配置。

2 解决方案

通过以下步骤解决了上述问题:

1)   为引导加载程序FEE配置配置两个块。

2)   为应用程序FEE配置配置六个块。

3)   配置引导加载程序FEE配置,以将

FEE_NUMBER_OF_UNCONFIGUREDBLOCKSTOCOPY(如果使用HALCoGen FEE驱动程序,则为TI_FEE_NUMBER_OF_UNCONFIGUREDB LOCKSTOCOPY)配置为4,并在应用程序FEE配置中配置为FEE_TOTAL_BLOCKS_DATASETS的值,如图 3 所示。

图3.正确的扇区交换

4)   如果使用了autosar FEE驱动程序,请使用EBTresos中图4中所示的配置参数。

图4. EBTresos配置参数

如果使用TI FEE驱动程序,请使用HALCoGen中图5所示的配置参数。

图5. HALCoGen配置参数

 

引导加载程序可以将FEE_NUMBER_OF_UNCONFIGUREDBLOCKSTOCOPY配置为最大值256。这允许引导加载程序在引导加载程序中发生扇区切换时将256个应用程序块复制到新扇区。应该仔细配置此参数,因为此宏的每个计数都需要3个字节的RAM。

参考www.ti.com/.../HALCOGEN http://processors.wiki.ti.com/index.php/TI_FEE

原文出处:http://www.ti.com/cn/lit/an/spracc5/spracc5.pdf

缩略语

EEPROM –电可擦可编程只读存储器FEE –闪存EEPROM仿真

HALCoGen –硬件抽象层代码生成器AUTOSAR –汽车开放系统架构