當(dāng)前位置:首頁(yè) > 消費(fèi)電子 > 消費(fèi)電子
[導(dǎo)讀]本文從可復(fù)用和優(yōu)化芯片空間的角度出發(fā)介紹語(yǔ)音識(shí)別芯片結(jié)構(gòu)設(shè)計(jì)的種種考慮,其思路有利于開(kāi)發(fā)一系列其它語(yǔ)音識(shí)別芯片。

    據(jù)預(yù)測(cè),市場(chǎng)對(duì)語(yǔ)音控制應(yīng)用設(shè)備的需求將急劇增長(zhǎng),其推動(dòng)力來(lái)自電話機(jī)市場(chǎng)。電話機(jī)將更多地采用語(yǔ)音命令進(jìn)行控制。其他應(yīng)用領(lǐng)域包括玩具和手持設(shè)備如計(jì)算器、語(yǔ)音控制的安全系統(tǒng)、家用電器及車(chē)載設(shè)備(立體聲、視窗、環(huán)境控制、車(chē)燈和導(dǎo)航控制)。本文從可復(fù)用和優(yōu)化芯片空間的角度出發(fā)介紹語(yǔ)音識(shí)別芯片結(jié)構(gòu)設(shè)計(jì)的種種考慮,其思路有利于開(kāi)發(fā)一系列其它語(yǔ)音識(shí)別芯片。 

          

    新加坡Columns公司在便攜式語(yǔ)音控制產(chǎn)品應(yīng)用中起步較早,其中一個(gè)產(chǎn)品是執(zhí)行歐元與其他歐洲貨幣之間進(jìn)行兌換的“語(yǔ)音控制歐洲貨幣兌換器”。歐元兌換器的設(shè)計(jì)要求包括:1. 功率小,電池壽命至少為1年;2. 價(jià)格低廉,產(chǎn)品零售價(jià)不超過(guò)9美元;3.具有很強(qiáng)的靈活性,能用多種語(yǔ)言精確地識(shí)別并合成與說(shuō)話人相關(guān)的語(yǔ)音;4. 整個(gè)語(yǔ)音控制核產(chǎn)品應(yīng)具備可復(fù)用的特性。  

    本文介紹利用Frontier Design公司設(shè)計(jì)工具來(lái)開(kāi)發(fā)歐元兌換器ASIC產(chǎn)品的全過(guò)程。在ASIC中實(shí)現(xiàn)復(fù)雜DSP算法的要求通常極為苛刻,但采用Frontier的結(jié)構(gòu)合成工具A|RT Designer工具能迅速優(yōu)化RTL描述,該工具還允許自由選擇備用結(jié)構(gòu)以優(yōu)化應(yīng)用設(shè)計(jì)。  

    通過(guò)應(yīng)用基于C語(yǔ)言的設(shè)計(jì)流,能在結(jié)構(gòu)設(shè)計(jì)階段對(duì)新特性進(jìn)行設(shè)計(jì)和硬件優(yōu)化,這能降低50%的硅片面積,通過(guò)加快 C語(yǔ)言原型硬件的設(shè)計(jì),可以進(jìn)一步擴(kuò)展設(shè)計(jì)的性能以滿足用戶對(duì)產(chǎn)品規(guī)格的嚴(yán)格要求。  

算法研究  

    歐元兌換器的效率在一定程度上取決于語(yǔ)音命令與存儲(chǔ)數(shù)據(jù)庫(kù)的比較以及執(zhí)行命令的能力。開(kāi)發(fā)出滿足最終產(chǎn)品要求的算法對(duì)設(shè)計(jì)的成功至關(guān)重要,因?yàn)闆](méi)有人希望看到語(yǔ)音控制設(shè)備不能始終如一地識(shí)別命令,人們需要算法自始至終達(dá)到98%以上的識(shí)別精度。因此,目前面臨的難題包括檢測(cè)并清除背景噪聲、區(qū)分真實(shí)的命令字和其他噪聲(呼吸聲、微小靜電干擾聲及麥克風(fēng)聲響)、確定命令字的起始和終止以及將輸入與存儲(chǔ)的“聲紋譜”數(shù)據(jù)庫(kù)及隨后的命令字識(shí)別(圖1)進(jìn)行比較。  

    以下幾種先進(jìn)的計(jì)算密集DSP算法適用于解決上述問(wèn)題:1. Mel頻率聲譜(cepstral)系數(shù)(MFCC)算法,MFCC算法由快速傅立葉變換(FFT)功能譜、Mel定標(biāo)和log ii構(gòu)成;2. 反離散余弦變換(iDCT);3. 應(yīng)用多重估計(jì)和選擇算法連續(xù)識(shí)別并估計(jì)背景聲音和語(yǔ)音噪聲的連續(xù)噪聲電平估計(jì)程序;4. 在命令字有效期間及其附近對(duì)聲音能級(jí)實(shí)施詳盡分析的不精確和精確命令字邊界檢測(cè)算法;5. 對(duì)一系列不等長(zhǎng)度的向量進(jìn)行比較并在這些向量間比較持續(xù)時(shí)間變化的動(dòng)態(tài)時(shí)間扭曲算法(dynamic time warp)。  

    該算法用浮點(diǎn)C語(yǔ)言編程,為了調(diào)整并優(yōu)化參數(shù),浮點(diǎn)C代碼的編譯和仿真速度要足夠快以檢驗(yàn)算法的性能。最后,C語(yǔ)言代碼必須能在傳統(tǒng)的PC機(jī)上運(yùn)行,語(yǔ)音識(shí)別和合成算法的性能可在實(shí)際環(huán)境中進(jìn)行測(cè)試。最終的語(yǔ)音識(shí)別算法在450MHz奔騰機(jī)上測(cè)試,當(dāng)用該公司的內(nèi)部語(yǔ)音記錄庫(kù)進(jìn)行測(cè)試時(shí),可得到99%的識(shí)別精度。  

浮點(diǎn)算法向定點(diǎn)算法轉(zhuǎn)換  

    芯片實(shí)現(xiàn)需要將浮點(diǎn)算法轉(zhuǎn)換為定點(diǎn)算法,要保證動(dòng)態(tài)范圍和精度并防止轉(zhuǎn)換后超越動(dòng)態(tài)極限。常規(guī)定點(diǎn)操作數(shù)的非優(yōu)化范圍可能導(dǎo)致操作數(shù)繞回(wrap around, 如(max+1)得到(min)),并引發(fā)嚴(yán)重的削波和誤碼。定點(diǎn)的精確度同等重要,特別是在重復(fù)的信號(hào)處理運(yùn)算中。當(dāng)精確度不夠時(shí),重復(fù)的信號(hào)處理算法將導(dǎo)致故障傳播和錯(cuò)誤累積,最終信號(hào)可能逐漸退化成白噪聲,這對(duì)于語(yǔ)音控制產(chǎn)品來(lái)說(shuō)無(wú)疑是災(zāi)難性的錯(cuò)誤。  

    Frontier工具擁有一個(gè)稱為A|RT庫(kù)的C++類庫(kù),它是分析C代碼定點(diǎn)性能的工具。該類庫(kù)支持多種定點(diǎn)數(shù)據(jù)類型,對(duì)多重溢出行為(如飽和和繞回)提供位真建模(bit-true modeling),并提供截?cái)嗪蜕崛肓愕榷嘀亓炕P?。原始?2位浮點(diǎn)語(yǔ)音識(shí)別算法支持?jǐn)?shù)據(jù)以8 KHz輸入,其典型信號(hào)帶寬為32位,內(nèi)存容量要求為幾千字節(jié),典型語(yǔ)音用戶接口的輸出以每秒幾字節(jié)的速率測(cè)量。  

代碼合并實(shí)現(xiàn)最終產(chǎn)品  

    分析表明,全局?jǐn)?shù)據(jù)類型(global data-type)和數(shù)組只需16位(1個(gè)符號(hào)位,10個(gè)動(dòng)態(tài)位,5個(gè)精度位)就足以保持算法的精度,而不會(huì)產(chǎn)生噪聲。但是,高度重復(fù)性的FFT子程序需要8個(gè)動(dòng)態(tài)位、7個(gè)精度位以及1個(gè)符號(hào)位。通常這種分析可用全局使用的19位字寬滿足任何操作的動(dòng)態(tài)位和精度位的最大要求。由于A|RT庫(kù)允許字寬動(dòng)態(tài)改變,而全局?jǐn)?shù)據(jù)類型定義了1個(gè)符號(hào)位、10個(gè)動(dòng)態(tài)位和5個(gè)精度位,F(xiàn)FT的MAC結(jié)果分配了1個(gè)符號(hào)位、8個(gè)動(dòng)態(tài)位和5個(gè)精度位,因此設(shè)計(jì)的字寬(包括總線)保持為16位。這樣可大大節(jié)省硅片面積。  

    完成定點(diǎn)C算法轉(zhuǎn)換后,就可用常規(guī)C++編譯器編譯C代碼,并在PC機(jī)上運(yùn)行(也可在HP或SUN機(jī)器上運(yùn)行)。所有信號(hào)的位真定義(bit-true definition)保證了硬件映射的正確索引以及到其他數(shù)字部件如HDL編譯器和仿真器的直接接口。將定點(diǎn)識(shí)別代碼與歐元兌換器應(yīng)用程序的C代碼合并,就可得到完整的可執(zhí)行最終代碼。  

系統(tǒng)設(shè)計(jì)的考慮  

    為了達(dá)到成本目標(biāo),單片SoC解決方案是唯一可行的方案。SoC必須將如下資源集成至不超過(guò)25,000門(mén)的芯片上:1. 語(yǔ)音識(shí)別與合成(SRS)識(shí)別核;2. 語(yǔ)音識(shí)別與合成(SRS)程序和歐元兌換器代碼(最大30KB);3. 語(yǔ)音合成實(shí)例(最大30KB);4. 用于存儲(chǔ)聲紋(voice print)并用作中間結(jié)果存儲(chǔ)器的RAM(最大30K字節(jié));5. AD/DA轉(zhuǎn)換器;6. 麥克風(fēng)接口;7. 揚(yáng)聲器接口。  

    功耗也是要考慮的重要問(wèn)題,電池壽命至少應(yīng)為1年半。要滿足這些苛刻的功率要求,系統(tǒng)必須具備省電模式、在RAM中存儲(chǔ)聲紋、處理器具有較低的時(shí)鐘頻率以及高效率的音頻放大器。  

SRS處理器結(jié)構(gòu)  

    要給定所必需的處理和低功耗約束條件,選擇目標(biāo)時(shí)鐘頻率是首要任務(wù)。根據(jù)對(duì)初始功耗和處理計(jì)算的估計(jì),我們認(rèn)為2到4MHz時(shí)鐘頻率足以滿足要求。選擇3.579 MHz是因?yàn)樵擃l率是NTSC視頻系統(tǒng)的基礎(chǔ),而石英成本低廉。  

    該算法需要檢測(cè)并去除背景噪聲。為了從奔騰機(jī)的450MHz時(shí)鐘得到3.5MHz時(shí)鐘,并保持芯片核門(mén)數(shù)小于25,000,SRS要采用專用結(jié)構(gòu)。
  
    設(shè)計(jì)專用處理器費(fèi)時(shí)費(fèi)力,要用HDL語(yǔ)言重寫(xiě)算法以獲得最佳方案。A|RT Designer工具綜合了基于控制器的結(jié)構(gòu),并直接以高效能的C語(yǔ)言算法為基礎(chǔ)。設(shè)計(jì)工程師通過(guò)分析和優(yōu)化,然后轉(zhuǎn)化為Verilog或VHDL代碼。  

    設(shè)計(jì)工程師使用A|RT Designer工具為語(yǔ)音識(shí)別算法合成適當(dāng)?shù)慕Y(jié)構(gòu),之后進(jìn)行RTL描述。該工具分配必需的數(shù)據(jù)通路資源(乘法器、加法器、ALU、I/O、RAM、ROM等),為這些資源分配算術(shù)運(yùn)算,并對(duì)運(yùn)算過(guò)程進(jìn)行調(diào)度。同時(shí)將自動(dòng)生成一個(gè)控制器、微代碼(用來(lái)控制資源分配和調(diào)度)及寄存器、多路轉(zhuǎn)換器和總線。  

    將SRS算法映射到硬件結(jié)構(gòu)的關(guān)鍵參數(shù)是:以3.5MHz目標(biāo)時(shí)鐘頻率運(yùn)行完整的SRS代碼,且不超過(guò)最大25,000門(mén)的約束條件。使用A|RT Designer的“負(fù)載視圖(load view)”,設(shè)計(jì)工程師識(shí)別出代表性能瓶頸的幾個(gè)多周期運(yùn)算(multiple cycle operation)。視圖上出現(xiàn)瓶頸的位置將顯示相關(guān)C代碼,設(shè)計(jì)工程師因而能識(shí)別產(chǎn)生瓶頸的原因并試驗(yàn)備選解決方案。  

    最明顯的瓶頸是MEL運(yùn)算中的密集FFT計(jì)算,它占據(jù)了實(shí)時(shí)處理周期80%的時(shí)間。通過(guò)增加一個(gè)二級(jí)加法器和專用地址計(jì)算單元ACU (address calculation unit),F(xiàn)FT就能優(yōu)化到只占原始運(yùn)算周期的10%。這雖然增加了硬件設(shè)備,但付出的代價(jià)只是4,000個(gè)門(mén),正好在硬件預(yù)算以內(nèi)。即便如此改進(jìn),所用周期的總數(shù)目實(shí)在太高,難以達(dá)到3.5MHz的時(shí)鐘頻率。  

    進(jìn)一步分析表明,可以改進(jìn)對(duì)數(shù)函數(shù)的計(jì)算。當(dāng)在RISC DSP (NSC CR16B)上運(yùn)行C語(yǔ)言算法時(shí),該運(yùn)算占用大約1,000個(gè)周期,約為實(shí)時(shí)運(yùn)算需求的15%。添加專用的特定應(yīng)用單元ASU (application specific unit)進(jìn)一步將這些功能的循環(huán)周期降至3個(gè)周期,而只增加200個(gè)門(mén)。上述結(jié)構(gòu)上的改變使最小時(shí)鐘頻率為1.5MHz,少于目標(biāo)頻率的一半。  

    對(duì)門(mén)電路數(shù)目和語(yǔ)音識(shí)別核功耗的優(yōu)化可以降低寄存器觸發(fā)器的數(shù)目。觸發(fā)器的開(kāi)銷很大(每個(gè)需要10個(gè)門(mén)電路),并消耗很大的功率。A|RT Designer的“壽命視圖(life-time view)”用來(lái)分析組成每個(gè)變量壽命的周期數(shù)目及變量被使用的頻率。通過(guò)在RAM中存儲(chǔ)不常使用但長(zhǎng)期有效的變量,即可降低寄存器的總數(shù),進(jìn)一步減小所需的硅片面積和功率。該措施節(jié)約了50%的寄存器門(mén)電路,同時(shí)為運(yùn)算周期預(yù)算留下充足的開(kāi)銷空間。  

RAM壓縮的實(shí)現(xiàn)  

    在設(shè)計(jì)初期,我們已經(jīng)明確30KB的RAM空間太緊張。參考SRS C代碼的每個(gè)聲紋譜(約為1秒鐘的語(yǔ)音)字占用大約1-2KB,相當(dāng)于30條命令,這樣幾乎沒(méi)給中間結(jié)果SRAM留下任何空間。由于30KB的RAM占用了硅片相當(dāng)大的面積,因此在硅片預(yù)算中無(wú)法添加更多的RAM(圖2)。 

         

    整個(gè)芯片使用標(biāo)準(zhǔn)的0.35μm CMOS工藝制造,解決RAM空間問(wèn)題的唯一解決方案是采用某些形式的語(yǔ)音壓縮。  

    聲紋數(shù)據(jù)可用兩種方法壓縮:無(wú)損壓縮或有損壓縮。目前存在幾種以現(xiàn)有的標(biāo)準(zhǔn)C代碼源程序?yàn)榛A(chǔ),用C語(yǔ)言實(shí)現(xiàn)的無(wú)損壓縮方法。聲紋采樣數(shù)據(jù)可用作參考,最佳的無(wú)損算法可得到30%的壓縮率。采用有損壓縮,還能再壓縮20%,并且不明顯降低識(shí)別質(zhì)量。有損壓縮完全可以縮放,從而獲得依賴于實(shí)際聲紋長(zhǎng)度或詞匯表大小的可變壓縮率。由此得到的C代碼算法共500行,并對(duì)聲紋得到50%的壓縮率。下一步就可以集成語(yǔ)音壓縮和語(yǔ)音識(shí)別IP塊了。  

    然后只需將這500行代碼與10,000行SRS代碼合并,得到一個(gè)新功能子程序,在存儲(chǔ)聲紋或讀取RAM中的聲紋時(shí)調(diào)用。但程序的計(jì)算量相當(dāng)大,初始計(jì)算后約需要150萬(wàn)個(gè)時(shí)鐘周期,這與SRS處理所需的時(shí)間相當(dāng)。幸運(yùn)地是,有效時(shí)鐘頻率留出的近2.5 MHz能解決這個(gè)進(jìn)程問(wèn)題,而無(wú)需進(jìn)一步優(yōu)化。此壓縮方案將RAM需求降低到20-25KB,留出至少5KB用于處理器的中間結(jié)果存儲(chǔ)器之用。  

揚(yáng)聲器接口的實(shí)現(xiàn)  

    單電池電源管理偏置網(wǎng)絡(luò)、數(shù)模轉(zhuǎn)換器(DAC)和模擬放大器的要占用較大的芯片面積,而直接用C語(yǔ)言實(shí)現(xiàn)脈寬調(diào)制(PWM)揚(yáng)聲器驅(qū)動(dòng)程序可以解決這個(gè)問(wèn)題。  

    揚(yáng)聲器如何發(fā)音?C代碼可使用該公司的A|RT Builder “C-到-HDL”轉(zhuǎn)換工具直接轉(zhuǎn)換為VHDL。然后使用Exemplar的Leonardo Spectrum加以合成,并映射到Xilinx的Virtex FPGA,采用Xilinx FPGA主板,就能將揚(yáng)聲器同2個(gè)數(shù)字輸出直接相連,啟動(dòng)開(kāi)關(guān),即可測(cè)聽(tīng)音效了。  

RTL描述的生成  

    當(dāng)工程人員對(duì)語(yǔ)音識(shí)別SoC的性能和結(jié)構(gòu)感到滿意時(shí),就可使用A|RT Designer工具自動(dòng)生成用于最終硅片的RTL VHDL語(yǔ)言描述。該工具自動(dòng)為控制器生成RTL代碼及微代碼、RAM、ROM和數(shù)據(jù)通路功能。另外A|RT Designer工具在設(shè)計(jì)流的每個(gè)階段自動(dòng)生成測(cè)試基準(zhǔn),因此原始的浮點(diǎn)算法仿真可與浮點(diǎn)C和HDL方案中的仿真媲美。VHDL仿真與原始的浮點(diǎn)C代碼嚴(yán)格對(duì)應(yīng),這意味著SoC具有與浮點(diǎn)算法相同的精度。  

最終結(jié)構(gòu)  

    SRS ASIC所需的全部功能都集成在單芯片上(圖2)。另外所有為該SoC開(kāi)發(fā)的IP都可復(fù)用。SRS算法目前應(yīng)用于CR16B RISC核的DECT電話語(yǔ)音識(shí)別器上。數(shù)據(jù)壓縮功能也可復(fù)用,以進(jìn)一步增強(qiáng)專用可變位率ADPCM音頻壓縮代碼(VADPCM)。VADPCM同樣可用于SRS核,在不利用模擬元件的條件下,PWM算法及方案仍然能實(shí)現(xiàn)高品質(zhì)的音頻輸出。SRS實(shí)現(xiàn)方案本身在下一代產(chǎn)品中還可以修改。
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉