上海理工大學光電學院 簡獻忠 曹 毅
基于TMS320VC5502的數(shù)字音箱處理器設計
上海理工大學光電學院 簡獻忠 曹 毅
以DSP芯片TMS320VC5502和微控制器STC89LE516RD+為核心構建系統(tǒng)平臺,給出了硬件和軟件設計。詳細闡述了TMS320VC5502與音頻CODEC芯片CS42516的接口設計,并介紹了部分功能模塊設計。
TMS320VC5502;CS42516;數(shù)字信號處理;音頻處理
圖1為本文設計的數(shù)字音箱處理器功能示意圖??梢娖浼闪藬U聲系統(tǒng)中多種周邊處理設備,包含噪聲門(Gate)、壓限器(Limit)、均衡器(PEQ)、分頻器(Divide)、延時器(Delay)等,它對多路的輸入信號進行路由、擴聲、混音、音質(zhì)音效處理,以滿足現(xiàn)場的動態(tài)范圍、幅頻特性調(diào)整需求,因此數(shù)字音箱處理器是一種多功能的音箱管理系統(tǒng)。
其主要性能指標是精度,而算法的復雜度與穩(wěn)定性決定了系統(tǒng)的可實現(xiàn)性。CS42516是CIRRUS LOGIC的一款高性能音頻CODEC芯片,它提供2通道的ADC和6通道的DAC,高達110dB DAC/114dB ADC的動態(tài)范圍、192KHz的采樣率,為系統(tǒng)提供了精度保障。TMS320VC5502是TI公司的一款低功耗高性能的16位定點數(shù)字信號處理器,它高達300MHz的工作頻率、強大的并行功能及豐富的片上外設為實現(xiàn)復雜的語音算法提供了可能。為實現(xiàn)圖1中的多功能、多路音頻處理,對各功能模塊算法進行分析、簡化、優(yōu)化,最終實現(xiàn)了一款高性價比的數(shù)字音箱處理器。
系統(tǒng)硬件組成如圖2所示,由DSP芯片、微控制器、音頻編解碼器、SDRAM、E2PROM、LCD、和按鍵組成。
微控制器STC89LE516RD+為系統(tǒng)的控制核心。它通過RS232與上位機通信,通過DSP的HPI口與DSP通信,模擬IIC總線與音頻編解碼器、E2PROM通信,模擬SPI總線驅(qū)動LED,并通過I/O驅(qū)動LCD和按鍵。通過上位機軟件可實現(xiàn)友好人機交互,也可通過按鍵與LCD顯示菜單配合使用對系統(tǒng)進行設置,LED用來指示系統(tǒng)音量、靜音等信息,E2PROM用來保存出廠設置和用戶設置等信息。其中E2PROM選用CAT1161,利用它的復位控制和看門狗功能可實現(xiàn)系統(tǒng)自動復位。
DSP芯片TMS320VC5502為系統(tǒng)的運算核心。它通過HPI口裝載來自STC89LE516RD+的代碼實現(xiàn)自舉,并存取各算法模塊運行參數(shù);通過音頻數(shù)據(jù)接口存取CODEC芯片CS42516的音頻數(shù)據(jù)。圖3為音頻數(shù)據(jù)流示意圖,圖4為TMS320VC5502與CS42516音頻接口連線圖。
圖5為TMS320VC5502的McBSP傳輸時序與CS42516音頻數(shù)據(jù)傳輸時序?qū)Ρ取D5中McBSP設置為通常模式,對比可發(fā)現(xiàn)McBSP在FSXR的上升或者下降沿開始一幀數(shù)據(jù)的傳輸,而CS42516用CX_LRCLK的高低電平區(qū)分音頻數(shù)據(jù)的左右聲道。經(jīng)測試CS42516的CX_LRCLK高低電平分別包含固定的32個CX_SCLK,故FSXR的上升或者下降沿后將包含64個CLKXR時鐘。為使DSP能區(qū)分左右聲道數(shù)據(jù),其McBSP的每幀數(shù)據(jù)應包含兩個32位字對應左右聲道數(shù)據(jù)。系統(tǒng)音頻數(shù)據(jù)寬度為24位,CS42516音頻數(shù)據(jù)格式設置為IIS 24位模式,McBSP設置為每幀2字、每字32位,DMA設置為每元素32位;當音頻數(shù)據(jù)寬度為16位時,CS42516音頻數(shù)據(jù)格式設置為右對齊16位模式,McBSP設置不變,DMA設置為每元素16位。
圖7為主程序流程圖,在DSP的接受和發(fā)送緩存之間實現(xiàn)了圖1所示各功能模塊。
噪聲門、壓限器屬于動態(tài)范圍調(diào)整處理,其設計思想如圖6所示。其電平檢測可化為幀電平絕對值和平均。在其靜態(tài)特性處理環(huán)節(jié)將出現(xiàn)對數(shù)運算,可采用泰勒級數(shù)展開法,也可采用查表法。泰勒級數(shù)展開法提供較高精度,查表法運算效率高。
均衡器、分頻器屬于頻幅特性調(diào)整。為簡化設計,濾波器均采用TI提供的庫函數(shù)“IIR32”,對其進行數(shù)據(jù)位數(shù)擴展,并添加溢出處理機制即可滿足需求。由于篇幅有限,僅給出部分擴展后代碼,如圖8所示。
本文設計了一款多功能、多通道處理的數(shù)字音箱處理器,詳細介紹了其音頻接口設計,
并介紹了部分功能模塊設計。系統(tǒng)簡單、高效對同類型產(chǎn)品開發(fā)具有一定的借鑒意義。
[1]Texas Instruments TMS320C55x Manuals.
[2]CIRRUS LOGIC CS42516 Data Sheet.
[3]祁才君,王培良.基于ADSP-21262的數(shù)字壓限器設計[J].聲器件與電路,2008,32(3):23-25.
[4]張雄偉.曹鐵勇.DSP芯片的原理與開發(fā)應用[M].北京:電子工業(yè)出版社,2004.
[5]王天寶.數(shù)字調(diào)音系統(tǒng)的研究與實現(xiàn)[D].大連理工大學碩士學位論文,2010.
簡獻忠(1969—),男,上海理工大學光電學院副教授,碩士生導師。
曹毅(1982—),男,上海理工大學光電學院在讀研究生。