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.

[参考译文] TLV320ADC6140:以菊花链方式将 I2S SDOUT/SDIN 连接到 GPI/GPO

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1420279/tlv320adc6140-daisy-chaining-i2s-sdout-sdin-into-gpi-gpo

器件型号:TLV320ADC6140
Thread 中讨论的其他器件: PCM9211

工具与软件:

大家好、

我们使用  TLV320ADC6140 来收集1个模拟麦克风输入和4个 PDM 麦克风流、并通过 TDM 输出。 我们想 在菊花链模式下使用自由 GPI/GPO 引脚将来自另一个器件的 PCM 音频作为 I2S 输入/输出添加到 TDM 总线。 这是可行的吗?

在适用于评估板的 PPC3应用中、看起来我可以将 GPI 设置为"ASI Input for Daisy Chain - SDIN (SDIN)"并将 GPO1设置为"Secondary ASI Output (SDOUT2)"。 是这样吗?  

本质上、我的 PCM 音频器件支持 I2S、但不支持 TDM、因此我想将数据线引入 ADC、并将其添加到 TDM 总线中。 然后我假设只需将 TDM 帧时钟和位时钟直接共享给直接设置为从模式的 PCM 音频设备。 菊花链功能是这样工作的吗?

非常感谢!

Peter Grinalds

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

    尊敬的 Peter:

    由于您要共享的 PCM 音频数据尚未处理、因此我认为您希望实现共享 TDM 总线输出、而不是菊花链。 此外、ADC6140只能处理4个通道(4个 PDM 输入、或1个 AMIC + 3个 PDM 输入)、因此如果需要额外的通道进行录音、则需要另一个器件。

    共享 TDM 总线和菊花链实现了相同的目标、但硬件连接不同。

    菊花链实际上是获取 U1的后处理数字数据、并通过 U2上的 GPIO 引脚将其插入 TDM 线路。 使用此方法对通道插入存在限制。 菊链式连接 EVM 的方框图如下所示:

    共享 TDM 总线的相关说明请参阅

    多个 TLV320ADCx140/PCMx140-Q1、TLV320ADCx120和 PCMx120-Q1器件共享 TDM 和 I2C 总线(修订版 C)

    该方法连接所有连接的器件的 DOUT 线。 需要时隙配置、以便音频通道不会发生冲突、并且我们的器件允许在此方法中配置多达4个器件(64个时隙)。

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

    您好 Daveon:

    感谢您发送编修。

    我想首先纠正我在原始帖子中所做的陈述。 我不应该说4个 PDM 麦克风流。 虽然我们确实连接了4个 PDM 麦克风、这些麦克风仅占用 ADC 上的2个串行音频接口。 这会留下另外2个 ASIS;一个用于模拟麦克风、一个目前未使用。

    现在关于 TDM、我喜欢您在 TDM 和菊花链之间进行的比较、但我仍然不清楚是否可以采用标准 I2S 流并将其数据线传递到 GPIO 引脚(为菊花链指定了寄存器)、以便 ADC 将该音频添加到其 TDM 帧之一。 这是可行的吗? 我想将该 ADC 用作蓝牙芯片组的一种 I2S 转 TDM 桥接器、因为它没有本机 TDM 接口。

    非常感谢您的帮助!

    Peter

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

    尊敬的 Peter:

    我认为这是可行的、但在我确认之前、您能否总结或提供您要尝试实现的目标的方框图?

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

    您好、Daveon:

    当然、请在下面找到我正在构想的内容。 我不确定 TLV 可以提供什么时钟与 GAP9 MCU 可以传递什么时钟、但数据表表明 TLV 高度灵活、因此我很乐观。

    谢谢!

    Peter

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

    尊敬的 Peter:

    您可以通过菊花链实现所需操作、但 TLV320ADC 无法配置为主器件和从器件、必须通过 GAP9向这两个从器件提供 FSYNC/LRCLK 和 BCLK。

    可以使用其中一个未使用的模拟输入或 GPIO 引脚作为菊花链的辅助数据输入。 您的 GPIO 引脚可按照如下示例进行配置:

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

    嘿 Daveon、

    非常感谢您的回复、对于延迟、我深表歉意。 我没收到回复通知。

    现在我已清楚了、GAP9将为 BTM 和 TLV 提供时钟和帧、两者都将处于从模式。 LR 时钟和 Fsync 是否可以是相同信号、或者它们是否必须是唯一的? 与位时钟一样吗?

    非常感谢您的帮助!

    Peter

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

    是的、LRCLK/FSYNC 和 BCLK 应该是一样的频率并且同步。 该器件将接受来自 GAP9或 BT 模块的 DMIC 输入。

    此外、为了消除混淆、来自 BT 的 ASI 输入将是 ADC6120的数字输入、而 ASI 输出将是来自 ADC6120到 BT 模块的辅助 DOUT。

    ADC6120的辅助 DOUT 和主 DOUT 是彼此的完全副本。

    如果这样有用、下面提供了一个示例脚本、用于验证两个 EVM 之间的菊花链、如我的第一个响应中所示。

    目标模式、48kHz 采样

    EVM1 Record Setting
    w a0 00 00 
    w a0 01 01 
    w a0 02 09 
    w a0 10 50	# Set DOUT as PASI OUT
    w a0 19 00 
    w a0 1a 30 
    w a0 1e 20 
    w a0 1f 21 
    w a0 50 00 
    w a0 55 00 
    w a0 76 c0 
    w a0 78 a0 
    
    EVM2 Record Setting
    w a0 00 00 
    w a0 01 01 
    w a0 02 09
    w a0 0a 12	# Set GPIO1 as Input 
    w a0 18 49	# Disable SASI, PASI daisy chain enable on GPIO1
    w a0 19 00 
    w a0 1a 30 
    w a0 1e 20 
    w a0 1f 21 
    w a0 50 00 
    w a0 55 00 
    w a0 76 c0 
    w a0 78 a0 
    

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

    您好、Daveon:

    我在进行原型设计之前尝试验证了 ADC6140EVM 上的架构、但遇到了一些问题。 我的流程是:

    这是连接事物的正确方式吗? 当我将 GUI TLV 设置为从模式时、我可以肯定 PCM9211是主器件、此时 PCM9211为其他两个从组件提供 FSYNC 和 BCLK。 我只是尝试将数据从 BTM 共享到 TDM 总线、此时不会将数据发送回 BTM。  

    我正在使用 Audacity 来记录音频流。

    我希望我正在流式传输到 BTM 的音频会以 Audacity 的方式进行录制、这与我在 ASIS 上使用的 DMIC 的录制方式相同。 这不是正确的方法吗?

    非常感谢、

    Peter

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

    尊敬的 Peter:

    为进行概念验证、我建议先分别验证每个信号过程、然后再结合以实现菊花链或共享 TDM 总线。

    使用 PCM9211作为主器件、验证通道1和2 PDM 数据记录是否正确。 分别验证是否正确记录了从 BT 模块接收到的模拟信号。

    菊花链或共享 TDM 总线主要是在 TDM/SDOUT 线路和/或硬件更改上进行数据格式化

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

    您好、Daveon:

    仅仅确认一下、PCM9211是 EVM 上的典型 TDM 主器件、然后它会将其传递到 XMOS 和 PC 音频卡、对吗? 我假定只是基于 EVM 原理图。

    我能够使用板载 PDM 麦克风进行录制、变得足够清晰。

    当您说到验证录制来自 BT 模块的模拟信号时、我可以将蓝牙模块上的 I2S 跳接至 I2S DAC/放大器并获取音频、以便知道该部分正常工作。 我还能尝试其他什么东西吗?

    我的剪刀是否适合我尝试做的事情。

    非常感谢!

    Peter

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

    PCM9211用于将光学 SPDIF 连接到 DUT、基本上有2个源、即 XMOS (将 USB 连接到 DUT)或 PCM9211 (将 SPDIF 连接到 DUT)。 第三个选项不是这些选项、而是使用外部音频源的引脚接头  

    将 AC-MB 与 EVM 搭配使用、选择 USB 时、XMOS 是主器件;选择 SPDIF 时、XMOS 断开连接、PCM9211现在是主器件。

    由于两条信号路径都经过验证、因此我建议使用 PPC3来调整 SDOUT 上的时隙指定。

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

    对于其他人谁来看看这个线程,我一直不能使这个工作.  

    我尝试过的东西:
    1. TDM 中的 ADC (从器件到 XMOS MCU、在 GAP9中处于待机状态)
      1. 16、24和32位@ 48/44.1kHz
    2. I2S 中的 ADC (仍然是 XMOS 的从属器件)
      1. 16、24、32位、48/44.1kHz
    3. BTM 处于从模式
      1. 64倍和256倍 BCLK 比率
      2. 16、24、32位(48kHz 时)
    4. 主器件中的 BTM、用于控制从器件中的 ADC
    5. 在每个测试中、Audacity 反映其他 MCU 的位深度
    结果:
    XMOS 在从模式下触发 BTM 以返回数据的唯一情况是 I2S 模式48kHz 16位。 但即使在这种情况下、ADC 也不会将数据传回 XMOS 并发至 Audacity。 我只能在我的逻辑分析仪上看到它。 很高兴知道系统可以触发 BTM、但这对我们的用例没有帮助。 我们需要的是 I2S 到 TDM、而不是 I2S 到 I2S。我认为 、实际无法将 I2S 从设备以菊花链形式连接到 TDM 线路。