基于SoPC的嵌入式語(yǔ)音處理系統的設計與實(shí)現
摘 要:介紹一種基于SoPC技術(shù)實(shí)現的語(yǔ)音處理系統的設計方法。系統主要由CyeloneⅡFPGA內嵌NiosⅡ軟核處理器及音頻編/解碼芯片構成;通過(guò)構建嵌入式Linux操作系統來(lái)實(shí)現對音頻信號的采集和回放處理。詳細介紹通過(guò)SoPCBuilder配置NiosⅡ嵌入式處理器、外圍設備及接口的過(guò)程,以及嵌入式Linux操作系統在SoPC系統上的移植過(guò)程。利用SoPC系統的可裁減性以及嵌入式系統的可移植性,可使該設計作為一個(gè)子系統應用在如網(wǎng)絡(luò )會(huì )議的視頻電話(huà)中,該方法對SoPC系統的開(kāi)發(fā)研究具有較高的參考價(jià)值。
關(guān)鍵詞:片上系統;嵌入式Linux;音頻編碼;音頻解碼;軟核處理器
0 引 言
可編程的片上系統(System on PrograromableChip,SoPC)是現代計算機輔助設計技術(shù)、EDA技術(shù)和大規模集成電路技術(shù)高度發(fā)展的產(chǎn)物。它可以將處理器、存儲器、I/O接口、硬件協(xié)處理器和普通的用戶(hù)邏輯等系統設計需要的功能模塊都集成到1片FPGA芯片內部,實(shí)現MCU,DSP和FPGA的完美結合,這將是未來(lái)嵌入式系統的發(fā)展趨勢,在儀器儀表、手持設備上有著(zhù)廣闊的應用前景。
在此利用SoPC技術(shù)設計了語(yǔ)音處理系統,包括語(yǔ)音的采集和回放處理,該系統可以作為音視頻監控系統、VoIP等系統的語(yǔ)音處理模塊。
1 系統構成方案
1.1 系統硬件構成
設計的嵌入式語(yǔ)音處理系統的硬件結構如圖1所示。系統的主控部分由CycloneⅡEP2C35系列FPGA芯片、外圍電路及語(yǔ)音編解碼芯片構成。EP2C35是Altera公司推出低成本FPGA芯片,該芯片具有33 216個(gè)邏輯單元(LE)、105個(gè)M4KB RAM塊、RAM總位數是483 840 b、4個(gè)鎖相環(huán)和35個(gè)嵌入式乘法器以及豐富外部擴展引腳。
CycloneⅡ系列FPGA片內結構是以32 b NiosⅡ處理器作為核心,NiosⅡ處理器是AItera公司的第二代用戶(hù)可配置的、采用流水線(xiàn)技術(shù)、單指令流的32位RISC內嵌處理器,基于通用FPGA架構的軟CPU內核,其性能超過(guò)200 DMIPS。NiosⅡ處理器內核有3種類(lèi)型,分別是快速型、經(jīng)濟型和標準型,用來(lái)滿(mǎn)足不同的設計要求。
音頻部分主要由語(yǔ)音編解碼芯片TLV320AIC23和外部輸入/輸出器件構成;通過(guò)麥克風(fēng)采集模擬音頻信號,經(jīng)過(guò)AIC23轉換為數字音頻信號,由NiosⅡ處理器進(jìn)行語(yǔ)音的存儲及傳輸;NiosⅡ處理器輸出的數字音頻信號經(jīng)過(guò)AIC23轉換為模擬音頻信號,通過(guò)耳機播放。系統內部包括UART,以太網(wǎng)接口等可以方便地實(shí)現系統的擴展,實(shí)現諸如IP電話(huà)的系統設計。
1.2 主控芯片FPGA的配置
主控芯片FPGA的配置是通過(guò)SoPC Builder在CycloneⅡFPGA開(kāi)發(fā)平臺上實(shí)現的。根據需求,該系統主要配置如下:標準型NiosⅡ處理器、片上SDRAMMT46V16M16、以太網(wǎng)芯片LAN91C111,FLASH存儲器件AM29LVl28M,SSRAM器件CY7C1380C,UART,JTAG UART,PLL鎖相環(huán)、定時(shí)器Timer,DMA,I2C,AIC23等控制器核。其中以太網(wǎng)芯片、FLASH存儲器件、SSRAM器件通過(guò)Avalon三態(tài)總線(xiàn)橋與Avalon Switch Fabric連接,所有的外圍接口通過(guò)AvaIon Switch Fabric與NiosⅡ處理器連接。通過(guò)SoPC Builder添加的主要外圍接口如圖2所示。
系統添加外圍器件的控制核后,經(jīng)過(guò)SoPC Builder定義生成系統,集成SoPC Builder系統到QuartusⅡ工程,進(jìn)行引腳分配,編譯硬件設計,生成配置文件.sof和.ptf文件。SoPC Builder是一個(gè)自動(dòng)化的系統開(kāi)發(fā)工具,能夠非常容易地在一個(gè)設計中加入NiosⅡ處理器以及其它外設接口。
2 系統接口設計
系統主要模塊在FPGA片內生成,外部接口主要是TLV320AIC23與CycloneⅡEP2C35的硬件接口設計。
TLV320AIC23(AI(223)是TI公司的一款高性能的立體聲音頻編解碼器,設計中通過(guò)其自帶的A/D,D/A轉換器來(lái)完成模擬音頻信號的采樣和數字音頻信號的D/A轉換工作;AIC23中的模/數與數/模轉換器使用了多比特sigma―delta工藝,并在內部集成了高采樣率的數字內插濾波器。該器件的數字傳輸字長(cháng)可以是16,20,24,32 b,它支持8~96 kHz的采樣率。AIC23內部有11個(gè)配置寄存器,可通過(guò)控制接口來(lái)配置該器件的寄存器,AIC23的控制接口有SPI,I2C兩種規格。模式終端狀態(tài)決定了控制接口的形式,在設計中MODE接數字地表示利用I2C控制接口對AIC23傳輸控制數據。I2C總線(xiàn)是Philips公司開(kāi)發(fā)的一種雙向兩線(xiàn)多主機總線(xiàn),它能方便地實(shí)現芯片間的數據傳輸與控制。CS接數字地定義了在I2C總線(xiàn)上A IC23的7 b外設地址為“0011010”。該系統的I2C接口使用GPIO一I2C,即用2根通用的I/O口作為I2C時(shí)鐘線(xiàn)SCL和數據傳輸線(xiàn)SDA,通過(guò)軟件實(shí)現I2C協(xié)議。
AIC23芯片與數字系統的接口有右判斷模式、左判斷模式、I2S模式和DSP模式4種。設計中使用I2S數據傳送模式。I2S總線(xiàn)是飛利浦公司為數字音頻設備之間的音頻數據傳輸而制定的一種總線(xiàn)標準,廣泛應用于各種多媒體系統。數字音頻接口由時(shí)鐘信號BCLK、數據信號DIN和DOUT、同步信號LRCIN和LRCOUT組成。應當說(shuō)明:BCLK在主動(dòng)方式下是輸出,而在從動(dòng)方式下是輸入。AIC23的IP核包I2S發(fā)送/接收模塊、輸入/輸出FIFO存儲器模塊,AIC23的IP核結構如圖3所示。
評論