电话耳机的消费市场一向以创新产品和快节奏著称。几乎每星期,都有公司推出新产品,且是全新功能推向市场。在这种环境下,耳机的市场生命周期越来越短,事实上,部分产品甚至只有半年左右的销售期,这给产品研发时间带来很大的压力。若要在市场竞争中抢得先机,必须提供竞争所没有的耳机功能。Plantronics公司已经开发出一种新的设计平台,帮助客户加速创新、开发和进行验证。
研发上的挑战
一个消费性电话耳机由几个交互式零件组成,每一项都拥有很大的差异。 例如,要能有效清除噪音取决于麦克风、耳机、电子信号处理和人机互动。因为要依靠所谓有着”金耳朵”(golden ears)的听众来评估音频质量,所以用户相当程度上也是耳机研发过程的一部分。
为了提供更好的音频质量和更多的功能,添加更多的信号处理,这就需要更强大的嵌入式硬件和软件,因此Plantronics将编译-构建-下载延迟(compile-build-download delays)导入在研发过程中。
试想一个测试情景,某个金耳朵监测到一个音频问题,也许是使用适应性增益(adaptive gain),开发人员使用计算机上的IDE来修改适应性增益算法、重新编译并在软件中建立算法;接着将所建立好的软件,下载并置入嵌入式硬件内,然后再重新来一次测试流程。每一个所侦测到的错误(bug)都会导致另一个成本增加,这使得编译-构建-下载的循环流程昂贵且耗时。
分析这个过程,显然更有效的方式是去”调整(tune)”信号处理算法,即在通话过程中机动调整算法的参数,甚至完全改变所使用算法,这能够大幅降低修正错误的时间及成本,且提高产品性能。在这个适应性增益的例子中,如果能在测试进行中随时修改增益算法,便能更加迅速地实现和测试我们的解决方法。
不幸的是,标准的嵌入式开发环境无法提供或仅能有限度的提供这种实时(real-time)、动态(on-the-fly)的修改。
虽然无法消除这种构建-编译-下载的研发周期,但若能使用正确的研发平台,便可以在嵌入式开发开始之前,迅速的建立及测试算法和系统,这能在开始实现到嵌入式目标之前,提前修正系统中的错误。不过,要做到这一点,需要一个可以纳入人类听众、音频硬件和信号处理等不同系统的共同平台,还需要一个在操作时可以改变及修正的研发平台,当然,同时它还兼具灵活性及成本效益。
灵活且可负担的研发平台
在PC上可以进行实时(real-time)音频处理,其实已经有一段时间了,然而,这需要定制化的软件开发或专用的音频处理软件才行,不过,定制化软件虽提供了灵活性,却非常昂贵;相比之下,专用音频处理软件便宜许多,但相当不灵活。
由于PC处理能力的改进,通过可灵活使用与随时可用的仿真软件,PC最近也可以用来建立实时的音频处理系统模型。而通过将仿真软件与音频硬件链接,可以建立一个开发测试平台,既灵活又实惠。
Plantronics的平台包括三个要素:一台标准PC、仿真软件,和外部音频硬件(见图1)
(图片)
图 1. Plantronics研发及验证的开发平台 个人计算机 包括一个音频串流输入/输出(ASIO)声卡。 ASIO是要保证采样精确同步(sample-accurate synchronization)和固定处理发送和接收信号之间的延迟。声卡主要处理音频的输入和输出,且扮演仿真软件和数字音频数据数据的中介角色。
仿真软件 Plantronics采用Mathworks Simulink软件。选择Simulink,是因为它为该研发项目提供了几种关键优势。首先,它可以与许多外部硬件无缝连接,包括大部份的ASIO声卡,这对于应用至关重要。其次,它是一个可可视化的设计环境,可使工程师能够轻松地与他们建立的模型进行互动并交付执行。最后,它可以让工程师在运行仿真时随时改变模型的参数。
音频硬件 链接仿真软件、用户和电话网络。有线电话系统运行时,电压比音频电子高得多,所以需利用电压隔离器将其余的系统隔开。从电话网络或从麦克风来的模拟信号,通过MOTU FireWire 828mk2音讯I / O盒(使用ASIO软件接口)转换为数字形式(使用脉冲编码调节器或PCM);然后数字音频数据通过FireWire连接汇入计算机。
这个软件开发环境所唯一需要定制化的部份是,需要一个Simulink模块(Block),做为读取和写入数据数据连接ASIO接口。
该平台在Simulink内执行大多数的实时信号处理算法,为了提高效率,通常采用使用Simulink快速加速器模式(Rapid Accelerator mode),从而加快了仿真速度。当进行仿真时, 可以与Simulink模型互动、调整参数的变化,例如,可以在一个实际的通话中更改增益算法,在测试过程中,甚至可以切换到一个完全不同的音频处理算法,例如,这种功能能够比较多种不同的回声消除算法(echo cancellation algorithms)。
在测试完成之后,若对信号处理系统运行正常感到满意,就将这个系统实现到嵌入式目标系统中。使用和以前相同的编译-构建-下载的周期,不过,这一次,在开始嵌入式开发之前,就已经充份地仿真整个系统,并找出几乎所有的错误。使用这种新研发流程,已经大大降低了开发和验证时间。
发展和验证的平台
这个平台不仅可以进行音频算法开发,也可以进行算法和系统的验证。该平台可用于有线耳机,以及蓝牙兼容的耳机(通过Plantronics公司音频I/O专用的蓝牙USB加密器)。
Plantronics将在MATLAB或C开发的个别算法,组合到Simulink系统中。利用Simulink产生测试信号(例如,正弦喳噪音),通过Simulink的图形功能,可以快速地检查信号的属性,如能量谱密度(energy spectral density)等。
对音频研发来说,分析信号的音频性能是相当标准程序开发的工作,但该平台能够进一步的对正在通话中的电话测试算法。在算法和系统的验证过程中, 将硬件与仿真模型链接,随着模型的实时运行,使用该平台进行现场电话呼叫,例如,一位金耳朵听众参加电话会议,随之调整各种参数来改善电话中的音频质量。
回声消除算法为该流程提供了一个很好的例子,如果没有经过信号处理,用户会听到因为麦克风和耳机的反馈而产生的回声和啸叫声。消除回声??不是一件简单的事,有两个音频会输入到系统中:一是电话网络,另一是从麦克风输入的音频。回声消除必须同时考虑音频信号来源,又要能适度地消除信号,这样用户才会只听到电话网络的音频。有好几种回音消除技术可以使用,而每种都有自己的参数可供微调。在Plantronics公司,Simulink实现了两个不同的回声消除算法(参见图2),以及进行模拟,看看哪个效果最好。
(图片)
图 2. 在Simulink中的一个回声消除系统模型 为了测试回声消除算法,可以在模型中实现它们,然后将研发平台连接到电话网络。在正在通话的电话会议上,通过修改算法设定以改善音频质量;在实时操作的各种情境下,评估通话系统的质量,包括通话音量范围。在同一通电话中,可以从一个回声消除算法切换到另一个,比较在相同条件下的清晰度。这很容易比较两种算法的清晰度,因为可以在它们之间切换,而无需重新编译,也不需停止模拟或重打一通电话。
除了消除回声,耳机也需要线路消除算法(line cancellation algorithms)来处理因为电话网络所引起的回声,以及需要动态的范围控制,如动态改变音量,提高低音量的声音,并限制高音量的声音。而其他的各种算法也都需要以符合法规,例如,欧盟要求耳机具有抗惊吓属性,即限制耳机的音量不容许它们迅速提高音量。Plantronics正利用这个研发平台,来快速开发和验证所有这些算法或更多算法。此外,还可以利用这个平台来进行更明智的的材料清单决策。例如,扬声器和麦克风均衡地使用较便宜的传感器,看是否可提供更好的音频质量,新平台能够评估这些选择。
本文结论
在市场的迫切驱动下,Plantronics公司开发了一种创新的研发和验证平台,以缩短设计、开发和测试的周期。该平台本身具有成本效益,因为它以标准PC、Simulink仿真软件,以及标准的音频设备为基础。更重要的是,能够检查和修正正在进行通话的系统,该平台提供了设计层级的洞察力,提高了以前所缺乏的对于系统属性的认识,这使得大多数的设计问题都能加以模拟,从而简化嵌入式目标开发工作。
在一般情况下,研发速度的增加是来自于牺牲产品质量或者是增加预算开支。该平台则能够兼顾三个面向:加速研发速度,不断降低成本,并开发出更好耳机。
11/16/2011
|