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