基于FPGA的音頻編解碼芯片接口設(shè)計(jì)
數(shù)字輸出支持4種音頻數(shù)據(jù)模式:右對齊、左對齊、I2S和DSP模式。通過對寄存器的不同配置,可以設(shè)置傳輸?shù)臄?shù)據(jù)格式。寄存器配置值如下:
寄存器地址0000111的1~0位設(shè)置音頻格式:“11”時為DSF’格式,“10”為I2S格式,“01”為左對齊格式,“00'’為右對齊格式。
3~2位設(shè)置字長:“11”時為32位,“10”為24位,“01”為20位,“00'’為16位。
這四種音頻格式都是高位(MSB)在前,16~32位。但32位數(shù)據(jù)不支持右對齊模式。
本文采用主模式的左對齊數(shù)據(jù)格式,左對齊數(shù)據(jù)格式傳輸如圖3:左對齊格式時,MSB在BCLK的第一個上升沿有效,緊接著是一個ADCLRC或DACLRC傳輸。本文引用地址:http://www.ex-cimer.com/article/192031.htm
3 WM8731芯片驅(qū)動的FPGA設(shè)計(jì)
3.1 驅(qū)動器的總體設(shè)計(jì)方案
本文設(shè)計(jì)驅(qū)動器在使用時的框圖如圖4所示。雙口RAM和驅(qū)動器一同連接在控制器的數(shù)據(jù)總線和地址總線上,控制器只需提供少量的控制線即可完成對音頻編解碼芯片wM8731的控制及數(shù)據(jù)交換功能。
驅(qū)動器內(nèi)部結(jié)構(gòu)框圖如圖5所示。控制部分提供驅(qū)動器與控制器之間的接口(包含有數(shù)據(jù)總線信號、地址總線信號和控制信號),同時產(chǎn)生控制字轉(zhuǎn)換單元和數(shù)字音頻接口單元的控制信號;內(nèi)部寄存器緩存控制字和狀態(tài)字;控制字轉(zhuǎn)化單元負(fù)責(zé)將控制字串行發(fā)送給WM8731,同時效驗(yàn)傳送信號;數(shù)據(jù)音頻接口單元完成WM8731與外部雙口RAM的串并轉(zhuǎn)換,實(shí)現(xiàn)對數(shù)字音頻信號的發(fā)送和接收功能。
驅(qū)
表l 狀態(tài)寄存器控制字的對應(yīng)定義
評論