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.

[参考译文] TMS320F28P650SH:F28P65 CMPSS 勘误表:如何实现工作区 3?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1606091/tms320f28p650sh-f28p65-cmpss-errata-how-to-implement-workaround3

器件型号: TMS320F28P650SH

尊敬的团队:

我的客户符合 CMPSS 勘误表说明如下:

image.png

它们使用 AGPIO 作为 ADC、使用 CMPSS 作为输入。 他们已经重新设计 PCB 来解决这个问题。 但发现这可能与此勘误表有关。 他们现在无法更改硬件。 您能否提供有关解决方法 3 的更多详细信息? 我们是否有演示代码可以与客户共享?

image.png

此致、

Zane

 

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

    尊敬的 Zane:

    第三种权变措施的目标是 确保 ADC S/H 电容已经接近您即将测量的电压、然后再对敏感通道进行采样。
    如果 S/H 电容器已经接近节点电压、则连接它会导致小得多的电荷干扰、因此 CMPSS 输入可承受的干扰要小得多。

    您只需选择另一个连接到安静电压(例如 3.3V 或 VREFHI) 的 ADC 通道。 然后在真实 SOC 之前立即触发一个虚拟 SOC。  然后在虚拟 SOC 完成后立即触发真实 SOC。

    例如、 由正常触发器 (ePWM SOCA) 触发的 SOC0(虚拟)、配置 ADCINT1 源= EOC0 以 保证 SOC1 在 SOC0 完成后立即发生。 通过 ADCINT1 触发 SOC1(实通道)、并使用 EOC1/ADCINT2 进行正常 ISR/数据处理。

    可以选择将其与 CMPSS 数字滤波器 (权变措施 2)结合使用。

    我也不知道此勘误表的专用项目。

    此致、

    Masoud

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

    尊敬的 Masoud:

    感谢您的快速回答!

    我与客户讨论了解决方法 3、但似乎没有这样做。 因为没有 ADC 通道连接到 3.3V 或 VERFHI。

    关于权变措施 2、它们使用数字滤波器。 以下是其配置:

    CTRIPFILCLKCTL = 0x01;

    SAMPWIN = 0x3F;

    THRESH = 0x3F;

    但仍然会有 CMPSS 干扰。  增加  CTRIPFILCLKCTL 会有所帮助? 例如 199、表示采样频率为 1M。

    此致、

    Zane

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

    尊敬的 Zane:

    错误 CMPSS 事件可能是当 ADC + CMPSS 共享同一引脚时、由 AGPIO 型模拟引脚上的 ADC S/H 电容器电荷注入引起的非常短的干扰(高达 50ns)。  权变措施 2 是使用设置为 50ns 或更高的 CMPSS 数字滤波器来抑制该短干扰。

    当您说我们已启用数字滤波器但仍然看到干扰时、这通常是因为 ePWM/XBAR 仍使用未滤波的 CMPSS 输出、或者在滤波之前配置了锁存/跳闸路径。  因此、请仔细检查相应的布线 、如果跳闸源连接到未滤波输出、滤波器设置将不起作用。

    电流延迟已经非常长。

    此致、

    Masoud

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

    尊敬的 Masoud:

    我无法理解您的答案、如果我启用数字滤波器、信号会始终进入数字滤波器、然后进入 ePWM/XBAR。

    如果 workaround2 不是解决方法、我们为什么要将其写入勘误表中?

    此致、

    Zane

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

    尊敬的 Zane:

    您显示的设置 (SAMPWIN=0x3F、THRESH=0x3F) 已经是强滤波设置、因此只需将 CTRIPFILCLKCTL 更改为 199 之类的设置就会使响应更慢、不会对 50ns 尖峰产生更强的干扰。 数字已经很高。 这就是我怀疑滤波配置不正确的原因。

    关键细节是、初始化/配置 CMPSS 数字滤波器不会自动成为每个下游路径使用的功能。 CMPSS 可让您选择驱动跳闸输出的条件:异步补偿、同步补偿、滤波器输出或锁存滤波器输出。 该问题旨在确认 CTRIPH / CTRIPOUTH 的驱动信号是滤波器输出。

    此致、

    Masoud

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

    尊敬的 Masoud:

    我认为客户的配置是正确的。 增加采样窗口和 THERSH 后、它会有所改善、但仍然具有 cmpss 干扰。

    什么是 50ns 指? 这是采样窗口、如果正确、如何设置 THERSH?

    最棒的餐厅

    Zane

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

    一方面、勘误表中的“50ns"是“是当 ADC S/H 电容器在也由 CMPSS 监测的引脚上连接/断开连接时可以在 AGPIO 型模拟引脚上注入的模拟干扰的近似最大宽度。

    另一方面、CMPSS 数字滤波器的工作原理是在可编程采样时钟周期对比较器输出 (SAMPWIN + 1) 进行采样、并评估窗口中的样本数(有效阈值 thresh + 1)。 这里的边界规则是 thresh 必须是<= SAMPWIN。 使用客户的共享设置、SAMPWIN = 0x3F(64 个样本)、THRESH = 0x3F(64 个样本)。

    这本质上是最强的多数滤波器设置。 它要求输入保持新状态、持续 64 个样本、以切换滤波器输出。

    因此、如果他们仍然看到跳闸、我想这就是发生的情况之一:路径实际上不是使用滤波信号或在实际系统中、所需的脉冲超过 50ns。

    此致、

    Masoud

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

    让我们使用客户的共享设置实际测量延迟:

    如您所见、CMPSS 使用 SYSCLK (200MHz):

    T_DELAY = 0x3F * T_s = 0x3F *(CLKPRESCALE + 1)/0x3F 200MHz  *(2/0x3F)= 200MHz * 10ns = 640ns

    正如我提到的、这个时间已经超过了 50ns。

    此致、

    Masoud