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.

[参考译文] TLV320ADC5140:TLV320ADC5140

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/958987/tlv320adc5140-tlv320adc5140

器件型号:TLV320ADC5140

您好、先生、

这是使用 ADC5140的16个麦克风输入 POE (以太网供电)会议系统需要您的帮助。

 

方框图如下所示。

  • 2个 ADC5140、一个是 TDM 主控、另一个是 TDM 受控
  • 两个 ADC5140将共享一条 TDM 总线
  • ADC5140将是一个 PDM 至 TDM 转换器
  • 每个 ADC5140都具有8x PDM 麦克风输入

 

我们已初始化 TLV320ADC5140的设置、但捕获的麦克风信号显然是错误的、如下所示。

并非每个通道都与通道1、2相同。 只有通道1、2、6和9是相似的。 (我们在电路板前面播放1kHz 信号。)

 

寄存器如下所示。 请告诉我们它有什么问题吗?

寄存器的设置是否错误? 或任何其他问题? 谢谢。

PDM_REG_Setting settings_master[]=

 {TLV320_REG_PAGE_CFG、        0x00、  false}、

 {TLV320_REG_SW_RESET、        0x01、  true}、

 {TLV320_REG_SLEEP_CFG、       0x81、  false}、

 {TLV320_REG_ASI_CFG0、        0x30、  false}、

 {TLV320_REG_ASI_CFG1、        0xA0、  false}、

 {TLV320_REG_GPIO_CFG0、       0xA0、  false}、

 {TLV320_REG_STM_CFG0、        0x87、  false}、

 {TLV320_REG_STL_CFG1、        0x4A、  false}、

 {TLV320_REG_ASI_CH1、         0x00、  false}、

 {TLV320_REG_ASI_CH2、         0x01、  false}、

 {TLV320_REG_ASI_CH3、         0x02、  false}、

 {TLV320_REG_ASI_CH4、         0x03、  false}、

 {TLV320_REG_ASI_CH5、         0x04、  false}、

 {TLV320_REG_ASI_CH6、         0x05、  false}、

 {TLV320_REG_ASI_CH7、         0x06、  false}、

 {TLV320_REG_ASI_CH8、         0x07、  false}、

 {TLV320_REG_CH1_CFG0、        0x40、  false}、

 {TLV320_REG_CH2_CFG0、        0x40、  false}、

 {TLV320_REG_CH3_CFG0、        0x40、  false}、

 {TLV320_REG_CH4_CFG0、        0x40、  false}、

 {TLV320_REG_GPO_CFG0、        0x41、  false}、

 {TLV320_REG_GPO_CFG1、        0x41、  false}、

 {TLV320_REG_GPO_CFG2、        0x41、  false}、

 {TLV320_REG_GPO_CFG3、        0x41、  false}、

 {TLV320_REG_GPI_CFG0、        0x45、  false}、

 {TLV320_REG_GPI_CFG1、        0x67、  false}、

 {TLV320_REG_IN_CH_EN、        0xFF、  false}、

 {TLV320_REG_ASI_OUT_CH_EN、   0xFF、  false}、

 {0xFF、                       0x00、  false}

};

 

PDM_REG_Setting settings_slave[]=

 {TLV320_REG_PAGE_CFG、        0x00、  false}、

 {TLV320_REG_SW_RESET、        0x01、  true}、

 {TLV320_REG_SLEEP_CFG、       0x81、  false}、

 {TLV320_REG_ASI_CFG0、        0x30、  false}、

 {TLV320_REG_ASI_CFG1、        0xA0、  false}、

 {TLV320_REG_ASI_CH1、         0x08、  false}、

 {TLV320_REG_ASI_CH2、         0x09、  false}、

 {TLV320_REG_ASI_CH3、         0x0A、  false}、

 {TLV320_REG_ASI_CH4、         0x0B、  false}、

 {TLV320_REG_ASI_CH5、         0x0C、  false}、

 {TLV320_REG_ASI_CH6、         0x0D、  false}、

 {TLV320_REG_ASI_CH7、         0x0E、  false}、

 {TLV320_REG_ASI_CH8、         0x0F、  false}、

 {TLV320_REG_CH1_CFG0、        0x40、  false}、

 {TLV320_REG_CH2_CFG0、        0x40、  false}、

 {TLV320_REG_CH3_CFG0、        0x40、  false}、

 {TLV320_REG_CH4_CFG0、        0x40、  false}、

 {TLV320_REG_GPO_CFG0、        0x41、  false}、

 {TLV320_REG_GPO_CFG1、        0x41、  false}、

 {TLV320_REG_GPO_CFG2、        0x41、  false}、

 {TLV320_REG_GPO_CFG3、        0x41、  false}、

 {TLV320_REG_GPI_CFG0、        0x45、  false}、

 {TLV320_REG_GPI_CFG1、        0x67、  false}、

 {TLV320_REG_IN_CH_EN、        0xFF、  false}、

 {TLV320_REG_ASI_OUT_CH_EN、   0xFF、  false}、

 {0xFF、                       0x00、  false}

};

谢谢、Ian。

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

    尊敬的 Ian:

    该团队将开始工作、但由于美国假日、请预计延迟可能会延长到工程师于11月30日返回的那一周。

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

    尊敬的 Ian:

    由于我们的美国应用程序团队正在放假、因此我将代表他们处理此问题。

    我已查看所有器件配置设置。 除了我在下面阐述并提供了解决方案的几个问题外,它基本上看起来不错。

    配置中有两个主要问题:

    对于 主器件和从器件、TLV320_REG_ASI_CFG0寄存器值应配置为0x31 (而不是0x30)。 基本上、如果我们在多个器件之间共享 TDM 总线(此处为用例)、我们应该对未使用插槽的 SDOUT 线路进行三态处理、这意味着 TX_Fill 应该为"1"。 此问题是数据损坏的主要原因之一、它也会导致总线争用和高 IOVDD 电流。

    2. 对于从器件、将 TLV320_REG_ASI_CFG1寄存器值配置为0x80 (而不是0xA0)。 基本上、在您的配置设置中、总线保持器始终为主器件和从器件启用。 我们建议始终仅为一个器件启用总线管理器、因为如果始终启用多个器件总线管理器、则总线管理器的驱动强度将会增加、这对计时不是很好、因此仅启用一个器件就足够好了、因此在我的上述建议配置中也是如此 我已为从器件禁用。 使主器件配置与您编程的配置相同。

    3.由于 BCLK 频率为32*16*48kHz = 24.576MHz,所以您的用例速度非常快。 该配置设置在满足主机在半个周期内发送和捕获 SDOUT 的时序要求方面始终很严格。 因此、如果您真的不需要32位字长数据、我建议配置16位字长、这将有助于降低总线速度并轻松满足时序要求。 如果您确实需要将24位或32位字长与此高速 BCLK 配合使用、则 我们需要首先确保 SDOUT、BCLK 和 FSYNC 引脚上的电路板布线电容器负载最小化、并且更好地将 TX_EDGE 配置为"1"(TLV320_REG_ASI_CFG0寄存器 D1位) 对于主器件和从器件、以及在主器件中、您需要将捕捉的偏移量设置为"1"。 请共享 BCLK、FSYNC 和 SDOUT 的示波器图像以及主器件和从器件的修订配置脚本。 如果需要、我们将帮助您满足此时间要求。 另请参阅下面提到的应用手册、其中进一步介绍了这种用例场景以及与器件配置设置相关的一些指导。

    具有共享 TDM 和 I2C 总线的多个 TLV320ADCx140器件(修订版 B)

    此致、

    Uttam

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

    尊敬的 Ian:

    客户是否尝试过我在之前的回复中提到的更改? 是否需要进一步的支持?

    此致、

    Uttam

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

    您好、Uttam、

    客户尚未反馈、如果有任何问题、将继续讨论。  

    谢谢、Ian、

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

    您好、Uttam、

    客户发现、如果更改信号源输出电平、麦克风输出电平不会改变。

    例如、它们使用参考麦克风将信号源电平校准为94dB @ 1kHz。

    将信号源电平更改为88dB 和82dB 时,DUT 的麦克风输出电平不会改变。

    是否有任何设置错误?

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

    尊敬的 Ian:

    您能否共享不同信号源电平的一些测量结果和 FFT、以及在本例中使用的最新配置设置。  

    因此、在器件中、无论 PDM 源输入电平如何、都不会产生恒定输出电平。

    对于模拟输入情况、我们有 AGC 算法、但对于 PDM 输入情况、算法未使用、我看到在先前的共享配置设置中启用了该算法。  

    不确定是否有任何高速时序问题导致了这种情况、因此、如果您可以共享 BCLK、FSYNC 和 SDOUT 线路的示波器图像以进一步分析这种情况、这将是很好的。 正如我之前的更新中提到的、请首先检查16位字长(或 BCLK 小于18MHz)以避免任何时序问题、如果此问题仅针对高速 BCLK 出现、则示波器图像将帮助我们指导和解决此问题。  

    此致、

    Uttam

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

    您好、Uttam、

    这是 FFT 频谱。 红色曲线由参考麦克风测量、您可以看到所有麦克风输出比参考麦克风高4dB @ 1kHz。

    您对设置是否有任何预增益?

    我们在您以前的更新和电子邮件中使用相同的设置。

    但是、由于客户要求、我们仍然使用32位字长。

    谢谢、Ian。

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

    +时钟波形。

    e2e.ti.com/.../TLV320adc5410.zip

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

    尊敬的 Ian:

    感谢您分享详细信息和示波器图像。

    我怀疑增益/数据性能的差异可能是因为协议不匹配或由于本用例中的高速 BCLK 导致捕获数据出现时序问题。 我认为、在分析捕获数据的性能和增益之前、我们需要确保它们不存在协议不匹配或时序问题。 如果捕获器件(主机或实验室设备)通过1位左移数据(如"MSB-1 "位作为 MSB)进行捕获、则这可能会导致该信号电平的+6dB 增益误差、如果存在某些协议配置设置或时序不匹配、这很可能。 此外、如果存在相同的问题、则可能会导致接近满量程的高振幅信号出现数据回滚问题(而不是增益误差)。  

    您能否共享主机器件(或 AP 等任何其他设备)用于捕获数据的确切协议图? 我想知道主机使用哪个 BCLK 边沿(上升沿或下降沿)来锁存数据、还想知道对于 SLOT-0、哪个 BCLK 周期(相对于 FSYNC 上升沿)用于 MSB 位捕获。 基本上、如果您可以共享协议图、那么分析时序将会很有帮助、因此我们可能需要重新配置 ADC5140器件以放置具有适当时序的数据。  

    此致、

    Uttam

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

    您好、Uttam、

    我们从 NXP 获得了协议图、如下所示。

    谢谢、Ian。

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

    尊敬的 Ian:

    感谢您分享主机协议图。 根据此图、我们需要微调器件配置以与协议保持一致。

    我将直接通过电子邮件回复您、因为我可以更快地跟进并回复您、尤其是在假日期间。   

    此致、

    Uttam