《電子技術應用》
您所在的位置:首頁 > 可编程逻辑 > 设计应用 > 基于FPGA的语音录制与回放系统
基于FPGA的语音录制与回放系统
摘要: 0引言随着微电子技术的发展,系统集成向高速、高集成度、低功耗发展已经成为必然,同时SoPC技术也应用而生。SoPC将软硬件集成于单个可编程逻辑器件平台,使得系统设计更加简洁灵活。SoPC综合了SoC
關鍵詞: SoPC 语音录制 FPGA
Abstract:
Key words :

0 引言

隨著微電子技術的發展,系統集成向高速、高集成度、低功耗發展已經成為必然,同時SoPC技術也應用而生。SoPC將軟硬件集成于單個可編程邏輯器件平臺,使得系統設計更加簡潔靈活。SoPC綜合了SoC,PLD和FPGA的優點,集成了硬核和軟核CPU、OSP、存儲器、外圍I/O及可編程邏輯,用戶可以利用SoPC平臺自行設計高速、高性能的CPU和DSP處理器,使得電子系統設計進入一個嶄新的模式。
該設計運用SoPC技術實現嵌入式數字化語音錄制與回放。其中,介紹了在FPGA上構建WM8731的I2C總線,以及數字化語音在SRAM中的存儲,并利用Matlab 7.0.4軟件對所采集的語音數據進行仿真。SoPC是現在電子技術、電子系統設計的匯聚點和發展方向。充分體現了其高性能、設計靈活和易用等特點。

1 系統整體方案

系統以Altera公司的FPGA芯片(CycloneⅡ系列)EP2C35F672C6NK為平臺,結合音頻編/解碼芯片WM8731 實現語音錄制與回放。該FPGA芯片具有豐富的片內資源,大量的邏輯宏單元和多個硬件乘法器,大量的自定義I/O接口,此外還有4個鎖相環,為系統提供實時時鐘。設計中充分利用了FPGA的高速并行和Avalon總線自定義硬件外設的優勢,從而構建了一個高集成度、高性能的系統。
語音通過話筒輸入,由音頻編/解碼芯片WM8731以8 kHz的A/D采樣率轉換成16位PCM碼緩存。此外,為確保采集的語音數據不丟失,先將語音存儲在SRAM中,再作后續處理。整體系統框架圖1所示。

1.1 芯片工作原理

音頻編/解碼芯片WM8731上電后必須將工作模式設置在系統要求的狀態下,因此上電后需要用VERILOG HDL編寫程序模塊對芯片的工作模式進行設置。該語音編/解碼芯片有多種工作模式,A/D變換后,語音的采樣頻率與采樣位寬都需要根據系統的具體要求,合理配置。語音芯片的配置時序為I2C模式,芯片接口為主模式,即由WM8731提供位時鐘,A/D轉換和D/A轉換的左、右聲道控制相位時鐘,以及轉換后的數據PCM碼輸送給FPGA處理器。以下為芯片配置字列表,WM8731內部控制字寄存器有16個,在芯片初始化時,在制作ROM表格中完成。相應的程序設置如下:

1. 2 配置單元模塊

配置單元模塊綜合頂層圖如圖2所示。從程序編譯分析報告(見圖3)可以得出,該單元模塊消耗了101個邏輯單元,它作為語音采集模塊的一個子模塊。在配置電路中,模塊CLOCK_50將輸入的50 MHz系統時鐘分頻為1 MHz,作為I2C總線模塊的工作時鐘,CLOCK_50模塊中寫出的上面程序代碼是一個表格,存儲了配置的控制字。I2C總線模塊的I2C_SDAT和 I2C_SCLK是數據線和時鐘線,DE2板固定分配了專門的I2C數據線和時鐘線的引腳線。

 


1.3 語音采集模塊

語音采集單元頂層綜合模塊如圖4所示。系統通過語音采集模塊將語音芯片采集的聲音數據串/并轉換為16位PCM碼,聲音數據傳送至S- RAM存儲器內保存,這里設置了4 s錄音時間,用戶1次輸入3個孤立詞(如數字),4×8 KB=32 KB,考慮到32 KB的原始數據需要預處理、FIR濾波和歸一化。斷點檢測,所有處理后的數據仍然存入后續的SRAM地址中。檢測出的孤立詞分別存入獨立首地址后面。

1.4 語音采集實時采樣

鎖相環PLL給予WM8731工作在18.4 MHz時鐘頻率下,通過I2C總線控制器設置WM8731工作在8 kHz的采樣頻率下。圖5為在嵌入式邏輯分析儀(SignalTapⅡLogic Analyzer)下語音采集控制器的采樣圖。

 


圖5為實時采集圖,測試人現場讀入語音數據,模塊實時進行語音采集回放。從圖中可見,左對齊語音采集過程一共有19個脈沖,其中前16個脈沖為有效語音數據提取脈沖,后3個脈沖為將來處理擴展預留。有效語音提取出來之后便存人SRAM中。該模塊通過計數器,從啟動錄音開始,自動錄制4 s的語音信號。

2 語音錄制回放仿真

經WM8731采集的語音信號轉換并存儲于SRAM,然后用SRAM中的數據將SRAM的語音數據導出,圖6為語音采集模塊處理后作者錄入的數字符號“1234”效果圖。


圖6是通過DE2控制面板軟件讀取SRAM前256 KB數據(地址:O~0x1FFFF)在Matlab軟件上畫出來的圖形,同時為了對比,通過Matlab自帶的 [y,fs,bits]=wavread(‘Blip’,[N1 N2]),進行同樣話語的錄制,用sound(x,fs,bits)對聲音進行回放,仿真結果見圖6、圖7。從仿真圖可看出,以Matlab平臺為標準,FPGA實時采集與現實吻合。

3 結語

該系統充分利用了FPGA的高速處理能力,自行設計采集模塊和I2C協議驅動模塊,并通過AWALON總線掛載在Nios軟核上,很好地實現了實時高速采集回放,充分體現了FPGA的優越性能。同時結合SoPC設計理念,使系統一片式整合。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 午夜精品一区二区在线观看的| 99视频国产精品免费观看| 日韩中文字幕亚洲| 久久精品国产精品亚洲色婷婷| 国产精品美腿一区在线看| 少妇av一区二区三区无码| 国产精品视频免费在线观看| 欧美一区二区视频在线| 97精品国产97久久久久久粉红| 精品国产成人av在线免| 欧美 日韩 国产 在线观看| 日韩av不卡播放| 99久久99| 国产亚洲欧美一区二区三区| 免费久久99精品国产自| 亚洲高清视频一区| www国产精品com| 国产精品乱子乱xxxx| 国产日韩欧美日韩大片| 精品久久久91| 激情五月婷婷六月| 欧美激情国产日韩精品一区18| 欧美视频在线播放一区| 日本不卡一区| 青青草原av在线播放| 少妇免费毛片久久久久久久久| 亚洲中文字幕无码不卡电影| 国产男女激情视频| 久久国内精品一国内精品| 久久人人97超碰精品888| 欧美日韩不卡在线视频| 人妻少妇精品久久| 蜜桃av噜噜一区二区三区| 欧美激情在线一区| 精品中文字幕乱| 久久久精品在线视频| 久久国产精品99国产精| 狠狠干视频网站| 精品国偷自产在线视频| 国产精品视频yy9099| 99视频在线免费|