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