将耳机用于手持式设备时,两种差别很大的音频技术之间的冲突出现了。几年后,模拟工程师仍然在完善他们的集成化方案,以便更好地处理通话、音乐播放和响铃……
背景
曾几何时,数字音频还被隔离于Hi-Fi和电话之外。Hi-Fi常指在44.1kHz(原始CD规范)取样的立体声和16bit分辨率音频。另一方面,电话信号是单声道和低分辨率的,一般按照8bit和8kHz进行数字化处理。从表面上看,不同类型的混合信号IC似乎适合每一个应用。Hi-Fi音频CODEC迅速利用了多位sigma-delta技术来改进音频质量,而电话零件依然相当简单,其中低数据率、低成本的传声器是限制其质量改进余地的主要原因。两类CODEC也具有不同的接口。已经出现的Hi-Fi立体声数据格式有很多,目前应用最广泛的是I2S(Inter-IC Sound) 。电话CODEC通常带有一个脉冲编码调制(Pulse Code Modulation,PCM)接口。严格来说,PCM概念包含了今天我们正在使用的大多数数字格式,其中包括I2S;PCM的初衷是将数字编码和诸如调频之类的模拟技术加以区别。然而,在数字电话中,PCM通常指一种特定的,与Hi-Fi立体声不兼容的单音数据格式。
计算机音频的出现也孕育了另一类接口的的出现。由于质量要求与现有消费音频市场类似,就出现了以不同的取样率(特别是8kHz、44.1kHz和48kHz)来播放录制好的音频文件的需求。虽然以软件方式进行取样率转换是可能的,但是代价也非常昂贵。因此,目前已普遍使用的AC 97标准将该项任务交给CODEC处理,通过专门的硬件可以实现非常高的效率。目前,AC 97已经成为计算机音频领域的主导性工业标准。
便携式系统起初时还保持着自己的本来面目:个性CD、迷你唱碟和MP3播放器使用的是I2S DAC,移动电话保留了PCM技术,而具有音频增强功能的PDA一般采用同台式计算机相同的AC 97 CODEC。因此,这简直令人震惊,第一代组合系统通常含有电话和PDA两块电路板,两者背靠背排列在一个机箱内,其PCM通话CODEC由通讯处理器进行控制,Hi-Fi立体声(AC 97或I2S)CODEC则由应用处理器进行控制。然而,CODEC根本就不是为这类应用设计的,几乎很少或者根本就没有为这两个音频子系统之间的互联互通做任何考虑。因此,工程师通常会在模拟信号路径中插入一些分立的固态(solidstate)开关,但是这也引入了噗噗声、咔咔声和谐波失真,并且占用PCB空间。
整合
显然,为上述应用量身定做一个整合方案是很受欢迎的。受系统级芯片(SoC)设计理念的启发,某些厂商已经将立体声DAC或CODEC集成到大规模集成电路中。然而,这类方式并不能实现专用音频芯片所达到的音频质量。将电源管理IC和音频IC组合在一起通常会折损音频质量,因为电源调节器通常会向附近的音频信号路径中引入噪音。
将音频整合到数字IC中同样非常棘手,因为真正的Hi-Fi元器件一般要求采用最适合混合信号应用的0.35μm工艺,而数字逻辑电路已经发展到了0.18μm甚至于以下水平。对於这两种单芯片整合方法来说,不是折损模拟范畴的性能,就是整个芯片的尺寸增大到难以接受的程度(如果整个IC按照较大的几何原理进行设计的话)。
喇叭放大器会产生大量的热量,需要采用适当的散热装置,特别难以整合。很多组合式芯片缺少这种功能,因此不能将其当成真正的“系统芯片”方案对待,它们通常需要一个外部扬声器驱动器IC。另外一个常见的问题是由于希望IC尺寸尽可能小,导致模拟输入或输出数量不足。在方形封装(如QFN四方扁平封装,无引线)中,管脚环绕IC四周排列,可以通过将每边的长度延长1mm来容纳少数额外管脚,导致IC脚距大幅度增加。举例来说,从5×5mm增加到6×6mm需要额外占用11mm2 PCB面积;如果从10×10mm封装开始,额外增加的面积就是21mm2。
专用音频IC避免了这些问题。通过将其它混合信号功能(如触摸屏数字化处理)与通话CODEC和Hi-Fi CODEC集成,依然可以降低芯片管脚总数。这里,通话CODEC集成于电话芯片组中,Hi-Fi CODEC带有另外的模拟输入、输出和内部混频功能可能比较合适。另一方面,带有蓝牙连接专用PCM接口的双CODEC也是非常有益的。
实现音频整合的方法有很多。共享ADC和DAC能减少硬件成本,但是却不能同时播放或录制两个音频流。为每个功能配置专门的转换器可以克服这个问题,而且还能延长电池的使用寿命,因为电话级(telephonygrade)音频模块的功耗可以设计得比Hi-Fi功能的功耗还要低。然而,这类解决方案却增加了矽圆的成本。一个普遍的折衷是采用一些分立DAC,但是却要共享这些ADC。这就允许通话(例如第二个来电的响铃或音乐)的同时播放音频,但是通话过程中应用处理器不会将这些记录下来——这是一个可接受的局限性,因为用户在这样的使用场合下并不愿意查看第二个来电究竟有多大的接听价值。关闭一个通道,并使另一通道以低取样率运行,可以控制DAC的功耗。
计时和接口
虽然在通讯和应用两个领域之间共享内部电路模块是可能的,但是这种情况却不会在接口应用发生。这是因为每个音频数据流均按自己本身的时钟频率,运行于一个独立的时钟领域。只有这种情形存在,组合式智能电话CODEC就同时需要一个PCM接口和一个独立的I2S或AC 97连接。
在固定系统中,音频时钟通常是由石英晶体振荡器产生的。举例来说,AC 97规定符合该规范的CODEC应该具有一个与外部24.576MHz(512×48kHz)石英晶体相连的片上振荡器,而I2S零件则使用多重取样率,最常见的是256。但是,在智能电话设计中,在额外功耗、PCB空间、和时钟石英晶体成本的驱使下,设计师只好从另外一个已经存在于PCB上的时钟来派生Hi-Fi时钟。虽然复杂的奇数频率比(odd frequency ratios)需要由锁相环(PLL)实现,该方案依然偏向于采用外部石英晶体,因为低功耗、低噪音PLL能够以较低的成本集成到混合信号IC中。该方法也适合其它子系统可能需要的一些时钟信号,例如视频增强型电话应用中MPEG解码器的标准27MHz时钟。在I2S CODEC中,不同取样率需要不同的时钟频率,只要简单地将字时钟LRCLK(其频率为取样率)乘以256或任何其它固定数字,PLL就能够在每种情况下提供正确的时钟。因此,元器件厂商一般倾向于在他们的智能电话CODEC中集成一个或两个PLL。
话筒
在智能电话设计中,很多最棘手的问题都与话筒有关。通常我们考虑的话筒至少有两种:内建(内部)话筒和外部话筒,后者是耳机的一部份。为了消除噪音或实现立体声录制,可能需要一些辅助性内部话筒,而汽车免提设备可能要与另一外部话筒连接。除通话外,这些话筒也可在应用处理器的控制下录制通话记录,或者甚至于视频剪辑的声音轨道。
为了完全消除片外切换(off-chip switching),智能电话CODEC需要提供足够的话筒输入,最好具有可独立调整的增益,以及灵活的内部路由路径,以覆盖所有使用场合。除录音功能外,还应该提供一个“侧音(side tone)”功能。这就为模拟输出添加了一个衰减版本的模拟输出,手机呼叫者就能够听到他们自己的声音。当插入或拔出耳机时,插入检测能够使内部话筒和外部话筒之间无缝切换。
噪音是另一通常关注的问题。线路中的高频和数字零件产生干扰信号,这些信号被负载话筒信号的PCB布线捕获后,将被片上前置放大器放大。小心进行电路板布线在避免这个问题时起到了很大作用,采用差分话筒输入则是另一有效方法。然而,输入具有各自独特的布线要求:这两条PCB线路一定要并排分布,并且彼此相邻,这样一来,任何出现于某一线路的噪音也必将出现在另一线路中,从而使其完全从话筒前置放大器中消失。
消除噪声属于分离问题,需要两个话筒:一个负责拾起带有背景噪声的扬声器话音,另一个只负责背景噪声。在模拟领域,简单的减法操作几乎无法达到满意的结果,因为两个噪声信号的在相位和振幅方面有所不同,具体取决于噪声进来的方向。这里也需要数字信号处理,但是通过对这两个话筒信号进行数字化处理,CODEC必须使任务更容易完成。
另外一类出现在户外应用的噪音是风噪音。该噪音主要局限于200Hz以下的频率,可以通过高通滤波器大幅度减小。最简单的解决方案是在话筒的输入级使用一个较小容值的耦合电容器。然而,这也阻止了话筒在户内音乐录制方面的应用——这有可能使低音也消失。对於双用话筒,滤波应因此成为一种备选项。值得一提的是,大多数音频ADC已经带有一个内建的高通滤波器,用以去除数字信号中的直流偏压。集成电路厂商已经为移动电话应用定制了这个特征:少数Hz用于Hi-Fi,100-200Hz用于具有风力噪音滤除增强功能的通话。当然,模拟滤波和数字滤波也可以组合在一起,以创建更高阶的滤波器特性。
耳机和耳塞
应对移动电话耳机也需要特定的模拟电路。第一个明显的任务是当耳机插入时,将来自听筒或其它扬声器的输出信号重新路由到耳机。虽然整合有插座的机械开关也能做到这一点,但是他们的体积很庞大并且成本很高。
而且,用于扬声器的信号电平可能并不适合耳机。用于听筒、扬声器的独立模拟输出,以及带有独立音量控制功能的耳塞可以解决这个问题,而且还容许使用一个比较简单的插座。虽然依然需要一个机械开关,但是一端连接于接地引脚的单孔、单掷机械开关已经足够,所以插座只需要一个外部引脚。然而,在多媒体电话中,开关的激活没有必要代表耳机的插入;对一个标准规格的插座来说,这可能正好相当于一个没有话筒的耳机。因此,话筒的存在与否应该独立检测。
对于驻极体话筒,这可以通过监测话筒的偏置电流来实现:如果没有电流流动,就没有话筒插入。相反,一个不寻常的大偏置电流也很有意义:为了避免标准耳机/耳塞插座额外增加一个接点,用以应答来自耳塞(也称作hookswitch)呼叫的按钮通常会短接(shorts out)话筒。因此,偏置电流增加,就表明hookswitch被压下。向片上话筒偏压电路中添加一个电流传感器,智能电话CODEC就能检测到这两种情况,并针对每一种情况自动采取正确的行动。
喇叭
最近,移动电话中喇叭的数量和输出功率已经增加。然而1990年代单个听筒已是基本配置,现代clamshell设计的特色是具有内侧和外侧扬声器,可以在手机打开或关闭的情况下分别播放各自的音响。立体声响铃需要两个外部扬声器,而流行的免提功能除了小型听筒外,可能还需要另外一个“大型”(参照移动电话标准)扬声器。对于话筒,为每个扬声器提供专门的模拟输出比片外切换具有很多优势。由于喇叭放大器能吸收大电源电流,在非激励状态下切断它们的电源是至关重要的。智能电话CODEC提供了越来越多的微电源(granular power)管理功能,允许启用或关闭每个输出,避免任何不必要的电池消耗。
另外,现有电源管理方案中的电压调节器通常无法提供充足的电流来驱动以最大音量工作的扬声器。针对这个问题,CODEC厂商设计了一些片上喇叭放大器,以便直接通过电池(锂离子电池的典型电压在4.2V左右)运行,而不是调整后的电源电压。虽然这样做通常并不节能(喇叭放大器要额外耗能,电压调节器也是这样),但是却不需要另外的电压调节器。
响铃
同过去几年相比,响铃的复杂度一直在稳步增加,已经从当初单调的“哔哔”序列音调发展成多音曲子,甚至于WAV和MP3段子,从字面上讲任何类型的声音都能制作成立体声。MIDI已经变成多音响铃接口标准,许多厂商已经为这个新应用开发出低成本的MIDI芯片。将此类IC整合到音频子系统,要求CODEC具有一个额外的模拟输入。
这些额外的输入对连接FM收音机IC来说也是有用的,它为多媒体设备添加了另一项功能。MIDI铃声的产生电路当然应该集成于CODEC;然而,总的趋势是将随意响玲作为声音文件保存下来,再通过现有的Hi-Fi DAC进行播放,这就限制了该想法对IC厂商的吸引力,因为他们的IP产品还没有包含MIDI。
未来发展
那么,智能电话音频的未来究竟如何?目前,一些值得关注的数字音频趋势包括:从立体声向多声道环绕声格式转移,最近推出的“Azalia高清晰度音频”标准很可能被大多数PC和笔记本电脑所采用。
虽然不久以前,那些曾经嘲笑将立体声扬声器置于移动电话想法的人,已经被今天的市场现实证实是错误的;但是在可以遇见的未来,手持式装置不可能发展成多声道。同样,目前也不能证明Azalia新特征的成本和功耗比AC 97高。I2S与AC 97之间的争议正在继续,某些设计者偏向于较不复杂的I2S接口,而其他一些人较喜好AC 97较少的引脚数及其易于处理的各种取样率。由于很多用于移动电话的低功耗处理器目前已经能够提供可以满足上述两个阵营嗜好的双标准音频接口,这两个标准可能会继续共存下去。相反,设计一个支持两个标准的CODEC是相当困难的,因为以AC 97为代表的VRA(可变数据率音频)需要一个与I2S完全不同的计时方案,以及显著数量的额外数字电路。
使用一个音频时钟将应用处理器与通讯处理器成功整合到单个数字器件的经验,将使通话接口与Hi-Fi音频接口的合并成为可能,并可能最终促使业界重新回到低复杂度的CODEC。但就目前来说,IC厂商正在专注於将其它现有的混合信号元件集成到他们的音频CODEC内,其中包括触摸屏功能、电压调节器和电源管理。
到现在为止,整合成像方案的进程(ready availability)阻止了音频与照相机或视频功能的整合,但是这绝不是一成不变的(a law set in stone)。与此同时,诸如3D增强、图形补偿和动态压缩之类的音频特性正开始蔓延,声音质量、功率消耗和包装尺寸也日趋完善。