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:有关 FIR 滤波器示例中的汇编指令的问题

Guru**** 2458730 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/746374/tms320f28377s-questions-about-assembly-instructions-in-fir-filter-example

器件型号:TMS320F28377S

你(们)好

我正在尝试了解 MMACF32 MR3、MR2、MRD、MRE、MRF || MMMOV32 MRA、 mem32正在工作。 以下是 FIR 滤波器示例中的一些行:

  MMPYF32  MR3、MR1、MR0                ;MR3 (Y)= MR1 (A3)* MR0 (X3)

|| MMOV32    MR1、@_A2                    ;使用 A2加载 MR1

  MMOVD32  MR0、@Ω_X2                    ;用 X2加载 MR0、用 X2加载 X3

 

  MMACF32  MR3、MR2、MR2、MR1、MR0      ; MR3=A3*X3+A4*X4

|| MMOV32    MR1、@_A1                    ;MR2 = MR1 (A2)* MR0 (X2)

  MMOVD32  MR0、@Ω_X1                    ;用 X1加载 MR0、用 X1加载 X2

 

根据定义:

MR3=MR3+MR2;

MRD = MRE * MRF;

MRA =[mem32];

因此、如果在第一行、MR3具有该值、则 MR3 (Y)= MR1 (A3)* MR0 (X3)

接下来的两行将 A2加载到 MR1中、将 X2加载到 MR0中

因此、下一行应具有以下符合定义的结果

 

MR2=MRD=A2*X2

MR3=MR3+MR2=A3*X3+A2*X2

为什么要改为 A4*X4?

谢谢 Vadim

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

    我不会看到您每次加载 MR2... 也许您的装配体中有一个排印错误。

    SAL