语音芯片为何选择HW-VAD模式唤醒设备-阿里云开发者社区

开发者社区> 平头哥芯片开放社区> 正文

语音芯片为何选择HW-VAD模式唤醒设备

简介: 本文介绍了SW-VAD模式、HW-VAD模式、Standby模式的定义,通过比较三种模式的优缺点,最终得出了应该使用HW-VAD模式作为等待语音唤醒时的低功耗模式这个结论。

HW-VAD的概念

VAD(Voice Activity Detection语音激活检测)是用于检测当前输入信号中是否有语音的技术。VAD一般会综合分析输入信号的能量特征,以及频谱特征等信息判断是否存在语音。

VAD可以通过软件或硬件来实现,使用软件检测时称为SW-VAD,使用硬件检测时称为HW-VAD。

SW-VAD vs HW-VAD

基于SW-VAD 的语音处理结构

image.png

基于SW-VAD的语音处理结构示意图如上图所示,语音经ADC模数转换后,经数据总线传递给处理器(CPU/DSP),语音首先经过软件实现的VAD算法判断是否包含语音信息,当判断存在语音信息后,再将语音信息传递给后续步骤,依次为关键字识别(Keyword Spotting),语音识别(Speech Recognition),以及自然语言处理(Natural Language Processing)。

一般情况下,端侧的处理能力达不到语音识别和自然语言处理的要求,相关算法需要更高算力的系统来实现。

基于HW-VAD 的语音处理结构

image.png

基于HW-VAD的语音处理结构示意图如上图所示。当没有语音信息时,关键字识别(Keyword Spotting)相关的处理器(CPU/DSP)处在低功耗区域内,保持等待唤醒的低功耗状态。当HW-VAD检测到包含语音信息后,HW-VAD发出wakeup的信号唤醒低功耗区域,被唤醒的处理器做进一步的关键字识别(Keyword Spotting)操作;然后再依次完成语音识别,自然语言处理等步骤。

需要说明的是,HW-VAD模式时,低功耗区域是处于时钟被关闭的状态,但这些区域仍带电。因此,HW-VAD模式仅能消除由信号翻转等因素导致的动态功耗,但无法消除由漏电流引起的静态功耗。

另外,为了更高的集成度,有的HW-VAD IP会将ADC做到其内部,对外呈现为模拟接口。

HW-VAD模式较SW-VAD模式的优势

HW-VAD模式相较于SW-VAD模式,优势在于功耗低。SW-VAD模式时,需要执行SW-VAD算法的CPU或DSP保持在运行状;而在HW-VAD模式时,相关的CPU或DSP可以保持在等待唤醒的低功耗状态,而不是运行状态,因此大大降低了监听状态下的功耗。

HW-VAD vs Standby

Standby模式简介

在低功耗设计中,经常会有Standby模式,在该模式下,芯片大部分区域都处于掉电状态,仅保留小部分区域带电。小部分一直带电的区域被称作永远开启区域(AON,Always ON domain),该AON区域保证芯片可以从Standby模式恢复到工作状态。

Standby模式既消除了动态功耗,也消除了静态功耗,是维持芯片能够工作的最低功耗的模式。

HW-VAD模式与Standby模式的选择

从功耗的角度来分析,HW-VAD模式仍会产生静态功耗,比Standby模式的功耗,即HW-VAD模式的功耗比Standby模式高。这样看,似乎选择Standby模式更为合理。

但是,从实际芯片工作的场景来分析,则会产生一个相反的结论,即选择HW-VAD模式。

选择HW-VAD模式的原因是从唤醒时间来考虑的。低功耗区域如果从HW-VAD模式唤醒,仅需要打开时钟使能,唤醒处理器即可,整个过程在微秒(us)级别完成;但如果从Standby模式唤醒,则需要将低功耗区域从掉电状态下唤醒,整个过程需要几十毫秒(ms)级别的时间才能完成。

唤醒时间达到几十毫秒以后,会产生如下问题: 1.增加设备的唤醒时间,影响客户对设备反应速度的感受; 2.唤醒时间内用户说的语音会丢失,处理器的“关键字识别(Keyword Spotting)”的识别率会降低,即降低正确唤醒设备的概率。严重时,客户必须说两次才能唤醒设备,影响客户体验。

综上,虽然Standby模式有更低的功耗,但是Standby模式无法达到客户对于语音设备的感受的要求。最终还是选择采用在HW-VAD模式,不掉电的情况下唤醒设备。

文章来源:芯片开放社区
文章链接:https://occ.t-head.cn/community/post/detail?spm=a2cl5.14300636.0.0.1b87180f3qWo3R&id=618080510081499136

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
平头哥芯片开放社区
使用钉钉扫一扫加入圈子
+ 订阅

芯片开放社区(Open Chip Community 简称OCC),是平头哥芯片基础设施的云端载体,提供开发中心、创芯空间、技术部落等互动版块,汇聚海量应用资源,助力芯片合作伙伴构建软硬融合的芯片生态。面向芯片企业,OCC以应用驱动芯片精准定义、以全栈技术支撑芯片敏捷开发;面向开发者,OCC以芯片生态降低IoT开发门槛、以1520体系加速IoT产品落地。

官方博客
官网链接