如何生成一个AUTOSAR查找表使用查找表优化
设计查找表涉及各种选择:定点或浮点数据、表的大小、均匀间隔的数据或不均匀间距,以及其他算法设置,如插值方法。查找表优化器应用程序通过生成一个有效的查找表来最大限度地减少RAM内存来解决这个问题。您还可以生成一个Lookup Table块,该块映射到AUTOSAR库例程,并生成符合AUTOSAR的C代码。
查找表是嵌入式设计的关键构造,本视频重点介绍了几种生成高效查找表的方法。查找表主要用于使用经验数据或记录数据对具有复杂输入/输出关系的算法组件建模。
但是它们也被用来加速算法某些部分的运行时执行,代价是增加内存。
常见的用例是用查找表替换复杂的函数,比如三角函数,或者用更有效的查找表实现替换完整的子系统,或者从数据中替换——当您有来自校准或测试的数据时,您希望将其建模为查找表。
因此,让我们考虑一个带有指数函数的简单模型,它可以使用查找表更有效地实现,或者考虑整个子系统。
查找表优化器应用程序解决了这个优化问题,一旦你指定约束,如:
- 所需的输入和输出数据类型
- 输出范围
- 输出近似上的阈值。
现在,对于汽车应用程序,AUTOSAR是用于ECU软件开发的一种流行的、开放的、标准化的软件架构。遵守它是一个额外的约束,您可以将其指定为优化选项。
一旦开始优化,您将注意到不同表大小、单词长度、不同断点间距选项的运行,一旦找到最有效的解决方案,就可以生成符合AUTOSAR的查找表,以取代模型中的原始查找表。
生成的查找表是来自AUTOSAR Blockset的AUTOSAR Map块。
AUTOSAR块集提供了在simulink中建模和开发AUTOSAR经典和自适应软件的能力。
现在,在拥有原始数据的另一个用例中,例如这里示例模型中的CDF文件中的校准数据,您可以将数据加载到查找表中。
然后,我们重复与前面相同的步骤,使用查找表优化器应用程序指定约束,然后运行优化以从数据生成符合AUTOSAR的查找表。
您可以使用比较图来验证误差是否在可容忍范围内-通过查看右边的图。然后,您可以用模型中符合优化AUTOSAR的LUT替换原来的LUT。
要生成映射到AUTOSAR IFX库例程的代码,您可以使用AUTOSAR组件设计器应用程序,确保您有正确的代码配置设置,最后但并非最不重要的是,将断点的数据类型匹配到各自的输入。
生成代码后,下面是为AUTOSAR Map块生成的代码,其中显示了相应的IFX例程。
要查看更多示例并了解在设计中优化lut的更多信息,请参考视频下面的其他链接。
相关产品2022世界杯八强谁会赢?
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。