This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RTOS/TMS320C6455:使用 log10函数

Guru**** 2582405 points
Other Parts Discussed in Thread: MATHLIB

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/592305/rtos-tms320c6455-using-log10-function

器件型号:TMS320C6455
主题中讨论的其他器件:MATHLIB

工具/软件:TI-RTOS

你(们)好

我需要在程序中获取" log10 "、但找不到任何库。

我该怎么办?

最佳佩戴方式

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是否希望 C64+ DSP 架构优化函数或通用 RTS 库函数来实现此目的。

    对于 C67x DSP、我们提供了实现此函数优化版本的 FastRTS 库。 标准 C64xplus RTS 库还提供此函数、您可以从此处的 API 参考中看到:
    www.ti.com/.../spru187n.pdf

    此致、
    Rahul
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    谢谢、我在" spru187n.pdf "中看到了通用 RTS 库函数。

    我需要一个 C64+ DSP 架构优化函数、请为我提供指导。

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我在等、请回答我的问题。

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Dariush

    您是否试用过标准运行时支持库?

    我们的文档不像以前那么可靠、因此我们不包括所有标准 C 库例程的文档。 不过、我们确实支持所有标准 C 库例程。 在线搜索"c library log10"可找到本 教程。 它包含一个简单的代码示例。 如果您能够获得此版本并有任何其他问题、请告知我们。

    此致、
    RandyP

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我不知道这是否有任何帮助、但如果你有一个执行自然日志的函数(或任何其他基础将起作用)、你可以使用数学标识
    LOG10 (x)= ln (x)/ln (10)

    LN (10)是一个常数、因此它没有太多的额外处理。

    罗伊
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    使用 math.h 和 mathf.h、这很有用、并且在每个样本101个 CPU 时钟周期内给出了答案。

    #include 
    #include 
    
    _out = log10f (_in); 

    建议的另一种选择也很好。 使用 logf()/logf(10)

    temp =(float) 1/ logf (10);//在
    
    (i = 0;i < buffer;i++)
    _out[i]= logf (_in[i])*temp 的数组 for 循环之前计算一次; 

    这为我提供了每个浮点样本84个周期。 Mathlib.lib 的函数 logsp 和 log10sp 的计算速度快于上述内容。  下面给出了72个周期内的对数、以10为基础。

    #include 
    #include 
    
    对于(i = 0;i < buffer;i++)
    _out[i]= log10sp (_in[i]);