I2S/PCM board-level 约束及同步(latency&skew&bitsync)

本文详细讨论了I2S/PCM信号在片间传输中的skew约束、latency影响,以及如何通过逻辑设计保证信号同步,包括音频传输错误检测策略。重点关注了TXmaster/RXslave和TXslave/RXmaster模式下的信号处理差异。
摘要由CSDN通过智能技术生成

目录

1.I2S/PCM 信号间skew约束  

2.I2S/PCM的板间latency

3.逻辑设计上的保证

4.音频传输错误检测


        I2S/PCM是典型的低速串口,在两个方向上分别有两组信号,我们以soc为视角分为soc-adif和外设audio-codec。

        adif输入:sclk_i,  ws_i, sdi.【当然并不是三个输入信号同时有效,只有adif RX slave时,三个输入都会有效】

        adif输出:sclk_o,  ws_o, sdo.【也只有adif TX master时,三个输出才会有效】

        怎样保证信号在片间传输时能够正确被采样?这个问题重点就是信号间的同步。I2S/PCM自带帧同步信号,对于I2S来说ws的下降沿就是帧起始;对于PCM来说fs的上升沿就是帧起始。那么如何保证bit同步呢?

首先应该看到在不同的音频传输模式下,adif与codec之间的信号同步的关注点不一样。

  1. 对于TX master和RX slave这种组合模式,片间同时传输sclk,ws/fs和sdata,理想情况下只要保证三个信号用相同时间达到RX端,那么RX一定可以正确的采样,但由于各自走线的不同,delay各不一样,为了能正确采样就要考虑信号之间的skew;
  2. 对于TX slave和Rx mst这种组合模式,要保证RX输出的ws/fs sclk到了TX端产生sdo之后,再到RX端用ws/fs sclk能够正确采样TX输出的sdo,就需要确保RX mst输入的sdo数据和ws/fs的偏差在一个T(sclk)之内。所以此种模式不仅关注信号间skew,还要关注信号maxDelay。

然后我们给出一些参数的量级:

  1. adif和codec的寄存器setup和hold时间都在 几十到几百个ps
  2. adif和codec的工作时钟都是sclk的十几到上百倍
  3. sclk(bitclk采样时钟)最大十几MHz,所以sclk的周期在100ns量级 【所有音频采样率及采样深度请见另一文章 TODO

给出这些参数的量级意义在于指导设置合适的skew和maxDelay,用以最大程度的增加采样可靠性。

        另外要实现adif信号的正确传输,除了在物理实现上对skew和maxDelay的约束,我们希望在硬件代码设计的过程中能够提供一些同步逻辑。下面就从这三个方面来展开说明。

        设D(sclk) ,D(fs) 和 D(sdo)分别是TX master时 从adif TX到芯片IO的延迟时间,或者Rx slave时从芯片IO到adif RX的延迟时间。

1.I2S/PCM 信号间skew约束  

        对信号组设置skew约束,skew都约束在5ns以下【见过约束为1ns,3ns的。这个skew阈值主要决定于最大SCLK的周期,和工艺以及IO电压也有关系】,约束包括soc端和codec端。

        本节就以数据从

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值