基于SoC的音頻IP模塊設計
2 音頻IP模塊設計
音頻IP模塊,完成APB總線(xiàn)協(xié)議到IIS協(xié)議的轉換,實(shí)現音頻的輸出,并根據任務(wù)要求,設置各種寄存器和中斷輸出。音頻輸出模塊(APB_IIS)示意框圖,如圖4所示。本文引用地址:http://dyxdggzs.com/article/166847.htm
APB_IIS模塊由以下5個(gè)模塊組成:APB接口模塊,APB接口模塊主要是遵守AMBA協(xié)議,完成讀寫(xiě)數據的譯碼。符合APB協(xié)議完成寄存器讀寫(xiě),實(shí)現寄存器register_t的配置,狀態(tài)讀寫(xiě)。
寄存器模塊(register_t),完成各種功能寄存器的設置。register_t模塊,包含配置寄存器模塊(tx_config),屏蔽寄存器(tx_intmask),狀態(tài)寄存器(tx_instate),頻率配置寄存器模塊(tx_frequency),FIFO寫(xiě)數據地址(fifo_data)。
FIFO模塊(fifo_t),的功能是從一個(gè)高速時(shí)鐘域到低速時(shí)鐘域數據的緩沖,并產(chǎn)生標志信號,用于中斷產(chǎn)生。
IIS接口模塊(i2s_t),i2s_t模塊遵守IIS協(xié)議,并完成數據的輸出。
本模塊符合以下功能要求:
(1)傳輸音頻(Transmitter)模塊;
(2)主模式,由時(shí)鐘由外部提供(12 M);
(3)支持時(shí)序兩種模式音頻輸出;
(4)分頻器實(shí)現8/11/12/16/22.059/24./32/44.11/48(kHz)頻率數據傳輸;
(5)內部記數器完成16音頻數據的記數;
(6)數據的并串轉換。
中斷模塊(interrupt_generate),中斷信號是通過(guò)FIFO模塊的標志信號和屏蔽寄存器(tx_intmask)信號產(chǎn)生中斷信號給系統的中斷控制器。
3 仿真結果
圖5為APB接口邏輯讀寫(xiě)時(shí)序和IIS輸出時(shí)序的局部波形仿真。時(shí)序仿真證明符合規范和功能要求。
4 結束語(yǔ)
文中根據協(xié)議和實(shí)際需求設計一個(gè)APB轉IIS的模塊,具體描述了協(xié)議,功能規范,完成RTL代碼描述和功能驗證,得出正確可移植的音頻IP模塊。由于模塊是有各個(gè)分立的模塊單元組成,所以再根據實(shí)際需求修改模塊是非常容易的。
評論