您好,上海自動化儀表三廠網站歡迎您!

官方微信|加入收藏|唐朝tv高清视频在线观看|

公司微信

上海自動化儀表三廠

唐朝tv高清视频在线观看咨詢服務唐朝tv高清视频在线观看:

021-5672511502156413113

唐朝tv高清视频在线观看唐朝tv高清视频在线观看

唐朝tv高清视频在线观看

FPU加速熱電偶測量的多項式計算

來源:發表時間:2019-06-28


      让我们结束最近关于如何从热电偶或其他传感器获得准确实时测量的讨论。我首先讨论了问题以及温度和电压之间的关系与热电偶是非线性的事实,并描述了可以提供准确结果的多项式。我跟着这篇文章看了一下使用集成在微控制器(MCU)上的ADC读取精确温度的强力方法。存储在存储器中的预先计算的转换表可以是在一些应用中的良好选择。但是,对于最小的内存占用,因此最小的系统成本,您的设计必须实时计算多项式,浮点单元(FPU)可以大大加快该任务。
      您当然可以使用定点MCU计算多项式。程序员必须注意编码算法。首先,必须将多项式的每个度或阶的常数或系数转换成有助于整数数学的格式。通常,32位表示的一部分是常量的整数部分,而另一部分是小数分量。一种这样的格式将使用符号位,11位表示整数,20位表示分数。
      该算法必须计算多项式的每个项。在添加条款之前,每个术语都会被精确移位。整数方法当然可以在某些应用程序中使用。
      或者,使用定点MCU的程序员可以依赖浮点库。该库处理复杂的格式化和移位操作。但是库方法不太可能产生紧凑的代码或最佳性能。
      使用诸如RX的浮点MCU的程序员具有相对简单的任务。对于MCU,浮点加指令在四到五个时钟周期内执行,乘法指令可以减少一个周期。
      上海自動化儀表三廠应用工程师执行了一些基准测试,以准确地预测与我们讨论的不同方法相关的代码大小和执行时间,以获得准确的温度读数。测试包括存储在存储器中的预先计算的表,以及我们今天在这里讨论的三种方法,用于实时计算多项式
      这些测试是基于评估5 次多项式。测试在以32 MHz运行的MCU上运行。下表总结了结果。查表方法是最快的,但对代码大小有很大影响。图书馆方法显然是一个糟糕的选择。定点数学可以在某些应用程序中运行,但明显的赢家是使用FPU。带有FPU的MCU仅使用38个字节的代码就能以7μs的速度处理任务。


[!--temp.pl--]