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.

[参考译文] TMS320F28054F:TMS320C28xx CPU 和指令集参考指南错误

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/878619/tms320f28054f-tms320c28xx-cpu-and-instruction-set-reference-guide-errors

器件型号:TMS320F28054F

我在 C28xx 的 CPU 和指令集参考指南中遇到了一些问题。

《TMS320C28xx CPU 和指令集参考指南》的第96页介绍了* br0--、ARPn 间接地址模式。  但下面的例子似乎有一些矛盾。  该示例指示注释中的后增量、但我假设它应该递减。  注释为"POST−Increment XAR3 with AR0 reverse borrow subaction"。  假设递减、这意味着 XAR3 在加载 ACC 后递减、然后执行减法。  还是减法执行减量?  页面顶部似乎表示后者、但示例中的注释表示前者。  由于存在错误和模棱两可的情况、这让我不太清楚。

我找到了多个引用,其中--在间接地址段中被称为增量。  我想知道是否有一些强调表明了递增。  这个公会还有几十个改变含义的印刷错误。  几个示例:

第78页:

示例1显示了在写受保护作为管道保护的内容之后读取的非保护内容(3)、而示例2显示了在写受保护的内容后读取的非保护内容与无保护内容相同。  我认为一定是错误的、但我不确定是什么。

第89页下面的示例:

MOVL XAR2、#Array1;使用 Array1的起始地址加载 XAR2
MOVL XAR2、#Array2;使用 Array2的起始地址加载 XAR3

实际代码用阵列2的地址覆盖 XAR2。

一般而言,我能够通过错误来解释意图,但是否有一个更好的已被校对的副本?  几天前、我从 TI 网站上提取了这一信息。  最后一次修订是在2015年5月进行的。  尝试学习具有适用于整个 C2000系列的成熟文档并具有这些类型错误的新处理器是令人沮丧的。  我希望我只是使用一个过时的。


示例:
;以位反向顺序将 Array1的内容传输到 Array2:
MOVL XAR2、#Array1+(N-1)*2;使用 Array1的起始地址加载 XAR2
MOVL XAR3、#Array2+(N-1)*2;使用 Array2的起始地址加载 XAR3
MOV @AR0 #N;加载 AR0、阵列大小、
;N 必须是2的倍数(2、4、8、16、...)
MOV @AR1、#N-1;使用环路计数 N 加载 AR1
NOP *、ARP2;将 ARP 指针设置为指向 XAR2
SETC AMODE;确保 AMODE = 1
lp_amode;告诉汇编器 AMODE = 1
循环:
MOVL ACC、*--、ARP3;加载 ACC、其位置由 XAR2指向、
;后增量 XAR2,将 ARP 指针设置为指向 XAR3
MOVL *++、ACC、ARP1;将 ACC 存储在 XAR3指向的位置、
; POST−使 XAR3递增,将 ARP 指针设置为指向 tp XAR1
MOVL *br0--,ACC,ARP1;存储 ACC,其位置由 XAR3指向,
; POST−使 XAR3递增,AR0反向借位减法,
;将 ARP 指针设置为指向 XAR1
XBANZ 循环、*-、ARP2;循环、直到 AR1 = 0、POST−递减 AR1、
;将 ARP 设置为指向 XAR2

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

    本文档的最新发布版本为修订版 F、遗憾的是、这些错误都存在。 感谢您指出这些问题、我与您一样感到失望。

    在第96页,评论中显然有几个需要注意的错误。

    在第78页上,我认为示例1的最后一行应该是从保护区读取。

    在第89页、如注释中所示、较低示例中的第二个操作应该加载 XAR3而不是 XAR2。

    我已提交文献更改请求、以便在下一版中更正所有这些内容。 再次感谢您指出这些问题。

    此致、

    Richard