Part Number:TAS2564
当SBCLK=24.576Mhz时,时钟周期是40.69ns。
td(DO-SBCLK)是SBCLK下降沿到SDOUT发出的delay。
当td(DO-SBCLK)=21ns时,Master端的 setup time = 40.69/2-21=-0.655ns 已经完全不能实现了。
是我理解有问题,还是怎么回事,请帮忙解释一下。
Amy Luo:
您好,
DOUT在不同的电容负载CL下会有不同的延迟、上升时间、下降时间,datasheet 给出的是20pF电容负载下的参数,如果您需要的速率比较大,那么在PCB layout时就需要注意避免寄生电容的产生以避免更长时间的延迟。
,
Daniel Wu:
td(DO-SBCLK)是DOUT发出时相对BCLK的延迟,跟CL和PCB layout有什么关系?完全是PA自身定义的啊
,
Amy Luo:
有一些关系,CL和PCB走线产生的CL会延缓信号的上升沿和下降沿,在对信号幅值定义不变的情况下,CL越大延迟就越大,因此 datasheet 给出了负载条件 即20pF下。
请注意SBCLK可以使用的最大频率是24.57MHZ:
我再确认下是基于什么的考虑定义的这两个参数值
,
Daniel Wu:
td(DO-SBCLK) 、CL和PCB走线会同时影响Master端的 setup time,td(DO-SBCLK) 是PA定义的一个绝对的延迟时间。
请回答一下我的问题:当SBCLK=24.576Mhz时,时钟周期是40.69ns。此时如果td(DO-SBCLK)取最大值21ns时,Master端的 setup time = 40.69/2-21=-0.655ns 已经完全不能实现了。
,
Amy Luo:
我理解是这样的,我正在确认这一点,请耐心等待我的回复
,
Amy Luo:
很抱歉回复这么晚!美国工程师的回复:
The timing provided for the SBCLK to SDOUT delay is from one sample to the other, ie. if the data is sampled on the falling edge of SBCLK, the delay time is from the last SBCLK falling edge to the next sample of SDOUT, meaning you actually have 40ns – 21ns = 19ns to setup the next SDOUT sample.If data is sampled on rising edge, you would consider the same but from SBCLK rising edge perspective, as opposed to consider the next opposite edge of SBCLK.
Regarding capacitive load, the timing diagrams already consider the capacitive load as specified at the top of the table.
Hopefully this helps to clarify the timing requirements.
,
Daniel Wu:
DOUT是TAS2564作为slave发出的,发出是从slave接收到SBLK的下降沿后delay td(DO-SBCLK)=21ns后进行的。而作为master是检测到date输入的setup time是从上升沿开始的。下降沿到上升沿的时间是40ns/2 = 20ns。所以美国工程师说的40ns – 21ns = 19ns 是什么呢,不能理解。
,
Amy Luo:
首先请注意这个时间是sample to sample 之间的,不是bit to bit 之间的,注意看时序图最上方的FSYNC(TDM frame sync)信号
您是在上升沿采样数据吗?
Amy Luo said:If data is sampled on rising edge, you would consider the same but from SBCLK rising edge perspective, as opposed to consider the next opposite edge of SBCLK.
那么意思就是说这个 SBCLK to SDOUT delay是从SBCLK 上升沿到下一个sample的SDOUT的延迟。注意红色字体都是上升沿。
,
Daniel Wu:
Slave 发出 DOUT是SBCLK下降沿后delay td(DO-SBCLK);Master是SBCLK上升沿前tsu(SDIN)
你说的”SBCLK to SDOUT delay是从SBCLK 上升沿到下一个sample的SDOUT的延迟“中的SBCLK 上升沿是哪里来的?图上标注是从SBCLK下降沿开始的
,
Amy Luo:
你仔细理解下这句话:If data is sampled on rising edge, you would consider the same but from SBCLK rising edge perspective, as opposed to consider the next opposite edge of SBCLK.
然后您描述说“Master是SBCLK上升沿前tsu(SDIN)”,那么您的意思不是在上升沿采样数据吗?根据上面这句话,如果是在上升沿采样就需要看SBCLK的上升沿,或者说以SBCLK的上升沿为标准看延迟
,
Daniel Wu:
”如果是在上升沿采样就需要看SBCLK的上升沿,或者说以SBCLK的上升沿为标准看延迟“,这句话的意思是说td(DO-SBCLK)也可以以SBCLK的上升沿为起点,而不是timing图上标示的下降沿,对么?
基于上述观点正确,我还有几个疑问:
1. td(DO-SBCLK)的起点什么时候基于SBCLK上升沿,什么时候基于SBCLK下降沿;
2. 默认是使用上升沿还是下降沿?是如何切换的?
3. td(DO-SBCLK)的最小值是多少?基于上升沿情况下 td(DO-SBCLK)取最小值,这个时候Master的hold time是否能满足又是一个风险问题了。
,
Amy Luo:
是的,可以通过寄存器TX_EDGE bit设置。
看寄存器TX_EDGE bit的设置,1就是下降沿,设置0就是上升沿。默认是下降沿输出数据。
3、关于setup 和 hold 时间,主控端是否可以设置在SBCLK的哪个沿读取数据?或者根据主控端读取数据的时间(SBCLK的上升沿或下降沿)来设定合适的TAS2564 寄存器TX_EDGE bit值。
,
Daniel Wu:
主控端只能在SBCLK的上升沿读取数据。这个跟主控端的设置关系不大,还是取决于 td(DO-SBCLK)的最小值和最大值的区间范围,能否同时适配Slave 发出 DOUT在SBCLK上升沿或下降沿。
具体来说,当td(DO-SBCLK)取最大值21ns时,Slave 发出 DOUT就只能在SBCLK的上升沿;如果 下一批次的td(DO-SBCLK)取最小值,软件沿用DOUT在SBCLK的上升沿发出,这个时候就要看看这个td(DO-SBCLK)取最小值是否能满足Master的hold time了。
,
Amy Luo:
Daniel Wu said:还是取决于 td(DO-SBCLK)的最小值和最大值的区间范围,能否同时适配Slave 发出 DOUT在SBCLK上升沿或下降沿。
是的,能否同时适配在SBCLK上升沿或下降沿发出DOUT,取决于td(DO-SBCLK)的具体值,如果延迟为1/4周期SBCLK,那么这是适配SBCLK上升沿或下降沿发出DOUT的最好条件。
Daniel Wu said: 具体来说,当td(DO-SBCLK)取最大值21ns时,Slave 发出 DOUT就只能在SBCLK的上升沿;
是的,延迟21ns相当于1/2周期SBCLK,如果主控端是上升沿读取数据,那么需要设置DOUT在上升沿发出。
Daniel Wu said:如果 下一批次的td(DO-SBCLK)取最小值,软件沿用DOUT在SBCLK的上升沿发出,这个时候就要看看这个td(DO-SBCLK)取最小值是否能满足Master的hold time了。
是的,同时也与PCB layout走线长度也有关系,PCB走线也会带来传输延迟。
,
Daniel Wu:
好的。现在只剩下最后一个问题请帮忙确认下:td(DO-SBCLK)的最小值是多少?
,
Amy Luo:
好的,我去确认下这个延迟的最小值
,
Daniel Wu:
有确认结果了么?
,
Amy Luo:
是的,还在确认中
,
Amy Luo:
Daniel Wu said:
主控端只能在SBCLK的上升沿读取数据。这个跟主控端的设置关系不大,还是取决于 td(DO-SBCLK)的最小值和最大值的区间范围,能否同时适配Slave 发出 DOUT在SBCLK上升沿或下降沿。
具体来说,当td(DO-SBCLK)取最大值21ns时,Slave 发出 DOUT就只能在SBCLK的上升沿;如果 下一批次的td(DO-SBCLK)取最小值,软件沿用DOUT在SBCLK的上升沿发出,这个时候就要看看这个td(DO-SBCLK)取最小值是否能满足Master的hold time了
您可以给出您担忧情况的示意图吗?以方便我向美国的工程师描述清楚您的问题。
,
Daniel Wu:
现在只剩下最后一个问题请帮忙确认下:td(DO-SBCLK)的最小值是多少?
,
Amy Luo:
td(DO-SBCLK)只有最大值,美国工程师想知道您为什么需要这个最小值,我向他描述了您上述情况,他可能不明白,他说用图应该可以更好说明清楚您的问题
,
Daniel Wu:
综合之前所述:如果tD_min和tD_max同时偏小或偏大,都能满足采样正确。如果tD_min偏小而tD_max偏大,就会出现中间采样错误的情况。
,
Amy Luo:
感谢反馈!
上图中DOUT值不管高电平还是低电平都会保持一个BCLK周期,但是您附图半个BCLK周期就DOUT值就改变了,因此DOUT波形参照BCLK波形不对。
您可以标上setup 时间和hold 时间吗?表示tD极小时setup 时间或hold time不满足要求
,
Daniel Wu:
不影响理解吧,再详细的图我画不了了
,
Daniel Wu:
专注于问题本身吧,画图的确不擅长
,
Amy Luo:
但是DOUT的周期是不对的,一个BCLK周期对应1 bit DOUT输出,上图是对应2bit,因此不对。
,
Daniel Wu:
就确认下td(DO-SBCLK)的最小值是多少吧,不讨论了。
,
Amy Luo:
我已经在向美国的工程师确认了,他没有给出,他可能认为不需要td的最小值,所以才向您询问是在什么情况下需要这个最小值
,
Daniel Wu:
那就等结果吧,不管需不需要这个值肯定是有的才对
,
Amy Luo:
您误解了我的意思:
Amy Luo said:我已经在向美国的工程师确认了,
我的意思是我已经找对应工程师来提供这个值了,但是这个工程师他可能认为不需要td的最小值,所以一直在问是在什么情况下需要这个最小值;
或者说他认为没必要提供此值,所以一直不提供此值。
现在我需要您一个理由让他去找或提供此值。
,
Daniel Wu:
理由上面解释已经很充分了。别再说要图的事情了,画图不擅长
,
Daniel Wu:
再说了,业界都可以提供这个值,为什么不能提供呢?就算你们工程师认为不需要,为什么别家会提供这个值呢,有点不专注问题本身了
,
Amy Luo:
好的,我已转达你的意思,得到他们的回复后我会在这里反馈给您
,
Amy Luo:
得到的回复是:
As there is no constraint for short td(DO-SBCLK) is the minimum spec in this case is 0.
,
Daniel Wu:
BCLK=24.576M, T按照41ns计算;主控要求: t_setup>6ns, t_setup>4ns, BCLK下降沿和下降沿发出Dout, 都无法满足。
BCLK下降沿:
t_setup =41/2-21<6ns; (不满足)
t_hold =41-41/2+0>4ns;
BCLK上升沿:
t_setup =41-21>6ns;
t_hold =41-41+0<4ns;(不满足)
,
Amy Luo:
您的意思是说:
主控端只能在SBCLK的上升沿采样,而TAS2564 可以设置在SBCLK下降沿或上升沿发出数据。
当设置 TAS2564在下降沿发出数据时,如果所使用的TAS2564 的td(DO-SBCLK)值是21ns时,就不能有6ns的setup时间.
或 当设置 TAS2564在上降沿发出数据时,如果所使用的TAS2564 的td(DO-SBCLK)值是0ns时,就不能有4ns的hold 时间.
我上述是否正确描述了您的担忧?
我不太明白BCLK和BCLK_inv 是什么波形?当设置TAS2564在上降沿发出数据时,BCLK_inv为什么与BCLK_SOC反向?
,
Daniel Wu:
你的描述没错。补充一下,td(DO-SBCLK)的值在同一产品的生命周期内可能是最小的0ns,也可能是最大的21ns,极限情况下同一批次的产品中同时出现这两个极限值。那么软件上没办法去同时适配到底是使用上升沿发出数据还是下降沿发出数据。
BCLK和BCLK_inv 可以不用去看,是方便我自己理解的,分别代表TAS2564 DOUT下降沿发出数据和TAS2564 DOUT上升沿发出数据。
,
Amy Luo:
好的,已向美国的工程师转达上述信息,请耐心等待回复
,
Amy Luo:
得到的回复:
Perhaps customer specs for setup and hold times, are referred to digital data output from SoC to TAS2564, meaning SDIN from TAS2564 perspective. There are similar setup and hold times called for SDIN in TAS2564 data sheet, and both are higher than 6 and 4 ns respectively.
td (DO-SBCLK) spec is the time after the sampling edge until the next SDOUT transition. As long as SDOUT is properly latched during the selected SBCLK edge, the delay from the end of that edge to the next transition on SDOUT can take as much as 21ns, but there is no minimum because the data is already latched. This is the reason why no minimum is specified in this case.Hope this helps close this question, let us know otherwise.