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.

[参考译文] TMS570LS3137:TMS570LS3137:armv7-r 汇编指令

Guru**** 2589280 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/815633/tms570ls3137-tms570ls3137-armv7-r-assembly-instructions

器件型号:TMS570LS3137

您好,

是否有任何 ARM7-r 汇编指令手册可供参考以获取"MSR   spsr_cxsf、R1"指令的详细信息?

谢谢、

Kalyan

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

    您好 Kalyan、

    您可以从 ARM 找到此类信息、例如:

    http://infocenter.arm.com/help/topic/com.arm.doc.ddi0460c/DDI0460C_cortexr5_trm.pdf

    此致、

    周德伟

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

    尊敬的 David:

    感谢您的回答、但我找不到有关 SPSR_CXSF 的任何详细信息。

    谢谢、

    Kalyan

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

    Kalyan、

    在这种情况下、MSR 命令用于将 R1寄存器中存储的值复制到 SPSR 寄存器。

    SPSR 寄存器具有 CXSF 位域。 C 进行控制。 X 表示扩展、S 表示状态、F 表示标志。

    您可以在 SPSR 寄存器中指定要修改的位字段的特定部分。 通过指定 CXSF、这意味着所有字段、所有位都将被修改、因此整个 SPSR 寄存器将被修改。

    此致、

    周德伟

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

    感谢您的回答。

    我通过将0xFFFFFFFF 写入 SPSR 进行了实验、回读时得到0xFE0FFFFF 值。 当我参考 ARM 参考手册并知道 J 和 DNM 字段无法写入所需的值时、以下是与 CPSR 的 J 字段相关的注释:

    读取 CPSR 中的 J 位时返回0。
    注:不能使用 MSR 更改 CPSR 中的 J 位。

    是否有任何其他方法可以用零初始化 SPSR?

    谢谢、
    Kalyan

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

    Kalyan、

    我相信您对此是正确的。 我不知道答案、您能在 ARM 开发社区中提交请求单吗?

    对于 J 位、当您读回它时、它返回0、但我的理解是、它并不意味着0是它具有的实际值。

    您的目标是 将 SPSR 强制为零? 如果 SPSR 不为零、会对您产生什么影响?

    此致、

    周德伟