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.

[参考译文] 编译器/TMS320F28377S:FPU、执行时间

Guru**** 2484615 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/628652/compiler-tms320f28377s-fpu-execution-time

器件型号:TMS320F28377S

工具/软件:TI C/C++编译器

大家好!

在我的项目中、我使用 FPU 库对从 ADC 获取的信号计算 fir 滤波器(订单1023)、并将结果放在 DAC 上。

在我的测试中、我将测量的执行时间

hnd_firfp->calc(&firfp); 

为此、我在调用 calc 函数之前将 gipo 置为高电平、并在 calc 函数之后返回到低电平状态、然后使用示波器监视引脚活动。

我看到的是、calc 函数占用约5、6 us、但通常需要约10 us。

您如何解释这种救世主?

我认为 htat 是变量 allign 的问题、因此我修改了链接器命令、添加了3行:

ldldb align (0x800)> RAMGS10、page = 1、fill=0x0400
coefffilt align (0x800)> RAMGS11、page = 1、fill=0x0400 firfilt
> RAMLS5、page = 1、fill=0x0100 

但问题仍然存在。 我对链接器命令的更改是正确的?

谢谢!

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

    F28377S CPU 时钟为200MHz、即1023阶滤波器为5nS、5倍(1023+52)=5.375uS 是合理的

    在开始分析之前、请确保已禁用任何具有更高优先级的中断。

    如果您有其他更高优先级的中断、代码可能会分支到这些中断、从而影响您观察到的明显延迟