微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Cortex M4 DSP:表int16_t的最大值

如何解决Cortex M4 DSP:表int16_t的最大值

我想加速以下代码,该代码计算表的最大值:

int16_t max = 0;
int16_t *in16 = (int16_t *)myptr;
for (i = 0; i < 256; i++) {
    int16_t val = *in16++;
    if (val > max)
    max = val;
}
return max;

是否有一条Cortex M4 DSP指令来计算相邻值的最大值。我找不到。

在CMSIS中,我看到“ arm_max_q15”。该功能如何实现?

解决方法

似乎没有太多的加速可能。 arm_max_q15的代码在这里:https://github.com/ARM-software/CMSIS/blob/master/CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_max_q15.c

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。