主题:漫漫器材发烧路之音响篇之二十一: jitter 对解码后的模拟输出的影响的测试 [主题管理员:fumac]
正序浏览
主题图片汇总
主题内检索
浏览:6450 回帖:174
游客没有回帖权限
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
fumac 发表于 2016-3-30 16:46
我的测试已经告诉你
他的缓冲不足以解决这问题
ps再大的缓冲都有一个边界
测试的结果就是告诉你边界在哪里


fumac 发表于 2016-3-30 16:43
你的前提就错了
jitter的抖动方向不一定随机的
如果随机那么展开就是一个白噪音的频谱
而实际jitter的频谱我贴了
有些频点强度高有些强度低
要看jitter来自于哪里
如果来自于工频电源
那么就跟工频成倍数关系


就算jitter的抖动方向不一定随机的。
你看看我下面的算法有没错误。
而1帧192K的数据为5298333ps,所以1帧buffer就可以消除5298333/300=17661次抖动
对于16位44.1k的采样,每帧的消耗时间是1/44100=22675737ps。所以对于300ps的扰动,1帧的缓存可以抹平75586次这样的扰动。

你加入的扰动是200hz的,17881次扰动相当于88.305秒。也就是说你的这个扰动在这88.305秒内全部是同一个方向的,才会造成Buffer内1帧缓存量的变化。你觉的可能吗?或者这个DAC内部的缓存只有几个bit?
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
陈年泡菜
泡网分: 64.921
主题: 267
帖子: 18632
注册: 2002年10月
内容贡献勋章
lyd838 发表于 2016-3-30 13:27
来抬杠了不是?
传输线原理告诉我们,电波在传输线上传输时会产生驻波和反射波,驻波影响波幅也就是传输强度的损耗,反射波则产生 jitter。请你用50欧姆射频线与75欧姆数码线接在转盘和DAC之间进行对比,千万别告诉我没区别。


你搭理一个百度科学家干嘛?
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
陈年泡菜
泡网分: 64.921
主题: 267
帖子: 18632
注册: 2002年10月
内容贡献勋章
水牛 发表于 2016-3-30 15:58
没注意到你的这个回复。
24bit 192k的话,算下来通信clock为54235ps.  抖动率为0.55%左右。
而1帧192K的数据为5298333ps,所以1帧buffer就可以消除5298333/300=17661次抖动(我前贴子里把这点搞错了)。
这是连续累积17661次的同向抖动啊。中间只要有反反向的,就会被抵消掉的。
所以只要有缓存的存在,实在不能理解这个抖动怎么可能进入的了后端的模拟信号。


我的测试已经告诉你
他的缓冲不足以解决这问题
ps再大的缓冲都有一个边界
测试的结果就是告诉你边界在哪里
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
陈年泡菜
泡网分: 64.921
主题: 267
帖子: 18632
注册: 2002年10月
内容贡献勋章
水牛 发表于 2016-3-30 15:26
你说的,我都了解。你再看看我这一贴里的计算。

我如果没算错的话,1次采样(32位)的buffer,就可以消除1000次左右的300ps的扰动,并且这1000次还是同向累积的。
如果有10块这样的buffer的话,那么按你的算法,当缓存的数据为3,4,5,6,7帧时,就可以不用去调节PLL。也就是正负2.5帧,0.0000567ms。也即差不多2500次的300ps的同向扰动。而实际上,抖动的方向是随机的。所以输入的数据时钟误差,只要累积(注意是累积)不超过这范围内,就可以被完全消除。那么10帧的延迟是多少呢0.227ms。而且是最大的延迟,正常情况下应该是5帧的延迟量。所以我在等fumac回答我这个问题


你的前提就错了
jitter的抖动方向不一定随机的
如果随机那么展开就是一个白噪音的频谱
而实际jitter的频谱我贴了
有些频点强度高有些强度低
要看jitter来自于哪里
如果来自于工频电源
那么就跟工频成倍数关系
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.044
主题: 0
帖子: 44
注册: 2012年2月
水牛 发表于 2016-3-30 15:58
没注意到你的这个回复。
24bit 192k的话,算下来通信clock为54235ps.  抖动率为0.55%左右。
而1帧192K的数据为5298333ps,所以1帧buffer就可以消除5298333/300=17661次抖动(我前贴子里把这点搞错了)。
这是连续累积17661次的同向抖动啊。中间只要有反反向的,就会被抵消掉的。
所以只要有缓存的存在,实在不能理解这个抖动怎么可能进入的了后端的模拟信号。
打个比方,广场的音乐喷泉,按程序各喷头会按设定的时刻和压力喷出水柱,形成水幕造型。如果某喷头因水压不正常引起的水管谐振或喷头品质不一致提前或滞后在不合适的时候打开了水龙头开关而压力却配合不好,你说水幕造型会有变化吗?当然,如果提前或滞后很少,造型变化就很细微,所谓jitter可忽略不计。音响DAC不就和上述差不多的原理嘛。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
lyd838 发表于 2016-3-30 15:50
您真没理解fumac实验的意义。

我理解他实验的意义,但是对他的测试结果存在异议。
你还是先理解我的算法再说吧。
嗯,我前面有个地方自己搞混了。
对于16位44.1k的采样,每帧的消耗时间是1/44100=22675737ps。所以对于300ps的扰动,1帧的缓存可以抹平75586次这样的扰动。
现在这样简单明白了吧。你说说看,只要DAC内部有缓存,只要DAC工作在异步状态。DAC前端什么样的扰动还能被DAC带入到的模拟信号里?
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
fumac 发表于 2016-3-30 11:40
我上面测试是24bit 192k
你再算算

另外 100ms 就没有实时性了

没注意到你的这个回复。
24bit 192k的话,算下来通信clock为54235ps.  抖动率为0.55%左右。
而1帧192K的数据为5298333ps,所以1帧buffer就可以消除5298333/300=17661次抖动(我前贴子里把这点搞错了)。
这是连续累积17661次的同向抖动啊。中间只要有反反向的,就会被抵消掉的。
所以只要有缓存的存在,实在不能理解这个抖动怎么可能进入的了后端的模拟信号。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.693
主题: 1
帖子: 710
注册: 2008年3月
水牛 发表于 2016-3-30 15:26
你说的,我都了解。你再看看我这一贴里的计算。

我如果没算错的话,1次采样(32位)的buffer,就可以消除1000次左右的300ps的扰动,并且这1000次还是同向累积的。
如果有10块这样的buffer的话,那么按你的算法,当缓存的数据为3,4,5,6,7帧时,就可以不用去调节PLL。也就是正负2.5帧,0.0000567ms。也即差不多2500次的300ps的同向扰动。而实际上,抖动的方向是随机的。所以输入的数据时钟误差,只要累积(注意是累积)不超过这范围内,就可以被完全消除。那么10帧的延迟是多少呢0.227ms。而且是最大的延迟,正常情况下应该是5帧的延迟量。所以我在等fumac回答我这个问题


你的思路很对,抖动有随机和确定两类。确定抖动通常来自于干扰,比如50HZ的电源纹波,这种干扰并不是每个时钟周期都是300ps,也不是时基误差方向随机的,有一个周期10ms,统计上的RMS值是300ps。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.044
主题: 0
帖子: 44
注册: 2012年2月
水牛 发表于 2016-3-30 15:26
你说的,我都了解。你再看看我这一贴里的计算。

我如果没算错的话,1次采样(32位)的buffer,就可以消除1000次左右的300ps的扰动,并且这1000次还是同向累积的。
如果有10块这样的buffer的话,那么按你的算法,当缓存的数据为3,4,5,6,7帧时,就可以不用去调节PLL。也就是正负2.5帧,0.0000567ms。也即差不多2500次的300ps的同向扰动。而实际上,抖动的方向是随机的。所以输入的数据时钟误差,只要累积(注意是累积)不超过这范围内,就可以被完全消除。那么10帧的延迟是多少呢0.227ms。而且是最大的延迟,正常情况下应该是5帧的延迟量。所以我在等fumac回答我这个问题
您真没理解fumac实验的意义。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
lszyc 发表于 2016-3-30 13:56
我用一个实例来说明吧:

一DAC内有一个buffer,接收来自CD转盘的44.1K 16bits的双声道信号。CD转盘输出数据的平均速度是固定的,但因为有Jitter和时钟误差的原因,速度有小变化,写入buffer的速度有小变化。

DAC内一控制器控制读buffer的主时钟,当Buffer中的数据小于容量25%的,就减慢读的时钟,保证buffer不会变空,当Buffer中的数据大于75%的时候,就加快读的速度,防止buffer溢出。

我们假设读、写 buffer时都以字(word 16bits)进行,每次读一个声道的一个采样,那么读的主时钟是44.1K。

现在假如buffer中的数据小于25%了,要增加读主时钟的速度,那么一次增加多少呢?在数字世界,一切都是数字的,因此一次增加多少是固定的,这个增加的时间要由另外一个核心时钟来控制(主时钟由这个核心时钟分频而来),通过调整除法器和计数器来实现。我们假设核心时钟频率是1G hz,周期是1ns,每一次调整计数器加1,也就是说,每一次调整,Buffer的读时钟周期增加1ns。

如果buffer中的数据大于75%了,发要增加读主时钟的速度,同样的道理,每次调整,最小量是buffer读时钟周期减少1ns。

如果buffer每秒调节10次,我们就相当于给读主时钟加了一个10HZ ,1000ps的确定 jitter。

其实, ...

你说的,我都了解。你再看看我这一贴里的计算。
翻了下S/PDIF通信规范。通信时钟为bit率的2倍。
对于44.1K的音频来说。bit率为44100×2(2声道)×16(16采样)=1411200Bit。不考虑控制信息的情况下,每个Clock为1/(1411200×2)=354308ps。你加的300ps的扰动,如果是加在这个时钟之上的话,扰动率只有0.085%,加上控制信息,算它0.1%好了。对于这个级别的扰动,DAC就抑制不了了吗,有点难以想象啊。按简单的计算,每增加一次采样32Bit的buffer,应该就能抑制1000次这种级别的扰动了。并且这1000次扰动还是同向的。看起来似乎是PLL响应太及时,而不是不足。会不会是因为这个扰动分布不够均匀。比如1秒钟之内全部是正向调整,下1秒全部负向调整。从而造成DAC内部的buffer一直在上溢和下溢2个状态之间变化。

我如果没算错的话,1次采样(32位)的buffer,就可以消除1000次左右的300ps的扰动,并且这1000次还是同向累积的。
如果有10块这样的buffer的话,那么按你的算法,当缓存的数据为3,4,5,6,7帧时,就可以不用去调节PLL。也就是正负2.5帧,0.0000567ms。也即差不多2500次的300ps的同向扰动。而实际上,抖动的方向是随机的。所以输入的数据时钟误差,只要累积(注意是累积)不超过这范围内,就可以被完全消除。那么10帧的延迟是多少呢0.227ms。而且是最大的延迟,正常情况下应该是5帧的延迟量。所以我在等fumac回答我这个问题
会不会是因为这个扰动分布不够均匀。比如1秒钟之内全部是正向调整,下1秒全部负向调整。从而造成DAC内部的buffer一直在上溢和下溢2个状态之间变化。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.693
主题: 1
帖子: 710
注册: 2008年3月
水牛 发表于 2016-3-30 13:33
你的这句话我没看明白。或者你没明白我的意思。
Buffer读的周期精度,取决DAC本身的时钟。这个就是DAC采用独立时钟的意义所在。当然这个时钟本身也会有Jitter。增加buffer不是为了消除这个Jitter, 而是为了消除 DA前端系统带来的Jitter,比如那个SPDIF。除非你能证明增加buffer会造成DAC本身Jitter的恶化。如果buffer足够大,就可以使DAC内部的PLL一直处于一个恒定的值,甚至完全不需要PLL。这样DA前端系统的Jitter完全被抑制,最后只有DAC本身的Jitter才会对模拟信号产生影响。


另外,我刚想到,如果buffer大到74分钟,那不就是带DAC的数播了吗?只要每次花74分钟接收CD传来的数字音频信号而已。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.218
主题: 0
帖子: 1310
注册: 2016年1月
lszyc 发表于 2016-3-30 14:45
我听说,有些设计师的绝活,就是测试顶级转盘的Jitter频域分布,然后在数播中模拟这种jitter频谱分布,于是,数播也有hiend味了,不再是白开水了。

楼主也可以做点公益事业麻。

这个思路不错。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.693
主题: 1
帖子: 710
注册: 2008年3月
hawkeye2 发表于 2016-3-30 14:39
驸马能不能测试一下,一般转盘的jitter在频域上是怎么分布的?


我听说,有些设计师的绝活,就是测试顶级转盘的Jitter频域分布,然后在数播中模拟这种jitter频谱分布,于是,数播也有hiend味了,不再是白开水了。

楼主也可以做点公益事业麻。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.218
主题: 0
帖子: 1310
注册: 2016年1月
fumac 发表于 2016-3-29 21:38
很多所谓的理性发烧友
他们的理性就认为数字一定没有失真
0101 怎么会有失真?
从最早的cd怎么会有失真,到后来的硬盘文件怎么会有抖动
到异步就可以解决所有问题了!
其中充满的显浅易懂的看上去很科学理性的精神
实际上却是理解不够充分的结果

本帖的意义在于:我跳过大家无法理解的细节比如pll,比如晶振的近端噪音等等
直接展示通过一个极大抖动的spdif 如何影响模拟端输出的测试结果
于是有朋友接受不了了

首贴已经说过,jitter 在业内是很清楚的事情
jitter 影响的几个事:dac输出的底噪,高频失真,等等
各位有兴趣可以去 aes 官网查 jitter 一堆堆的论文

我这个帖子测试的dac 总体是非常优秀的
所有的产品要让他达到最好的状态,是有个界限的
而我要告诉大家这个dac的界限在哪里
所以我用比较直接粗暴的方法把这个界限找出来

驸马能不能测试一下,一般转盘的jitter在频域上是怎么分布的?
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.044
主题: 0
帖子: 44
注册: 2012年2月
水牛 发表于 2016-3-30 13:33
你的这句话我没看明白。或者你没明白我的意思。
Buffer读的周期精度,取决DAC本身的时钟。这个就是DAC采用独立时钟的意义所在。当然这个时钟本身也会有Jitter。增加buffer不是为了消除这个Jitter, 而是为了消除 DA前端系统带来的Jitter,比如那个SPDIF。除非你能证明增加buffer会造成DAC本身Jitter的恶化。如果buffer足够大,就可以使DAC内部的PLL一直处于一个恒定的值,甚至完全不需要PLL。这样DA前端系统的Jitter完全被抑制,最后只有DAC本身的Jitter才会对模拟信号产生影响。
PLL本身就产生新的Jitter。听感容忍度多少而已。不少指标高的DAC不如指标低DAC保真好听,或许就因为这个。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.693
主题: 1
帖子: 710
注册: 2008年3月
水牛 发表于 2016-3-30 13:33
你的这句话我没看明白。或者你没明白我的意思。
Buffer读的周期精度,取决DAC本身的时钟。这个就是DAC采用独立时钟的意义所在。当然这个时钟本身也会有Jitter。增加buffer不是为了消除这个Jitter, 而是为了消除 DA前端系统带来的Jitter,比如那个SPDIF。除非你能证明增加buffer会造成DAC本身Jitter的恶化。如果buffer足够大,就可以使DAC内部的PLL一直处于一个恒定的值,甚至完全不需要PLL。这样DA前端系统的Jitter完全被抑制,最后只有DAC本身的Jitter才会对模拟信号产生影响。


我用一个实例来说明吧:

一DAC内有一个buffer,接收来自CD转盘的44.1K 16bits的双声道信号。CD转盘输出数据的平均速度是固定的,但因为有Jitter和时钟误差的原因,速度有小变化,写入buffer的速度有小变化。

DAC内一控制器控制读buffer的主时钟,当Buffer中的数据小于容量25%的,就减慢读的时钟,保证buffer不会变空,当Buffer中的数据大于75%的时候,就加快读的速度,防止buffer溢出。

我们假设读、写 buffer时都以字(word 16bits)进行,每次读一个声道的一个采样,那么读的主时钟是44.1K。

现在假如buffer中的数据小于25%了,要增加读主时钟的速度,那么一次增加多少呢?在数字世界,一切都是数字的,因此一次增加多少是固定的,这个增加的时间要由另外一个核心时钟来控制(主时钟由这个核心时钟分频而来),通过调整除法器和计数器来实现。我们假设核心时钟频率是1G hz,周期是1ns,每一次调整计数器加1,也就是说,每一次调整,Buffer的读时钟周期增加1ns。

如果buffer中的数据大于75%了,发要增加读主时钟的速度,同样的道理,每次调整,最小量是buffer读时钟周期减少1ns。

如果buffer每秒调节10次,我们就相当于给读主时钟加了一个10HZ ,1000ps的确定 jitter。

其实,所谓的数字PLL就是这么干的。

当然,也可以增大Buffer,1秒调节一次,但是前面也说了,加buffer要考虑延迟问题,所以我认为你说的设置延迟(buffer容量)的DAC是一个想法。

本帖最后由 lszyc 于 2016-3-30 13:57 编辑

(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
lszyc 发表于 2016-3-30 12:32
第二问题,其实还涉及到Jitter小到一定程度,Buffer的读写周期就是非常难处理的问题,你知道,1GHZ的时钟,周期是1000ps,那么如果要把Jitter控制到小于100ps,要求调整Buffer读的周期的每次调整,调整量要小于100ps,因为每次调整读的速度,也就是调整读buffer的时钟,目前10G的时钟,难了点。

因此如果不是调整输入buffer的数据速度,而是调整buffer读的速度,jitter是降不了多少的。

你的这句话我没看明白。或者你没明白我的意思。
Buffer读的周期精度,取决DAC本身的时钟。这个就是DAC采用独立时钟的意义所在。当然这个时钟本身也会有Jitter。增加buffer不是为了消除这个Jitter, 而是为了消除 DA前端系统带来的Jitter,比如那个SPDIF。除非你能证明增加buffer会造成DAC本身Jitter的恶化。如果buffer足够大,就可以使DAC内部的PLL一直处于一个恒定的值,甚至完全不需要PLL。这样DA前端系统的Jitter完全被抑制,最后只有DAC本身的Jitter才会对模拟信号产生影响。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.044
主题: 0
帖子: 44
注册: 2012年2月
港通沪 发表于 2016-3-27 02:01
你是说“线”产生的传输延迟(时间)会快速地变动吗?把jitter翻译成抖动其实是很形象的,就是快速地变动。
来抬杠了不是?
传输线原理告诉我们,电波在传输线上传输时会产生驻波和反射波,驻波影响波幅也就是传输强度的损耗,反射波则产生 jitter。请你用50欧姆射频线与75欧姆数码线接在转盘和DAC之间进行对比,千万别告诉我没区别。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 21.473
主题: 19
帖子: 1435
注册: 2005年2月
lyd838 发表于 2016-3-30 13:20
很难很难的,没有数字通信傅里叶分析数学基础的人是很难理解的。但实验确实点到了本质。

很好 ,到傅里叶分析了
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.044
主题: 0
帖子: 44
注册: 2012年2月
fumac 发表于 2016-3-27 11:16
很简单的逻辑关系,居然很多朋友看不懂
很难很难的,没有数字通信傅里叶分析数学基础的人是很难理解的。但实验确实点到了本质。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.044
主题: 0
帖子: 44
注册: 2012年2月
scorpion 发表于 2016-3-29 18:43
出处?
DAC输出,在低通之前是时序脉冲(波幅各异),你认可吧?
时序脉冲是方波,你也认可吧?
当DAC输入端时序脉冲有抖动,和标准方波比较有形状差别,这个你也认可吧?
那么DAC处理后,在DAC输出端低通之前的时序脉冲也有相应抖动,这点应该也认可吧?
那好吧,两个不同形状的时序脉冲,所对应的等效正弦波序列有差别,这个不难理解吧?
如果理解不了,请看http://zhuanlan.zhihu.com/p/19763358
或买一本看看:傅里叶分析及其应用
本帖最后由 lyd838 于 2016-3-30 13:30 编辑

登录后可直接显示原图
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.693
主题: 1
帖子: 710
注册: 2008年3月
水牛 发表于 2016-3-30 11:55
对于第一个问题,完全可以在芯片内部设置开关项。让用户自己选择是工作在低延迟状态,还是高抗扰状态。
对于第2个问题,DAC之所以需要从SPDIF信号里恢复时钟,其本质还是没有buffer或者buffer偏小。另外CD的读盘,是个物理机构。SPDIF的扰动和这个相比,根本不是一个数量级的。所以CD的内部,必定有一块较大的buffer。
而且现在高级的DAC内部都有独立的时钟。这种情况下DAC的时钟应该不用从SPDIF信号里恢复。DAC的Pll,应该是在DAC内部Buffer偏离正常范围之后才动作的。比如DAC内部的buffer最多可以保存10帧数据。那么正常情况下会缓存5帧左右。当缓存量低于3帧或高于7帧之后,Pll开始介入。所以增加buffer量,绝对是抗jitter的不二法则。


你说的方法是有道理的,第一个方法真不错,我建议你申请个专利试试,可能之前没人想到。

第二问题,其实还涉及到Jitter小到一定程度,Buffer的读写周期就是非常难处理的问题,你知道,1GHZ的时钟,周期是1000ps,那么如果要把Jitter控制到小于100ps,要求调整Buffer读的周期的每次调整,调整量要小于100ps,因为每次调整读的速度,也就是调整读buffer的时钟,目前10G的时钟,难了点。

因此如果不是调整输入buffer的数据速度,而是调整buffer读的速度,jitter是降不了多少的。而CD的优势,是读buffer的速度完全由晶振决定,光头系统,根据buffer的空间,调整读盘速度。

还有一种DAC,比如ESS的9018,内部有个ASRC模块,纯DA部分,完全依据晶振来进行,这种情况下,ASRC如何处理jitter就成为问题,从我使用CS8421的经验看,ASRC并不能解决jitter问题。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
lszyc 发表于 2016-3-30 11:08
中国的标准中,声画时间定位从头到尾,声音延迟不能超过185ms,中间的DSP或DAC和ADC的每个环节不能超过2ms。作为独立DAC,厂家设计的时候,不能不考虑用于演唱会,或新年音乐会蓝光碟播放的用途,因此不会有独立DAC厂家把buffer加到100ms那么高的,市场上也就见不到这样的产品了。

CD音质好,一个重要原因是CD的DAC时钟,不是来自于恢复的时钟,而是直接来自于晶振的分频。

对于第一个问题,完全可以在芯片内部设置开关项。让用户自己选择是工作在低延迟状态,还是高抗扰状态。
对于第2个问题,DAC之所以需要从SPDIF信号里恢复时钟,其本质还是没有buffer或者buffer偏小。另外CD的读盘,是个物理机构。SPDIF的扰动和这个相比,根本不是一个数量级的。所以CD的内部,必定有一块较大的buffer。
而且现在高级的DAC内部都有独立的时钟。这种情况下DAC的时钟应该不用从SPDIF信号里恢复。DAC的Pll,应该是在DAC内部Buffer偏离正常范围之后才动作的。比如DAC内部的buffer最多可以保存10帧数据。那么正常情况下会缓存5帧左右。当缓存量低于3帧或高于7帧之后,Pll开始介入。所以增加buffer量,绝对是抗jitter的不二法则。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
资深泡菜
泡网分: 28.846
主题: 8
帖子: 2174
注册: 2003年6月
水牛 发表于 2016-3-30 10:52
现有的通信协议,决定了这是不可能的。
但是,如果仅仅面向HIFI。DAC的延迟指标就基本上可以无视,毕竟看个电影,不超过100ms的延迟是察觉不出来。
如果DAC内部有100ms的buffer,什么样的前端Jitter都可以被抑制了。DAC甚至可以不考虑buffer的上溢和下溢,也就没哟PLL的事了。
不知道为什么没有这样的芯片面市。我很怀疑为什么同价位的外置DAC往往会在CD面前败下阵来。很可能就是因为CD可以不用考虑延迟问题,可以将buffer做的更大。


这个思路,90年代已经有不少产品了,估计是效果有限,并没有大规模应用。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
陈年泡菜
泡网分: 64.921
主题: 267
帖子: 18632
注册: 2002年10月
内容贡献勋章
水牛 发表于 2016-3-30 10:52
现有的通信协议,决定了这是不可能的。
但是,如果仅仅面向HIFI。DAC的延迟指标就基本上可以无视,毕竟看个电影,不超过100ms的延迟是察觉不出来。
如果DAC内部有100ms的buffer,什么样的前端Jitter都可以被抑制了。DAC甚至可以不考虑buffer的上溢和下溢,也就没哟PLL的事了。
不知道为什么没有这样的芯片面市。我很怀疑为什么同价位的外置DAC往往会在CD面前败下阵来。很可能就是因为CD可以不用考虑延迟问题,可以将buffer做的更大。


我上面测试是24bit 192k
你再算算

另外 100ms 就没有实时性了
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.693
主题: 1
帖子: 710
注册: 2008年3月
水牛 发表于 2016-3-30 10:52
现有的通信协议,决定了这是不可能的。
但是,如果仅仅面向HIFI。DAC的延迟指标就基本上可以无视,毕竟看个电影,不超过100ms的延迟是察觉不出来。
如果DAC内部有100ms的buffer,什么样的前端Jitter都可以被抑制了。DAC甚至可以不考虑buffer的上溢和下溢,也就没哟PLL的事了。
不知道为什么没有这样的芯片面市。我很怀疑为什么同价位的外置DAC往往会在CD面前败下阵来。很可能就是因为CD可以不用考虑延迟问题,可以将buffer做的更大。


中国的标准中,声画时间定位从头到尾,声音延迟不能超过185ms,中间的DSP或DAC和ADC的每个环节不能超过2ms。作为独立DAC,厂家设计的时候,不能不考虑用于演唱会,或新年音乐会蓝光碟播放的用途,因此不会有独立DAC厂家把buffer加到100ms那么高的,市场上也就见不到这样的产品了。

CD音质好,一个重要原因是CD的DAC时钟,不是来自于SPDIF信号恢复的时钟,而是直接来自于晶振的分频。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
lszyc 发表于 2016-3-29 22:20
如果没有时钟回授我也认为不可能,因为看看市场上的PLL芯片的固有抖动值参数,50ps就是最优秀的芯片了。但反过来讲,如果时钟从DAC向CD或USB界面回传呢?DAC的时钟不使用PLL恢复的,直接使用晶振产生的,会不会好点?

HIEND级别上有这样的产品,我印象非常深刻,难以想象两只喇叭能产生那么逼真的三维声场,可惜我买不起。

现有的通信协议,决定了这是不可能的。
但是,如果仅仅面向HIFI。DAC的延迟指标就基本上可以无视,毕竟看个电影,不超过100ms的延迟是察觉不出来。
如果DAC内部有100ms的buffer,什么样的前端Jitter都可以被抑制了。DAC甚至可以不考虑buffer的上溢和下溢,也就没哟PLL的事了。
不知道为什么没有这样的芯片面市。我很怀疑为什么同价位的外置DAC往往会在CD面前败下阵来。很可能就是因为CD可以不用考虑延迟问题,可以将buffer做的更大。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 29.579
主题: 15
帖子: 1444
注册: 2002年12月
fumac 发表于 2016-3-29 21:48
很简单
两个事情
1.buffer 不够大
2.pll 响应不足

翻了下S/PDIF通信规范。通信时钟为bit率的2倍。
对于44.1K的音频来说。bit率为44100×2(2声道)×16(16采样)=1411200Bit。不考虑控制信息的情况下,每个Clock为1/(1411200×2)=354308ps。你加的300ps的扰动,如果是加在这个时钟之上的话,扰动率只有0.085%,加上控制信息,算它0.1%好了。对于这个级别的扰动,DAC就抑制不了了吗,有点难以想象啊。按简单的计算,每增加一次采样32Bit的buffer,应该就能抑制1000次这种级别的扰动了。并且这1000次扰动还是同向的。看起来似乎是PLL响应太及时,而不是不足。会不会是因为这个扰动分布不够均匀。比如1秒钟之内全部是正向调整,下1秒全部负向调整。从而造成DAC内部的buffer一直在上溢和下溢2个状态之间变化。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.654
主题: 3
帖子: 529
注册: 2010年11月
knir 发表于 2016-3-30 09:11
支持测试,下次把我的iD22带过去试试看。
支持测试
我有Aune X1 MK2 Mini DAC、Wadia121、Chord Hugo,最高、最低价格相差十倍以上。有时间也拿去楼主那测试测试,看看测试指标和价格是什么比例关系
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
陈年泡菜
泡网分: 64.921
主题: 267
帖子: 18632
注册: 2002年10月
内容贡献勋章
lszyc 发表于 2016-3-30 09:43
这个问题可以从两个方面来理解,都有可能:

一是楼主你开发的DAC确实优秀,时钟处理问题可以“消除”前端来的200ps内的时钟抖动。
二是楼主你开发的DAC,本底jitter干扰就在300ps左右,因此前面来的jitter低于260ps时,被掩没在本底干扰中,这种情况在精密测量工程中是比较常见的。

按我的经验,第二种情况比较多见,但是有一点,300ps的本底干扰,也是很牛B的水平。比如你开发的飞秒USB-SPDIF界面,虽然晶振的水平已经小于1ps的jitter了,但输出SPDIF信号的jitter还是在50-100ps级。


你有个地方搞错,题头的这个dac不是我开发的
迟点我会公开我的dac的这块参数
其实之前帖子公开过的,只是不是按照这个方法来做
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
回复主题: 漫漫器材发烧路之音响篇之二十一: jitter 对解码后的模拟输出的影响的测试
功能受限
游客无回复权限,请登录后再试