基于FPGA的語(yǔ)音錄制與回放系統(tǒng)
1.3 語(yǔ)音采集模塊
語(yǔ)音采集單元頂層綜合模塊如圖4所示。系統(tǒng)通過語(yǔ)音采集模塊將語(yǔ)音芯片采集的聲音數(shù)據(jù)串/并轉(zhuǎn)換為16位PCM碼,聲音數(shù)據(jù)傳送至S-RAM存儲(chǔ)器內(nèi)保存,這里設(shè)置了4 s錄音時(shí)間,用戶1次輸入3個(gè)孤立詞(如數(shù)字),4×8 KB=32 KB,考慮到32 KB的原始數(shù)據(jù)需要預(yù)處理、FIR濾波和歸一化。斷點(diǎn)檢測(cè),所有處理后的數(shù)據(jù)仍然存入后續(xù)的SRAM地址中。檢測(cè)出的孤立詞分別存入獨(dú)立首地址后面。
1.4 語(yǔ)音采集實(shí)時(shí)采樣
鎖相環(huán)PLL給予WM8731工作在18.4 MHz時(shí)鐘頻率下,通過I2C總線控制器設(shè)置WM8731工作在8 kHz的采樣頻率下。圖5為在嵌入式邏輯分析儀(SignalTapⅡLogic Analyzer)下語(yǔ)音采集控制器的采樣圖。本文引用地址:http://m.butianyuan.cn/article/191526.htm
圖5為實(shí)時(shí)采集圖,測(cè)試人現(xiàn)場(chǎng)讀入語(yǔ)音數(shù)據(jù),模塊實(shí)時(shí)進(jìn)行語(yǔ)音采集回放。從圖中可見,左對(duì)齊語(yǔ)音采集過程一共有19個(gè)脈沖,其中前16個(gè)脈沖為有效語(yǔ)音數(shù)據(jù)提取脈沖,后3個(gè)脈沖為將來(lái)處理擴(kuò)展預(yù)留。有效語(yǔ)音提取出來(lái)之后便存人SRAM中。該模塊通過計(jì)數(shù)器,從啟動(dòng)錄音開始,自動(dòng)錄制4 s的語(yǔ)音信號(hào)。
2 語(yǔ)音錄制回放仿真
經(jīng)WM8731采集的語(yǔ)音信號(hào)轉(zhuǎn)換并存儲(chǔ)于SRAM,然后用SRAM中的數(shù)據(jù)將SRAM的語(yǔ)音數(shù)據(jù)導(dǎo)出,圖6為語(yǔ)音采集模塊處理后作者錄入的數(shù)字符號(hào)“1234”效果圖。
圖6是通過DE2控制面板軟件讀取SRAM前256 KB數(shù)據(jù)(地址:O~0x1FFFF)在Matlab軟件上畫出來(lái)的圖形,同時(shí)為了對(duì)比,通過Matlab自帶的[y,fs,bits]=wavread(‘Blip’,[N1 N2]),進(jìn)行同樣話語(yǔ)的錄制,用sound(x,fs,bits)對(duì)聲音進(jìn)行回放,仿真結(jié)果見圖6、圖7。從仿真圖可看出,以Matlab平臺(tái)為標(biāo)準(zhǔn),FPGA實(shí)時(shí)采集與現(xiàn)實(shí)吻合。
3 結(jié)語(yǔ)
該系統(tǒng)充分利用了FPGA的高速處理能力,自行設(shè)計(jì)采集模塊和I2C協(xié)議驅(qū)動(dòng)模塊,并通過AWALON總線掛載在Nios軟核上,很好地實(shí)現(xiàn)了實(shí)時(shí)高速采集回放,充分體現(xiàn)了FPGA的優(yōu)越性能。同時(shí)結(jié)合SoPC設(shè)計(jì)理念,使系統(tǒng)一片式整合。
評(píng)論