经过生产验证的,复杂的半导体IP核

半导体电路设计IP及配套交付件


T2M Audio Audio Qualcomm QCS400 - Audio Weaver Reference Design

Audio Qualcomm QCS400 - Audio Weaver Reference Design

概述和功能介绍

随着语音助手在家庭音频应用中的越来越多的使用,今天的消费者对于智能化、无缝直连的语音体验、智能音箱、播放器等家庭音频产品的音质要求越来越高。另一方面,芯片厂商希望能缩短开发周期,快速交付产品的周期,以满足日益增长的消费者需求。然而,大多数产品开发团队缺乏必要的语音专业知识或技术资源,无法满足开发语音过程中所面临的重大挑战。语音助手将提供在开发和集成硬件组件中的无缝直连体验(如麦克风阵列、扬声器、SoC或数字信号处理器)以及在目标硬件上实现复杂的音频算法方面的专业知识。这也是原始设备制造商希望能从行业标准设计开始中得到协助,以快速完成高性能语音产品的布局.

为了应对这些特别的音频开发需求,并尽可能降低风险,DSP Concepts开发了一种由QCS400智能音频SoC驱动的性能更加灵活的高性能设计。QCS400系列音频SoC设计是专为满足客户日益增长的对智能音箱、智能家居助理、音箱和音频视频接收器(AVR)等需求。这些SoC可以进一步支持语音UI的智能家居生态系统,并满足将音频、连接系统和显示功能结合在一起的终端产品的多功能集合技术需求。QCS400 SoC满足了更丰富的功能集合的需求,可以在一系列设计层次上帮助客户显著降低复杂性、功能的丰富性、提供云交付类型的社会家庭音频产品的总体物料清单(BOM)。在这里,我们将讨论音频开发人员需要的设计组件和初步决策,以便在联合设计的基础上构建强大的语音支持设备.

Qualcomm-QCS400-provider-in-china

为了正面应对这些独特的音频开发挑战,并尽可能降低风险,DSP Concepts开发了一种由QCS400智能音频SoC驱动的灵活、高性能参考设计。QCS400系列音频SoC专为帮助客户满足日益增长的智能音箱、智能家居助理、音箱和音频视频接收器(AVR)需求而设计。这些SoC有助于进一步支持支持语音UI的智能家居生态系统,并满足将音频、连接和显示功能结合在一起的终端产品的聚合技术需求。QCS400 SoC以前所未有的集成水平提供了丰富的功能集,可以帮助在一系列层次上显著降低复杂、功能丰富、语音支持的家庭音频产品的总体物料清单(BOM)。在这里,我们将讨论音频开发人员必须做出的设计组件和初步决策,以便基于联合参考设计构建强大的语音支持设备.

我们拥有使用智能助理的经验,也体验过反复语音查询的失败,尤其是在嘈杂的环境条件下。无论何种因素或成本的高低,消费者都希望在使用语音产品时能获得更好的体验。达到这样的体验,就需要产品在任何位置,无论何种环境中的任何外部噪音都能无缝直接运行。为了实现这一目标,读取声音的设备中需要有许多不同的算法,所有这些算法都必须进行调整,以适应产品的不同设计和应用。下面的图1显示了一个典型的始终监听系统中涉及的模块.

麦克风阵列:语音激活系统需要一个或多个麦克风串联在一起工作,便于捕捉到音频前端(AFE)算法的信号。选择麦克风阵列配置的主意因素是尺寸、成本、性能和可靠性,而具体的麦克风接受信号的质量取决于麦克风的数量、排列和位置。麦克风阵列的多麦克组合提高了SNR的效用,可以用于剩余音频信号链中的信号处理.

 Qualcomm-Audio-Weaver-reference-design 

音频前端(AFE):AFE处理多声道麦克风阵列信号,以消除任何环境干扰噪声或设备自身的播放信号。将生成的无干扰信号发送到检测唤醒词的引擎,以可靠地识别设备上预先编程的唤醒词,如Alexa、OK Google等。AFE可以涉及多种信号处理算法(如下所述)。这些信号处理算法能有效地消除不需要的干扰信号,同时保留用户需要保留的有效语音.

到达方向(DoA)检测:DoA检测确定用户所处的方位,使麦克风阵列可以将波束指向用户的声音方向.

波束形成器:波束形成器接受来自确定的传达方向的声音,同时拒绝来自其他方向的声音。波束形成器的性能在很大程度上取决于麦克风阵列的排列形状、波束宽度、背景噪声水平和麦克风阵列中SNR的效用.

声学回声消除器(AEC):AEC拒绝接收设备扬声器上的播放信号,便于更好地接收用户的语音命令。回声消除越多,语音激活性能就越好。算法可以提高检测的准确度,特别对低频信号和响亮的回放信号电平这两种场景非常有效,平均可以消除30-40dB的背景噪声。一般来说,如果在音乐播放过程中降低低频音质,检测率效果会明显提升,特别是在低成本、小尺寸设备中使用中.

自适应干扰抵消器(AIC):AIC算法对于传统波束形成器难以消除的干扰声音也有效用,例如客厅播放的电视或厨房中的微波噪声。与其他适应性消除技术不同,DSP Concepts的AIC算法不需要参考信号来消除干扰噪声。它可以使用波束形成、自适应信号处理和机器识别的组合来消除高达30dB的干扰噪声,同时还保留所需要的语音信号。AIC对于智能音箱是完美的搭配,智能音箱可以轻松地在有着干扰噪声和中等或高等混音条件的客厅环境中被使用

唤醒词检测:将AFE产生的干净声音与唤醒词发音(如“Alexa”)进行比较,以检测唤醒词的存在。唤醒词检测算法通常是机器学习模式,其大小也会影响检测性能。例如,大小为1MB的大模型因有大量数据进行训练,相比大小为64KB的小模型准确度高。插电型的智能扬声器的处理唤醒词功能只在设备本身上进行处理,而命令处理在云端服务器进行卸载.

上述所有高级处理也可以推广并移植到非插电式的语音助手产品中,前提是需要进一步优化设备电池的使用寿命。为了提高电池的使用寿命,便携式设备通常在使用过程中,包括激活机制,都仅仅在检测到用户命令时才唤醒设备。因为通常阵列中的一个麦克风始终处于工作状态,并且始终监听语音活动,使得一有输入信号超过预设能量阈值时就能有效唤醒处理器.

话筒的选择

对于初次尝试的开发人员来说,麦克风选择可能是语音产品设计中具有挑战性的工作。在为智能音箱和音箱产品选择麦克风阵列时,开发人员应始终遵循以下设计准则:

  • 对于语音激活设备,65 dB的信噪比就足够了
  • 建议在200 Hz至6 kHz范围内匹配1 dB增益。然而,在4kHz至7kHz范围内+/-3dB是可接受的
  • 麦克风声学过载点(AOP)应足够高,以便声音播放水平不会使麦克风饱和。AOP被定义为麦克风达到10%失真水平的声压级。智能音箱建议使用120 dB AOP,音箱建议使用130 dB AOP
  • 建议使用40至70mm的麦克风间距
  • 麦克风应放置在产品顶部的水平表面上
  • 用户应能看到麦克风
  • 最佳麦克风阵列排列形状

最佳麦克风阵列排列形状

特定产品所需的麦克风阵列排列状态取决于设备使用的位置和声音来源的方位。例如,需要360度操作场地的智能扬声器需要圆形阵列。大的麦克风的间距设置可以提高设备的接收远距离声音传输的性能,因为可以增加信号接收之间的时间差.

我们的测试表明,在直径为70mm的圆圈上通常是3到6个麦克风的排列方式为最佳选择。对于低成本、小尺寸的设备,我们建议间距在40到70毫米之间,但尺寸受限的产品也可以降低到20毫米。在DSP Concepts最先进的测试实验室中,我们测试了多种麦克风阵列排列的配置,这些配置会影响家庭音频产品的语音UI性能。我们的测试结果表明.

处理器选择

SoC或数字信号处理器(DSP)的选择对于语音UI系统的设计也是至关重要的。所选处理器架构应具有足够的CPU处理功能和足够大的内存空间,以适应音频算法以及唤醒词模型。高通公司QCS400系列芯片组为家庭音频产品提供了一个理想的解决方案,支持多核架构,以及灵活的处理器电源架构,可支持插电式和电池供电的不同产品.

DSP Concepts已经优化了TalkTo™ 在2、4和6位配置的算法套件,该套件可以针对QCS400参考解决方案上Cortex-A53内核的CPU资源和内存需求进行优化的。这些设计支持多种形式,从低成本设备到高性能产品设计,算法经过调整以满足Amazon Alexa语音服务(AVS)2.1高级要求,从而提供开箱即用的高级功能,并降低OEM的认证成本。此外,高通技术有限公司(Qualcomm Technologies,Inc.)在低功耗、高性能芯片组领域的领先地位,以及蓝牙等集成连接解决方案,提供了一个全面的平台,同时有助于大幅度减少各种OEM层级的智能扬声器和音箱设计的开发周期和复杂性.

计算

在不久的将来,语音助手在家庭音频产品中的应用将不断增加。智能音箱和播放器是语音助手的理想之家。标准化设计(如QCS400设计)的语音助手功能提供给客户最便捷的使用方式,可显著加快产品开发周期,并有助于降低音频产品线商业化的成本和时间.

功能描述

用例的主要特征

  • 人工智能/机器学习-用于物体检测和识别,以及摄像头中的过滤器和人脸检测
  • 汽车-车载摄像头处理,提供不同的车内体验,如360度全景和高速公路自动驾驶
  • 相机-8K视频录制质量,采用移动处理器和先进功能,如视频bokeh
  • 计算机视觉、图像和视频–将计算密集型任务转移到专用硬件
  • 深度学习-深度神经网络(DNN)的高效卷积
  • 物联网-安全摄像头、传感器和无人机
  • 机器人-iRobot和无人机,严重依赖计算机视觉、AI和低功耗
  • 安全-面部解锁和指纹解锁
  • 智能手机应用程序-用于卸载图片/视频处理和实时语言翻译等任务
  • 语音助手-如果在CPU上运行,则会耗尽电池电量的感觉始终处于开启状态