请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS570LS3137 主题中讨论的其他器件:HALCOGEN、 UNIFLASH
您好!
我根据以下文章和文章、尝试使用链接器生成闪存 ECC:
TMS570LS3137 -通过链接器生成的 ECC -基于 Arm 的微控制器论坛-基于 Arm 的微控制器- TI E2E 支持论坛
7.1.链接器生成的 ECC - Hercules 安全 MCU 文档
我的链接器命令文件如下所示:
MEMORY
{
VECTORS (X) : origin=0x00000000 length=0x00000080 vfill = 0xffffffff
KERN_FUNC (RX) : origin=0x00000080 length=0x0000FF80 vfill = 0xffffffff
FLASH0 (RX) : origin=0x00010000 length=0x00010000 vfill = 0xffffffff
STACKS (RW) : origin=0x08000000 length=0x00001800
KERN_DATA (RW) : origin=0x08001800 length=0x00000800
RAM (RW) : origin=0x08002000 length=0x0003E000
VECTORS_ECC : org = 0xf0400000 len = 0x10
ECC = { input_range = VECTORS, algorithm = eccalgo, fill = true }
KERN_FUNC_ECC : org = 0xf0400010 len = 0x1FF0
ECC = { input_range = KERN_FUNC, algorithm = eccalgo, fill = true }
FLASH0_ECC : org = 0xf0402000 len = 0x2000
ECC = { input_range = FLASH0, algorithm = eccalgo, fill = true }
}
ECC
{
eccalgo : address_mask = 0x003ffff8
hamming_mask = R4
parity_mask = 0x0C
mirroring = F021
}
我的调试设置如下:

我在 Halcogen 中启用了闪存 ECC 校验、当我尝试从 CCS 刷写生成的二进制文件时、ESM 模块会触发 nERROR 输出。
我已尝试从 Uniflash 刷写闪存、但具有相同的行为。
我猜链接器文件中有一些错误吗? 您能否就此提供一些反馈?
谢谢。


