工具/软件:Code Composer Studio
您好!
我准备对 OTP 进行编程、以自定义引导模式选择引脚。 闪存 API 文档表示确实可以使用闪存 API 对 OTP 进行编程、但文档中有一个短语重复出现、用于 OTP 编程。
[引用][DCSM OTP]编程必须与128位地址边界对齐、并且每个128位字只能编程一次。[/引用]
我理解短语中的"只能编程一次"部分、 但是、当谈到128位对齐时、这意味着我必须对所有 ZxOTP_GPREGx 寄存器(总共8个 C28x 字、相当于16字节或128位)进行编程、即使我只打算使用 GPREG1和 GPREG3? 我知道、只要写入的字节数得到相应调整、就可以沿未对齐边界对主阵列闪存进行编程、但是否可以对 OTP 存储器执行相同的操作?
如果我决定将来使用 GPREG2和 GPREG4、该怎么办? f2838x_dcsm_z1otp.asm 在注释中包含以下警告:
[引述]
;如果是用户、建议不要将0xFFFFFFFF 编程到用户 OTP 位置
;;打算将来将任何位重新返回并重新编程为“0”。 IF 用户
;将0xFFFFFFFF 编程到任何 OTP 位置、ECC 位置将如此
;编程为未擦除状态,用户将无法返回
;并将 OTP 位置重新编程为另一个值。 请参阅 DCSM
;;器件 TRM 的一章、了解有关 DCSM 中位置 ECC 的更多详细信息。
[/报价]
如果 我必须从128位边界开始一次至少128位对 OTP 进行编程、此警告表明我无法保留 GPREG2和 GPREG4以备将来使用。
此致、
李孝华