數字技術的應用幾乎已經滲透到現代科技的每一個角落,而數字音頻技術則是應用最廣泛的領域之一。現在大量的數字音頻設備已相當成熟,利用軟件在已有的硬件平臺上實現不同的功能已成為一種趨勢,軟件編程的靈活性給很多設備增加不同的功能提供了方便。和其它數字系統一樣,DSP系統具有許多模擬系統所不具備的優點,如靈活、可編程,支持時分復用,易于模塊化設計,可重復使用,可靠性高等。隨著DSP技術的發展,以DSP為內核的設備越來越多;贒SP技術的開發應用正在成為數字時代應用技術領域的潮流。 在實際生活中,當聲源遇到物體時一般會發生反射,反射的聲波和聲源聲波一起傳輸,聽者會發現反射聲波部分比聲源聲波慢一些從而形成回音。而現在,在已知一個數字音源后,也可以利用計算機,以數字方式通過計算來模擬回聲效應。簡單地講。就是在原聲音流中疊加延遲一段時間后的聲流來實現回音效果。如此產生的回音,我們稱之為數字回音。 1 主要器件介紹 本設計選用的TLV320AIC23是TI公司生產的一款高性能的多媒體數字語音編解碼器,它的內部ADC和DAC轉換模塊帶有完整的數字濾波器,其數據傳輸寬度可以是16位、20位、24位和32位,采樣頻率范圍為8~96 kHz,并可通過控制接口來編輯該器件的控制寄存器,同時可支持SPI和I2C兩種控制模式。TLV320AIC23的控制模式由MODEM管腳決定,本系統選用I2C模式。 TMS320VC5509A是TI公司C5000 DSP系列中的新一代產品。該DSP對C54X有很好的繼承性。并與C54x源代碼兼容,從而有效地保護用戶在軟件上的投資。TMS320VC5509A功耗低、成本低,并可在有限的功率條件下保持最好的性能。 2 系統方案設計 2.1 系統工作原理 該回音系統中的I2C接口模塊由串行數據SDA和串行時鐘SCL組成,SDA和SCL均為雙向接口。連接在同一總線上的I2C設備可以工作在多主線工作模式下。包括TMS320C55x DSP在內的每個I2C設備都有唯一的設備地址可供軟件尋址。其中,主設備用于發送時鐘并啟動數據傳輸,被主設備尋址的則為從設備。這些設備根據各自的功能,既可以作為發送器,也可以作為接收器。 當系統進行初始化配置時,DSP通過I2C總線將配置命令發送到TLV320AIC23,并在配置完成后TLVAIC23開始工作。 對于DSP的多通道緩沖串口(MCBSP)設置,由于TLV320AIC23采樣輸出的是串行數據,因此,需要協調好與之相配的DSP的串行傳輸協議。因而必須對DSP的串口進行正確設置。MCBSP串口一般可通過六個引腳讓數據通路和控制通路與外部設備相連。數據經MCBSP串口與外沒的通信一般通過DR和DX腳來傳輸,控制同步信號則由CLKX、CLKR、FSX、FSR等四引腳來完成。由于MCBSP串口的數據線DR和DX帶有緩存寄存器,而幀同步信號FSX、FSR以及時鐘信號CLKX、CLKR都具有可編程性,因此,它與TLV320A-IC23之間的接口設計非常靈活。從這些特點可以看到:將MCBSP串口設置為SPI模式,并使串口的接收器和發送器同步,然后由TLV320AIC23的幀同步信號LRCIN、LRCOUT啟動串口傳輸,同時將發送接收的數據字長設定為32 Bit (左聲道16Bit,右聲道16 Bit)單幀模式,就可以方便地實現與TLV320AIC23之間的無縫連接。 輸入語音信號時,TLV320AIC23先通過其中的AD轉換采集輸入的語音信號,每采集完一個信號便將數據發送到DSP的McBSP接口上,以便DSP可以讀取語音數據。每個數據均為16位無符號整數,左右通道各有一個數值。 語音信號輸出時,可由DSP將語音數據通過McBSP接口發送給TLV320AIC23,再由TLV320AIC23的DA器件將他們變成模擬信號輸出。 2.2 硬件電路設計 TLV320AIC23能在數字和模擬電壓下工作,并可與TMS320C55x DSP的I/O電壓兼容,因而能夠實現與C55x DSP的McBsP (多通道緩沖串口)端口的無縫連接,以使系統設計更加簡單。 系統中,TLV320AIC23的主時鐘11.2896MHz直接南DSP時鐘產生,MODE接數字地表示利用I2C控制接口來對TLV320AIC23數據進行傳輸控制。SCLK和SDIN是TLV320AIC23控制端口的移位時鐘和數據輸入端,它們將分別與TMS320VC5509的I2C模塊端口SCL和SDA相連。TMS320VC5509A的MCBSP0應工作在SPI模式下,這樣可使MCBSP0的接收器和發送器同步。收發時鐘信號CLKX0和CLKR0由TLV320AIC23的串行數據傳輸時鐘BCLK提供,并由TLV320AIC23的幀同步信號LRCIN、LRCOUT啟動串口數據傳輸,DX0和DR0分別與TLV320AIC23的DIN和DOUT相連,可用于完成DSP與TLV320AIC123之間的數字通信。 2.3 軟件設計 本系統的軟件主要由程序和數字回音處理程序兩部分組成。其中主程序主要完成系統的初始化,如EMIF(外部存儲器接口)、CPU頻率、TLV320AIC23的初始化等,結束之后,再循環調用數字回音模塊;數字回音模塊主要用于初始化語音緩沖區和工作變量、讀取語音數據并保存,然后根據延遲參數讀回保存數據,并根據音效參數與當前聲音混響把最后的語音數據輸出到McBSP0。 在對TLV320AIC23寄存器進行寫操作時,應注意: (1)在寫過一次I2C地址后,只能對一個寄存器進行寫操作,而不能一次性對所有寄存器進行寫操作。也就是說,在寫每個寄存器之前都要按部就班的寫一遍I2C地址。 (2)I2C模式下,數據是分為三個8 Bit寫入的,而TLV320AIC23有7位地址和9位數據,也就是說,需要把數據項上面的最高位補充到第二個8Bit中的最后一位。 (3)存對控制寄存器編程時,對應于每一次工作狀態的改變,不能僅僅修改某個寄存器的值,而要對這十個寄存器都重新寫入一遍,否則,系統將無法正常工作,而且應首先寫0到初始化寄存器以啟動初始化,同時還應塒所有寄存器進行復位處理。 2.4 系統效果的實現 編程過程中,在選擇需要制作數字回音時,同時可選擇設置兩個參數delay和effect。這樣,在產生回音時,就可分別調整這兩個參數,從而調整和控制回音的延時及響度。系統工作時,假如話筒里有聲音輸入,我們可以在聽筒里聽到兩個聲音,其中一個是原聲,而另一個就是制作的數字回音,數字回音的延時及強弱可由參數delay和effect決定。 如有必要,還可通過適當的程序設計,以在這個系統的基礎上實現二重回音、三重回音等,也可以模擬真實場景里的多重回音效果。 3 結束語 20世紀90年代以后,DSP芯片的發展突飛猛進。其功能日益強大,性價比也不斷上升,開發手段不斷改進。DSP芯片已成為集成電路中發展最快的電子產品。DSP芯片迅速成為眾多電子產品的核心器件,而DSP系統也被廣泛地應用于當今技術革命的各個領域,可以說,基于DSP技術的開發應用正在成為數字時代應用技術領域的一種潮流,本系統只是DSP系統應用的一個實例。 |