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.

[参考译文] DAC7716:菊花链回读SPI问题

Guru**** 2591340 points
Other Parts Discussed in Thread: DAC7716

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/630897/dac7716-daisy-chain-readback-spi-problem

部件号:DAC7716

大家好,我们正在将DAC7716用于5个DAC以菊花链方式连接的设计中,即有一个通用时钟和CSN,并且连接了连续的MOSI/Miso。 执行菊花链模式书写没有问题,如数据表中所示图 2.菊花链回读不起作用,尽管图 3个。 数据表中没有关于*菊花 链*回读模式的具体数字,而且它没有按预期工作(在120位矢量中返回许多零),这让我们怀疑它是否确实受支持? 由于数据在CSN较高时被移出,我不明白为什么它不起作用(理论上)。 感谢您对此进行调查。

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

    我对一些内部事件造成的延误表示歉意。 我和我的同事将对此进行研究。 您可以在24小时内获得更新。 感谢您的耐心等待。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Pieter,您好!

    感谢您的查询。 实际上,我们从未像我从内部团队那里了解的那样,在菊花链模式下测试过读回。 但是,设计中似乎没有任何禁止,也没有阻止其运行。 如果您希望我们分析您的SPI序列,请发送示波器快照。 我会让设计团队检查它,并告知您原则上是否有任何问题。

    此致,
    Uttam Sahu
    精密DAC应用工程师
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Uttam,感谢您关注此问题。 我同意,因为我也看不到菊花链回读功能的任何禁止。 我们将很快为您提供一些波形屏幕截图。 此致,Pieter

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

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

    您好,Kevin,很抱歉延迟供应,但我们直到最近才有时间继续分析,然后我们想在发布前了解是否正确。 为了您的信息,我们提供了5个菊花链式DAC (A->C->D->E),请查看卡片页[1]和示意图[2]。 我们有两个人单独查看,得出了相同的结论。 我们为SPI主控制器提供了自定义VHDL实现。

    请查看随附的屏幕截图和Tektronix波形文件(*。csv)[3]。 当我们编写的时候一切都很顺利,我们看到sdo行上的命令从最后一个DAC (即 e)。 我们正在所有4个DAC通道上进行迭代,因此4x 120位(120=5*24位/通道)。 当我们执行连续的写入/读取周期时,我们注意到只有DAC E回复正确的信道读回,其他数据都为零。 这在所附的屏幕截图上很容易看到。 我们想知道,DAC是否有一个状态机,在执行回读命令和24位回复后,该状态机只能发送零? 我们确信所有的时间限制都得到了满足,并且我们已经显著降低了SPI时钟速度,以便我们进行分析。

    您是否可以在实验室中检查菊花链回读? 提前感谢您的帮助。

    [1] www.ohwr.org/.../wiki

    [2] edms.cern.ch/.../1

    [3] e2e.ti.com/.../SPI_5F00_readback_5F00_problem.7z

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

    我正在查看您的文件。 还将与内部团队讨论,并尽快返回我的分析。

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

    正如我刚才所说,这是一个未经测试的功能。 因此,我需要明确测试,以便向你们提供任何建议。 由于我目前没有此设备的多个EVM,我正在订购它们。 我将在实验室中获得菊花链后对其进行测试。 请您耐心等我们。

    此致,
    Uttam
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,此问题是否有任何进展? 您是否可以验证设计文件(HDL?) 在EVM不可用的情况下,此IC也是如此? 提前感谢。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Pieter,您好!

    我已经为EVM下了订单。 我将验证它们的功能。 由于这是一个旧设备,因此很难在设计文件上对其进行测试。

    很抱歉让您久等了。

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

    您好,这方面有什么更新吗? 这正成为我们产品的一个阻塞问题。 提前感谢。

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

    很抱歉耽误你的时间。 我得到了EVM。 正在处理您的问题。 将很快通知您结果。

    非常感谢您的耐心等待。

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

    过去几天我一直在处理您的问题,但很遗憾,直到现在都找不到任何解决方案。 我将在本周结束前传达我的调查结果。

    非常感谢您的耐心等待。

    此致,
    Uttam
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Uttam,感谢您提供信息。 您是否能够重现该问题?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Pieter,您好!

    过去几周我一直在尝试解决菊花链读回问题。 我能够重现您所说的问题,并尝试查看是否有任何解决方法。 但不幸的是,我未能在这方面取得任何成功。 我也试图让其他人参与解决这个问题,但最近由于假日季的原因,我无法获得很多支持。 我将在1月的第一周告诉您我的调查结果

    非常感谢您的耐心等待。

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

    Pieter,您好!

    写了我之前的文章后不久,我就可以找到一位数字设计师,我们可以找到解决问题的方法。 这些步骤如下(对于菊花链中的3个DAC):

    1.按照数据表以菊花链形式正常写入  

    2.为第一个DAC发送读取命令,为菊花链中的其他DAC发送NOP

    3.为菊花链中的所有用户发送NOP命令,并解析来自第一个DAC的miso行的数据

    4.为第二个DAC发送读取命令,为菊花链中的其他DAC发送NOP

    5.为菊花链中的所有用户发送NOP命令,并解析来自第二个DAC的miso行中的数据

    6.为第三个DAC发送读取命令,为菊花链中的其它DAC发送NOP

    7.为菊花链中的所有用户发送NOP命令,并解析来自第三个DAC的miso行中的数据

    请注意,步骤2,4和6可以互换。

    由于设计中的一些自定义实施,我们需要执行上述步骤,以便对链中的所有DAC执行正确的回读。 我知道这是步数的乘法,在您的设计中,您需要10个SPI周期来读取5个DAC,而不是2个周期。

    请在下面查找示波器快照:

    首次写入(0x05,0x33,0x30,0x05,0x22, 0x20,0x05,0x10,0x10):这是我要读回的值:

    第二次写入 (0x04,0x7F,0xF0,0x04,0x7F, 0xF0,0x04,0x7F,0xF0):为了确保我不是只是从尚未从DAC寄存器更新的移位寄存器读回数据:

    第一个读取命令 (0x00,0x03,0x3C,0x00,0x03, 0x3C,0x85,0x00,0x00):  

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

    第一个NOP (0x00,0x03,0x3C,0x00,0x03, 0x3C,0x00,0x03,0x3C):立即回读第一个DAC数据:

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

    第二次读取 (0x00,0x03,0x3C,0x85,0x00, 0x00,0x00,0x03,0x3C):

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

    第二个NOP (0x00,0x03,0x3C,0x00,0x03, 0x3C,0x00,0x03,0x3C):从第二个DAC读取数据:

    第三次读取 (0x85,0x00,0x00,0x00,0x03, 0x3C,0x00,0x03,0x3C):

    第三个NOP (0x00,0x03,0x3C,0x00,0x03, 0x3C,0x00,0x03,0x3C):从第三个DAC读取数据,此处为:

    我认为您的问题现已解决。 如果您遇到任何其他问题,请告知我们。

    此致,

    Uttam

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Uttam,感谢您的测试和详细信息。 遗憾的是,您可以重现故障,这确认了设计中的某些东西已损坏。 您建议的解决方法是我们已经考虑的,但它将显著增加读出延迟(>x5,因为我们更改了5个DAC)。 我们从未对变通办法进行过测试,很高兴看到它得到了确认。 我们非常感谢您的帮助!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Pieter,您好!

    设计没有直接实施的主要原因是DAISY回读不是规范的一部分,多年来我们从未收到任何客户要求实施它。 因此,设计师的基本趋势是调整设计以优化其他规格。 您必须知道,设计中的规格之间始终存在权衡,低优先级和未指定的规格始终会受到影响。

    这也是我花了一些时间来制定变通办法的原因,因为实施是特定于设备的。 我在向您建议解决方案时意识到了延迟问题,但此设备没有其他选择。 希望您能够继续执行此限制。 如果您需要任何其他支持,请告知我们。 如果您根据数据表中不清楚的一些假设做出一些决策,我建议您在将来让我们对设计进行审核。 由于这些设备是按照数据表规格开发和测试的,因此很难判断功能是否可行(如果未在数据表中指定)。

    再次感谢您使用我们的设备并指出此问题。 我们现在正尝试在未来的设计中添加此要求。

    此致,
    Uttam