用于基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)和方法
【專利摘要】一種用于基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)包括音頻緩沖區(qū)、包絡(luò)緩沖區(qū)和處理器。所述音頻緩沖區(qū)被配置以存儲來自傳感器的第一數(shù)據(jù)。所述第一數(shù)據(jù)根據(jù)第一采樣率生成。所述包絡(luò)緩沖區(qū)被配置以存儲第二數(shù)據(jù),所述第二數(shù)據(jù)根據(jù)第二采樣率從所述第一數(shù)據(jù)導(dǎo)出,所述第二采樣率小于所述第一采樣率。所述處理器被配置以從空閑狀態(tài)周期性地喚醒并從所述包絡(luò)緩沖區(qū)讀取所述第二數(shù)據(jù)。如果所述第二數(shù)據(jù)指示活動,那么所述處理器被配置以從所述音頻緩沖區(qū)讀取所述第一數(shù)據(jù)。如果所述第二數(shù)據(jù)不指示活動,那么所述處理器被配置以返回到所述空閑狀態(tài)。
【專利說明】用于基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本公開一般涉及電子設(shè)備領(lǐng)域,且更具體涉及一種用于基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)和方法。
【背景技術(shù)】
[0002]語音命令設(shè)備(V⑶)是用人聲控制的設(shè)備。通過摒棄按鈕、旋鈕和開關(guān),消費(fèi)者可在他們的手不得空或進(jìn)行其它任務(wù)時容易地操作電器。例如,消費(fèi)者可用語音激活命令操作他們的電視或手機(jī)。VCD可與說話者無關(guān)、響應(yīng)于多種聲音,而不受口音或方言的影響。VCD可用于各種應(yīng)用,包括計算機(jī)操作系統(tǒng)、用于計算機(jī)、手機(jī)、汽車、呼叫中心和互聯(lián)網(wǎng)搜索引擎的商業(yè)軟件。
【發(fā)明內(nèi)容】
[0003]一種用于基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)包括音頻緩沖區(qū)、包絡(luò)緩沖區(qū)和處理器。音頻緩沖區(qū)被配置以存儲來自傳感器的第一數(shù)據(jù)。第一數(shù)據(jù)根據(jù)第一采樣率生成。包絡(luò)緩沖區(qū)被配置以存儲第二數(shù)據(jù),所述第二數(shù)據(jù)根據(jù)第二采樣率從第一數(shù)據(jù)導(dǎo)出,所述第二采樣率小于第一采樣率。處理器被配置以從空閑狀態(tài)周期性地喚醒并從包絡(luò)緩沖區(qū)讀取第二數(shù)據(jù)。如果第二數(shù)據(jù)指示活動,那么處理器被配置以從音頻緩沖區(qū)讀取第一數(shù)據(jù)。如果第二數(shù)據(jù)不指示活動,那么處理器被配置以返回到空閑狀態(tài)。包絡(luò)緩沖區(qū)可能比音頻緩沖區(qū)短。
[0004]在具體實(shí)施方案中,系統(tǒng)還包括模擬數(shù)字轉(zhuǎn)換器,其被配置以根據(jù)第一采樣率從模擬信號生成數(shù)字格式的第一數(shù)據(jù)。在一些實(shí)施方案中,系統(tǒng)還包括促進(jìn)讀取音頻緩沖區(qū)和包絡(luò)緩沖區(qū)的直接存儲器存取(DMA)控制器。在具體實(shí)施方案中,也可包括計時器,其被配置以周期性地發(fā)送中斷到處理器。在特定實(shí)施方案中,系統(tǒng)還包括被配置以檢測第一數(shù)據(jù)的包絡(luò)的包絡(luò)檢測器,和被配置以降采樣包絡(luò)以根據(jù)第二采樣率生成第二數(shù)據(jù)的抽取器。系統(tǒng)還可包括帶通濾波器,其被配置以過濾第一數(shù)據(jù)并把過濾的數(shù)據(jù)饋送到包絡(luò)檢測器。
[0005]在一些實(shí)施方案中,第一數(shù)據(jù)可從音頻信號生成。在此類實(shí)施方案中,系統(tǒng)被配置以執(zhí)行以下各項(xiàng)的操作:過濾掉第一數(shù)據(jù)中在正常人聲范圍之外的頻率以生成第一數(shù)據(jù)的子集;檢測子集的包絡(luò);確定包絡(luò)和負(fù)峰值之間的差;和如果差超過預(yù)定閾值就檢測活動。另外的操作可包括:歸一化子集的包絡(luò);比較歸一化的包絡(luò)與第二負(fù)峰值;如果在預(yù)定數(shù)量的時鐘周期期間歸一化的包絡(luò)不小于第二負(fù)峰值,就把第二負(fù)峰值遞增固定量以獲得負(fù)峰值;和如果歸一化的包絡(luò)小于第二負(fù)峰值,就把負(fù)峰值設(shè)置為第二負(fù)峰值。
【專利附圖】
【附圖說明】
[0006]為了提供對本公開及其特征和優(yōu)勢的更完整的理解,可參考結(jié)合附圖進(jìn)行的以下描述,其中相同的參考數(shù)字表示相同的部件,在附圖中:[0007]圖1是根據(jù)一個實(shí)施方案用于基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)的簡化電路圖;
[0008]圖2是根據(jù)一個實(shí)施方案的系統(tǒng)的示范性細(xì)節(jié)的簡化框圖;
[0009]圖3是示出可與系統(tǒng)的示范性實(shí)施方案相關(guān)的示范性操作的簡化流程圖;
[0010]圖4是示出可與系統(tǒng)的示范性實(shí)施方案相關(guān)的其它示范性操作的簡化流程圖;和
[0011]圖5是示出可與系統(tǒng)的示范性實(shí)施方案相關(guān)的另外的示范性操作的簡化流程圖。
【具體實(shí)施方式】
[0012]本公開提供一種系統(tǒng),其中傳感器(諸如麥克風(fēng))可基于傳感器的輸出中一個或多個檢測到的變化來喚醒另一系統(tǒng)(諸如微處理器)。通常,VCD (諸如手機(jī))提供對外部聲場的不間斷監(jiān)控,使得VCD可根據(jù)語音命令擺脫"待機(jī)"模式。所述監(jiān)控可使用超低功耗不間斷觸發(fā)檢測器電路來實(shí)施,所述超低功耗不間斷觸發(fā)檢測器電路檢測傳感器輸出中的變化并然后喚醒微處理器。然而,方案需要很多算法(諸如語音識別算法),所述算法需要預(yù)觸發(fā)數(shù)據(jù)來有效地操作。
[0013]為了克服這個缺點(diǎn),一些系統(tǒng)使用不間斷循環(huán)存儲器緩沖區(qū)來連續(xù)存儲數(shù)據(jù),使得當(dāng)?shù)凸膫鞲衅鳈z測電路檢測到活動時,處理器可訪問存儲在循環(huán)存儲器緩沖區(qū)中的預(yù)觸發(fā)數(shù)據(jù)。如本文所使用,術(shù)語“活動"可代表傳感器接收到的天然信號(例如,音頻信號)的幅度(或其它參數(shù))中的變化。其它系統(tǒng)可消除不間斷低功耗觸發(fā)檢測器,并使用不間斷循環(huán)緩沖區(qū)(例如,使用單個、固定大小的緩沖區(qū)似乎它被端到端連接的數(shù)據(jù)結(jié)構(gòu))。循環(huán)緩沖區(qū)開始是空的且通常具有預(yù)定長度。當(dāng)需要時,最早的記錄首先從循環(huán)緩沖區(qū)除去。當(dāng)循環(huán)緩沖區(qū)已滿并對循環(huán)緩沖區(qū)執(zhí)行后續(xù)寫入時,最早的數(shù)據(jù)被覆蓋。有時,基于使用循環(huán)緩沖區(qū)的緩沖例程或應(yīng)用的語義,并不是覆蓋,而是可能出現(xiàn)異?;蝈e誤。
[0014]處理器可被設(shè)置以從空閑狀態(tài)周期性地喚醒(例如,其中處理器使用低功耗且不執(zhí)行任何應(yīng)用的處理器狀態(tài);也可稱為待機(jī)模式、低功耗模式或睡眠模式)并檢查循環(huán)緩沖區(qū)以確定是否已發(fā)生任何活動。在空閑狀態(tài),可關(guān)閉各種電路和處理器的部分。關(guān)閉的電路的數(shù)量越多,功耗越低且喚醒時間越長。如果沒有活動,那么處理器可回到空閑狀態(tài)。如果處理器活動的工作周期小,那么處理器消耗的平均功率也會小。在此類情況下,循環(huán)緩沖區(qū)的大小比起處理器喚醒間隔必需足夠大,使得有足夠的余量來恢復(fù)各種語音識別和其它算法所需的預(yù)觸發(fā)數(shù)據(jù)。例如,為了以16KHz的采樣率來存儲200ms的音頻數(shù)據(jù),可能需要3K字的循環(huán)緩沖區(qū)長度。處理器可能因此需要花費(fèi)更長的時間來讀取循環(huán)緩沖區(qū)并尋找指示活動的觸發(fā),由于較長蘇醒期,這可能導(dǎo)致處理器的大功耗。
[0015]參考圖1,圖1是基于傳感器數(shù)據(jù)進(jìn)行處理器喚醒的系統(tǒng)10的簡化框圖。系統(tǒng)10包括傳感器12 (例如,麥克風(fēng)或mic),傳感器12捕獲天然信號(例如,聽覺信號、光信號等)并把它們轉(zhuǎn)換成模擬信號(例如,電壓信號、電流信號)。傳感器12可耦接到模擬數(shù)字轉(zhuǎn)換器(ADC) 14。來自傳感器12的模擬信號可被ADC14根據(jù)第一米樣率轉(zhuǎn)換成第一數(shù)據(jù),包括數(shù)字信號。如本文所使用,"采樣率"包括每單位時間從連續(xù)模擬信號取的形成離散數(shù)字信號的樣本的數(shù)量。直接存儲器存取(DMA)控制器16可促進(jìn)把第一數(shù)據(jù)存儲到存儲器元件20的音頻緩沖區(qū)18中。如本文所使用,術(shù)語“音頻緩沖區(qū)"包括被配置以存儲來自傳感器12的第一數(shù)據(jù)的緩沖區(qū)(例如,循環(huán)緩沖區(qū))。如本說明書中本文所使用,"數(shù)據(jù)"代表定量項(xiàng)目的值,例如來自ADC14的數(shù)字信號。
[0016]根據(jù)各種實(shí)施方案,帶通濾波器(〃帶通〃)22也可處理來自ADC14的第一數(shù)據(jù)。帶通22可除去第一數(shù)據(jù)中在預(yù)定〃正常〃人聲范圍(例如,300Hz到3400Hz)之外的頻率。來自帶通22的輸出信號可形成第一數(shù)據(jù)的子集、可通過包絡(luò)檢測器24傳遞,包絡(luò)檢測器24可確定子集的包絡(luò)。如本文所使用,術(shù)語數(shù)據(jù)的“包絡(luò)〃包括概述數(shù)據(jù)幅度極值的輪廓的曲線。包絡(luò)可由包絡(luò)檢測器24基于與第一數(shù)據(jù)的子集相關(guān)的任何合適的參數(shù)來生成。例如,包絡(luò)可基于第一數(shù)據(jù)的子集的適當(dāng)?shù)膮?shù)進(jìn)行檢測,例如均方根(RMS)、平均值、峰值和準(zhǔn)峰值。
[0017]在包絡(luò)檢測基于峰值的實(shí)施方案中,包絡(luò)檢測器24包括整流器后面是低通濾波器以提取由來自帶通22的信號的慢(相對于ADC采樣率)時變幅度組成的基帶信號。在包絡(luò)檢測基于準(zhǔn)峰值的實(shí)施方案中,包絡(luò)檢測器24包括具有快速上升時間和較長下降時間的額外有耗積分器。在包絡(luò)檢測基于RMS的實(shí)施方案中,來自包絡(luò)檢測器24的包絡(luò)輸出是與來自帶通22的信號的包絡(luò)成比例的電壓,獨(dú)立于來自帶通22的信號的峰值對平均值比。在包絡(luò)檢測基于平均值的實(shí)施方案中,包絡(luò)檢測器24除了 RMS包絡(luò)檢測器還可包括平均值檢測器。包絡(luò)檢測器24也可例如基于不同的已知算法中的許多任何一個或多個而使用軟件來實(shí)施,所述已知算法包括均方根(RMS)、平均值、峰值、準(zhǔn)峰值或其它類型的能量檢測算法。
[0018]在各種實(shí)施方案中,包絡(luò)檢測器24可形成語音活動檢測器(VAD)的一部分。在一些實(shí)施方案中,VAD可部分用硬件(例如,包絡(luò)檢測器24)實(shí)施且部分用軟件實(shí)施,所述軟件可嵌入包絡(luò)檢測器24,和/或與包絡(luò)檢測器24分開實(shí)施。包絡(luò)檢測器24的輸出信號比起來自帶通濾波器22的輸入信號可能變化較緩慢,且輸出信號可被抽取器26抽取(例如,降采樣、二次采樣)為第二 (較低)采樣率以生成第二數(shù)據(jù)。第二采樣率因此小于第一采樣率。
[0019]來自抽取器26的降采樣的第二數(shù)據(jù)可存儲在存儲器元件20的包絡(luò)緩沖區(qū)28中。如本文所使用,術(shù)語“包絡(luò)緩沖區(qū)"包括被配置以存儲來自傳感器12的第二數(shù)據(jù)的緩沖區(qū)(例如,循環(huán)緩沖區(qū))。音頻緩沖區(qū)18可記錄與包絡(luò)緩沖區(qū)28相同的絕對時間長度,但是因?yàn)榘j(luò)緩沖區(qū)28的輸入被抽取為較低第二采樣率,所以包絡(luò)緩沖區(qū)28的緩沖區(qū)大小可相應(yīng)地比音頻緩沖區(qū)18的緩沖區(qū)大小要小。因此,包絡(luò)緩沖區(qū)28可比音頻緩沖區(qū)18短。在一些實(shí)施方案中,包絡(luò)檢測器24的輸出在被抽取并寫入包絡(luò)緩沖區(qū)28作為第二數(shù)據(jù)之前可能可選地轉(zhuǎn)換成對數(shù)刻度。在一些實(shí)施方案中,由于包絡(luò)緩沖區(qū)28的大小較小,可減小VAD執(zhí)行的存儲器訪問和計算的量。
[0020]處理器30可通過DMA控制器16與存儲器元件20通信。例如,處理器30可使用DMA控制器16來啟動讀取操作,從而開始存儲器訪問過程。DMA控制器16可生成地址并啟動存儲器讀取或?qū)懭胫芷?。DMA控制器16可包含可由處理器30讀取或?qū)懭氲娜舾杉拇嫫鳌<拇嫫靼ù鎯ζ鞯刂芳拇嫫?、字?jié)計數(shù)寄存器和一個或多個控制寄存器??刂萍拇嫫髦付ㄊ褂玫妮斎?輸出(I/O)端口、傳輸?shù)姆较?例如,從I/O設(shè)備讀取或?qū)懭隝/O設(shè)備)、傳輸單位(例如,每次以字節(jié)或每次以字為傳輸單位)和在一個數(shù)據(jù)串中要傳輸?shù)淖止?jié)的數(shù)量。
[0021]為了執(zhí)行輸入、輸出或存儲器到存儲器操作,處理器30可用要傳輸?shù)淖謹(jǐn)?shù)的計數(shù)和要使用的存儲器地址(例如,包絡(luò)緩沖區(qū)28的存儲器地址)來初始化DMA控制器16。DMA控制器16可提供地址和讀取/寫入控制線到存儲器元件20。每次準(zhǔn)備在處理器30和存儲器之間傳輸數(shù)據(jù)字時,DMA控制器16可遞增其內(nèi)部地址寄存器,直到傳輸了整個數(shù)據(jù)塊為止。存儲器訪問的各種其它模式可在實(shí)施方案的廣泛范圍中實(shí)施。在一些實(shí)施方案中,DMA控制器16可包括處理器30的一部分(或位于處理器30中)。
[0022]處理器30可執(zhí)行與數(shù)據(jù)相關(guān)的任何類型的指令以實(shí)現(xiàn)本說明書中本文詳述的操作。在一個實(shí)例中,處理器30可把元件或制品(例如,數(shù)據(jù))從一個狀態(tài)或事物轉(zhuǎn)換成另一狀態(tài)或事物。在另一實(shí)例中,本文概述的活動可用固定邏輯或可編程邏輯(例如,處理器執(zhí)行的軟件/計算機(jī)指令)來實(shí)施,且本文指定的元件可為某種類型的可編程處理器、可編程數(shù)字邏輯(例如,現(xiàn)場可編程門陣列(FPGA)、可擦除可編程只讀存儲器(EPR0M)、電可擦除可編程只讀存儲器(EEPROM))或包括數(shù)字邏輯、軟件、代碼、電子指令、快閃存儲器、光盤、CD-ROM、DVD ROM、磁卡或光卡、適于存儲電子指令的其它類型的機(jī)器可讀介質(zhì)或它們?nèi)魏魏线m組合的專用集成電路(ASIC)。任何潛在的處理元件、模塊、微處理器、數(shù)字信號處理器(DSP)和本說明書中描述的其它設(shè)備應(yīng)理解為包括在廣義的術(shù)語“處理器〃中。例如,處理器30可包括DSP和微控制器中至少一個。
[0023]計時器32可周期性地中斷處理器30并使處理器30喚醒、讀取包絡(luò)緩沖區(qū)28并對存儲在包絡(luò)緩沖區(qū)28中的數(shù)據(jù)執(zhí)行語音活動檢測算法。在一些實(shí)施方案中,計時器32可為外部集成電路,且在其它實(shí)施方案中,計時器32可包括在與處理器30的相同硅芯片上作為外圍組件。計時器32的各種其它實(shí)施可用于實(shí)施方案的廣泛范圍中。根據(jù)一些實(shí)施方案,存儲在包絡(luò)緩沖區(qū)28中的第二數(shù)據(jù)可應(yīng)用到對數(shù)塊,所述對數(shù)塊輸出以dB計的包絡(luò)信號。對數(shù)塊可進(jìn)行語音檢測,獨(dú)立于絕對信號電平。或者,分配器(例如,硬件或等效軟件實(shí)施中的功率分配器)可用以取第一數(shù)據(jù)代表的能量的比率。對數(shù)輸出可應(yīng)用于具有保持功能的負(fù)峰值檢測器。如果負(fù)峰值檢測器的輸入小于先前存儲的負(fù)峰值,那么負(fù)峰值可設(shè)置為等于輸入。
[0024]如果輸入大于存儲的負(fù)峰值,且達(dá)到某一固定預(yù)定數(shù)量的時鐘周期等于保持的計數(shù)參數(shù)的條件(可通常設(shè)為從0.5s到4s范圍中的時間段),那么存儲的負(fù)峰值可遞增固定量。包絡(luò)和負(fù)峰值檢測器的輸出之間的差可應(yīng)用于閾值。如果差超過閾值,那么輸出可能指示活動(例如,語音信號的開端)。在一些實(shí)施方案中,對數(shù)塊或分配器和負(fù)峰值檢測器可實(shí)施為嵌入包絡(luò)檢測器24或與之分開的軟件模塊。
[0025]基于VAD算法結(jié)果,處理器30可確定已檢測到活動。處理器30然后可執(zhí)行其它合適的任務(wù),例如警示系統(tǒng)10是其中一個部分的較大系統(tǒng)的其它組件,或執(zhí)行關(guān)鍵字匹配算法以解釋語音信號(如果檢測到的活動是語音信號的開端)。處理器30可從音頻緩沖區(qū)18讀取第一數(shù)據(jù)以確定與來自存儲的潛在關(guān)鍵字集合(例如,〃開始"、〃打開〃等)的一個或多個關(guān)鍵字相匹配。如果檢測到關(guān)鍵字,那么處理器30可發(fā)信號給系統(tǒng)10中的其它組件以采取一些行動,或處理器30可執(zhí)行合適的某一其它任務(wù)來控制系統(tǒng)10。如果沒有發(fā)現(xiàn)關(guān)鍵字,那么處理器30可返回到空閑狀態(tài)并等待另一 VAD事件(例如,聽覺信號的開端)。任何合適的關(guān)鍵字檢測算法可用于系統(tǒng)10的實(shí)施方案的廣泛范圍中。
[0026]轉(zhuǎn)向圖2,圖2是示出系統(tǒng)10的實(shí)施方案的示范性細(xì)節(jié)的簡圖。傳感器12檢測的語音信號40可用數(shù)字形式存儲在音頻緩沖區(qū)18中。語音信號40可導(dǎo)致包絡(luò)檢測器24的輸出42。計時器輸出44指示計時器32可輸出信號到處理器30的時刻。在計時器32的每個“標(biāo)記”(例如,計時器輸出44 (1),44 (2),44 (3)等)上,處理器30可喚醒并執(zhí)行各種活動46。例如,處理器30可在計時器輸出44 (I)執(zhí)行活動48?;顒?8可包括讀取包絡(luò)緩沖區(qū)28并對存儲在包絡(luò)緩沖區(qū)28中的數(shù)據(jù)執(zhí)行VAD算法。
[0027]假設(shè),只為了說明而不是作為限制,前兩個計時器輸出44 (I)和44 (2)沒有檢測到語音活動。處理器30可在計時器輸出44 (I)執(zhí)行活動48,且在計時器輸出44 (2)執(zhí)行另一相同的活動50。假設(shè)語音活動始于在計時器輸出44 (I)和44 (2)之間的某個時間的語音52的開端。語音52的開端可產(chǎn)生包絡(luò)緩沖區(qū)28中數(shù)據(jù)的變化,如包絡(luò)檢測器42的輸出所證明。在計時器輸出44 (3),處理器30可執(zhí)行活動54,包括讀取包絡(luò)緩沖區(qū)28并對存儲在包絡(luò)緩沖區(qū)28中的數(shù)據(jù)執(zhí)行VAD算法。VAD算法將指示已檢測到VAD事件。
[0028]處理器30可執(zhí)行活動56,活動56可包括讀取音頻緩沖區(qū)18和執(zhí)行語音觸發(fā)匹配算法(例如,關(guān)鍵字匹配算法)。任何合適的語音活動檢測算法可用作觸發(fā)來激活(例如,移動設(shè)備或系統(tǒng)10是其中一部分的其它較大系統(tǒng)的)自動語音識別模塊。如果輸入語音信號可被識別為來自合法用戶的預(yù)定關(guān)鍵字,那么它可用作觸發(fā)。處理器30可最初始于音頻緩沖區(qū)18的開始,且可趕上實(shí)時數(shù)據(jù)流,在這種情況下,當(dāng)輸入數(shù)據(jù)樣本進(jìn)入音頻緩沖區(qū)18時,處理器30可處理所述輸入數(shù)據(jù)樣本。當(dāng)檢測到關(guān)鍵字時,或當(dāng)軟件VAD操作(可并行運(yùn)行)顯示語音活動已停止時,處理器30可停止處理數(shù)據(jù)。
[0029]轉(zhuǎn)向圖3,圖3是示出可與系統(tǒng)10的實(shí)施方案相關(guān)的示范性操作100的簡化流程圖。在102,可激活音頻緩沖區(qū)18以監(jiān)控音頻,并存儲來自傳感器12的數(shù)據(jù)。在104,可激活包絡(luò)緩沖區(qū)28以監(jiān)控來自傳感器12的數(shù)據(jù)的包絡(luò)。在106,處理器30可進(jìn)入睡眠(例如,待機(jī)模式)。在108,可確定是否已在處理器30接收到計時器中斷。如果沒有,那么操作可回到106。如果已在處理器30接收到計時器中斷,那么在110,處理器30可喚醒。在112,處理器30可檢查包絡(luò)緩沖區(qū)28。在114,可確定是否檢測到任何語音(或其它)活動。如果沒有檢測到活動,那么操作可回到106。如果檢測到活動,那么在116,處理器30可讀取音頻緩沖區(qū)18。
[0030]轉(zhuǎn)向圖4,圖4是示出根據(jù)系統(tǒng)10的實(shí)施方案的可與語音檢測相關(guān)的示范性操作的簡化流程圖。在122,例如可用帶通22除去來自傳感器12的在正常人聲范圍之外的音頻輸入中的頻率。在124,包絡(luò)檢測器24可檢測音頻輸入的包絡(luò)。在126,包絡(luò)可被歸一化(例如,通過分配器或?qū)?shù)塊)。如本文所使用,術(shù)語“歸一化〃意指把值從不同刻度調(diào)整到共同刻度。歸一化可包括例如使用值的比來重新縮放,和使用對數(shù)刻度轉(zhuǎn)換每個值的對數(shù)歸一化。在128,歸一化的包絡(luò)可應(yīng)用到負(fù)峰值檢測器。根據(jù)一些實(shí)施方案,負(fù)峰值檢測器可為被配置以檢測波形中負(fù)峰值的數(shù)據(jù)分析軟件模塊。根據(jù)其它實(shí)施方案,負(fù)峰值檢測器可為例如結(jié)合包絡(luò)檢測器24實(shí)施的硬件模塊。在130,可確定歸一化的包絡(luò)是否小于存儲在系統(tǒng)10中的負(fù)峰值。如果歸一化的包絡(luò)小于負(fù)峰值,那么在132,存儲在系統(tǒng)10中的值可用歸一化的包絡(luò)值覆蓋。
[0031]否則,如果歸一化的包絡(luò)不小于負(fù)峰值,那么在134,可確定在130的條件是否達(dá)到預(yù)定數(shù)量的時鐘周期。如果沒有,過程可結(jié)束。如果在130的條件達(dá)到預(yù)定數(shù)量的時鐘周期,那么在136,存儲的負(fù)峰值可遞增固定量。在138,包絡(luò)信號和負(fù)峰值檢測器的輸出之間的差可與閾值作比較。在140,可確定是否超過閾值。如果沒有,過程可結(jié)束。如果已達(dá)到或超過閾值,那么在142,可得出這樣的結(jié)論:已檢測到語音信號的開端。
[0032]轉(zhuǎn)向圖5,圖5是示出可與系統(tǒng)10的實(shí)施方案相關(guān)的示范性操作150的簡化流程圖。在152,可確定語音開端發(fā)生在處理器30的兩個連續(xù)喚醒時間之間。在154,處理器30可對音頻緩沖區(qū)18中的數(shù)據(jù)樣本執(zhí)行關(guān)鍵字匹配算法。在156,可確定是否檢測到關(guān)鍵字。如果檢測到關(guān)鍵字,那么處理器30可停止進(jìn)一步采樣數(shù)據(jù)并進(jìn)行激活系統(tǒng)10可為其中一部分的較大系統(tǒng)(例如,移動設(shè)備、遠(yuǎn)程控制、計算機(jī)等)的其它組件。如果在156沒有檢測到關(guān)鍵字,那么處理器30可在158確定語音活動是否已經(jīng)停止。如果是,那么過程可結(jié)束;如果沒有,那么過程可循環(huán)回到154,且處理器30可繼續(xù)根據(jù)關(guān)鍵字匹配算法來采樣音頻緩沖區(qū)18中的數(shù)據(jù)。
[0033]注意,在這個說明書中,包括在“一個實(shí)施方案”、“示范性實(shí)施方案”、“實(shí)施方案”、“另一實(shí)施方案”、“一些實(shí)施方案”、“各種實(shí)施方案”、“其它實(shí)施方案”、“替代性實(shí)施方案”等中的各種特征(例如,元件、結(jié)構(gòu)、模塊、組件、步驟、操作、特點(diǎn)等)的引用旨在意指任何此類特征包括在本公開的一個或多個實(shí)施方案中,但是可能或可能不必在相同的實(shí)施方案中組
口 ο
[0034]在一個示范性實(shí)施方案中,附圖的系統(tǒng)10可耦接到相關(guān)電子設(shè)備的母板。母板可為可保持電子設(shè)備的內(nèi)部電子系統(tǒng)的各種組件并進(jìn)一步為其它外圍設(shè)備提供連接器的一般的電路板。更具體說來,母板可提供系統(tǒng)的其它組件可用以通信的電氣連接。任何合適的處理器(包括數(shù)字信號處理器、微處理器、配套芯片組等)、存儲器元件等可基于特定配置需求、處理需求、計算機(jī)設(shè)計等適當(dāng)?shù)伛罱拥侥赴?。其它組件(諸如外部存儲、用于視頻顯示器、聲音的控制器和外圍設(shè)備)可連接到母板作為插卡、通過電纜連接或集成到母板本身。
[0035]在另一示范性實(shí)施方案中,附圖的系統(tǒng)10可嵌入獨(dú)立模塊(例如,具有被配置以執(zhí)行特定應(yīng)用或功能的相關(guān)組件和電路的設(shè)備)或作為插件模塊集成到電子設(shè)備的專用硬件。注意,本公開的特定實(shí)施方案可容易地包括在片上系統(tǒng)(SOC)封裝中。SOC代表把計算機(jī)或其它電子系統(tǒng)的組件集成到單芯片的1C。它可包含數(shù)字、模擬、混合信號和常見的射頻功能:所有這些都可提供在單芯片基板上。其它實(shí)施方案可包括多芯片模塊(MCM),其中多個單獨(dú)的IC位于單電子封裝中且被配置以通過電子封裝彼此密切互動。在各種其它實(shí)施方案中,電路功能可在專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)和其它半導(dǎo)體芯片中的一個或多個硅芯中實(shí)施。
[0036]也應(yīng)注意,本文概述的所有規(guī)格、尺寸和關(guān)系(例如,處理器和存儲器元件、邏輯運(yùn)算等的數(shù)量)僅為舉例和教導(dǎo)的目的而提供。所述信息可在不脫離本公開的精神或所附權(quán)利要求書的范圍的情況下大不相同。說明書只適用于一個非限制性的實(shí)例,因此它們應(yīng)這樣理解。在上文的描述中,示范性實(shí)施方案已參閱特定處理器和/或組件布置進(jìn)行了描述。在不脫離所附權(quán)利要求書的范圍的情況下可對此類實(shí)施方案進(jìn)行各種修改和變化。因此,說明書和附圖應(yīng)理解為說明性而不是限制性的。
[0037]注意,在本文提供的若干實(shí)例中,交互可就兩個、三個、四個或更多個電子組件進(jìn)行描述。然而,這只是為了清晰和舉例的目的而進(jìn)行。應(yīng)理解,系統(tǒng)可用任何適當(dāng)?shù)姆绞絹砗喜?。沿著類似的設(shè)計方案,附圖中示出的組件、模塊和元件中的任一可用各種可能的配置來組合,所有這些都明顯在本說明書的廣泛范圍內(nèi)。在某些情況下,通過僅參照有限數(shù)量的電子元件可能易于描述給定流程集合的功能中的一個或多個。應(yīng)理解,附圖的系統(tǒng)10和它的教導(dǎo)容易縮放且可容納更大數(shù)量的組件以及更復(fù)雜/精密的布置和配置。因此,所提供的實(shí)例不應(yīng)限制潛在地適用于無數(shù)其它結(jié)構(gòu)的系統(tǒng)10的范圍或抑制系統(tǒng)10的廣泛教導(dǎo)。[0038]本領(lǐng)域技術(shù)人員可確定許多其它的變化、替換、變型、改變和修改,且意圖是,本公開包括落入所附權(quán)利要求書的范圍內(nèi)的所有此類變化、替換、變型、改變和修改。為了協(xié)助美國專利和商標(biāo)局(USPTO)以及另外協(xié)助本申請發(fā)布的任何專利的任何讀者解釋所附權(quán)利要求, 申請人:希望注意的是, 申請人::(a)不打算任何所附的權(quán)利要求書存在于其申請日時援引35U.S.C.第112條第六(6)段,除非用語“用于……的手段”或“用于……的步驟”明確地在特定的權(quán)利要求中使用;且(13)不打算通過本說明書中的任何陳述來用未在所附權(quán)利要求中體現(xiàn)的任何方式 限制本公開。
【權(quán)利要求】
1.一種系統(tǒng),其包括: 音頻緩沖區(qū),其被配置以存儲來自傳感器的第一數(shù)據(jù),其中所述第一數(shù)據(jù)根據(jù)第一采樣率生成; 包絡(luò)緩沖區(qū),其被配置以存儲第二數(shù)據(jù),其中所述第二數(shù)據(jù)根據(jù)第二采樣率從所述第一數(shù)據(jù)導(dǎo)出,且其中第二米樣率小于所述第一米樣率;以及 處理器,其被配置以從空閑狀態(tài)周期性地喚醒并從所述包絡(luò)緩沖區(qū)讀取所述第二數(shù)據(jù),其中如果所述第二數(shù)據(jù)指示活動,那么所述處理器被配置以從所述音頻緩沖區(qū)讀取所述第一數(shù)據(jù)。
2.如權(quán)利要求1所述的系統(tǒng),其中如果所述第二數(shù)據(jù)不指示活動,那么所述處理器被配置以返回到所述空閑狀態(tài)。
3.如權(quán)利要求1所述的系統(tǒng),其中通過比較所述第二數(shù)據(jù)的函數(shù)與預(yù)定閾值來指示所述活動。
4.如權(quán)利要求1所述的系統(tǒng),其還包括模擬數(shù)字轉(zhuǎn)換器,所述模擬數(shù)字轉(zhuǎn)換器被配置以根據(jù)所述第一采樣率從模擬信號生成數(shù)字格式的所述第一數(shù)據(jù)。
5.如權(quán)利要求1所述的系統(tǒng),其還包括促進(jìn)讀取所述音頻緩沖區(qū)和所述包絡(luò)緩沖區(qū)的直接存儲器存取(DMA)控制器。
6.如權(quán)利要求1 所述的系統(tǒng),其中所述包絡(luò)緩沖區(qū)比所述音頻緩沖區(qū)短。
7.如權(quán)利要求1所述的系統(tǒng),其還包括計時器,所述計時器被配置以周期性地發(fā)送中斷到所述處理器,其中所述處理器被配置以在接收到所述中斷時喚醒。
8.如權(quán)利要求1所述的系統(tǒng),其還包括: 包絡(luò)檢測器,其被配置以檢測所述第一數(shù)據(jù)的包絡(luò);以及 抽取器,其被配置以降采樣所述包絡(luò)以根據(jù)所述第二采樣率生成所述第二數(shù)據(jù)。
9.如權(quán)利要求8所述的系統(tǒng),其還包括帶通濾波器,所述帶通濾波器被配置以過濾所述第一數(shù)據(jù)并把所述過濾的數(shù)據(jù)饋送到所述包絡(luò)檢測器。
10.如權(quán)利要求9所述的系統(tǒng),其中所述第一數(shù)據(jù)從音頻信號生成。
11.如權(quán)利要求10所述的系統(tǒng),其中所述活動包括語音信號的開端。
12.如權(quán)利要求10所述的系統(tǒng),其中所述帶通濾波器被配置以過濾掉所述第一數(shù)據(jù)中在正常人聲范圍之外的頻率以生成所述第一數(shù)據(jù)的子集。
13.如權(quán)利要求10所述的系統(tǒng),其中所述系統(tǒng)被配置以執(zhí)行包括以下各項(xiàng)的操作: 檢測所述子集的所述包絡(luò); 確定所述包絡(luò)和負(fù)峰值之間的差;以及 如果所述差超過預(yù)定閾值就檢測活動。
14.如權(quán)利要求10所述的系統(tǒng),其中所述檢測所述包絡(luò)基于選自由以下各項(xiàng)組成的群組的所述子集的參數(shù):均方根(RMS)、平均值、峰值和準(zhǔn)峰值。
15.如權(quán)利要求10所述的系統(tǒng),其中所述系統(tǒng)被配置以執(zhí)行包括以下各項(xiàng)的另外的操作: 歸一化所述子集的所述包絡(luò); 比較所述歸一化的包絡(luò)與第二負(fù)峰值; 如果在預(yù)定數(shù)量的時鐘周期期間所述歸一化的包絡(luò)不小于所述第二負(fù)峰值,就把所述第二負(fù)峰值遞增固定量以獲得所述負(fù)峰值;以及 如果所述歸一化的包絡(luò)小于所述第二負(fù)峰值,就把所述負(fù)峰值設(shè)置為所述第二負(fù)峰值。
16.如權(quán)利要求16所述的系統(tǒng),其中所述歸一化所述包絡(luò)包括對數(shù)歸一化所述包絡(luò)。
17.如權(quán)利要求16所述的系統(tǒng),其中所述歸一化所述包絡(luò)包括取所述第一數(shù)據(jù)代表的能量的比。
18.如權(quán)利要求10所述的系統(tǒng),其中所述包絡(luò)檢測器包括語音活動檢測器的一部分。
19.如權(quán)利要求1所述的系統(tǒng),其中所述系統(tǒng)被配置以執(zhí)行包括以下各項(xiàng)的操作: 確定所述活動發(fā)生在兩個連續(xù)喚醒時間之間; 對所述音頻緩沖區(qū)中的所述第一數(shù)據(jù)執(zhí)行關(guān)鍵字匹配算法;以及 如果發(fā)現(xiàn)匹配的關(guān)鍵字,就基于所述匹配的關(guān)鍵字來執(zhí)行另一任務(wù)。
20.如權(quán)利要求1所述的系統(tǒng),其中所述處理器包括數(shù)字信號處理器和微控制器中至少一 個。
【文檔編號】G10L15/26GK104035743SQ201410082056
【公開日】2014年9月10日 申請日期:2014年3月7日 優(yōu)先權(quán)日:2013年3月7日
【發(fā)明者】R·阿達(dá)姆斯, M·莫騰森 申請人:亞德諾半導(dǎo)體技術(shù)公司