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.

[参考译文] TLV320AIC3268:I2S 多通道 TDM 模式

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/929038/tlv320aic3268-i2s-multi-channel-tdm-mode

器件型号:TLV320AIC3268

尊敬的 TI:

我们希望将两个 I2S 立体声(音频源为 HDMI 音频)音频和一条立体声源线路转换为具有多通道(3个立体声对:线路输入、HDMI 输入1、HDMI 输入2)的单个 I2S TDM。

请帮助检查 AIC3268配置。 方框图如下所示:

所有 I2S 接口均配置为4线(BCLK、WCLK、DIN、DOUT)

根据 AIC3268数据表。 使用偏移可编程性和 DOUT 线路三态特性。

I2S1 DOUT (来自线路(ADC 转换))、I2S2 DOUT (来自 HDMI 1)、I2S3 DOUT (来自 HDMI 2)均与主机 CPU I2S DIN 引脚连接。

此外、 AIC3268的 I2S 立体声输入如下:

AIC3268到主机 CPU 的 I2S TDM 预期输出如下:

AIC3268是否有可能?

非常感谢。

BR、

Steven

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

    您好 Steven、

    TLV320AIC3268可以满足您的大部分需求、但我不确定我是否理解您建议的实施方案。 首先、请记住 AIC3268的 ASI 总线仅支持 DIN 和 DOUT 上多达8个通道。 在一条总线上不可能有16个数据通道。 从您的描述中、似乎您计划让所有 ASI 总线共享一个通用 DOUT。 只有当所有总线与相同的时钟同步运行时、才有可能实现这一目标。 一种更好的方法是使用 ASI2和 ASI3作为来自 SRCS 的输入、并使用来自模拟输入和 I2S 输入的数据将它们插入 ASI1 DOUT。  

    最棒的

    Zak

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

    Zak 您好!

    感谢您的回复。

    让我更详细地了解一下硬件连接。

    "从您的描述中、似乎您计划让所有 ASI 总线共享一个通用 DOUT。 只有当所有总线与相同的时钟同步运行时、才有可能实现这一点。"

    是的、三个 ASIS 共享一个通用 DOUT (与 CPU 的 DIN 连接)并配置为 I2S 从模式。 所有 BCLK 和 WCLK 都与 CPU 提供的相同时钟同步运行(三个 ASIS 和两个 SRCS 与 CPU 共享 BLCK 和 WCLK)。 使用每个 ASI 的不同 DOUT 偏移来实现 TDM DOUT。 例如、数据行的 ASI1 DOUT 偏移零、HDMI1数据的 ASI2 DOUT 偏移16位、HDMI2数据的 ASI2 DOUT 偏移32位。

    "一种更好的方法是使用 ASI2和 ASI3作为来自 SRCS 的输入、并将这些输入与来自模拟输入和 I2S 输入的数据放在 ASI1 DOUT 上。"

    很好! 看起来更好。 如何使用 I2S TDM 格式插槽到 ASI1 DOUT?

    再次感谢您!

    BR、

    Steven

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

    嗨、Steven、

    感谢您提供更多详细信息。 我看到您现在正在做什么、如果所有内容都从 CPU 时钟同步运行、那么您的方法应该运行良好。 请记住、单个 TDM 总线上的通道数限制为8个。 为了将通道路由到其它 ASI 端口、您必须对 mini-DSP 进行编程、最简单的方法是在 PPS 中创建一个流、而时钟不一定是同步的。 不过、考虑到它们、我认为实施您的初始方法可能更容易、因为这仅需要寄存器写入来配置 ASI 端口、而不需要 miniDSP 编程。

    最好

    Zak  

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

    你好、Zak、

    感谢你的帮助。

    (1)是否有任何 miniDSP 组件可用于将 ASI 输出配置为 TDM 总线?

    我在 PurePath Studio 中仅找到了 Multi_Channel_Digital_IN/Multi_Channel_Digital_OUT 组件。 它似乎是具有四条数据线的多通道模式。但我们的 CPU 音频接口中只有一条数据线。

    (2) BTW、如何配置您提到的方法?(使用 ASI2和 ASI3作为来自 SRCS 的输入、并使用来自模拟输入和 I2S 输入的数据将它们插入 ASI1 DOUT)

    它在硬件连接方面更简单。 可以给我一些建议吗?

    非常感谢!

    BR、

    Steven

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

    您好 Steven、

    很抱歉、这一个解决方案的延迟、我需要执行一些额外的测试来验证此解决方案、但这应该是可行的。 多通道数字输入/输出组件应满足您的需求、在属性选项卡中可将其设置为8个通道。 这会将 DSP 的通道路由到 I2S 接口。 传输方式取决于 I2S 接口的设置方式、在您的情况下、您需要将其配置为 TDM、以便通过单个数据线路发送所有内容。

    为了聚合来自其他总线的数据、由于器件内部没有 ASRC、其他总线需要与主机接口同步运行。 ASI2和 ASI3可配置为使用与 ASI1相同的时钟运行。 我建议您的 CPU 充当主器件、然后 ASI2和 ASI3充当从 ASI1上提供的相同时钟运行的 SRC 的主器件。

    除非您想在 DSP 内部添加混合或信号处理、否则处理流程本身应该非常简单。 下面是一个简单的示例、说明了假设已正确设置 ASI 接口时该流程的外观。

    最棒的

    Zak