音频DAC
传统的D/A转换方法有加权电阻器、R-2R梯形网络和零点交叉失真等。正如A/D中的情况那样,Σ-Δ设计统治了D/A转换的领域。这些转换器可以接受16位44.1kHz的信号,然后使用插值滤波器把它转换为2.8224MHz的1位样点流。然后用1位的DAC把这些超级采样的样点流转换成模拟信号。
一个典型的嵌入式数字音频系统可以使用一个Σ-Δ音频ADC和一个Σ-Δ DAC,因此,在PCM信号和过采样流之间的转换要进行两次。由于这个原因,Sony与Philips (NXP半导体)已经在它们的Super Audio CD(SACD)格式中引入了一种与PCM不同的格式,被称为直接流数字(DSD)。这种格式用1位的高频(2.8224MHz) Σ-Δ流来存储数据,因而绕过了PCM转换。它的缺点是,DSD流不像PCM那样直观,而且需要一套独立的数字音频算法。
连接至音频转换器:一个ADC的例子
好了,我们有了足够的背景知识。现在让我们看一下实际的转换器连接的例子。对于低成本音频ADC的很好的选择是ADI公司的AD1871,它使用Σ-Δ技术以96kHz的速率进行24位的转换。图3a示出了AD1871的功能框图。这个转换器有左(VINLx)和右(VINRx)两个输入声道,这其实就是能够处理立体声数据的另外一种说法。数字化的音频数据是通过数据端口串行流出的,通常流到信号处理器的一个相应的串行端口(如Blackfin处理器上的SPORT接口)。另外还有一个SPI(串行外围接口)端口,利用该端口,主处理器可对AD1871通过软件命令进行配置。这些命令包括设置采样率、字长、声道增益和静音等的方法,还有其他一些参数的设定。
图3 (a)AD1871音频ADC的功能框图
(b) 一个ADSP-BF533媒体处理器与AD1871的无缝连接
正如图3b中的框图所指出的,AD1871 ADC与 Blackfin处理器可无缝连接。电路的模拟部分被简化了,因为在这个讨论中只有数字信号才是重要的。AD1871的过采样率由外部晶振提供。图中的处理器有2个串行端口(SPORT)和一个SPI端口,用于连接AD1871。被配置成I2S模式的SPORT是与AD1871进行数据连接的端口,而 SPI端口用作控制连接。
I2S协议是由Philips(NXP半导体)为音频信号的数字传输而开发的一个标准。该标准使音频设备制造商所生产的器件可以相互兼容。
确切地说,I2S是一种用于传输立体声数据的3线串行接口。正如图4a中所示,它规定了位时钟(中)、数据线(下)和左右同步线(上),而左右同步线用来选择当前正在传送的数据帧是左声道的还是右声道的。
从本质上讲,I2S是一个带有两个活动声道的时分复用(TDM)串行流。TDM是一种通过一条物理链路传输超过一个声道(比如左声道与右声道)的方法。
在AD1871电路结构中,当对SPORT时钟(RSCLK)和帧同步(RFS)线进行驱动时,ADC可以降低它从外部晶振接收到的12.288 MHz采样率。该配置保证了采样和数据传输是同步的。
SPI接口,如图4b所示,是Motorola为了使主处理器可以与各种数字器件相连而设计的。这个在SPI主设备与SPI从设备之间的接口由一条时钟线(SCK)、两条数据线(MOSI和MISO)和一条从设备选择(SPISEL)线组成。其中一条数据线由主设备(MOSI)驱动,而另一条由从设备(MISO)驱动。在图3b的例子中,处理器的SPI端口是无缝地与AD1871的SPI模块相连接的。
图4 (a)数据信号由AD1871使用I2S协议进行传送
(b) SPI 3线接口用于控制AD1871
带有独立SPI控制端口的音频编解码器允许主处理器在运行中修改ADC的设置。除了静音和增益控制外,其中一个确实很有用的ADC(如AD1871)设置是对节电模式的设置能力。对于电池供电的应用来说,这通常是一个本质功能。
DAC与编解码器
将音频DAC与主处理器相连接与我们才讨论过的与ADC连接的过程完全一样。在一个同时使用ADC和DAC的系统中,同一个支持双向传输的串行端口可以同时连接这两者。