根据 TI 安全手册、我了解了
1、SRAM ECC 可以通过设置系统控制协处理器辅助控制寄存器 C1的 B1TCMPCEN 和 B0TCMPCEN 位来启用
2. 将系统控制协处理器的辅助控制寄存器 C1的 ATCMPCEN 位置位可启用 PFLASH ECC。
我找到了一些用于访问辅助控制寄存器 C1的汇编代码片段。
由于我们在项目中使用 C 语言、因此请分享有关如何使用 C 语言访问 辅助控制寄存器 C1的详细信息?
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.
根据 TI 安全手册、我了解了
1、SRAM ECC 可以通过设置系统控制协处理器辅助控制寄存器 C1的 B1TCMPCEN 和 B0TCMPCEN 位来启用
2. 将系统控制协处理器的辅助控制寄存器 C1的 ATCMPCEN 位置位可启用 PFLASH ECC。
我找到了一些用于访问辅助控制寄存器 C1的汇编代码片段。
由于我们在项目中使用 C 语言、因此请分享有关如何使用 C 语言访问 辅助控制寄存器 C1的详细信息?
您好!
在其他几种情况下、使用汇编例程。 在 Cortex-R4/R5 CPU 中访问/配置协处理器寄存器时、通常使用汇编例程。 编译器不会生成这些用于访问协处理器寄存器的特殊指令。
因此、C 例程仍然可以使用它们的"标签"调用这些函数。 例如、CPU 的事件总线信号通过在协处理器中启用来从 CPU 中导出。 这是通过调用 _coreEnableEventBusExport_()函数来完成的。
您的项目中是否存在.asm 文件问题? 如果是这样、您可以创建.c 文件并放入"asm"函数、如下所示:
asm (" nop");
以上示例用于执行"NOP"汇编指令。 此行可以是.c 文件的一部分。 编译器不会尝试优化此行。
此致、Sunil
您好、Sunil、
启用闪存和 SRAM ECC 后、我面临 CPU 中止问题。
我在辅助控制系统寄存器中启用了闪存/ SRAM ECC、并在 C9、性能监控控制寄存器中启用了事件到事件总线的导出。 我已经在 CCS 中验证了这些 CPU 寄存器的值。
我的代码中有一个函数、我在其中将数据从闪存复制到 RAM。 当闪存和 SRAM ECC 被启用时、我的程序执行在这个函数上中止。
请注意、我正在使用 CCS 中启用的"自动 ECC 生成"对目标中的代码进行编程。
我很困惑为什么 CPU 在我启用了"自动 ECC 生成"时中止。 如果我在这里有问题、请允许我发言。