国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的音頻信號采集處理系統(tǒng)設(shè)計

2016-05-18 04:47:26
電子制作 2016年18期
關(guān)鍵詞:寄存器移位時鐘

基于FPGA的音頻信號采集處理系統(tǒng)設(shè)計

李佳希 王才敏 北京航天控制儀器研究所通信系統(tǒng)事業(yè)部

本文介紹一種基于FPGA的音頻采集處理系統(tǒng)。系統(tǒng)以FPGA器件為控制核心,通過AD/DA控制模塊實現(xiàn)數(shù)據(jù)采集功能;通過SDRAM控制模塊實現(xiàn)對SDRAM的數(shù)據(jù)讀寫功能;通過FIR濾波器模塊,實現(xiàn)信號低通濾波處理功能。本設(shè)計具有速度快、成本低、體積小等優(yōu)勢。

FPGA;SDRAM讀寫;FIR濾波

引言

隨著微電子和信號處理技術(shù)的發(fā)展,數(shù)字音頻采集處理技術(shù)在眾多領(lǐng)域得到廣泛應(yīng)用,以FPGA為核心的音頻采集處理系統(tǒng),在現(xiàn)代數(shù)字系統(tǒng)設(shè)計中具有廣闊的應(yīng)用空間。

1.總體設(shè)計方案

系統(tǒng)總體設(shè)計方案如圖1所示,F(xiàn)PGA為系統(tǒng)的控制核心,負責控制AK4550和SDRAM芯片,使它們能夠按特定的時序工作,并且在需要的時候進行調(diào)用,也負責對采樣回來的信號進行濾波處理。AK4550負責對采集的音頻信號進行模數(shù)轉(zhuǎn)換。SDRAM負責數(shù)據(jù)的存儲。

2.硬件控制模塊

2.1 AD/DA控制模塊

AK4550分別采用兩路模擬信號輸入和輸出,使用簡單靈活。AK4550與FPGA之間通過I2S總線連接,其中MCLK是主時鐘,SCLK是移位時鐘,LRCK是幀時鐘,用于切換左右聲道數(shù)據(jù)。

AD/DA控制模塊主要由分頻模塊、I2S模塊、系統(tǒng)控制模塊和移位寄存器模塊4部分組成。

分頻模塊:由FPGA的時鐘分頻得到所需要的主時鐘信號MCLK,再由主時鐘分頻得到SCLK和LRCK信號。

I2S模塊:通過分頻得到的MCLK、SCLK和LRCK信號配置AK4550。當LRCK為高電平時,采集16位左聲道數(shù)據(jù);反之則采集16位右聲道數(shù)據(jù)。

圖1 系統(tǒng)結(jié)構(gòu)框圖

圖2 AK4550控制模塊原理圖

系統(tǒng)控制模塊:通過控制PWAD與PWDA來控制AK4550當前的工作狀態(tài),其中高電平代表工作,低電平代表空閑;通過控制DEM0和DEM1來選擇采樣頻率,本設(shè)計選擇將DEM0和DEM1同時置高,即采樣頻率選擇為32kHz。

移位寄存器模塊:由于采集的數(shù)據(jù)為16位,而芯片輸入輸出接口SDTI和SDTO均為1位,故需通過以SCLK為控制時鐘的計數(shù)器控制數(shù)據(jù)的傳輸,每檢測到16個SCLK上升沿信號進行一次數(shù)據(jù)傳輸。

2.2 SDRAM控制模塊

SDRAM控制模塊除了時鐘分頻、數(shù)據(jù)接口等部分外,主要由一個狀態(tài)機來實現(xiàn),整個狀態(tài)機根據(jù)需要設(shè)計了8個主要狀態(tài),分別為初始化狀態(tài)、空閑狀態(tài)、刷新狀態(tài)、激活狀態(tài)、讀、寫等待狀態(tài)、讀狀態(tài)和寫狀態(tài),通過時鐘上升沿時刻CS、CAS、RAS、WE的不同組合確定當前狀態(tài)。狀態(tài)機的工作流程為系統(tǒng)上電,對SDRAM進行初始化之后進入空閑狀態(tài),當收到寫命令時,觸發(fā)行激活,進入寫等待狀態(tài),執(zhí)行寫操作。同理當收到讀命令時,觸發(fā)行激活,進入讀等待狀態(tài),執(zhí)行讀操作。當準備打開新的行時進行預(yù)充電,與此同時,每當刷新時間到時,控制模塊進入自刷新狀態(tài)。

圖3 SDRAM控制模塊原理圖

如圖3所示,SDRAM控制模塊通過外部RD和WR信號控制SDRAM的讀寫,并通過地址輸入確定數(shù)據(jù)的內(nèi)容和存放位置。時鐘分頻模塊將外部晶振提供的時鐘信號CLKIN分頻得到MCLK時鐘信號;接口模塊負責數(shù)據(jù)接口DATA和SDRAM數(shù)據(jù)接口DQ之間的通信;狀態(tài)機模塊負責在各工作狀態(tài)提供相應(yīng)的CKE、CS、CAS、RAS、WE信號,使SDRAM按照正確的狀態(tài)運行。

3.信號處理模塊

在FPGA中實現(xiàn)FIR濾波器,首先要確定濾波器的階數(shù)及各階的系數(shù),本設(shè)計選擇了16位32階、截止頻率為1kHZ的低通濾波器。濾波器的主體部分由總控制器、加法樹、移位累加器、移位寄存器和位選1×16乘法器5個部分組成。

總控制器:總控制器有接受復(fù)位信號、產(chǎn)生位移時鐘、產(chǎn)生運算控制時鐘等功能。濾波器是16位的,再加一個移數(shù)時鐘脈沖,總共17個時鐘脈沖周期,所以運算控制時鐘是由一個17進制的計數(shù)器產(chǎn)生的。

移位寄存器:在一次序列運算結(jié)束后,原先存放x(n+1)的寄存器存入x(n+2),而原先存放x(n+2)的寄存器存入x(n+3),以此類推。原先存放x(n)的寄存器存入由AD控制器移位寄存器端口新進來的數(shù)據(jù)。

位選1×16乘法器:當運算控制時鐘信號到來時,數(shù)據(jù)h(n)的相應(yīng)位與x(n)相乘,并把結(jié)果送給加法樹。

加法樹:加法樹把所有加數(shù)兩個一組分別進行相加,然后將所得到的和值兩個一組繼續(xù)相加直到只剩下一個數(shù),即為所有數(shù)相加的和。

移位累加器:移位累加器將加法樹得出的結(jié)果進行逐個累加。

4.結(jié)論

按以上描述設(shè)計的基于FPGA的音頻信號采集處理系統(tǒng)經(jīng)過了FPGA下載驗證,正確配置了AK4550和SDRAM芯片,濾波器運行正常,存儲和播放聲音效果良好,播放無失真。本設(shè)計實現(xiàn)了AK4450和SDRAM在FPGA上的應(yīng)用及FIR濾波器的算法,提出了一種非DSP或單片機應(yīng)用的做法,提高了系統(tǒng)運行速度,節(jié)約了空間和成本。

[1]潘松、王國棟.VHDL實用教程.電子科技大學出版社,2001.7

[2]ALTERA SDR SDRAM Controller White Paper. http://www.altera.com,2002

猜你喜歡
寄存器移位時鐘
別樣的“時鐘”
古代的時鐘
Lite寄存器模型的設(shè)計與實現(xiàn)
再生核移位勒讓德基函數(shù)法求解分數(shù)階微分方程
大型總段船塢建造、移位、定位工藝技術(shù)
Σ(X)上權(quán)移位算子的不變分布混沌性
分簇結(jié)構(gòu)向量寄存器分配策略研究*
有趣的時鐘
時鐘會開“花”
多指離斷手指移位再植拇指25例
寿宁县| 塘沽区| 磐安县| 连江县| 大理市| 通化县| 锡林浩特市| 桦南县| 钟山县| 青海省| 郯城县| 临西县| 瑞安市| 长丰县| 宜春市| 津市市| 宁国市| 庆安县| 屏边| 武定县| 揭东县| 安达市| 赤水市| 曲阜市| 嘉善县| 迭部县| 图们市| 洛川县| 天长市| 大渡口区| 金湖县| 清新县| 甘谷县| 句容市| 利津县| 武功县| 游戏| 九江县| 普陀区| 日土县| 上思县|