《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于定點DSP處理芯片的語音信號的識別
基于定點DSP處理芯片的語音信號的識別
電子發(fā)燒友
摘要: 近年來,高性能數(shù)字信號處理芯片DSP(Digital Signal Process)技術的迅速發(fā)展,為語音識別的實時實現(xiàn)提供了可能,其中,AD公司的數(shù)字信號處理芯片以其良好的性價比和代碼的可移植性被廣泛地應用于各個領域。因此,我們采用AD公司的定點DSP處理芯片ADSP2181實現(xiàn)了語音信號的識別。
Abstract:
Key words :

  近年來,高性能數(shù)字信號處理芯片DSP(Digital Signal Process)技術的迅速發(fā)展,為語音識別的實時實現(xiàn)提供了可能,其中,ADI公司的數(shù)字信號處理芯片以其良好的性價比和代碼的可移植性被廣泛地應用于各個領域。因此,我們采用ADI公司的定點DSP處理芯片ADSP2181實現(xiàn)了語音信號的識別。

  1 語音識別的基本過程

  根據(jù)實際中的應用不同,語音識別系統(tǒng)可以分為:特定人與非特定人的識別、獨立詞與連續(xù)詞的識別、小詞匯量與大詞匯量以及無限詞匯量的識別。但無論那種語音識別系統(tǒng),其基本原理和處理方法都大體類似。一個典型的語音識別系統(tǒng)的原理圖如圖1所示。

  


 

  語音識別過程主要包括語音信號的預處理、特征提取、模式匹配幾個部分。預處理包括預濾波、采樣和量化、加窗、端點檢測、預加重等過程。語音信號識別最重要的一環(huán)就是特征參數(shù)提取。提取的特征參數(shù)必須滿足以下的要求:

  (1)提取的特征參數(shù)能有效地代表語音特征,具有很好的區(qū)分性;

  (2)各階參數(shù)之間有良好的獨立性;

  (3)特征參數(shù)要計算方便,最好有高效的算法,以保證語音識別的實時實現(xiàn)。

  在訓練階段,將特征參數(shù)進行一定的處理后,為每個詞條建立一個模型,保存為模板庫。在識別階段,語音信號經(jīng)過相同的通道得到語音特征參數(shù),生成測試模板,與參考模板進行匹配,將匹配分數(shù)最高的參考模板作為識別結果。同時,還可以在很多先驗知識的幫助下,提高識別的準確率。

  2 系統(tǒng)的硬件結構

  2.1 ADSP2181的特點

  AD公司的DSP處理芯片ADSP2181是一種16b的定點DSP芯片,他內部存儲空間大、運算功能強、接口能力強。有以下的主要特點:

  (1)采用哈佛結構,外接16.67MHz晶振,指令周期為30ns,指令速度為33MI/s,所有指令單周期執(zhí)行;

  (2)片內集成了80 kB的存儲器:16 kB字的(24b)的程序存儲器和16kB字(16b)的數(shù)據(jù)存儲器;

  (3)內部有3個獨立的計算單元:算術邏輯單元(ALU)、乘累加器(MAC)和桶形移位器(SHIFT),其中乘累加器支持多精度和自動無偏差舍人;

  (4)一個16b的內部DMA端口(1DMA),供片內存儲器的高速存取;一個8b自舉DMA(BDMA)口,用于從自舉程序存儲器中裝載數(shù)據(jù)和程序;

  (5)6個外部中斷,并且可以設置優(yōu)先級或屏蔽等。

  由于ADSP2181以上的特點,使得該芯片構成的系統(tǒng)體積小、性能高、成本和功耗低,能較好地實現(xiàn)語音識別算法

  2.2 系統(tǒng)的硬件結構

  在構成語音識別電路時,我們采用了ADSP2181的主從結構設計方式,通過IDMA口由CPU裝載程序。語音識別系統(tǒng)的硬件結構如圖2所示。

  

 

  在這種結構中,PC機為主CPU,ADSP2181為從CPU,由PC機通過IDMA口將程序裝載到ADSP2181的內部存儲器中。PC機總線通過CPLD譯碼,形成IRD,IWR,IAL,IS等控制信號,與ADSP2181的IDMA口相連。這樣,在ADSP2181全速運行時,主機可以查詢從機的運行狀態(tài),可以訪問到ADSP2181內部所有的程序存儲器和數(shù)據(jù)存儲器。這對程序的編譯和調試,以及語音信號的實時處理帶來了極大的方便。

  3 語音識別的DSP實現(xiàn)技術

  3.1 浮點運算的定點實現(xiàn)

  在語音識別的算法中,有許多的浮點運算。用定點DSP來實現(xiàn)浮點運算是在編寫語音識別程序中需要首先解決的問題。這個問題可以通過數(shù)的定標方法來實現(xiàn)。數(shù)的定標就是決定小數(shù)點在定點數(shù)中的位置。Q表示法是一種常用的定標方法。其表示機制是:

  設定點數(shù)是J,浮點數(shù)是)/,則Q法表示的定點數(shù)與浮點數(shù)的轉換關系為:

  浮點數(shù))/轉換為定點數(shù)x:x= (int)y×2Q;

  定點數(shù)z轉換為浮點數(shù)y:y =(float)x×2-Q。

  3.2 數(shù)據(jù)精度的處理

  用16b的定點DSP實現(xiàn)語音識別算法時,雖然程序的運行速度提高了,但是數(shù)據(jù)精度比較低。這可能由于中間過程的累計誤差而引起運算結果的不正確。為了提高數(shù)據(jù)的運算精度,在程序中采用了以下的處理方法:

  (1)擴展精度

  在精度要求比較高的地方,將計算的中間變量采用32b,甚至48b來表示。這樣,在指令條數(shù)增加不多的情況下卻使運算精度大大提高了。

  (2)采用偽浮點法來表示浮點數(shù)

  偽浮點法即用尾數(shù)+指數(shù)的方法來表示浮點數(shù)。這時,數(shù)據(jù)塊的尾數(shù)可以采用Q1.15數(shù)據(jù)格式,數(shù)據(jù)塊的指數(shù)相同。這種表示數(shù)據(jù)的方法有足夠大的數(shù)據(jù)范圍,可以完全滿足數(shù)據(jù)精度的要求,但是需要自己編寫一套指數(shù)和尾數(shù)運算庫,會額外增加程序的指令數(shù)和運算量,不利于實時實現(xiàn)。

  以上兩種方法,都可以提高運算精度,但在實際操作時,要根據(jù)系統(tǒng)的要求和算法的復雜度,來權衡考慮。

  3.3 變量的維護

  在高級語言中,有全局變量與局部變量存儲的區(qū)別,但在DSP程序中,所有聲明的變量在鏈接時都會分給數(shù)據(jù)空間。所以如果按照高級語言那樣定義局部變量,就會浪費大量的DSP存儲空間,這對數(shù)據(jù)空間較為緊張的定點DSP來說,顯然是不合理的。為了節(jié)省存儲空間,在編寫DSP程序時,最好維護好一張變量表。每進入一個DSP子模塊時,不要急于分配新的局部變量,應優(yōu)先使用已分配但不用的變量。只有在不夠時才分配新的局部變量。

  3.4 循環(huán)嵌套的處理

  語音識別算法的實現(xiàn),有許多是在循環(huán)中實現(xiàn)的。對于循環(huán)的處理,需要注意以下幾個問題:

  (1)ADSP2100系列DSP芯片中,循環(huán)嵌套最多不能超過4重,否則就會發(fā)生堆棧溢出,導致程序不能正確執(zhí)行。但在語音識別的DSP程序中,包括中斷在內的嵌套程序往往超過4重。這時不能使用DSP提供的do…unTIl…指令,只能自己設計出一些循環(huán)變量,自己維護這些變量。由于這時沒有使用DSP的循環(huán)堆棧,所以也不會導致堆棧溢出。另外,如果采用jump指令從循環(huán)指令中跳出,則必須維護好PC,LOOP和CNTR三個堆棧的指針。

  (2)盡量減少循環(huán)體內的指令數(shù)。在多重循環(huán)的內部,減少指令數(shù)有利于降低程序的執(zhí)行次數(shù)。這樣有利于減少程序的執(zhí)行時間、提高操作的實時性。

  3.5 采用模塊化的程序設計方法

  在語音識別算法的實現(xiàn)中,為了便于程序的設計和調試,采用了模塊化的程序設計方法。以語音識別的基本過程為依據(jù)進行模塊劃分,每個模塊再劃分為若干個子模塊,然后以模塊為單元進行編程和調試。在編寫程序之前,首先用高級語言對每個模塊進行算法仿真,在此基礎上再進行匯編程序的編寫。在調試時,可以采用高級語言與匯編語言對比的調試方式,這樣可以通過跟蹤高級語言與匯編語言的中間狀態(tài),來驗證匯編語言的正確性,并及時的發(fā)現(xiàn)和修改錯誤,縮短編程周期。另外,在程序的編寫過程中,應在關鍵的部分加上必要的注釋與說明,以增強程序的可讀性。

  在總調時,需要在各模塊中設置好相應的人口參數(shù)與出口參數(shù),維護好堆棧指針與中間變量等。

  3.6 利用C語言與匯編語言的混合編程

  現(xiàn)在,大多數(shù)的DSP芯片都支持匯編語言與C或C++語言的混合編程,ADSP2181也不例外。用C語言開發(fā)DSP程序具有縮短開發(fā)周期、降低程序復雜度的優(yōu)點,但是,程序的執(zhí)行效率卻不高,會增加額外的機器周期,不利于程序的實時實現(xiàn)。為此,在用C語言編寫語音識別算法時,我們采用了定點化處理技術。ADSP2181是16位定點處理器,定點化處理應注意以下幾個問題:

  (1)ADSP2181支持小數(shù)和整數(shù)兩種運算方式,在計算時應選擇小數(shù)方式,使計算結果的絕對值都小于1;

  (2)用雙字定點運算庫代替C語言的浮點庫,提高運算精度;

  (3)注意在每次乘加運算之后進行飽和操作,防止結果的上溢和下溢;

  (4)循環(huán)處理后的一組數(shù)據(jù)可能有不同的指數(shù),要進行歸一化處理,以便后續(xù)定點操作對指數(shù)和尾數(shù)部分分別處理。

  4 結 語

  用定點DSP芯片構成的語音識別系統(tǒng)有著廣泛的應用前景,在編寫語音識別算法時,對其進行定點化處理以及一些原則和方法對其他類似的算法也有著現(xiàn)實指導意義。在實際應用中,應注意根據(jù)DSP芯片的特點,對算法進行優(yōu)化,使得DSP芯片的性能得到充分的發(fā)揮。

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美调教vk| 一区国产精品| 免费观看一区| 久久精品国产精品亚洲| 亚洲欧美精品在线| 亚洲一区二区四区| 在线中文字幕不卡| 一区二区三区四区国产| 亚洲美女淫视频| 日韩亚洲欧美精品| 亚洲精品美女在线| 亚洲精品一区久久久久久| 亚洲精品久久久久久久久久久久| 久久精品人人| 亚洲国产精品一区二区www| 亚洲国产天堂久久国产91| 亚洲国内高清视频| 最近中文字幕日韩精品 | 日韩视频一区二区| 亚洲免费成人av电影| 亚洲精品影院在线观看| 99精品视频免费在线观看| 一本色道久久综合一区| 亚洲中无吗在线| 欧美一级片久久久久久久| 欧美亚洲视频| 久久久蜜桃精品| 免费精品视频| 欧美伦理一区二区| 欧美午夜精品久久久久免费视| 欧美一区日本一区韩国一区| 午夜在线播放视频欧美| 久久精品国产2020观看福利| 亚洲国产欧美国产综合一区| 亚洲乱码国产乱码精品精98午夜| 一本综合久久| 欧美影院成人| 麻豆精品视频在线观看| 狠狠色狠狠色综合| 欧美巨乳在线| 国产精品热久久久久夜色精品三区| 国产精品一区二区你懂的| 韩日在线一区| 亚洲乱码国产乱码精品精天堂| 亚洲图片欧洲图片av| 欧美一级视频| 亚洲精品中文字幕女同| 亚洲一区免费观看| 久久亚洲国产精品日日av夜夜| 欧美国产日韩一区| 国产精品一区免费视频| 亚洲高清色综合| 亚洲在线播放| 亚洲毛片av在线| 欧美一区二区三区视频在线观看 | 欧美在线日韩在线| 欧美mv日韩mv国产网站app| 欧美三级乱码| 国产亚洲精品aa午夜观看| 91久久精品美女高潮| 亚洲综合大片69999| 亚洲片在线观看| 亚洲一区日韩在线| 免费91麻豆精品国产自产在线观看| 欧美日韩在线播放一区二区| 国模私拍视频一区| 一本久久综合| 亚洲精华国产欧美| 欧美中文日韩| 欧美色123| **性色生活片久久毛片| 亚洲欧美区自拍先锋| 日韩视频一区二区三区在线播放 | 黑丝一区二区| 亚洲一区二区精品视频| 亚洲精品美女91| 久久久精品动漫| 欧美体内she精视频| 精品动漫3d一区二区三区| 亚洲一区影院| av不卡在线观看| 久久人人超碰| 国产日韩欧美在线视频观看| 日韩一区二区精品| 亚洲人成人一区二区三区| 久久久国产视频91| 国产精品亚发布| 99这里有精品| 亚洲精选国产| 麻豆av福利av久久av| 国产麻豆视频精品| 这里只有精品在线播放| 亚洲理论在线观看| 另类av导航| 国产一区二区三区精品久久久| 亚洲视频在线二区| 在线亚洲精品福利网址导航| 欧美成人dvd在线视频| 国产在线一区二区三区四区| 亚洲一区二区精品| 亚洲在线观看免费视频| 欧美日韩国产另类不卡| 亚洲黄色一区二区三区| 亚洲国产精品热久久| 久久天天狠狠| 韩日精品在线| 欧美一区二区视频观看视频| 欧美一级久久久| 国产精品视频免费一区| 亚洲视频精选在线| 亚洲天堂第二页| 欧美日韩伦理在线免费| 亚洲区免费影片| 91久久精品久久国产性色也91| 久久久久在线| 国产一区二区激情| 欧美一区日韩一区| 久久久久久亚洲综合影院红桃 | 99国产精品99久久久久久粉嫩| 99精品视频一区| 欧美日韩国产在线| 亚洲免费av电影| 亚洲图片欧美日产| 国产精品www网站| 在线视频欧美精品| 亚洲欧美卡通另类91av| 国产精品免费观看在线| 亚洲女性喷水在线观看一区| 欧美在线精品免播放器视频| 国产一区二区三区日韩| 亚洲福利一区| 欧美国产高潮xxxx1819| 亚洲精品中文字幕在线| 在线中文字幕一区| 欧美午夜宅男影院| 亚洲免费伊人电影在线观看av| 欧美在线观看视频一区二区| 国产一区二区你懂的| 亚洲国产另类 国产精品国产免费| 久久婷婷国产综合精品青草| 在线观看视频免费一区二区三区| 亚洲三级视频| 欧美色精品天天在线观看视频| 在线亚洲欧美| 久久精品一区中文字幕| 在线观看日产精品| 夜夜精品视频一区二区| 国产精品久久久久久久久久免费 | 中国av一区| 欧美亚男人的天堂| 亚洲欧美视频在线观看视频| 久久日韩粉嫩一区二区三区| ●精品国产综合乱码久久久久| 一本在线高清不卡dvd| 国产精品一卡二| 亚洲第一精品夜夜躁人人躁| 欧美丰满少妇xxxbbb| 中文精品99久久国产香蕉| 久久久精品国产免费观看同学 | 亚洲免费高清视频| 国产精品成人一区二区三区夜夜夜 | 国产精品99久久99久久久二8 | 日韩视频免费观看| 欧美一区二区成人6969| 在线播放中文字幕一区| 中文一区在线| 国内精品美女在线观看| 野花国产精品入口| 国产一区二区三区丝袜| 亚洲看片免费| 国产女同一区二区| 亚洲毛片视频| 国产亚洲精品bv在线观看| 日韩一区二区免费高清| 国产日韩欧美在线看| 99精品国产福利在线观看免费| 国产欧美亚洲视频| 99精品视频免费全部在线| 国产亚洲成精品久久| 中日韩高清电影网| 在线观看视频一区| 小黄鸭精品aⅴ导航网站入口 | 夜夜嗨av一区二区三区| 久久久免费观看视频| 艳妇臀荡乳欲伦亚洲一区| 久久综合九色欧美综合狠狠| 亚洲午夜精品久久久久久浪潮| 欧美大片免费观看| 欧美一区二区视频在线观看2020| 欧美日韩专区在线| 91久久线看在观草草青青| 国产精品在线看| 亚洲视频在线观看一区| 激情国产一区| 亚洲欧美日韩网| 亚洲人成小说网站色在线| 久久色在线观看| 亚洲免费视频一区二区| 欧美日韩精品一区二区在线播放 | 欧美劲爆第一页|