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.

[参考译文] TAS2559:具有非标准时钟的 TAS2557/TAS2559初始化

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1127322/tas2559-tas2557-tas2559-initialization-with-non-standard-clocking

器件型号:TAS2559
主题中讨论的其他器件: TAS2557TMS320F28015TAS2505TAS2563TAS2552TAS2555

您好!

我正在评估 TAS2559、希望在现有设计中使用它(或 TAS2557)替代 Cirrus Logic/Wolfson WM9081。 WM9081使用以下配置:

  • 输入时钟为15MHz。 该时钟来自 TMS320F28015、并连接到 WM9081的 MCLK 输入。
  • WM9081将15MHz 时钟一分为二、从而生成7.5MHz 的内部 FLL 参考时钟。
  • WM9081的 FLL 用于生成11.29MHz 的内部 CLK_SYS。
  • WM9081可生成705.62kHz 的 BCLK 和22050Hz 的 LRCLK。 BCLK 和 LRCLK 是从 WM9081到 FPGA 的输出。
  • FPGA 使用 BCLK 和 LRCLK 来生成一个连接到 WM9081的 DACDAT 输出。
  • WM9081使用 D 类放大器将来自 FPGA 的 DACDAT I2S 数据流转换为单声道音频。
  • TMS320F28015的 I2C 接口用于配置 WM9081并在运行期间控制音量。

TAS2557或 TAS2559看起来可能替代 WM9081、但由于我们使用了非标准时钟和 TAS 系列器件的有限文档、因此配置似乎是一个问题。 因此有以下问题:

  1. TAS2557或 TAS2559是合适的选择吗? 请注意、我们迫切需要。 没有库存的更好器件不是解决方案。
  2. 如果只需要一个 I2S 接口、TAS2557和 TAS2559引脚是否兼容?
  3. 在给定15MHz 输入的情况下、是否可以将 PLL 配置为生成适用于22050采样率的时钟?
  4. 是否有任何有关 PLL 的官方文档? 我看到另一个用户设法对部分 PLL 进行反向工程(tas2559 PLL 和时钟配置)。 (我不得不说、他不得不这么做是非常令人失望的。)
  5. 假设 PLL 可用于从15MHz 生成11.29MHz、需要观察到哪些 PLL 限制(VCO Fmax、Fmin 等)?

请注意、虽然这些器件的许多 DSP 特性看起来非常有趣、但我们迫切需要 I2S 将音频单声道输出到4欧姆扬声器。 在可预见的未来、我们将使用 ROM 模式1。

目前、我在这里有一个 TAS2559EVM、我希望能够将一些导线连接到我们现有的 WM9081板上、以便试用 TAS2559、但 PPC3在时钟配置方面似乎非常有限。 此时、我似乎最好的做法是通过 I2C 来获取寄存器、但我不想在不知道 TAS2557或 TAS2559将执行我想要的操作的情况下沿着该路径前进。

感谢你的帮助。

加伦

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

    您好、Galen、

    可能有一些以前的 e2e 线程具有相关信息。 我特别在此基础上提供了以下信息: https://e2e.ti.com/support/audio-group/audio/f/audio-forum/801728/tas2557-initialization---22050hz-16bit/2966982#2966982

    附件是一个脚本、我使用时钟发生器对15MHz 频率进行测试、并从 TAS2557获取 BCLK ~= 705.6kHz 和 WCLK ~= 22.05kHz。 这不是一个音频15MHz 源、因此我无法测试音频回放、但时钟正从 TAS2557正确输出。
    脚本末尾提供了将器件时钟配置为输出的相关命令和分频器。
    此脚本基于 ROM 模式2 - 44.1kHz 配置(22.05kHz 的倍数)、因此您可以使用相同的基础对其他模式执行类似操作。

    e2e.ti.com/.../combined_5F00_configuration_5F00_0_5F00_ROMMode2_5F00_44.1KHz_5F00_MODIFIED.cfg

    此致、
    -Ivan Salazar
    应用工程师

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

    感谢您提供配置文件。 我能够将其加载到我的 TAS2559EVM 中。 我最初得到的 WCLK 为8.8kHz。 通过查看配置文件、我发现 WDIV 已设置为80。 为了获得所需的22.05kHz WCLK、我将其更改为32。

    我怀疑我对这种配置会有更多的问题、但这是一个很好的开始。 同时、如果您有时间、能否回答我的其他问题(1、2和4)? 谢谢。

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

    您好、Galen、

    听说您可以使用脚本。
    关于这些具体问题:

    1. TAS2557或 TAS2559正常、如果需要更高的功率、您可以考虑使用较新的器件、如 TAS2563。 或者、如果需要更简单的器件、则可以选择 TAS2505、尽管与 TAS255x 或 TAS2563 (无集成升压)相比、这是更低的功率输出

    2.是的、如果仅用作单声道、TAS2557和 TAS2559是引脚对引脚兼容的。

    遗憾的是、这些器件没有现成的进一步文档。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好!

    将 TAS2559EVM 连接到我的硬件(将 MCLK 和 DIN 连接到 EVM、从 EVM 连接 BCLK 和 WCLK、公共 GND)并使用您提供的配置(将 WDIV 更改为32)后、TAS2559将生成 BCLK=706kHz、WCLK=22.05kHz。 但是、当我的系统通过 DIN 发送非零样本数据时、我得到的只是噪声。 如果 TAS2559增益足够高、则 TAS2559时钟会停止、因此我猜至少 TAS2559保护功能正常工作。

    是否有任何关于可能出现的问题的想法、或者我应该如何找到问题?

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

    此外、我发现我的旧 Wolfson 设计实际上支持两种不同的 MCLK 频率、如上所述为15MHz、以及1.875MHz (15 / 8)。 我们更改为较低的频率以降低 EMI。 您能否为1.875MHz 的 MCLK 输入重新生成 TAS2559配置文件。 或者、请告诉我 PLL 上的限制、这样我就可以为自己计算值(参考频率最小/最大、VCO 频率最小/最大等)。

    谢谢、

    加伦

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

    您好、Galen、

    TAS2559和主机之间可能存在格式不匹配。
    您能否分享有关如何配置主机 I2S 接口的更多详细信息? 是 I2S、RJF、LJF 还是其他? 是否有偏移位?
    在较低音量下播放时、噪音是减少还是消除了?

    此致、
    -Ivan Salazar
    应用工程师

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

    您好!

    我想我已经解决了噪声问题。 这是一个信号完整性问题。 我的板和 EVM 之间有飞线。 我缩短了 MCLK 和 DIN 的连接、并添加了一个额外的 GND。 这似乎已经清理了东西。

    关于 PLL 设置、情况如下。 我的现有设计通过将60MHz 除以2721来得出其采样率、得出~22050.72。 更改此采样率不是一个选项、因此我将尝试尽可能匹配它。 目前、我使用1.875MHz MCLK 来驱动 TAS2559。 我正在使用 PLL 的以下设置:

    w 98 00 00	# select page 0
    w 98 7f 00	# select book 0
    w 98 00 01	# select page 1
    w 98 73 0f	# NDIV_MUX_CLKIN input is from PLL_CLK
    w 98 74 0d	# PLL_CLKIN input is from GPI2
    w 98 00 00	# select page 0
    w 98 7f 64	# select book 100
    w 98 1b 01	# TAS2559_PLL_P_VAL_REG
    w 98 1c 1e	# TAS2559_PLL_J_VAL_REG
    w 98 1d 06	# TAS2559_PLL_D_VAL_MSB_REG (6 bits right justified)
    w 98 1e d2	# TAS2559_PLL_D_VAL_LSB_REG (8 bits)
    w 98 20 02	# TAS2559_PLL_N_VAL_REG
    w 98 22 08	# ?
    w 98 02 10	# ?
    w 98 21 08	# TAS2559_DAC_MADC_VAL_REG
    w 98 01 08	# TAS2559_DAC_INTERPOL_REG
    w 98 2b 00	# TAS2559_RAMP_CLK_DIV_MSB_REG
    w 98 2c 40	# TAS2559_RAMP_CLK_DIV_LSB_REG
    w 98 1f 20	# TAS2559_CLK_MISC_REG
    w 98 2a 00	# TAS2559_ISENSE_DIV_REG
    

    与 SLAA892中所述的 TAS2552相同的 PLL 规则是否适用于 TAS2559? 如果是、当 D!= 0时、我超出了最小 PLL_CLKIN 频率。 当我尝试设置 P=0并将 J.D 除以2时、TAS2559不会生成 BCLK 和 WCLK。 我不清楚为什么这不起作用。 请提供建议。

    我不清楚各种内部时钟需要哪些频率、尤其是那些与 DSP 相关的时钟。 最初我计划使用 ROM 模式1或2、但在将来的某个时候、我们可能希望使用更高级的功能。 生成工作配置的最佳方法是什么、最好是不需要在论坛上大量亲自参与的配置? 我已经尝试过几次使用 PPC3生成配置、但似乎会生成写入许多神秘寄存器的大型配置、在这些寄存器中甚至不清楚这些寄存器是否与 ROM 模式相关。 当然、存在 PPC3不支持非标准 MCLK 频率的问题。

    谢谢、

    加伦

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

    您好、Galen、

    很高兴听到这只是信号完整性问题。

    我找到了一些有关这些长期发布器件上时钟分配的旧文档(TAS2555/7/9)。
    让我仔细研究这些问题,并在本周结束前给你进一步的评论。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好、再说一次、

    我的配置现在似乎主要是正常工作的、尽管出于明显的原因、我不知道我是否在规格范围内使用器件。 尽管如此、今天我编辑了配置文件、删除了看起来与模式1操作无关的所有内容。 最终结果是附加的文件。 它仍然包含一些我发现是必需的神秘寄存器写入。 我的最新绊脚石是音量控制。 我已经尝试写入 B0P60R112-115、如您创建的数字音量控制应用手册中所示、但写入这些寄存器似乎没有任何效果。 是否有其他寄存器用于控制 R112-R115增益控制是否处于活动状态?

    e2e.ti.com/.../tas2559_5F00_mode1_5F00_simple.cfg

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

    您好、Galen、

    我将查看 cfg、并告诉您在与内部时钟树文档交叉参考后是否有任何未完成的内容。

    关于音量控制、我认为文档中提到的寄存器只能在调优模式下启用、不过您可以使用一组不同的寄存器来控制模拟端的放大器电平;我稍后还将介绍更多详细信息。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好!

    我们正在 TAS2559中进行设计。 如果可能、您能回答这三个问题吗?

    1. 在1.875MHz MCLK 和22050.72Hz (60MHz/2721)所需的 WCLK 输出以及705622.9Hz (WCLK * 32)所需的 BCLK 输出的情况下、PLL 寄存器的正确值是多少? 查看我的上 一条消息
    2. 您能否确认与寄存器 B0P60R112-115相关的数字音量控制功能在 ROM 模式1或2中不可用?
    3. 您能否快速查看以下原理图?

    谢谢!

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

    您好、Galen、

    我将回顾您的问题、下周初回来。 很抱歉耽误你的回答。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好!

    很抱歉打扰了您、但我仍然想让这些问题得到解答、尤其是 PLL 问题。

    谢谢、

    加伦

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

    您好、Galen、

    考虑到这种不常见的时钟频率和比率、计算整个时钟树设置会变得非常复杂。 我尝试专注于 DAC_MOD_CLK 以及来自 BDIV 和 WDIV 的 BCLK 和 WCLK 输出:

    • DAC_MOD_CLK 应该是64*FS、根据您的设置、它看起来像是~160*FS
    • BDIV 输出似乎接近705622.9Hz、即~707217.188
    • WDIV 输出似乎太低、~4为~8840.21Hz

    我将通过私人消息来分享有关内部时钟的更多详细信息、但如果可能、我建议更改系统以获得更好的已知时钟。

     B0P60R112-115的数字电压控制在 ROM 模式下不可用、因为这些寄存器是 DSP 存储器的一部分(不在 ROM 模式中使用)。 您可以尝试使用 B0P0R6第6-3位(请勿在 SmartAmp 模式下更改此值、仅在 ROM 模式下使用)。

    此致、
    -Ivan Salazar
    应用工程师

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

    DAC_MOD_CLK 设置来自您在第一个响应中附加的原始配置、其中 BDIV 设置为5。 我只是复制它。 我认为我的时钟设置如下:

    • WDIV = 32
    • BDIV = 5
    • MDIV = 8
    • NDIV = 2
    • J.D = 30.106567 (30 + 1746 / 16384)
    • P = 1
    • 基准频率= 1.875MHz

    我对时钟树的理解有限、这意味着这将产生11025的采样率、但实际采样率为22050、这正是我所需要的。 如果对内部时钟(PLL、DSP、DAC_MOD)及其比率存在限制、了解这些限制将非常有帮助。 除了无法解释的因子2之外、我想我知道哪个寄存器控制各种分频器。 我只需要知道必须保持的限制。

    谢谢、

    加伦

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

    您好、Galen、

    伊凡在10月17日(星期一)之前不在办公室、请等待他发表评论或继续进行该主题。

    感谢您的耐心等待。

    此致、

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

    您好、Galen、

    我通过私人信息联系、以分享更多详细信息。
    只是为了更好地了解当前情况:使用您的时钟配置、您的应用程序是否能够播放声音?

    此致、
    -Ivan Salazar
    应用工程师