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.

[参考译文] TMS320F28386D:DCC 配置

Guru**** 2459220 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1020746/tms320f28386d-dcc-configuration

器件型号:TMS320F28386D
主题中讨论的其他器件:C2000WARE

您好!

我很难确保将正确的值放入不同的计数器/种子寄存器中。

因此、我将向您展示我的用例、以便您可以帮助我弄清它。

第一个用例

我想使用 INTOSC1 (时钟源1)监控连接在 X1 (时钟源0)上的外部20MHz 50ppm 晶振。

第二个用例

我想使用 INTOSC1 (时钟源1)监控连接在 X1 (时钟源0)上的外部20MHz 50ppm 晶振。

第三个用例

我想使用 INTOSC1 (时钟源0)监控连接到 GPIO 并在输入 X-BAR 输入15 (DCC 的时钟源1)上重定向的外部1MHz 50ppm 晶振。

第四 个用例

我想使用    INTOSC0 (时钟源1)监控连接到 GPIO 并在输入 X-BAR 输入16 (DCC 的时钟源0)上重定向的外部1MHz 50ppm 晶振。

对于所有四种情况、我的最终目标是对 晶体频率执行1%容差监测(超过50ppm、但我们不需要非常接近的监测)。

您能不能为我提供帮助、特别是为我提供有关不同步骤计算的每种情况的指南:

  • DCC 错误
  • 窗口
  • 允许的频率误差
  • 总误差
  • 计数器0
  • Valid0
  • 计数器1

谢谢、

此致

克莱蒙特

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

    您好 Clement、

    您可以参考器件 TRM 进行 DCC 值计算。 您还可以使用 C2000ware driverlib 、该库提供可计算这些值的 API 来配置 DCC 寄存器。 DCC_verifyClockFrequency 函数用于单次验证、 DCC_ContinuousMonitor 用于持续监控。

    此致、

    Veena

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

    显然、我在编写之前已经参考了 TRM、而容差部分是不确定的部分(INTOSC1/INTOSC2的容差和我们的晶体的容差)、TRM 对此不够清楚。

    我在 C2000Ware_3_02_00_00的 DCC.h/DCC.c 文件中看不到您引用的两个函数。

    但是、使用这些函数无论如何都不是答案、因为我需要证明计算的正确性(我们正在为航空领域开发、因此我们不使用您的代码库)。

    此致、

    克莱蒙特

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

     您好、Cl é ment、

    这些函数存在 C2000ware v3.04.00。

    在 TRM 步骤中、公差是 DCC 误差所需的容差。 减小容差、延长窗口时间。

    与 DCC 误差一起、    由于用于 DCC 比较的时钟的频率变化、有可能会出现误差。 如果使用 INTOSC1/2、频率变化为+/-3%

    从器件数据表中:

    我认为其他步骤是明确的。

    此致、

    Veena

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

    为了确保在配置 DCC 时,时钟源0是要监视的元件,还是时钟源1是一个,还是两者都是?

    我会在哪里将时钟源0上的误差和时钟源1上的误差精确地计算在等式中?

    此致、

    克莱蒙特

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

     您好、Cl é ment、

    基本上、DCC 监控时钟1和时钟2的频率比、无论它是否保持一个恒定值(在允许的容差范围内)。  

    假设您要使用 INTOSC1作为 基准来监控/测量 XTAL 频率、则可以将时钟0配置为 XTAL、将时钟1配置为 INTOSC1。 由于这些是不同的时钟源、您需要考虑 INTOSC1的频率变化。 TRM 中记录的步骤提到添加用作参考时钟的时钟频率变化。 我将与 模块专家核实我们是否需要考虑两 个时钟的频率变化。

    假设您希望监控 PLL 输出。 PLL 使用 XTAL 作为 时钟源、您需要 确保 PLL/XTAL 保持恒定的频率比。 在这种情况   下、由于两者都来自相同的时钟源、因此无需在 DCC 计算中添加频率变化误差。

    此致、

    Veena

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

    您好、Veena、

    [引用 userid="128297" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1020746/tms320f28386d-dcc-configuration/3772950 #3772950"]

    假设您要使用 INTOSC1作为 基准来监控/测量 XTAL 频率、则可以将时钟0配置为 XTAL、将时钟1配置为 INTOSC1。 由于这些是不同的时钟源、您需要考虑 INTOSC1的频率变化。 TRM 中记录的步骤提到添加用作参考时钟的时钟频率变化。 我将与 模块专家核实我们是否需要考虑两 个时钟的频率变化。

    [/报价]

    谢谢。

    我的理解是、将时钟源0的变化置于"窗口"公式中、而时钟源1的变化应置于"允许的频率误差"公式中。 但我可能错了?

    [引用 userid="128297" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1020746/tms320f28386d-dcc-configuration/3772950 #3772950"]

    假设您希望监控 PLL 输出。 PLL 使用 XTAL 作为 时钟源、您需要 确保 PLL/XTAL 保持恒定的频率比。 在这种情况   下、由于两者都来自相同的时钟源、因此无需在 DCC 计算中添加频率变化误差。

    [/报价]

    是的,但在这种情况下,您会将其作为“窗口”公式 NO 中的容差进行积分。 或者、该公式中的容差、而不是监测紧固度方面的期望?

    此致、

    克莱蒙特

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

    您好 Clement、

    窗口计算中定义的容差是由 DCC 引起的、该容差不考虑 Clk0或 Clk1频率的误差。 这意味着对于 DCC 误差、您可以以百分比形式定义此误差的容差、如果您希望此误差具有更低的容差、并且随着时间的推移会增加测量窗口、这意味着您所需的 DCC 误差容差更小、 但是、如果此误差的容差较高、且只执行总检查、则测量窗口可能会更小。

    允许的频率误差

    它会考虑 clk0和/或 clk1中的错误、这将定义您的有效窗口。 这意味着、例如、如果 Clk0 (XTAL)的频率变化预计为1%、而 Clk1 (INTOSC2)的频率变化预计为3%、则两者都需要相加以考虑4%的总允许频率容差(考虑到最坏的情况)。 在这种情况下、由于两个时钟本质上是异步的、因此需要添加允许的误差/差异。

    在另一种情况下、假设您的 Clk0是容差为3%的 INTOSC2、而 Clk1是允许容差为0.1%的 PLL (使用 INTOSC2作为时钟源)、 然后两个时钟本质上是同步的、ITNOSC2中的任何误差也将出现在 PLL 上、因此在这种情况下、只需要考虑0.1%的 PLL 上允许的频率误差、因为 INTOSC2上3%的变化被抵消。

    希望这可以消除疑虑。 如果您有任何疑问、请告诉我。

    此致、

    Nirav

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

    是的,它消除了所有的疑虑,谢谢!

    我必须承认、您的答案非常明确、尤其是最终示例、您应该考虑将这些添加到 TRM 中、因为它可以帮助他人。

    此致、

    克莱蒙特