您好!
我在 MSP430FR5994 Launchpad 上进行了一些计时测试、发现指令周期计数存在一些差异。 我已经检查了产品页面上提供的勘误表(SLAZ681M)、但它仅适用于版本 C、并且 launchpad 中有版本 A。
在哪里可以找到较旧版本的勘误表?
谢谢。
Tomas
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.
您好!
我在 MSP430FR5994 Launchpad 上进行了一些计时测试、发现指令周期计数存在一些差异。 我已经检查了产品页面上提供的勘误表(SLAZ681M)、但它仅适用于版本 C、并且 launchpad 中有版本 A。
在哪里可以找到较旧版本的勘误表?
谢谢。
Tomas
尊敬的 Johnson:
我在 MSP430FR5994上进行了一些计时测试、我发现某些指令的周期计数(在某些情况下)与文档不符。
我已经查看了用户指南 SLAU367P、勘误表 SLAZ681M、并且没有找到这些偏差的任何说明。
1) 1)跳转指令在某些情况下需要3个周期
我找到了 MSP430F5xx 的" CPUXV2芯片上跳转的周期时序"线程、符合这种情况。
L1 XOR.b #1、&P6OUT ;4个周期
JMP +2美元 ;2 3个周期
JMP L1 ;2个周期
用户指南(SLAU367P)、第4.5.1.3章:"所有跳转指令需要1个代码字并且需要2个 CPU 周期来执行、而不管跳转是否进行。"
2)在某些情况下、RRAM (可能也包括 RRUM、RRCM、RLAM)需要 n-1个周期
L2 XOR.b #1、&P6OUT ;4个周期
rram #2,r3 ;2 1个周期
JMP L2 ;2个周期
3) CALLA #label 或 RETA 花费1个周期更少(在某些情况下)
L3 XOR.b #1、&P6OUT ;4个周期
CALLA #L3x ;5+5 9个周期
JMP L3 ;2个周期
L3x 返回 ;= MOVA @SP+、PC (5个周期)
所有测试均在 Launchpad 上完成、MSP430FR5994 (修订版 A)、MCLK = 8MHz、无等待状态。 周期计数是根据由示波器测量的循环周期确定的。
此致、
Tomas
根据文档历史记录[参考勘误表(SLAZ681M)第8节]勘误表版本 B 是应用于器件版本 A 的最后一个版本。勘误表版本 C ("XMS"->"MSP")可能修复了15个先前的勘误表。 我有勘误表修订版 A 的副本、但没有勘误表修订版 B;它没有提到任何有关指令时序的内容。 (我找到了指向 SLAZ681B.pdf 的链接、但它已失效。)
我不知道 TI 的程序、但如果预制->生产步骤能够修复从未成为正式勘误表的内容、这并不会让我感到意外。 实际上、报告"X"器件中的错误不会引起您的注意。
如果您今天购买(FR5994) Launchpad、则其上会有一个 Rev C 器件。 (我混合使用了 revA 和 revC Launchpad。)
谢谢 Bruce。 我已经检查了修订历史记录(勘误表中的第8节)、看起来这个问题没什么。 我知道"XMS"芯片未经过全面测试、某些参数可能超出规格、但 TI 在官方开发套件中使用这些芯片、因此、如果已知这些芯片、我认为不应该存在未记录的错误。 看起来这不是新问题(请参阅旧主题"CPUXV2芯片上跳转的周期时序")。 我将更换 MCU 并再次运行所有测试。 我主要测试了 DMA 和 FRAM 缓存行为、这一结果只是一个副作用。
Tomas