基于FPGA的嵌入式音頻處理系統(tǒng)設(shè)計
在SPB 基礎(chǔ)上搭建訪問NB 3000 開發(fā)板的音頻接口,并對音頻流數(shù)據(jù)進(jìn)行處理的軟件平臺文件(SwPlat-form),如圖3所示.
本文引用地址:http://butianyuan.cn/article/246209.htm?
?
NB 3000開發(fā)板上的音頻編解碼器為CS4270,因此圖3 中選擇CS4270 Audio Codec Driver模塊,不需要再自行編寫音頻編解碼器的驅(qū)動代碼.設(shè)計采用SPI作為配置和控制,I2S用來傳輸數(shù)字音頻數(shù)據(jù)流.因此軟件平臺文件的底層設(shè)計選擇了I2S Master Controller和SPI Master Controller 模塊.中間層設(shè)計選擇了I2SDriver.SPI Driver和CS4270 Audio Codec模塊.軟件平臺文件使硬件外圍設(shè)備的訪問變得容易,底層模塊為特定的外圍設(shè)備提供了配置數(shù)據(jù)和驅(qū)動代碼.設(shè)計軟件平臺文件時,選擇什么樣的模塊,取決于設(shè)計中需要訪問哪些外圍設(shè)備.
2.3 嵌入式代碼設(shè)計
FPGA嵌入式系統(tǒng)設(shè)計中,嵌入式工程是“嵌在”微處理器中的.嵌入式代碼就是在軟件平臺構(gòu)建器上搭建的軟件平臺的基礎(chǔ)上完成的軟件編程.嵌入式工程中的軟件代碼,主要完成音頻數(shù)據(jù)流的獲取.音頻數(shù)據(jù)流的處理和將處理好的音頻數(shù)據(jù)流送到NB 3000開發(fā)板的喇叭上.主要程序代碼如下:
?
?
?
?
3 設(shè)計總結(jié)
將嵌入式設(shè)計文件下載到智能開發(fā)平臺NanoBoard 3000上的FPGA 器件后,利用音頻線將電腦或者音箱的音頻源送到NanoBoard 3000的音頻輸入接口,就能從喇叭上聽到處理后的音頻效果.設(shè)計過程表明,AD的軟件平臺構(gòu)建器(SPB)為FPGA嵌入式設(shè)計訪問硬件電路相關(guān)外圍設(shè)備提供了底層軟件驅(qū)動提供了便利.通過搭建軟件平臺,調(diào)用IP模塊,避開了對于底層硬件的驅(qū)動程序的編寫,只要掌握高級C語言就可以方便地對外圍設(shè)備進(jìn)行編程,簡化了嵌入式代碼的編寫,縮短了FPGA嵌入式設(shè)計的開發(fā)時間。
評論