找回密码
 -注册-
123
返回列表 发新帖
楼主: testguru
打印 上一主题 下一主题

32Bit浮点ADC系统的构成及特点---ZOOM UAC-232评测

[复制链接]
41
 楼主| 发表于 2023-10-29 01:29 | 只看该作者 来自 新加坡
chaos_xie 发表于 2023-10-28 07:30
问题就在这里,负数的最大值实际上是信号的接近最大值。
如果你看采样的振幅,大的正数和大的负数都是强 ...
如果考虑正弦波,正值最大和负值最大其实是一回事
你的长处明显不在这方面 ,很多时候,我都不知道你在说什么,不好意思,但我不得不说,一些普通常识是需要的。好吧,按你的说法,你计算下8位有符号数和无符号数的动态范围吧。

按照动态范围的定义,是最大信号和最小信号(噪声)的比值。
这样定义也是可以的,只是你是否能按这个定义正确计算出上面说的动态范围?

回复

使用道具 举报

42
发表于 2023-10-31 04:32 | 只看该作者 来自 法国
testguru 发表于 2023-10-29 01:29
你的长处明显不在这方面 ,很多时候,我都不知道你在说什么,不好意思,但我不得不说,一些 ...

按照动态范围的定义,是最大信号和最小信号(噪声)的比值 - 这个是标准定义,我不知道你的定义是什么?


做了一下功课,关于audio bit depth的dynamic range,没有找到根据动态范围定义的详细推导。或者说我就没有找到准确定义。我是很怀疑20Log(2^n)是怎么推导出来的。Wiki上关于SQNR的推导是可以查到的。你有资料可以贴出来。
回复

使用道具 举报

43
 楼主| 发表于 2023-11-2 04:02 | 只看该作者 来自 新加坡
chaos_xie 发表于 2023-10-31 04:32
按照动态范围的定义,是最大信号和最小信号(噪声)的比值 - 这个是标准定义,我不知道你的定义是什么?[ ...

ADC芯片一般只说是N位的,而其具体的数据输出格式通常是可选择的:直接二进制、偏移二进制、二进制补码等,其动态范围不会因为输出数据的格式而改变,否则谁也不会选动态范围小的。

以8位为例,它将满程信号分为256级,最细分辨率为1级,不同格式的范围和零点(或静音点)如下:
直接二进制:0~255,零点(或静音点)为0
偏移二进制:0~255,最常见的是零点(或静音点)为128
二进制补码:-128~+127,零点(或静音点)为0

我前面的理想动态范围的计算公式:20*log(最大幅度跨度/最细幅度分辨率)与按20*log[最大信号/最小信号(i.e.噪声)]完全等价,我看不出有什么区别。算出来都是20*log(256/1)=48 (dB)。

如果用信号来算,最大信号和最小信号必须是相同波形、相同的幅度参数(Vpp、Vp或Vrms)相比。比如信号是正弦波,那么8位整数,无论什么格式,能装入的最大正弦波的峰峰值为MaxVpp=256份 (我这里用的是份数,不是数值255,不必太纠结这个),现在计算的是理想情况,因此最小信号(噪声)的峰峰值为1份: MinVpp=1份。如果用峰值Vp,这个比值也不变;用有效值Vrms也是一样的,只是有效值若概念不清就容易搞错,因为可能会纠结于这个噪声的具体位置,但无论在哪里,计算动态范围时,有效值是必须减去直流成分后才计算的。
回复

使用道具 举报

44
 楼主| 发表于 2023-11-5 00:14 | 只看该作者 来自 新加坡
2.10ADC切换算法的实验探究
2.10.1 有/无低增益ADC介入的冲激响应测试
下面两图是测得的两个冲激响应。第一幅图的冲激幅度为0.03Vp(0.021Vrms),因此它应只由高增益ADC单独产生。第二幅图的冲激幅度为0.18Vp (0.127Vrms),因此它应足以触发高增益ADC向低增益ADC切换。



只涉及高增益ADC的XLR话筒输入的冲激响应(数字增益 = 0dB

涉及低增益ADCXLR话筒输入的冲激响应(数字增益 = 0dB

由于冲激信号的时长极短,响应信号的采样点之间的差值极大,足可掩盖两个ADC之间的任何增益和零偏上的差异,因此不能指望在波形图上看到明显的ADC切换痕迹。冲激响应的频谱则为频率响应,从上面两图可看出少许的、由这种方法测得的两ADC的频响差异。

将上面两波形图的纵向放大(如下面两图所示),以观察在冲激前后可能发生的底噪电平的变化。正如所估计的那样,在第一幅图中底噪电平保持不变。而在第二幅图中,底噪电平的变化清晰地反映了两个ADC之间的切换:从冲激前的高增益ADC到冲激之中及以后的低增益ADC,以及60ms之后,由于信号微弱而再次回到高增益ADC。

只涉及高增益ADC的XLR话筒输入的冲激响应(数字增益 = 0dB)

涉及低增益ADC的XLR话筒输入的冲激响应(数字增益 = 0dB)


2.10.2 跨越ADC切换点的扫幅测试
为了探查在ADC切换过程中波形是否发生跳变,可采用连续的线性幅度扫描,用时0.5秒,从0.03Vp增加到0.05Vp,然后再用时0.5秒,从0.05Vp回到0.03Vp,周而复始。结果如下图所示。红线代表波形的幅度包络,它是原始波形经过希尔伯特变换进行幅度解调后而得。较粗的红线表示原始波形中噪声电平较高。ADC切换的上限和下限阈值分别测得为44.2mV和31.8mV。在300Hz〜20kHz的载波频率范围内,这两个阈值保持不变。对于低于300Hz的载波频率,由于未知原因,测试发现,上限阈值增加,而下限阈值降低。

触发ADC切换的线性扫幅 (数字增益 =0dB

在放大上图以检查ADC切换点处的波形时,没有发现任何明显的跳变。波形看起来相当平滑,就好像没有发生ADC切换一样。下图是从高增益ADC到低增益ADC的过渡区的特写。正弦波的顶部(或底部)是检查噪声水平的理想位置,因为它相对平坦。下图中,正弦波的第三个峰比前两个峰明显具有更高的噪声水平,这进一步确认了由红色幅度包络线指示的ADC切换位置。从下面的红色幅度包络线还可以观察到噪声水平是逐渐增加而不是瞬间增加的,这意味着在过渡区域存在一种用于拼接的DSP算法,用于淡入来自低增益ADC的新数据流并淡出来自高增益ADC的旧数据流,实现无缝拼接。过渡区长度似乎约为0.5毫秒。

ADC切换处的过渡区(数字增益= 0dB




回复

使用道具 举报

45
 楼主| 发表于 2023-11-7 18:22 | 只看该作者 来自 新加坡
三、线路/HiZ输入
与XLR话筒输入相同,当数字增益为0dB时,32位浮点数1(0dBFS)仍然对应于线路输入(平衡的)和HiZ(单端的)输入的最高电平。经校准后,最高电平分别为23.0Vp(26.4dBu)和4.30Vp(11.9dBu) 。同样地,这些值略高于ZOOM标明的24dBu和 11.5dBu。在动态范围方面,线路输入为129.1dB或131.2dBA,而HiZ输入为123.1dB或125.2dBA。这些指标都比XLR话筒输入略低。在带宽方面则与XLR话筒输入没什么区别。

四、输出
ZOOM UAC-232似乎无法在32位浮点模式下输出信号。但幸运的是,在 Multi-Instrument 中,可以使用 Sound Card ASIO 作为32位浮点数据输入,同时可使用 Sound Card MME 进行24位整数数据输出。

五、结论
在32位浮点模式下,当数字增益设置为0 dB 时,采样值 1 始终对应于最高电平,超过该值后,就会发生削顶失真。在 Multi-Instrument 中,采样值 1 被定义为 0 dBFS。采样值随数字增益设置而变化,因此当数字增益高于 0 dB时,即使信号幅度超过 0 dBFS也不一定会出现削顶失真 (见下图)。

32位浮点ADC的优点

尽管高增益ADC和低增益 ADC之间不可避免地存在着非常微小的错位,但它们之间的切换是非常平滑的,在波形中未发现任何跳变的痕迹,这要归功于其在过渡区域所采用的DSP拼接算法。而且此过渡在非常短的时间内完成,几乎不会引起任何可听出的痕迹,对声音测量引入的误差完全可以忽略不计。ZOOMUAC-232 的XLR 话筒输入的动态范围约为134.3dB 或 136.4dBA,这比那些采用单个 ADC的方案高出了至少10dB以上。配上适当的话筒,可以在不牺牲微弱信号保真度且不引发高强信号削顶失真的情况下捕捉到整个人类听觉范围内的声音,而且省去了手动进行模拟增益调节的麻烦。这在声音录制和测量行业中是一项极具吸引力的技术。



回复

使用道具 举报

46
发表于 2023-11-7 18:35 | 只看该作者 来自 北京
testguru 发表于 2023-11-7 18:22
三、线路/HiZ输入与XLR话筒输入相同,当数字增益为0dB时,32位浮点数1(0dBFS)仍然对应于线路输入(平衡的 ...

请教一下,对Neumann MT48有点感兴趣,好像好评还挺多的,从技术参数角度,大概可以如何看呢?多谢多谢!
回复

使用道具 举报

47
发表于 2023-11-10 13:11 | 只看该作者 来自 法国
testguru 发表于 2023-11-2 04:02
ADC芯片一般只说是N位的,而其具体的数据输出格式通常是可选择的:直接二进制、偏移二进制、二进制补码等 ...

20*log(最大幅度跨度/最细幅度分辨率)与按20*log[最大信号/最小信号(i.e.噪声)]
-------------------
我没有查到类似的公式推导的出处。我完全不觉得他们等价。相反,SQNR的推导远比“20*log(最大幅度跨度/最细幅度分辨率)”复杂很多,参考wiki https://en.wikipedia.org/wiki/Signal-to-quantization-noise_ratio。需要用到概率分布函数和期望值推导。
我只能说采样值平方以后相加再开方(Vmrs的计算公式),值域范围确实是和2^n相关,而不是2^n-1。因此最终公式里应该有log(2^n)。
回复

使用道具 举报

48
发表于 2023-11-10 22:32 | 只看该作者 来自 法国
chaos_xie 发表于 2023-11-10 13:11
20*log(最大幅度跨度/最细幅度分辨率)与按20*log[最大信号/最小信号(i.e.噪声)]
--------- ...

之前不是很清楚噪声整形提高信噪比的原理。看了SQNR的大致计算过程,终于明白了。
数字信号处理这块水太深了。
回复

使用道具 举报

49
 楼主| 发表于 2023-11-10 23:59 | 只看该作者 来自 新加坡
本帖最后由 testguru 于 2023-11-11 00:09 编辑
交响无际 发表于 2023-11-7 18:35
请教一下,对Neumann MT48有点感兴趣,好像好评还挺多的,从技术参数角度,大概可以如何看呢?多谢多谢! ...

我没测过MT48,所以只能从其指标上看,XLR话筒输入的动态范围为136dBA,与这里谈到的UAC-232几乎完全一样。看了下MT48的电路框图,采用的也是双ADC架构,否则难以达到这么大的动态范围。其输出格式似乎只有24位整数,不支持32位整数和32位浮点,这是个弱点,它牺牲了对弱小信号的解析度。我注意到他们只宣传超大动态范围,而几乎没有提及输出位数和格式。


UAC-232为例,按前面实测的,其XLR话筒输入口的最大输入电压为2.35Vp,而高增益ADC的切入和退出的输入电压大约为44.2mV31.8mV,即20log(0.0442/2.35)= -34.5dBFS20log(0.0318/2.35)= -37.4dBFS。在双ADC架构中,以每个ADC24位计算,单个ADC理论上的动态范围为144.5dB,而双ADC合并后的动态范围为144.5+37.4=181.9 dB。这就远超24位整数所能提供的动态范围,但仍可容纳于32位整数所提供的192.7dB的动态范围之内。如果这种双ADC架构将来继续发展为多ADC架构,或者ADC切换的阈值再降低些,那么32位整数也可能变得不够用。如果要将双ADC合并后的结果硬塞进24位整数中,则必须将高增益ADC输出的24位整数数据的最低端的大约37.4dB的信息切掉,这实际上强行降低了对弱信号的分辨率,使其与用于强信号的低增益ADC的分辨率一致。


如果有人说,既然动态范围为134.3dB (或136.4dBA),那么最低端的大约181.9-134.3=47.6dB的信息都在底噪电平之下,切掉也没关系。其实不然,前面第17楼,我已经提及了这个问题:
也许有人会说,这些动态范围仍然低于24位整数的144.5dB的动态范围,更低于32位整数的192.7dB,为什么不将合并后的数据处理为24位整数或32位整数呢?

既然不是采用单个ADC那种直接整数输出方式,而是要做合并处理,那么直接处理成32位浮点更便于后续的DSP处理。窃以为更重要的是,前面测得的动态范围是以底噪电平为基础的,也就是说当处理为整数格式时,底噪电平被认为是1Bit,以便硬塞进整数格式所提供的狭小的动态范围内,而浮点数数据不同,底噪部分仍然保留有丰富的细节,为后续各种DSP处理提供丰富的空间,比如通过DSP算法,轻松地检测出淹没于底噪中的微弱正弦波信号,这在缺乏细节的整数格式下是困难的。

举个例子,1KHZ的正弦波与等幅(有效值RMS相等)的白噪声混合后,人耳可清楚地听出1KHZ正弦波。更极端点,1KHZ的正弦波与比它高30dB的白噪声混合后,人耳也能识别出1KHZ正弦波。就是说淹没于底噪电平下的信号是可提取的,有一定价值的。


回复

使用道具 举报

50
 楼主| 发表于 2023-11-11 00:03 | 只看该作者 来自 新加坡
chaos_xie 发表于 2023-11-10 13:11
20*log(最大幅度跨度/最细幅度分辨率)与按20*log[最大信号/最小信号(i.e.噪声)]
--------- ...

计算动态范围用不到Signal-to-quantization-noise ratio,假定噪声在1BIT以下即可。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | -注册-

本版积分规则

Archiver|手机版|粤icp备09046054号|耳机网-耳机大家坛

粤公网安备 44030602000598号 耳机大家坛、www.erji.net、网站LOGO图形均为注册商标

GMT+8, 2025-8-22 19:26

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表