基于FPGA的音頻編解碼芯片接口設計
摘 要:24位立體聲音頻編解碼芯片WM8731因其高性能、低功耗等優(yōu)點(diǎn)在很多音頻產(chǎn)品中得到了廣泛應用。介紹了其基于FPGA的接口電路的設計,包括芯片配置模塊與音頻數據接口模塊等,使得控制器只通過(guò)寄存器就可以方便地對其進(jìn)行操作,而不需要考慮其接口電路復雜的時(shí)鐘時(shí)序問(wèn)題,從而有效地降低了利用此芯片的難度。整個(gè)設計以VHDL和Verilog HDL語(yǔ)言在Max+Plus Ⅱ里實(shí)現,并進(jìn)行了驗證,結果表明能滿(mǎn)足使用者的要求且操作簡(jiǎn)單。對其他編解碼芯片的接口設計也有一定的參考作用。
關(guān)鍵詞:WM8731;FPGA;接口設計;音頻編解碼芯片
1 概 述
WM873l是一款功能強大的低功耗立體聲24位音頻編解碼芯片,其高性能耳機驅動(dòng)器、低功耗設計、可控采樣頻率、可選擇的濾波器使得WM8731芯片廣泛使用于便攜式MP3,CD,PDA的場(chǎng)合。其結構框圖如圖1所示。
WM8731包含2個(gè)線(xiàn)路輸入和1路麥克風(fēng)輸入并可以進(jìn)行音量調節;內置片上ADC(模擬數字轉換器)及可選擇的高通數字濾波器;采用高品質(zhì)過(guò)采樣率結構的DAC(數字模擬轉換器);線(xiàn)路輸出和耳機輸出;內置晶體振蕩器以及可配置的數字音頻接口和2或3線(xiàn)可選的微處理器控制接口等??刂破骺赏ㄟ^(guò)控制接口(Control Interface)對WM8731進(jìn)行配置,然后通過(guò)數字音頻接口(Digtal Audio Interface)讀寫(xiě)數據音頻信號。本文設計了一種基于FPGA的驅動(dòng)模塊,將WM8731的控制接口與數字音頻接口轉換為控制器通用的總線(xiàn)接口,使控制器可以像讀寫(xiě)外部寄存器一樣對WM8731芯片進(jìn)行控制使用。
2 WM8731芯片接口時(shí)序介紹
2.1 控制接口時(shí)序
WM8731的控制接口有4根引腳,分別為:MODE(控制接口選擇線(xiàn))、CSB(片選或地址選擇線(xiàn))、SDIN(數據輸入線(xiàn))和SCLK(時(shí)鐘輸入線(xiàn))。它具有2線(xiàn)和3線(xiàn)兩種模式。2線(xiàn)為MPU接口,3線(xiàn)為兼容SPI接口。對控制接口的配置選擇可通過(guò)設置MODE腳的狀態(tài)完成。選擇MODE為0時(shí)為2線(xiàn)模式,1時(shí)為3線(xiàn)模式。本文采用2線(xiàn)模式對WM8731進(jìn)行控制。其時(shí)序圖如圖2所示。
2.2 數字音頻接口時(shí)序
WM8731的數字音頻接口有5根引腳,分別為:BCLK(數字音頻位時(shí)鐘)、DACDAT(DAC數字音頻數據輸入)、DACIRC(DAC采樣左/右聲道信號)、ADC-DAT(ADC數字音頻信號輸出)、ADCLRC(ADC采樣左/右聲道信號)。
數字音頻接口可以工作在主模式和從模式下。地址為0000111的寄存器的第6位設置數據的主/從模式:“1”為主模式,“0”為從模式。ADCDAT、/DACDAI和ADCLRC/DACLRC與位時(shí)鐘BCIK同步,在每個(gè)BCLK的下降沿進(jìn)行一次傳輸。BCLK和ADCLRC/DACLRC在主模式時(shí)為輸出信號,從模式下為輸入信號。DAC-DAT始終為輸入信號,ADCDAT始終為輸出信號。
評論