• TI tlv320aic3104 codec调试之clock


    音频时钟产生原理

    codec内部DAC/ADC需要一个内部音频master clock(CODEC_CLK),工作频率要求是256*fs(ref),从codec驱动看fs(ref)计算公式如下所示,可见fs(ref)频率只有44100和48000。

    fsref = (params_rate(params) % 11025 == 0) ? 44100 : 48000;
    

    ADC/DAC的采样率为 fS(ref)/NCODEC or 2 × fS(ref)/NCODEC,NCODEC取值范围为1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5, 5.5, or 6。

    CODEC_CLK 可以通过简单的clock divider(CLKDIV_CLKIN) 或者 PLL电路(PLL_CLKIN)产生。

    codec可以使用MCLK或BCLK作为外部时钟源,如果使用BCLK,那MCLK pin可以断开不接。MCLK也可以接在BCLK上或者MCLK由cpu或外部晶振提供时钟。

    1:clock divider计算fs(ref)公式如下所示:
    fS(ref) = CLKDIV_IN/(128 × Q)
    Q = 2, 3, …, 17. Q is register programmable and can be set in page 0, register 3, bits D6–D3.
    CLKDIV_IN can be MCLK or BCLK, selected by register 102, bits D7–D6.

    2:PLL计算fs(ref)公式如下所示:
    fS(ref) = (PLLCLK_IN × K × R)/(2048 × P)
    where
    P = 1, 2, 3,…, 8
    R = 1, 2, …, 16
    K = J.D
    J = 1, 2, 3, …, 63
    D = 0000, 0001, 0002, 0003, …, 9998, 9999
    PLLCLK_IN can be MCLK or BCLK, selected by Page 0, register 102, bits D5–D4

    评估外部时钟源MCLK或BCLK 频率是否满足codec要求?

    确认外部时钟源是否满足codec要求 主要看经过clock divider或PLL处理后fS(ref)频率是否满足44100或48000。

    基于clock divider计算公式,当fS(ref)等于48000时,需要的最小外部时钟源频率是12.288MHZ,这就需要MCLK由cpu或外部晶振提供时钟。PCM接口和I2S接口的BCLK时钟频率都无法满足。

    当clock divider无法满足要求时,驱动会使能PLL来提供时钟。

    下图是为满足fS(ref)频率,不同MCLK频率下PLL参数配置,下图可知当fS(ref)等于48000时,需要MCLK最小值是2.048MHZ。
    I2S接口的BCLK是无法满足要求,以48000采样率、双声道、16bits计算其BCLK频率为1.536mMHZ。mdm9x07平台的PCM接口
    可以配置输出2.048或4.096MHZ频率满足要求。换句话说就是如果想把DAI配置成I2S,那MCLK必须由CPU或外部晶振提供频率,同时如果
    使用clock divider,MCLK最小是12.288MHZ,如果使用PLL,MCLK最小是2.048MHZ。

    举例

    如上电路图,MCLK是连接在BCLK上,这样DAI无法配置成I2S接口,只能使用PCM接口。PCM接口的采样率只支持8k和16K、单声道。主要用于语音通话。如果使用aplay/arec播放录制更高频率的音频数据会导致设置 hw params失败。

    参考资料

    https://elixir.bootlin.com/linux/v4.15.18/source/sound/soc/codecs/tlv320aic3x.c
    TLV320AIC3104IRHBR.pdf datasheet

  • 相关阅读:
    LeetCode 123 Best Time to Buy and Sell Stock III
    直接选择排序算法汇总
    zoom:1是什么意思
    怎么去掉织梦网站首页带的index.html/index.php
    wamp apache无法启动的解决方法
    提交到svn服务器时,一直缓冲不,
    桌面上图标都不见了怎么办听语音
    如何清除网上浏览痕迹?清除缓存
    TortoiseSVN文件夹及文件图标不显示解决方法
    快捷键
  • 原文地址:https://www.cnblogs.com/bobfly1984/p/14345097.html
Copyright © 2020-2023  润新知