基於低能耗藍牙的半雙工語音通信
發布時間:2016-06-24 責任編輯:wenwei
【導讀】低能耗藍牙被業界廣泛認為是實現物聯網(IoT)應ying用yong願yuan景jing的de關guan鍵jian技ji術shu。事shi實shi上shang,極ji低di的de功gong耗hao使shi其qi成cheng為wei電dian池chi供gong電dian的de物wu聯lian網wang產chan品pin最zui理li想xiang的de無wu線xian通tong信xin解jie決jue方fang案an,盡jin管guan目mu前qian低di能neng耗hao藍lan牙ya技ji術shu規gui範fan還hai是shi局ju限xian於yu幾ji種zhong特te定ding應ying用yong,但dan是shi,創chuang新xin的de解jie決jue方fang案an可ke促cu使shi這zhe項xiang技ji術shu拓tuo展zhan到dao不bu同tong的de應ying用yong領ling域yu,例li如ru,多duo媒mei體ti流liu。按an照zhao這zhe個ge發fa展zhan方fang向xiang,本ben文wen介jie紹shao一yi個ge叫jiao做zuoBlueVoice的低能耗藍牙設備語音流應用。
本文從支持語音流服務所需的擴展服務集開始介紹BlueVoice應用,然後在實際硬件設備上評估BlueVoice的性能。在所選的硬件平台上,BlueVoice應用完全支持語音流服務,同時避免能源浪費。
I. 前言
jingliguoqujishiniandekuaisuzengchang,hulianwangjihushentoudaorenleishehuirichangshenghuodefangfangmianmian。weilaihulianwangjiangkuozhandaowanwuhulian,shushiyishenzhishubaiyigeyouweiyishenfende“物品”通過無線通信與人類和周圍環境交互,執行高級任務。在這一構想中,“物品”可能是傳感器、致動器、家電、玩具,總之,可以是任何能夠被識別的虛擬或實體物品,這種互聯網演進構想被稱為物聯網(IoT)。
物聯網概念是通過標準協議解決方案(即互聯網協議)和he無wu線xian通tong信xin接jie口kou,把ba所suo有you產chan品pin設she備bei連lian接jie在zai一yi起qi,組zu成cheng一yi個ge全quan球qiu網wang絡luo。實shi現xian萬wan物wu互hu聯lian,雖sui然ran可ke以yi使shi用yong現xian有you的de大da量liang的de射she頻pin通tong信xin技ji術shu,但dan是shi當dang物wu聯lian網wang產chan品pin是shi部bu署shu在zai現xian場chang的de自zi主zhu型xing電dian池chi供gong電dian裝zhuang置zhi時shi,低di功gong耗hao無wu線xian通tong信xin技ji術shu才cai會hui是shi最zui適shi合he的de通tong信xin解jie決jue方fang案an。在zai這zhe個ge方fang麵mian,低di能neng耗hao藍lan牙ya(Bluetooth LE) [1]技術被視為最有效的物聯網通信解決方案,同時正在融入互聯網世界[2]。
zaijintiandewulianwangyingyongzhong,dinenghaolanyajiejuefanganzhuyaoyongyushengmingcanshujianshiyongtu。chuchuantongdejianshifuwuwai,jinjinianyejiekaishitansuojiyuqitajishudexianjinyingyong。liru,cankaowenxian[3]提出並分析了基於IEEE802.15.4的網絡[4]語(yu)音(yin)通(tong)信(xin)。在(zai)這(zhe)個(ge)方(fang)麵(mian),通(tong)過(guo)低(di)能(neng)耗(hao)藍(lan)牙(ya)傳(chuan)輸(shu)多(duo)媒(mei)體(ti)數(shu)據(ju)還(hai)是(shi)處(chu)於(yu)起(qi)步(bu)階(jie)段(duan),缺(que)少(shao)可(ke)用(yong)的(de)解(jie)決(jue)方(fang)案(an)主(zhu)要(yao)是(shi)因(yin)為(wei)最(zui)初(chu)設(she)想(xiang)時(shi)未(wei)考(kao)慮(lv)到(dao)這(zhe)些(xie)應(ying)用(yong)(例如,最初主要考慮的是醫療、健身等應用)。本文以在低能耗藍牙設備上支持語音流服務的BlueVoice應(ying)用(yong)為(wei)例(li),探(tan)討(tao)如(ru)何(he)解(jie)決(jue)這(zhe)些(xie)技(ji)術(shu)限(xian)製(zhi)問(wen)題(ti)。我(wo)們(men)先(xian)了(le)解(jie)一(yi)下(xia)低(di)能(neng)耗(hao)藍(lan)牙(ya)技(ji)術(shu),然(ran)後(hou)詳(xiang)細(xi)介(jie)紹(shao)支(zhi)持(chi)該(gai)新(xin)應(ying)用(yong)概(gai)念(nian)所(suo)需(xu)的(de)擴(kuo)展(zhan)服(fu)務(wu)集(ji),再(zai)介(jie)紹(shao)應(ying)用(yong)設(she)計(ji),最(zui)後(hou)在(zai)STM32 Nucleo L476板上測試實際性能。
本文的有要內容安排如下:第二章介紹低能耗藍牙工作原理,先描述整個工作棧;然後介紹配置文件(Profiles)概念。第三章介紹應用方案設計,描述其低能耗藍牙配置文件,然後介紹其設計原則、設計實現及實際性能。第四章是結論。
II. 低能耗藍牙技術概述
BLE低能耗藍牙規範於2010年寫入藍牙4.0hexinguifan,jinguanyujibenlanyaxiangsi,danshidinenghaolanyaguifanzhuyaoshiweichaodigonghaoyingyongshejikaifa。tongguodinenghaolanyajishulianjiedianchigongdianshebeideqianzaiyingyongfeichangshao,yiliao、健身和智慧家居是其中僅有的幾例。

圖1. 低能耗藍牙協議棧
如圖1所示,低能耗藍牙協議棧總體結構主要由兩個部分組成:控製器和主機。應用軟件使用協議棧主機層的協議提供的服務。主機層分為五層:邏輯鏈路控製和適配協議(L2CAP)、屬性協議(ATT)、通用屬性配置文件(GATT)、安全管理協議(SM)、通用訪問配置文件(GAP)。控製器部分隻有兩層:物理層(PHY)和鏈路層(LL)。如圖1所示,主機-控製器(HCI)接口是控製器與主機的通信通道。
物理層負責比特調製,通過無線通道收發數據。最高數據速率是1 Mb/s,典型通信距離是幾十米。
鏈路層規定兩個設備之間雙向通信的功能。低能耗藍牙節點有兩個角色:主設備和從設備。通常是主設備(例如,筆記本電腦、智能手機)搜索從設備(例如,體感設備);必要時,從設備向主設備發送數據。從設備通常處於睡眠狀態,並在固定間隔內喚醒,以便被主設備搜到。
在鏈路層之上,邏輯鏈路控製和適配協議(L2CAP)有(you)兩(liang)個(ge)主(zhu)要(yao)功(gong)能(neng)。該(gai)協(xie)議(yi)的(de)主(zhu)要(yao)作(zuo)用(yong)是(shi)提(ti)供(gong)多(duo)路(lu)傳(chuan)輸(shu)功(gong)能(neng),按(an)照(zhao)標(biao)準(zhun)低(di)能(neng)耗(hao)藍(lan)牙(ya)分(fen)組(zu)數(shu)據(ju)格(ge)式(shi),封(feng)裝(zhuang)轉(zhuan)換(huan)頂(ding)層(ceng)多(duo)協(xie)議(yi)數(shu)據(ju)。安(an)全(quan)管(guan)理(li)協(xie)議(yi)(SM)和通用訪問配置文件(GAP)分別提供數據安全和服務管理功能。詳細的說,安全管理協議定義密鑰的生成方式,以及如何在兩個設備(主從設備)之間交換密鑰,建立安全加密通信通道,而通用訪問配置文件則規定兩個設備如何在底層交互操作
屬性協議(ATT)和通用屬性配置文件是開發新應用時需要重點考慮的兩個協議組件。屬性協議是一個無狀態的客戶機/服務器協議:不考慮設備的底層角色是主設備還是從設備,每個設備都可以設為服務器、客(ke)戶(hu)機(ji)或(huo)是(shi)客(ke)戶(hu)機(ji)兼(jian)服(fu)務(wu)器(qi)。客(ke)戶(hu)機(ji)請(qing)求(qiu)服(fu)務(wu)器(qi)數(shu)據(ju)發(fa)送(song)數(shu)據(ju),服(fu)務(wu)器(qi)向(xiang)客(ke)戶(hu)機(ji)發(fa)送(song)數(shu)據(ju),數(shu)據(ju)以(yi)屬(shu)性(xing)的(de)形(xing)式(shi)保(bao)存(cun)在(zai)服(fu)務(wu)器(qi)內(nei),每(mei)個(ge)屬(shu)性(xing)都(dou)含(han)有(you)GATT管理的數據,而且該數據被分配一個通用唯一標識符(UUID)。通過一個L2CAP專用通道,屬性協議在服務器屬性與客戶機之間建立一條通信通道。通用屬性配置文件(GATT)在zai屬shu性xing協xie議yi層ceng添tian加jia一yi個ge數shu據ju抽chou象xiang模mo型xing,負fu責ze搜sou索suo屬shu性xing協xie議yi保bao存cun的de數shu據ju,在zai兩liang個ge設she備bei之zhi間jian交jiao換huan特te征zheng。每mei個ge低di能neng耗hao藍lan牙ya設she備bei都dou有you一yi套tao可ke能neng屬shu性xing(存儲服務)和特征(與存儲服務相關的屬性)。如果在低能耗藍牙棧上建立一個新應用,則必須定義屬性和特征。某一特定應用的特征、屬性和底層規範合稱配置文件,標準配置文件可保證不同品牌的產品能夠互聯互通。
III. BLUEVOICE應用
下麵我們介紹BlueVoice應用,首先定義語音通信低能耗藍牙配置文件,然後討論所涉及設備的通信角色、音頻處理和壓縮選擇、shujufenzuwentihedaikuanyaoqiu。womentichulianggezaiyinpincaijihegonghaofangmianbutongdexitongpeizhi,yimanzubutongdeyingyongyaoqiu。benzhangzuihouyibufenjieshaozaiyigeshijiyingjianshebeishangshixiandeBlueVoice應用,然後比較並討論實際測量到的應用性能,例如,功耗、存儲器占用、處理性能要求和自動語音識別(ASR)性能。
A. 服務定義
考慮到音頻流用例不屬於低能耗藍牙標準配置文件,為實現語音流服務,BlueVoice應用在低能耗藍牙協議棧上,定義了一個叫做BlueVoice Service(BVS)的“廠商專用配置文件”,指定了服務器與客戶機之間交換語音數據的方式。此外,考慮到半雙工通信需要特別的設計選擇,本章稍後詳細討論這個問題。
如前文所述,屬性協議ATT是通用屬性配置文件GATT在不同設備之間交換數據的傳輸協議,屬性是ATT定義的最小的實體,是可尋址的信息段(內置UUID標識碼),可能含有用戶數據或關於屬性本身架構的元信息,例如,權限、加密和授權屬性。GATTfuwuqishuxingantedingshunxuzuchengyigefuwuxulie,xuliekaishibufenshifuwushengmingshuxing,houmiangenyigehuoduogetezhenghekenengdemiaoshufu。meigetezhengdoushiyigebeipiludeshuxing。chubiaozhunpeizhiwenjianUUID外,在定製應用中,開發人員可使用獨有的和廠商專用的UUID開發有自己特征的新服務,BlueVoice應用就是這種情況。考慮到單向音頻流係統不對稱性,服務器通過BVS配置文件向客戶機披露數據類型和格式以及訪問方式。BVS服務包含下列屬性,如圖2所示。
服務聲明(Handle 0x0010)
– UUID: 標準16位UUID,用於主服務聲明(0x2800).
– 權限:讀
– 數值: 獨有128位BVS UUID.
特征聲明 (Handle 0x0011)
– UUID: 標準16位UUID,用於特征聲明 (0x2803).
– 權限: 讀
– 數值: 獨有128位音頻UUID, 僅用於通知, Handle: 0x012.
特征數據 (Handle 0x0012)
– UUID: 獨有128位音頻UUID.
– 權限: 無
– 數值: 實際音頻數據
特征聲明 (Handle 0x0014)
– UUID: 標準16位UUID,用於特征聲明 (0x2803).
– 權限:讀
– 數值: 獨有128位同步UUID,僅用於通知,Handle: 0x0015.
特征數據 (Handle 0x0015)
– UUID: 獨有128位同步UUID.
– 權限: 無
– 數值: 實際同步數據
根據該標準,主服務聲明是服務的第一個屬性,其數值域包含該聲明引入的UUID定義。BlueVoice應用聲明使用一個128位獨有的UUID(BVS UUID)。BVS包含兩個特征,分別叫做音頻(Audio)和同步(Sync) 特te征zheng。在zai低di能neng耗hao藍lan牙ya規gui範fan中zhong,每mei個ge特te征zheng至zhi少shao包bao含han兩liang個ge屬shu性xing,分fen別bie是shi特te征zheng聲sheng明ming和he特te征zheng數shu值zhi。特te征zheng聲sheng明ming以yi元yuan數shu據ju的de形xing式shi定ding義yi其qi屬shu性xing,特te征zheng數shu值zhi則ze是shi包bao含han實shi際ji特te征zheng數shu據ju。在zaiBlueVoice情況中,音頻和同步特征都包含一個單一的由獨有128位UUID定義 (AudioData和SyncData UUID) 的屬性,分別含有實際音頻數據和邊信息同步數值。音頻和同步特征聲明將AudioData和SyncData屬性定義為”僅通知”,未(wei)取(qu)得(de)客(ke)戶(hu)機(ji)的(de)讀(du)寫(xie)權(quan)限(xian),表(biao)示(shi)音(yin)頻(pin)數(shu)據(ju)和(he)同(tong)步(bu)數(shu)據(ju)隻(zhi)以(yi)通(tong)知(zhi)的(de)形(xing)式(shi)傳(chuan)輸(shu),服(fu)務(wu)器(qi)不(bu)答(da)複(fu)客(ke)戶(hu)機(ji)。為(wei)與(yu)低(di)能(neng)耗(hao)藍(lan)牙(ya)服(fu)務(wu)的(de)分(fen)層(ceng)架(jia)構(gou)一(yi)致(zhi),其(qi)它(ta)特(te)征(zheng)可(ke)能(neng)會(hui)增(zeng)加(jia)到(dao)未(wei)來(lai)發(fa)布(bu)的(de)BlueVoice應用。

圖2. BlueVoice服務(BVS)定義
B. 應用設計
本章主要介紹BlueVoice應用設計的(i)低能耗藍牙通信(ii)音頻處理。
1) 低能耗藍牙通信
按照低能耗藍牙協議,通信可以是多點廣播,也可以是點對點連接。BlueVoice應用鏈路層使用連接通信模式,在兩個設備之間建立永久性的點對點連接,這兩個設備扮演兩個不同的角色:中央設備和周邊設備。中央設備又稱主設備,支持與周邊設備(從設備)相xiang關guan的de複fu雜za功gong能neng。中zhong央yang設she備bei是shi發fa起qi通tong信xin連lian接jie,執zhi行xing自zi適shi應ying跳tiao頻pin,數shu據ju加jia密mi,管guan理li通tong信xin時shi序xu,定ding義yi設she備bei間jian數shu據ju交jiao換huan方fang式shi。該gai角jiao色se分fen配pei符fu合he低di能neng耗hao藍lan牙ya的de非fei對dui稱cheng設she計ji概gai,為wei能neng效xiao要yao求qiu高gao的de設she備bei分fen配pei更geng少shao的de工gong作zuo任ren務wu。電dian池chi供gong電dian的de便bian攜xie設she備bei通tong常chang是shi從cong設she備bei,不bu過guo,必bi須xu說shuo明ming的de是shi,根gen據ju規gui範fan[1],每個設備在每個連接事件發生時可單獨發送數據,且角色不在數據吞吐量上強加限製或優先權。考慮到半雙工通信情況,BlueVoice應用可運行在自主的電池供電無線傳感設備上,且這些設備配備麥克風(和最終標量傳感器,如典型物聯網概念中無處不在的監視應用), 因此,角色分配不再與收發功能有關。
在鏈路層之上,GATTcengdingyihudongshebeidekehujihefuwuqijiaose,yuqianwenmiaoshudezhushebeihecongshebeiwuguan。fuwuqishitigongxinxideshebei,erkehujishiqingqiuhuojieshouzuixinxinxideshebei。kaolvdaodanxiangyinpinliushifeiduichengxitong,zhuangbeimaikefengdeshebeishiweiyiyouyuyinxinxideshebei,yincikejiangqishiweitongxinfuwuqi,lingyigeshebeishikehuji,xiangfuwuqifasongxinxiqingqiu,bingjieshoufuwuqifaqidehanyouyuyinshujudegengxinxinxi。zaishuangxiangtongxinxitongzhong,yuyinshujushishuangxiangchuanshu,jiagoushiduichengde,zhongyangshebeihezhoubianshebeidoupeibeimaikefeng,doukeyichongdangfuwuqi,shuchurenheshuxinggeshideyinpinshuju。tongshi,fuwuqiyenengchongdangkehuji,fasongxinxiqingqiu,bingjieshoulingyigeshebeifasongdegengxinxinxi。
雙shuang向xiang語yu音yin數shu據ju流liu是shi基ji於yu服fu務wu器qi以yi固gu定ding間jian隔ge向xiang客ke戶hu機ji發fa送song通tong知zhi,不bu需xu要yao接jie收shou設she備bei發fa送song請qing求qiu或huo回hui複fu信xin號hao。從cong設she備bei在zai上shang電dian階jie段duan進jin入ru廣guang播bo模mo式shi,以yi低di頻pin發fa送song廣guang播bo數shu據ju包bao,主zhu設she備bei進jin入ru搜sou索suo模mo式shi,掃sao描miao是shi否fou有you其qi它ta設she備bei存cun在zai,反fan之zhi亦yi然ran。收shou到dao廣guang播bo數shu據ju包bao代dai表biao主zhu設she備bei發fa現xian了le相xiang關guan從cong設she備bei,然ran後hou,主zhu設she備bei發fa送song一yi個ge連lian接jie請qing求qiu。在zai連lian接jie建jian立li過guo程cheng結jie束shu後hou,按an照zhao所suo選xuan的de通tong信xin傳chuan輸shu方fang向xiang:中央設備至周邊設備或周圍設備-中央設備,以固定間隔從服務器向客戶機發送含有音頻數據的異步通知數據包。圖3所示是BlueVoice在GATT 層的角色分配。

圖3:BlueVoice配置文件角色分配
2)音頻處理
BlueVoice的音頻處理目的是在根據應用所選的接收端上,取得8kHz 或16 kHz的(de)目(mu)標(biao)音(yin)頻(pin)采(cai)樣(yang)。事(shi)實(shi)上(shang),對(dui)於(yu)低(di)功(gong)耗(hao)要(yao)求(qiu)極(ji)其(qi)嚴(yan)格(ge)但(dan)是(shi)對(dui)音(yin)質(zhi)要(yao)求(qiu)不(bu)高(gao)的(de)應(ying)用(yong)場(chang)景(jing),例(li)如(ru),無(wu)需(xu)人(ren)耳(er)聽(ting)清(qing)楚(chu)的(de)自(zi)動(dong)語(yu)音(yin)識(shi)別(bie)服(fu)務(wu)輸(shu)入(ru)音(yin)頻(pin),8kHz采樣率可能是一個不錯的選擇。
使(shi)用(yong)自(zi)適(shi)應(ying)差(cha)分(fen)脈(mai)衝(chong)碼(ma)調(tiao)製(zhi)算(suan)法(fa)壓(ya)縮(suo)低(di)能(neng)耗(hao)藍(lan)牙(ya)音(yin)頻(pin)傳(chuan)輸(shu)信(xin)號(hao),可(ke)使(shi)音(yin)頻(pin)信(xin)號(hao)適(shi)用(yong)於(yu)現(xian)有(you)的(de)數(shu)據(ju)傳(chuan)輸(shu)速(su)率(lv),同(tong)時(shi)最(zui)大(da)限(xian)度(du)縮(suo)減(jian)射(she)頻(pin)傳(chuan)輸(shu)時(shi)間(jian)以(yi)及(ji)功(gong)耗(hao)。我(wo)們(men)使(shi)用(yong)數(shu)字(zi)MEMS麥克風設計一個全數字解決方案,尺寸和音質等特性使其適用於無線傳感器設備。圖4所示是16 kHz采樣率的完整語音處理鏈。該解決方案首先采集數字MEMS麥克風生成的1 MHz 的1位脈衝密度調製(PDM)信號,並將其轉換成16 kHz 的16位脈衝編碼調製(PCM)采樣,然後以16000個采樣/秒的采樣率,再將其壓縮成4位ADPCM采樣信號,並準備發送。
此外,以較低的頻率發送邊信息同步數據集合,所需帶寬是64 kbps音頻數據與300 bps同步信息數據之和,總計64.3 kbps。對於8kHz采樣率,最終ADPCM采樣率是8000個采樣/秒,導致31.3 kbps帶寬需求,包括邊信息。下麵章節深入介紹上述模塊。

圖4:16kHz 配置的BlueVoice數據傳輸鏈
MEMS麥克風的容性傳感器生成的模擬信號經放大和高速率采樣後,交由整合量化和噪聲修整操作的內部sigma-delta調製器處理,輸出的數據是一個單一的高采樣率的PDM格式比特,PCM轉換是從PDM到無線通道發送壓縮音頻數據的整個處理鏈的中間環節。為了把PDM流轉換成PCM數據,需要使用一個抽取濾波器和兩個可單獨配置的濾波器(低通濾波器和高通濾波器。該處理模塊輸出16位PCM格式采樣流。按照所選采樣頻率,采用一個不同配置的抽取濾波器,以取得16位PCM數據采樣。
ADPCM編碼模塊壓縮PCM采樣,通過減少數據包傳輸量,節省傳輸帶寬,降低能耗,如前文所述,ADPCM shiyigeyongyusunhaoboxingbianmadeyasuosuanfa,qijibenyuanlishigenjushangyigeshuzhiyucedangqianshuzhi,zhichuanshuzishiyinglianghuabuzhoulianghuadeshijizhiyuyucezhidechazhi。cunzaizhuduokexuanyasuobiaozhun,quedandanxuanyongADPCM標準,這是因為它是基於波形編碼方法,與基於聲碼器的複雜解決方案相比,更適用於傳感器網絡設備(通常基於微控製器)。在BlueVoice應用中,每個16位PCM采樣都壓縮成4位ADPCM數據,這樣所需的應用傳輸帶寬是32 kbps或64 kbps,至於具體速率取決於采樣頻率,而且兼容低能耗藍牙流媒體功能。
如前文所述,BlueVoice應用的總體帶寬實際需求高於32 kbps或64 kbps的理論值,這是因為BlueVoice為提高通信穩健性,在通過通道發送數據時增加了附加信息。16 kHz 配置采用10 ms連接間隔,而8 kHz 配置采用25 ms連(lian)接(jie)間(jian)隔(ge)。事(shi)實(shi)上(shang),如(ru)果(guo)被(bei)傳(chuan)輸(shu)的(de)數(shu)據(ju)量(liang)較(jiao)少(shao),可(ke)提(ti)高(gao)連(lian)接(jie)間(jian)隔(ge)數(shu)值(zhi),從(cong)而(er)節(jie)省(sheng)能(neng)源(yuan)。為(wei)盡(jin)可(ke)能(neng)地(di)利(li)用(yong)每(mei)個(ge)數(shu)據(ju)包(bao)現(xian)有(you)有(you)效(xiao)載(zai)荷(he),語(yu)音(yin)數(shu)據(ju)包(bao)發(fa)送(song)20個字節。
因此,在16 kHz配置中,語音數據每10 ms發送4個數據包,而在8 kHz配置中,語音數據每20 ms發送4個數據包,結果傳輸帶寬分別是64 kbps和32 kbps。發送器的邊信息發送頻率較低,每160 ms發送一個6字節的附加包,對應16個或8個連接間隔。圖5描述了低能耗藍牙協議棧上的數據分組總體策略。通過音頻特征,每10ms或20 ms連接間隔,發送4個語音數據包(每包20字節),而發送器邊信息的發送是,通過同步特征,每160ms間隔發送一個附加數據包。

圖5:BlueVoice數據分組機製
C. 在實際硬件上實現應用
為了在支持低能耗藍牙通信的不是十分複雜的實際硬件無線傳感器網絡平台上評估BlueVoice的可行性,我們在實際硬件設備上實現了第三章B部分所描述的應用軟件的全部功能。所選硬件平台是意法半導體的STM32 Nucleo L476開發板[5],這是一個基於STM32L476 80 MHz 32位ARM Cortex-M4微控製器的開放式開發平台。我們選擇STM32 Nucleo開kai發fa板ban的de原yuan因yin是shi,板ban載zai微wei控kong製zhi器qi的de性xing能neng高gao於yu普pu通tong無wu線xian傳chuan感gan器qi網wang絡luo平ping台tai,同tong時shi還hai具ju備bei很hen高gao的de靈ling活huo性xing和he多duo功gong能neng性xing。該gai開kai發fa板ban配pei備bei很hen多duo接jie口kou和he擴kuo展zhan排pai針zhen,插cha接jie專zhuan用yong擴kuo展zhan板ban擴kuo大da板ban子zi功gong能neng簡jian單dan容rong易yi,方fang便bian設she計ji人ren員yuan研yan究jiu、開發和驗證新創意。特別值得一提的是,STM32L4微控製器具有市場領先的低功耗特性,其內置數字濾波器配合Sigma-Delta調製器(DFSDM)外設,可實現圖4的PDM至PCM的格式轉換,這些特性使其特別適合BlueVoice應用。通過在STM32Nucleo開發板上接插一塊低能耗藍牙連接板和一塊麥克風擴展板,BlueVoice中央模塊和周邊模塊可以組成一個基於STM32Nucleo的對稱硬件配置,展示一個半雙工通信通道。低能耗藍牙連接板基於意法半導體的BlueNRG [6],BlueNRG是一個超低功耗的低能耗藍牙單模網絡處理器,兼容藍牙規範4.0版,可設為主設備和從設備模式,當低能耗藍牙協議棧啟動時,數據傳輸最大電流8.2 mA,可降至1.7 uA。附加的麥克風擴展板用於采集語音信號,基於意法半導體的MP34DT01 [7]數字萬向MEMS 麥克風,聲學過載點120 dBSPL, 信噪比63 dB,靈敏度-26 dBFS。MP34DT01采用一個容式傳感器和一個內置sigma-delta調製器和噪聲修整機製的集成電路,提供1-3.25 MHz的PDM輸出。
圖6是實際硬件設備的框圖:STM32微控製器通過與外設模塊DMA相連的DFSDM模塊采集麥克風的PDM采樣輸出,同時通過一套專用應用程序界麵(API)和串行外設接口(SPI)與BlueNRG模塊通信,對於中央模塊和周邊模塊,模塊化架構是對稱的。框圖中還有一個USB音頻接口,用於向PC機提供重構的音頻信號。圖7是硬件設備的實際原型。
D. 性能
我們用第三章C部分描述的實際係統作為實驗平台,評估BlueVoice應用的功能、存儲器占用、性能需求和ASR識別率。特別是考慮到現場部署一係列微型無線麥克風模塊的應用場景和低能耗藍牙本身的非對稱性(從設備-外設模塊必須尺寸緊湊且功耗極低),本章討論的性能評估主要討論 8 kHz和16 kHz兩種配置的從設備-外設模塊的功耗、存儲器占用和性能震求。此外,在接收端測量的ASR性能是另一個性能評估指標,實際上,該參數可能是語音通信的一個重要的音質指標,對於新興的聲控應用(遙控器、物聯網產品)具有重要意義。

圖6. BlueVoice框圖

圖7:發送器和接收器原型
1) 功耗、存儲器占用和性能需求
如前文所述,我們把BlueVoice應用實現在一個硬件設備上,該硬件設備使用意法半導體的 STM32 Nucleo開發板充當主機,並使用低能耗藍牙網絡模塊充當控製設備。表1列出了在BlueVoice的廣播、連接和傳輸三個不同狀態下,主機和控製設備(STM32和BlueNRG)的功耗值。這些數據是在3.3 V工作電壓時的測量值,對8 kHz和16 kHz配(pei)置(zhi)的(de)功(gong)耗(hao)進(jin)行(xing)了(le)比(bi)較(jiao)。必(bi)須(xu)強(qiang)調(tiao)的(de)是(shi),微(wei)控(kong)製(zhi)器(qi)功(gong)耗(hao)完(wan)全(quan)取(qu)決(jue)於(yu)硬(ying)件(jian)特(te)征(zheng)和(he)低(di)功(gong)耗(hao)配(pei)置(zhi),因(yin)此(ci),微(wei)控(kong)製(zhi)器(qi)功(gong)率(lv)是(shi)在(zai)計(ji)算(suan)總(zong)功(gong)耗(hao)時(shi)加(jia)在(zai)總(zong)功(gong)耗(hao)中(zhong)與(yu)平(ping)台(tai)相(xiang)關(guan)的(de)數(shu)值(zhi)。
本表所列數值可以視為一個指示性參考值,可能會隨實際應用情況而發生變化。
表I:BLUEVOICE功耗


按an照zhao低di能neng耗hao藍lan牙ya標biao準zhun,在zai兩liang個ge節jie點dian之zhi間jian建jian立li連lian接jie前qian,從cong設she備bei是shi處chu於yu廣guang播bo模mo式shi,而er主zhu設she備bei則ze是shi進jin入ru掃sao描miao模mo式shi。當dang主zhu設she備bei收shou到dao廣guang播bo數shu據ju包bao,發fa現xian從cong設she備bei存cun在zai時shi,就jiu立li即ji建jian立li連lian接jie。在zaiBlueVoice解決方案中,考慮到一個外設模塊對中央模塊的通信,外設節點是發送器(服務器),而中央節點是接收器(客戶機):服務器以固定周期向客戶機發送通知。對於8 kHz配置中,在廣播階段,發送器外設模塊(STM32 + BlueNRG)總平均功耗極低,隻有3.50mW,當建立連接時,功耗是3.98 mW。對於16 kHz配置,廣播階段功耗是8.22 mW,而連接階段是9.48 mW。這裏應著重指出的是,連接階段的功耗與連接間隔選擇關係密切,這也是8 kHz和16 kHz配置(分別是20 ms和10 ms)的主要區別。在這兩情況中,連接間隔設為接近標準規定的最小值(7.5 ms),以確保傳輸延遲最小。一旦連接建立, BlueVoice應用立即進入傳輸狀態,8 kHz配置的平均功耗是10.07 mW,16 kHz配置的平均功耗是19.84 mW,因此,基於STM32 + BlueNRG的物聯網節點,假設電池容量是200 mAh,在連續傳送數據流時,兩種配置的理論續航時間分別是約65小時和33小時。這些功耗值表明BlueVoice方法的適用於以低能耗藍牙為載體的音頻流,特別是8 kHz配置,可大幅降低功耗。
除分析功耗外,通過考慮存儲器占用情況,我們還評估了應用的可行性。如表II所示,BlueVoice應用軟件兩種配置占用閃存空間相同(21.85 kB),但是,8 kHz配置占用13.32 kB的RAM空間,而16 kHz配置隻占用7.86 kB的RAM空間。兩種配置占用RAM空間不同的原因是,為降低該解決方案的額外開銷和功耗,8 kHz和16 kHz分別每20 ms 和10 ms執行音頻處理步驟(PDM轉PCM和ADPCM壓縮),從而導致8 kHz配置在兩個連續步驟之間存儲的數據變大。在這兩種情況中,這些數值十分符合資源受限的係統要求。
表II


發送端BLUEVOICE存儲器占用
2) ASR性能
BlueVoice在功耗、處理性能和存儲器占用方麵表現出的可行性並不能保證語音信號質量在接收端達到可以接受的水平,在BlueVoice解決方案性能評估最後,我們利用一個網絡ASR服務進行了大量的傳輸測試,在接收端測量ASR 性能。16 kHz USB麥克風和8 kHz/16 kHz BlueVoice係統以並行方式記錄若幹個包含已知英文單詞的音頻采樣(作為參考),並將其傳輸到ASR引擎,表III列出了不同解決方案的單詞識別率比較測試結果。測試結果證明,ADPCM壓縮沒有降低信號質量,因此適合ASR應用:BlueVoice 16 kHz配置的性能十分接近USB麥克風,而 8 kHz係統的性能稍有降低(18 %),適用於低功耗要求極嚴的應用。事實上,8 kHz係統以16 kHz配置50%的功耗取得了相同的ASR性能。
表III


BLUEVOICE ASR性能
IV. 結論
本文介紹一個以低能耗藍牙為載體傳送音頻流的解決方案,首先介紹一個廠商專用的半雙工通信低能耗藍牙配置文件,然後介紹BlueVoice應用設計,並討論了慮涉及設備的通信角色、音頻處理和壓縮編碼選擇、數據分組和帶寬需求。BlueVoice應(ying)用(yong)由(you)一(yi)個(ge)中(zhong)央(yang)節(jie)點(dian)和(he)一(yi)個(ge)外(wai)設(she)節(jie)點(dian)組(zu)成(cheng),按(an)照(zhao)所(suo)選(xuan)通(tong)信(xin)方(fang)向(xiang),分(fen)別(bie)充(chong)當(dang)低(di)能(neng)耗(hao)藍(lan)牙(ya)的(de)服(fu)務(wu)器(qi)和(he)客(ke)戶(hu)機(ji)。在(zai)連(lian)接(jie)建(jian)立(li)後(hou),服(fu)務(wu)器(qi)按(an)固(gu)定(ding)周(zhou)期(qi)向(xiang)客(ke)戶(hu)機(ji)發(fa)送(song)通(tong)知(zhi)。我(wo)們(men)對(dui)8 kHz和16 kHz兩個沒配置進行了比較,在發送器節點上,MEMS麥克風的數字PDM格式輸出信號被采集並轉換成PCM格式,然後壓縮成ADPCM數據,最終在低能耗藍牙鏈接上產生32或64 kbps的藍牙帶寬。該配置文件還定義一個低頻邊信息機製,雖然需要一些額外的帶寬,但是提高了錯誤抑製功能。為評估解決方案的性能, BlueVoice被實現在實際硬件設備上。該設備是由MEMS麥克風和STM32微(wei)控(kong)製(zhi)器(qi)組(zu)成(cheng)與(yu)網(wang)絡(luo)模(mo)塊(kuai)組(zu)成(cheng)的(de)全(quan)數(shu)字(zi)係(xi)統(tong),前(qian)者(zhe)充(chong)當(dang)主(zhu)機(ji),後(hou)者(zhe)充(chong)當(dang)低(di)能(neng)耗(hao)藍(lan)牙(ya)控(kong)製(zhi)器(qi)。本(ben)文(wen)的(de)性(xing)能(neng)評(ping)估(gu)表(biao)明(ming),我(wo)們(men)提(ti)出(chu)的(de)解(jie)決(jue)方(fang)案(an)在(zai)功(gong)耗(hao)、處理性能和存儲器占用方麵適用於低功耗語音流應用。特別是,在8 kHz和16 kHz音頻流傳輸過程中,傳感器設備的功耗測量值分別為10.07 mW和19.84 mW,存儲器占用和性能需求完全可接受。此外,我們還測量了音頻質量指標ASR性能,8 kHz配置和816kHz配置的單詞識別率分別達到67%和82%,而16 kHz USB麥克風的識別率達到85%,這表明BlueVoice應用能夠在接收端達到非常高的音質,並具有極低的功耗。
【推薦閱讀】
超級電容在電動車中應用研究及發展趨勢分析
采用高度集成的電機控製方案應對最新的汽車趨勢
數字電路PCB設計中的EMI控製技術
新國標下的交流充電樁電源及信號接口解決方案
如何將EMC問題“扼殺”在產品開發過程中的“搖籃裏”?
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 貿澤EIT係列新一期,探索AI如何重塑日常科技與用戶體驗
- 算力爆發遇上電源革新,大聯大世平集團攜手晶豐明源線上研討會解鎖應用落地
- 創新不止,創芯不已:第六屆ICDIA創芯展8月南京盛大啟幕!
- AI時代,為什麼存儲基礎設施的可靠性決定數據中心的經濟效益
- 矽典微ONELAB開發係列:為毫米波算法開發者打造的全棧工具鏈
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索




