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.

[参考译文] AM2732:HWA 独立配置:卡在"run"模式中

Guru**** 2546020 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1227119/am2732-hwa-stand-alone-configuration-stuck-in-run-mode

器件型号:AM2732

我正在尝试使 HWA 在独立模式下工作(没有 EDMA 或任何其他输入/输出触发器)。

所有配置看起来都运行良好、但检查调试寄存器会发现 HWA 在线程0上卡在"运行"模式(0x3):

  • 当前 ParamSet 索引正确(=1)
  • numLoops 正确(=1)
  • 软件触发/立即动作正确(在软件触发模式下未应用触发时、状态机保持在"等待触发"模式0x2)
  • trigStatus 为{0、1}

启动顺序似乎正确并符合规范(使用 MCU+ SDK 提供的 HWA V0驱动程序库)。 特别是、已经完成了对 HWA Init、HWA 重置、ENABLE 和配置的适当调用。 ParamSet 配置如下:

  • accelMode = FFT、triggerMode =软件
  • src 和 dest 复数16位有符号、scale = 2
  • fftSize = 4、butterflyScaling = 0
  • srcAcnt = 255、srcAIdx = sizeof (uint32_t)、srcBcnt = 0
  • dstAcnt = 255、dstAidx = sizeof (uinit32_t)
  • 所有其他参数为0

存储器组不会被任何方式修改(输出组仅为零、输入组为零、输入值除外)。

什么可能导致 HWA 永远卡在运行模式,显然什么也不做?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我能够使用 MCU+ SDK 中的 HWA 示例成功重建独立示例、剥离了与 EDMA 相关的代码并更改参数以获取所需的配置。

    (这不能解决卡滞 HWA 的问题、如果进一步调查该问题、我将发布调查结果)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Maximilien:

    在 FFT 引擎上观察到的一种情况是 FFT 大小小于输入样本数。 FFT 长度应等于或大于输入采样数(进行自动填充零)。 从 FFT 大小(2^4 = 16)和 SRCACNT = 255来看、这似乎是个问题、对吧? SRCACNT=255可以使用的 FFT 最小大小为8 (2^8 = 256)。

    此致、

    Kaushik

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的答复。

    当然、该参数被忽略了、使用了 numDopplerBins (=16)而不是"numFFTBins"(在 mmWave MCU+ SDK 中、后者在 rangeprochwa.c:711中具有正确的值):

        hwaParamCfg[paramsetIdx].accelModeArgs.fftMode.fftSize = mathUtils_ceilLog2(pDPParams->numFFTBins);