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.

[参考译文] DAC8830:了解上电复位和不可预知的启动值的可能原因

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1221785/dac8830-understanding-the-power-on-reset-and-possible-causes-for-unpredictable-start-up-value

器件型号:DAC8830

数据表在 第16页的加电复位一节中指出:"加电后、DAC8830引脚 VOUT 的输出为0V。"

在我们的硬件中、我们发现此语句并不总是正确的。 启动后、DAC8830 VDD 引脚具有5V 电压、基准电压达到5V、当我们开始与 DAC 通信时、我们可以预期通过 SPI 对 Vout 进行控制。 不过、在加电时和通信之前、有时 DAC 会在 Vout = 0V 时加电、而其他时候 DAC 会在 Vout = 5V 或2.5V 或3.4V 时加电。 我们在系统中使用其中的16个 DAC、每个 DAC 都有自己的稳定输出电压、当我们启动到这种"错误状态"时会达到该电压。 我已验证、除了上电时的单个上升沿外、我们的 SPI CLK 是安静的、请执行一个使 CLK 保持高电平的设计选择。 我假设这意味着在预期的通信开始之前、我不能将非零值加载到 DAC 中。

当 DAC 启动时 Vout = 0V 和 Vout 等于其他一些电压之间唯一的区别与我们的电压基准有关、该电压基准具有10秒的极慢时间常数。 当基准电压稳定为5V 并且我们重新启动系统时、每个 DAC 上的 Vout = 0V。 请注意、重新启动过程没有提供足够的时间来释放电压基准、因此当重新启动后 DAC 通电时、会出现5V 基准电压。 不过、如果该系统在经过长时间的等待30s 后首次开启、则 Vout 与 Vref 同步上升、直到 Vout 达到非零启动值。 Vref 需要10s 才能达到5V 电压的70%、因此在冷启动情况下、在上电序列期间不存在 Vref。

那么、我的问题是这个、POR 是如何实现的、 上电时 Vref 的缺失会以某种方式阻碍 POR 的功能吗? 或者、DAC 是否存在其他一些原因、可能以非零 Vout 启动?

感谢任何帮助。

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

    Erin 会检查并回复。

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

    Scott、您好、

    我现在正在研究这个问题、感谢您的耐心等待。

    谢谢。
    错误

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

    Scott、您好、

    来自我们设计团队的一些问题:您的上电顺序是什么? 您的数字引脚电源是在 VDD 电源之前还是之后接通?  

    除此之外、查看两种情况下电源电压上升的一些示波器屏幕截图也会有所帮助。 VDD、SCLK、VREF 和 VOUT 的屏幕截图显示了 VREF 已开启的一种情况和 VREF 上升的一种情况、有助于确定是否可以确定问题。

    谢谢。
    错误

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

    谢谢 Erin。

    这将需要一段时间来获得你的屏幕截图,但我可以给你现在的预期行为。

    从冷启动到上电序列:

    1. 系统通电
    2. 大约1ms 后、5V 模拟电压轨在 DAC 上通电。
    3. 大约1.5ms 后(总计2.5ms)、3.3V 数字电压轨 在 DAC 上电。
    4. 大约8.5ms 后(总共11ms)、5V 基准在 DAC 上电。

    当重新启动系统时,5V 参考线路4没有时间放电,所以第一次通电时,它已经是5V。

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

    在本例中、对于冷启动、您会在这里看到 DAC 的行为不正确? 它们具有0V 以外的电压时?

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

    冷启动具有错误行为、Vout 不等于0V、并且重新启动具有正确行为、Vout=0V。

    此处是两个布线的 O 形示波器捕获结果。 黄色是5V VDD 电源轨。 青色表示 CLK、蓝色表示 Vref、品红色表示 Vout。 时间刻度为每分频2秒、垂直方向为2V。

    冷启动 重新启动

    有几件事要跟我说。

    1. 我之前弄乱了我的计时说明中的一个单元。 Vref 信号是10s 时间常数、而不是10ms 时间常数。 抱歉。
    2. Vref 会变得比我最初想的更低。 不过、这仍然有很大的差异。 重新启动期间、当参考中的运算放大器打开并传递非零 Vref 时、Vref 具有急剧的阶跃(这是青色阶跃之后的步骤、遗憾的是主要被 Vout、洋红色、跟踪隐藏)。 冷启动模式只有充电电容器曲线、没有尖锐边缘。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Scott、您好、

    我想确认、黄色表示 VDD、青色表示 CLK? 看起来数字信号会在模拟信号之前开启。 此外、看起来您的 VDD 在一个2阶跃斜坡中上升。 使用 SCLK 时升高到2V、几毫秒后会增加额外的2V。 您的系统中是否有这种行为? 如果器件未正确通电、这可能会带来问题。

    感谢屏幕截图! 将让您了解设计师和我挖掘的任何其他信息。

    谢谢。
    错误

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

    Scott、您好、

    设计人员希望在保持 SCLK 为低电平时尝试上电序列。 在上电复位时、移位寄存器不会清除;如果时钟边沿较高、器件可能会将数据推入 DAC 寄存器。 您是否可以在 SCLK 保持低电平时执行冷启动上电序列?

    谢谢。
    错误

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

    正确、黄色表示 VDD、青色表示 CLK。

    两步长的幂令人惊讶。 我知道我的电路中任何一个部分都不会产生该行为。 CLK 可能实际上正在为芯片供电、直到 VDD 变为高电平。在此期间、VDD 比 CLK 低1V? 我有电源延迟应该设置该顺序的另一种方式,但让我尝试更改一些值,以纠正该行为,并回到你..

    好了,这些变化没有任何效果,我的轨应该被强制出现在相反的顺序。 这里正在发生一些奇怪的事情,我明天将不得不进一步研究。  

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

    我花了一整天时间跟踪这一个,但我现在有一个补丁. 我们无法移除发送到 DAC8830的 CLK 边沿、因为它是 FPGA 引脚在配置期间变为高电平的副产品。 我不知道此引脚为什么变为高电平、但我们无法阻止它发生。 我们能做的最好的事情就是在配置完成后将输出拉回低电平。 添加第二个边沿实际上会使问题变得更糟、不过、至少在 CLK 脉冲到达之前已加电的情况下、Vout 始终处于未知状态。 正如您在下面的布线中看到的、在接收到 CLK 脉冲之前 VDD 变为高电平、然后 Vout 随 Vref 增加。

    但是、如果我等待为芯片供电、直到 CLK 脉冲发送完毕、则芯片会在冷启动和重新启动期间以正确的 Vout=0V 状态(品红色)通电。 这意味着我会在脉冲期间从 SCLK 线路并可能 通过板上的其他 IC 为芯片提供寄生供电、但它确实消除了启动不确定性。 我认为这是一个毫无吸引力的解决方案、但它是一个解决方案。

    您的团队是否想出了另一种方法来避免启动不确定性问题? 他们是否知道、如果我永久使用我的补丁解决方案、即缩短芯片寿命、可能会遇到哪些副作用?

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

    很高兴看到问题有了解决方案。 下面是另一个 需要尝试的测试设计:

    您的 CS 线路在启动时的状态是什么? 如果该电压较低、则问题很可能是 SCLK 在启动时加载错误数据。 您能否在上电前尝试将 CS 保持为高电平、看看这是否也能解决问题?  

    我将向设计人员询问您的补丁解决方案、以防 CS 保持高电平不起作用。 上电前、SCLK 脉冲不存在任何问题、但我将进行再次检查以确保没有问题。

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

    感谢您与您的团队核对我的解决方案。

    在 FPGA 配置期间、除了 SCLK 外、我们无法控制 CS、因此如果它为低电平、我无法对此做任何处理。  我仍将进行测试、但系统需要用于其他测试、因此该测试需要更长的时间才能工作。 如果该电压较低、我将不得不用硬连线将其拉高、以实现您的设计团队想要的、而且该电压不是系统的工作状态。

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

    Scott、您好、

    设计中存在使用 VDD 前的脉冲为 SCLK 供电的一些问题、因为并不意味着数字线路高于0.3V + VDD。 您的 CS 线路是否也通过 FPGA 供电? 如果是这样、也应该看到它的示波器屏幕截图、以查看它与 SCLK 的一致性。  

    另一种可能的解决方案是、如果您无法控制 CS 引脚(或如果将其升高到高电平无法正常工作):您可以在 SCLK 脉冲之前为 VDD 上电、然后将两者都置于0V 吗? 然后使用 VDD 和 VREF 正常启动该器件。 这将保护器件不受 SCLK 供电、如果您的 VREF 为0V、那么您应该不会看到任何 DAC 输出。 我不确定这是否可以在您的设置中实现、但与在上电之前让 SCLK 脉冲相比、这将是更安全的解决方案。

    谢谢。
    错误