ZHCZ053A December 2024 – October 2025 AM62D-Q1
C71x:MMA HWA_STATUS 在应用程序启动之前报告错误
由于内部状态未初始化,C71x 处理器所搭载的矩阵数学加速器 (MMA) 在上电后,可能会在 HWA_STATUS 寄存器的 FirstErrorCode 与 LastErrorCode 字段中上报错误。由于这些字段是粘滞字段,任何后续的 HWARCV 指令都可能会引发 C71x 异常。
上电后,在首次执行正常 MMA 操作前,可通过 C71x 处理器运行一段简短指令序列,完成 MMA 内部状态初始化。仅需执行一次该指令序列。
该序列会生成有效的 HWA_CONFIG 和 HWA_OFFSET 值并将其加载到 MMA 中,随后清除粘性错误码。
以下为 C71x 汇编语言编写的指令序列:
PROT
MVK32 .M2 0x0,B0 ; clear low word of VB0
VDUPW .C2 B0,VB0 ; duplicate word across VB0
HWAOPEN .L2 VB0,VB0,0 ; clear HWA_CONFIG and HWA_OFFSET
HWACLOSE .S1 0 ; clear any error conditions