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.
您好!
我使用 TMS320F28069实现控制算法。 您能否指导我浮点除法需要多少个时钟周期?
谢谢!
您好!
指令的周期计数将在各个器件之间保持一致。 您能否与文档中的数字共享指令所需的周期数?
-Shantanu
我不确定我应该从文档中考虑什么数字。 即使经过优化、计算一个除法运算也要花费2.7us。 在第46页的文档中、除法的周期为222、转换为2.5us。 但是、在前几页的同一文档中、除法周期为24。 您能否澄清哪个数字是准确的?
第47页上的周期是 fid_ui64byui32为35、 ui32byui32为23的周期。 ui64byui64的最大周期数为53 (第47页)。 我不确定您从哪里获得222号号码。 根据每个参数的数据类型、您可以找到不同的周期数(16位、32位、用于除数或除数的64位)。
我从可执行文件表函数 div_F32.out 的第46页中得到了222。 如果是这种情况、那么我不确定为什么它需要220个周期来执行1除法计算。
您好!
您引用的220个周期数是 来自标准 RTS 库的__c28xabi_divf 函数,该函数使用 Newton-Raphson 方法。 这是在软件中完成的、这会导致高周期计数。 如果在启用处理器选项和 TMU 支持(如文档中指定)的同时使用 FASTRTTS 库、您将看到周期计数低于42。'
-Shantanu
我现在明白了、谢谢。 但是、通过优化、我也无法缩短执行时间。 请帮帮我。
您好!
除非使用优化重建标准 RTS 库、否则不会看到任何更改。 如果您尝试使用 FPU 优化方法、它不会产生任何更改、因为 FPU 指令需要固定数量的周期。