STM32之软件CRC和硬件CRC速度测试

STM32之软件CRC和硬件CRC速度测试,第1张

  一、测试条件

  硬件: STM32L432KC

  主频: 80MHz

  编译器: IAR 8.20.1

  编译选项: High Speed no size constraints

  CRC 生成多项式: 0x782f

  二、测试方法

  软件提前生成CRC表,用于查询。分别使用软件CRC算法和硬件CRC外设对一个缓存进行计算,目的是从该缓存中找到同步头。同步头共11字节,前两个字节为后九个字节的CRC校验值。通过迭代算法依次对11字节进行计算和比较,当找到同步头后返回同步头偏移量。通过时间比较两者之间的速度。

  三、测试结果

  迭代24464次后,从缓存中找到同步头。

  不开启编译时间优化时,软件算法用时238ms,硬件CRC用时220ms。

STM32之软件CRC和硬件CRC速度测试,STM32之软件CRC和硬件CRC速度测试,第2张

  开启编译时间优化后,软件算法用时159ms,硬件CRC用时186ms。

 

STM32之软件CRC和硬件CRC速度测试,STM32之软件CRC和硬件CRC速度测试,第3张

  四、附测试代码

STM32之软件CRC和硬件CRC速度测试,STM32之软件CRC和硬件CRC速度测试,第4张


STM32之软件CRC和硬件CRC速度测试,STM32之软件CRC和硬件CRC速度测试,第5张


STM32之软件CRC和硬件CRC速度测试,STM32之软件CRC和硬件CRC速度测试,第6张


STM32之软件CRC和硬件CRC速度测试,STM32之软件CRC和硬件CRC速度测试,第7张


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2642157.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-12
下一篇 2022-08-12

发表评论

登录后才能评论

评论列表(0条)

保存