研究了SRC的器件手册(Ti的SRC4192和ADI的AD1896,两个器件PintoPin兼容),可以发现:SRC芯片的数字输出为通用的MCLK、LRCLK和DATA三线输出。这个输出和AD1955芯片的输入是完全可以配合的。但问题是,我们希望AD1955具备平衡输出的功能。而我们的输入只有MCLK、LRCLK和DATA三个信号。如何将这3个信号变换成AD1955需要的模式,且具备平衡输出的功能呢?

AD1896引脚功能定义

AD1955引脚功能定义
平衡输出,就是需要营造出两个幅度绝对值相等,但相位相差180度的信号。一片这样,我们需要2片AD1955同时工作才能满足需求。
对于数字信号而言,如果希望其相位反转180度,在DATA上增加反相器,就可以实现了。有文章说可能会导致1个最小位的误差,我认为,即便是有误差,也是完全可以忽略的。因为我们的音源只有16bit,而我们的DAC是24bit的,输出2VRMS信号时,这个误差在2个微伏以内,已经和噪底融合了。还是把精力花在如何布局布线和电路的一些细节方面更恰当。

用异或门实现的单端数字音频信号转平衡数字音频信号的电路
这样,经过两个异或门的转换,我们得到了2片AD1955需要的平衡输入的数字信号。
AD1955的应用和配置:谈到Delta-SigmaDAC,就不得不谈起AD1955。作为ADI公司仅存的Hi-DAC,AD1955无疑是全面体现ADI公司芯片设计能力的一款产品。但是,谈到这款DAC,很多DIY发烧友都是又爱又恨。爱是因为她声音确实很好,恨是因为她比较难用,特别是没有设置引脚,而需要通过SPI口进行配置。
仔细研究AD1955的规格书,发现,AD1955其实是可以在没有MCU的条件下很好的工作的。这不是网上有些人说的没有MCU就什么什么发挥不出来等等。能不能发挥出来是要靠事实的,而不是简单的臆想。AD1955默认的工作接口是48KHz采样率,256Fs(12.288MHz)的时钟,I2S的输入格式。在这个条件下,AD1955不需要任何设置,就可以非常好的工作。由于是Delta-Sigma架构,所以不需要片外的额外的倍频。由于AD1955实际上是一个数字时序逻辑电路,这种默认设置当然也可以工作在96KHz,256Fs(22.576MHz)时钟下。同理,其它采样率,只要在256Fs,也都应该可以正常工作。而Ad1955的默认参数,就是一个优化的参数,是不需要额外再优化的。
当然,在ReferenceCD板上,我却不能这样设计。因为我需要AD1955适应各种情况和时钟,并都能正常工作。此时一个MCU就是不可避免的。我选用了ST公司的一个小Flash单片机,对AD1955的SPI口进行操作,配置各种参数。Flash单片机的编程操作通过PCB板边缘的一个JTAG口实现。

AD1955配置单片机电路
未完待续
本文章为老虎180原创,欢迎转载,但禁止不标明出处的修改,否则必然追责到底。感谢大家阅读。