999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SoPC的嵌入式語音處理系統的設計與實現

2009-05-12 03:14:34李穎宏趙俊桃
現代電子技術 2009年2期

李穎宏 趙俊桃

摘 要:介紹一種基于SoPC 技術實現的語音處理系統的設計方法。系統主要由Cyclone Ⅱ FPGA內嵌 Nios Ⅱ軟核處理器及音頻編/解碼芯片構成;通過構建嵌入式Linux操作系統來實現對音頻信號的采集和回放處理。詳細介紹通過SoPC Builder配置Nios Ⅱ嵌入式處理器、外圍設備及接口的過程,以及嵌入式Linux操作系統在SoPC系統上的移植過程。利用SoPC系統的可裁減性以及嵌入式系統的可移植性,可使該設計作為一個子系統應用在如網絡會議的視頻電話中,該方法對SoPC系統的開發研究具有較高的參考價值。

關鍵詞:片上系統;嵌入式Linux;音頻編碼;音頻解碼;軟核處理器

中圖分類號:TN912.3文獻標識碼:B

文章編號:1004 373X(2009)02 033 03

Design and Realization of the Embedded Audio Processing System Based on SoPC

LI Yinghong,ZHAO Juntao

(North China University of Technology,Beijing,100144,China)

Abstract:This paper introduces a scheme of designing audio process system based on implementation of SoPC technology.The system is mainly constituted by Cyclone Ⅱ FPGA which Nios Ⅱ soft core processor embedded in,and audio encode and decode chip.The realization of collecting and replaying of audio signal processing is formed by embedded Linux operating system.The paper introduces the process of configuring Nios Ⅱ embedded processors,peripherals and interface by SoPC Builder,and the transplant process of embedded Linux operating system in SoPC system.The characters of reducing of SoPC system and transplanting of embedded system make the design as a subsystem used in the video frequency telephone of network conference.This method has a high reference value for development and research of SoPC system.

Keywords:SoPC;embedded Linux;audio encode;audio decode;soft core processor

0 引 言

可編程的片上系統(System on Programmable Chip,SoPC)是現代計算機輔助設計技術、EDA技術和大規模集成電路技術高度發展的產物。它可以將處理器、存儲器、I/O接口、硬件協處理器和普通的用戶邏輯等系統設計需要的功能模塊都集成到1片FPGA芯片內部,實現MCU,DSP和FPGA 的完美結合,這將是未來嵌入式系統的發展趨勢[1],在儀器儀表、手持設備上有著廣闊的應用前景。

在此利用SoPC技術設計了語音處理系統,包括語音的采集和回放處理,該系統可以作為音視頻監控系統、VoIP 等系統的語音處理模塊。

1 系統構成方案

1.1 系統硬件構成

設計的嵌入式語音處理系統[2]的硬件結構如圖1所示[3]。系統的主控部分由Cyclone Ⅱ EP2C35系列FPGA芯片、外圍電路及語音編解碼芯片構成。EP2C35是Altera公司推出低成本FPGA芯片,該芯片具有33 216個邏輯單元(LE)、105個M4KB RAM塊、RAM總位數是483 840 b、4個鎖相環和35個嵌入式乘法器以及豐富外部擴展引腳。

Cyclone Ⅱ系列FPGA片內結構是以32 b Nios Ⅱ處理器作為核心,Nios Ⅱ處理器是Altera公司的第二代用戶可配置的、采用流水線技術、單指令流的32位RISC內嵌處理器,基于通用FPGA架構的軟CPU內核,其性能超過200 DMIPS。Nios Ⅱ處理器 內核有3種類型,分別是快速型、經濟型和標準型,用來滿足不同的設計要求[1,4]。

音頻部分主要由語音編解碼芯片TLV320AIC23和外部輸入/輸出器件構成;通過麥克風采集模擬音頻信號,經過AIC23轉換為數字音頻信號,由Nios Ⅱ處理器進行語音的存儲及傳輸;Nios Ⅱ處理器輸出的數字音頻信號經過AIC23轉換為模擬音頻信號,通過耳機播放。系統內部包括UART,以太網接口等可以方便地實現系統的擴展,實現諸如IP電話的系統設計。

1.2 主控芯片FPGA的配置

主控芯片FPGA的配置[5]是通過SoPC Builder在Cyclone Ⅱ FPGA開發平臺上實現的。根據需求,該系統主要配置如下:標準型Nios Ⅱ處理器、片上SDRAM MT46V16M16、以太網芯片LAN91C111,FLASH存儲器件AM29LV128M,SSRAM器件CY7C1380C,UART,JTAG UART,PLL鎖相環、定時器Timer,DMA,I2C,AIC23等控制器核。其中以太網芯片、FLASH存儲器件、SSRAM器件通過Avalon三態總線橋與Avalon Switch Fabric連接,所有的外圍接口通過Avalon Switch Fabric與Nios Ⅱ處理器連接。通過SoPC Builder添加的主要外圍接口如圖2所示。

系統添加外圍器件的控制核后,經過SoPC Builder定義生成系統,集成SoPC Builder 系統到Quartus Ⅱ工程,進行引腳分配,編譯硬件設計,生成配置文件.sof和.ptf文件。SoPC Builder是一個自動化的系統開發工具,能夠非常容易地在一個設計中加入Nios Ⅱ處理器以及其它外設接口[6]。

2 系統接口設計

系統主要模塊在FPGA 片內生成,外部接口主要是TLV320AIC23 與Cyclone Ⅱ EP2C35的硬件接口設計。

TLV320AIC23(AIC23)是TI公司的一款高性能的立體聲音頻編解碼器,設計中通過其自帶的A/D,D/A轉換器來完成模擬音頻信號的采樣和數字音頻信號的D/A 轉換工作;AIC23 中的模/數與數/模轉換器使用了多比特sigma-delta 工藝,并在內部集成了高采樣率的數字內插濾波器。該器件的數字傳輸字長可以是16,20,24,32 b,它支持8~96 kHz 的采樣率[7]。

AIC23內部有11 個配置寄存器,可通過控制接口來配置該器件的寄存器,AIC23的控制接口有SPI,I2C兩種規格[7-8]。模式終端狀態決定了控制接口的形式,在設計中MODE接數字地表示利用I2C控制接口對AIC23 傳輸控制數據。I2C總線是Philips公司開發的一種雙向兩線多主機總線,它能方便地實現芯片間的數據傳輸與控制。CS接數字地定義了在I2C總線上A IC23的7 b外設地址為“0011010”。該系統的I2C接口使用GPIO-I2C,即用2根通用的I/O口作為I2C時鐘線SCL和數據傳輸線SDA,通過軟件實現I2C協議。

AIC23芯片與數字系統的接口有右判斷模式、左判斷模式、I2S模式和DSP模式4種。設計中使用I2S數據傳送模式。I2S總線是飛利浦公司為數字音頻設備之間的音頻數據傳輸而制定的一種總線標準,廣泛應用于各種多媒體系統。數字音頻接口由時鐘信號BCLK、數據信號DIN和DOUT、同步信號LRCIN和LRCOUT組成。應當說明:BCLK在主動方式下是輸出,而在從動方式下是輸入。AIC23的IP 核包I2S發送/接收模塊、輸入/輸出FIFO存儲器模塊,AIC23的IP 核結構如圖3所示。

AIC23芯片與EP2C35系列FPGA的連接電路如圖4所示。通過I2C控制接口配置AIC23的11個寄存器;通過I2S總線讀寫音頻數據,讀寫音頻數據使用DMA方式。

系統的音頻信號采集原理:麥克風輸入的模擬音頻信號通過AIC23內部的A/D 轉換器轉換為數字音頻信號,通過I2S總線傳輸給輸入FIFO緩存區。當輸入FIFO緩存區存儲的數據達到設定值時,向DMA控制器請求DMA傳送,DMA控制器接受請求后就完成FIFO到SDRAM之間的數據傳送。當回放錄音數據時:通過SDRAM控制器將SDRAM中保存的音頻數據經輸出FIFO緩存區送到I2S總線,再由AIC23進行D/A轉換,將數字音頻信號還原成為模擬音頻信號通過耳機播放。

3 系統軟件設計

該語音處理系統軟件設計是在Linux操作系統中完成的。

3.1 μClinux操作系統移植

μClinux是針對控制領域的嵌入式Linux操作系統,適合如Nios Ⅱ處理器等不具備內存管理單元(MMU) 的微處理器/微控制器。基于操作系統進行的軟件開發,需將操作系統移植到硬件平臺[9],μClinux可以以部件的形式集成到SoPC 系統中,也可以在用虛擬機運行的Linux下進行μClinux的交叉編譯,此設計中使用后一種方法。

(1)建立編譯環境。

安裝虛擬機、redhat9、Nios Ⅱ的交叉編譯工具鏈(ToolChain) nios2gcc.tar.bz2及nios2libs.tar.bz2,μClinux的代碼包μClinux-dist-20070130.tar.gz及一個針對Nios Ⅱ處理器的補丁包μClinux-dist-20070130-nios2-02.diff.gz。

(2)內核的配置與編譯,按如下順序進行:

make menuconfig //配置內核將quartus工程目錄下的

voip_nios.ptf拷貝到/home/taozi目錄下,

make vendor_hwselect SYSPTF=“/home/taozi/sys.ptf ” //按照提示配置硬件系統

make romfs //編譯內核建立起romfs文件樹,

make //編譯系統

make linux image //內核文件vmlinux和romfs連接起來

生成目標內核文件zImage

(3) 啟動μClinux 系統。

將zImage傳回Windows,下載.sof配置文件后再下載zImage,通過nios2-terminal啟動μClinux 系統。連接串口,通過串口調試器即可看到系統的啟動信息。

3.2 語音處理的軟件設計[10]

移植完Linux 操作系統后,需要添加設計中使用到的編解碼芯片的驅動程序,系統會根據SoPC Builder生成的.ptf 文件將外圍器件的引腳及中斷信息生成Nios_system.h 文件,提供給各外圍器件的驅動程序。本設計中需要添加AIC23和I2C控制器的驅動程序[5]。

系統的語音處理程序流程圖如圖5所示,軟件設計實現語音的采集和回放,系統的軟件設計采用C 語言和Nios Ⅱ匯編語言混合編寫。為使AIC23 正常工作并產生預期效果,必須對其相應的寄存器進行配置。這里只列出對AIC23 芯片初始化設置時的部分代碼,AIC23是通過I2C總線進行初始化配置的。

AIC23 初始化的部分源代碼:

tlv320aic23b_write(client,15,0x000); /* RESET */

tlv320aic23b_write(i2c_client,1,0x119);

tlv320aic23b_write(i2c_client,2,0x1f9);

tlv320aic23b_write(i2c_client,3,0x1f9);

tlv320aic23b_write(client,6,0x00A);/* turn off DAC & mic input */

tlv320aic23b_write(client,7,0x042);/* i2s,16-bit,master mode */

tlv320aic23b_write(client,0,0x119);/* set gain on both channels to +3.0 dB */

tlv320aic23b_write(client,8,0x000);/* set sample rate to 48 kHz */

tlv320aic23b_write(client,9,0x001);/* activate digital interface */

4 結 語

該設計在Cyclone Ⅱ FPGA 開發平臺上配置硬件系統,在Linux操作系統在進行軟件設計,從而實現了對語音的采集與回放等基本音頻處理功能。SoPC系統的可裁減性以及嵌入式系統的可移植性等優點,使設計可以作為一個子系統應用在更大型的系統設計中,例如把G723.1 的編解碼算法移植到該系統中,則完全可以把該模塊嵌入到網絡會議的可視電話中作為語音處理模塊,因而有很好的應用前景和科研價值。

參考文獻

[1]李蘭英.Nios Ⅱ 嵌入式軟核SoPC 設計原理及應用.北京:北京航空航天大學出版社,2006.

[2]林振營,馬剛.基于Nios Ⅱ的SoPC 嵌入式系統開發解決方案.現代電子技術,2007,30(6):79-81.

[3]李鴻強,苗長云.自動語音記錄系f&(AVR S)的SoPC設計與實現.微計算機信息,2005,21(2):48-50,81.

[4]Altera Corp.Nios Ⅱ Processor Reference Handbook.2005.

[5]Altera Corp.Volume 5: Altera Embedded Peripherals.2005.

[6]Altera Corp.Quartus Ⅱ Version 6.0 Handbook.2005.

[7]TI Corp.TLV320AIC23B Data Manual.http:∥www.ti.com,2007.

[8]胡濤,陳超.TLV320AIC23B與TMS320DM642 的接口設計.儀表技術與傳感器,2006(6):36-37.

[9]劉淼.嵌入式系統接口與Linux 驅動程序開發.北京:北京航空航天大學出版社,2006.

[10]Altera Corp.Nios Ⅱ Software Developer′s Handbook.2005.

作者簡介 李穎宏 女,1968年出生,教授。研究方向為智能控制及現場總線技術應用。

趙俊桃 女,1984年出生,北方工業大學碩士研究生。研究方向為基于嵌入式系統的語音處理。

主站蜘蛛池模板: 日韩欧美亚洲国产成人综合| 四虎AV麻豆| 亚洲精品视频网| 五月六月伊人狠狠丁香网| 国产产在线精品亚洲aavv| 国产中文一区二区苍井空| 伊人无码视屏| 91九色视频网| 亚洲 成人国产| 亚洲中文字幕无码mv| 免费又爽又刺激高潮网址| 亚洲色欲色欲www网| 亚洲成在人线av品善网好看| 国产精品欧美日本韩免费一区二区三区不卡| 看国产毛片| 亚洲清纯自偷自拍另类专区| 91视频精品| www.亚洲一区| 久青草免费视频| 国产精品9| 亚洲成人精品| 国产欧美性爱网| 久久精品国产精品青草app| 中文字幕 91| 国产手机在线小视频免费观看| 国产呦精品一区二区三区下载| 日韩麻豆小视频| 国产后式a一视频| 丁香五月激情图片| 精品伊人久久久大香线蕉欧美| 国产内射一区亚洲| 伊人久久大香线蕉成人综合网| 99久久精品免费看国产免费软件| 丁香六月激情综合| 毛片在线看网站| 无码免费的亚洲视频| 国产日韩精品欧美一区喷| 波多野结衣AV无码久久一区| 亚洲黄色成人| 亚洲精品国产自在现线最新| 青青草原国产一区二区| 亚洲第一中文字幕| 永久在线精品免费视频观看| 毛片视频网| 无码有码中文字幕| 国产成人精品男人的天堂下载 | 国产精品一区在线观看你懂的| 欧美午夜在线视频| 亚洲中文无码av永久伊人| 99国产精品一区二区| 欧美成人日韩| 1769国产精品免费视频| 狠狠躁天天躁夜夜躁婷婷| 九九免费观看全部免费视频| 国产在线一区视频| 国产成人综合欧美精品久久| 久久综合九九亚洲一区| 播五月综合| 国产亚洲视频免费播放| 日韩精品亚洲一区中文字幕| 四虎影视无码永久免费观看| 国产一级在线观看www色| 国产人人射| 99久久国产综合精品2020| 黄片在线永久| 福利小视频在线播放| 免费一级毛片不卡在线播放| 欧类av怡春院| 综合网久久| 亚洲精品日产AⅤ| 亚洲天堂精品在线| 国产高潮流白浆视频| 欧美成人免费| 在线中文字幕日韩| 在线观看无码av五月花| 国产成人精品视频一区二区电影 | 亚洲国产欧洲精品路线久久| 四虎成人精品| 91精品综合| 在线欧美a| 在线欧美日韩国产| 免费国产不卡午夜福在线观看|