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