新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于麥克風陣列聲源定位系統的FPGA實現

        基于麥克風陣列聲源定位系統的FPGA實現

        作者: 時間:2011-05-24 來源:網絡 收藏

        2.4 本幀互功率譜模塊
        第一路信號FFT結果與第二路信號FFT結果的共軛相乘得到本幀互功率譜。
        若第一路是r1+i1,第二路是r2+i2,其共軛為r2-i2,相乘時可用式(6),式(7)所示的計算方法,這樣可以減少一次乘法運算,節省內部資源
        i.jpg
        其中,R和I是本幀互功率譜的實部和虛部;r1和r2是FFT結果的實部;i1和i2是FFT結果的虛部。
        2.5 頻域加權模塊
        本幀互功率譜乘以存放在ROM中的加權函數,使互相關函數峰值更加突出。調用內部乘法器模塊即可完成。
        2.6 功率譜平滑模塊
        對加權模塊結果,進行連續數幀的累加以平滑互功率譜,使峰值便于檢測。調用內部加法器模塊即可完成。
        2.7 反FFT模塊
        對平滑結果進行反FFT運算,求得互相關函數。根據FFT原理,反FFT運算可借助于FFT模塊計算。即將FFT運算中旋轉因子取倒數,最后的輸出乘以1/N就可以用來計算反FFT。為防止運算過程中發生溢出,可將1/N分配到每一級蝶形運算中。由于1/N=(1/2)M,所以每級的每個蝶形輸出支路均有一相乘因子1/2,即右移一位即可。
        2.8 峰值檢測模塊
        對FFT結果求模即是求j.jpg的值,然后求出其模值的峰值,即相應的語音信號時延值。
        2.9 定位算法模塊
        根據角度距離定位法,聲源相對原點的水平角θazimuth為
        k.jpg
        其中,a是麥克之間的間距;d是聲源到麥克對的距離差。
        聲源相對原點的仰角φelevation為
        l.jpg
        其中,a是麥克之間的間距;d是聲源到麥克對的距離差。
        由上可知,需要計算反余弦函數值確定出相應的角度值。反余弦函數是超越函數,可以用泰勒級數近似計算這個函數,但較為麻煩且精度不高,而CORDIC算法是由移位和加減運算組成,所以比較適合的實現,速度較快且具有較高的迭代精度。本使用高速9級流水線結構實現CORDIC算法。迭代關系如下
        m.jpg
        式(10)是迭代的初始條件,式(11)是根據本次坐標值判定下次迭代方向,式(12)~式(14)是下次迭代公式。
        算法經過數次迭代后θ的值即是*****。實際中使用9級迭代,可以得到7位精度。最小角度精度為0.111 905。

        3 模塊仿真和綜合報告
        Quartus II是Altera公司開發的綜合性PLD軟件,內嵌綜合器和仿真器,可以完成從設計輸入到硬件配置的完整PLD設計流程。而且具有運行速度快、界面統一、功能集中、易學易用等特點。
        本設計使用Quartus II8.0對各個模塊進行仿真驗證。通過仿真,驗證了各個模塊可以準確的工作,并完成了整個設計功能。選取Alte-ra公司Cyclone II系列中的EP2C35F484C8器件對整個程序進行時序仿真,其主要資源消耗為:總邏輯單元為3740/3 3216,總存儲單元為74 240/483 840,總管腳為387/475。總乘法器為16/35。仿真結果表明,本文所述實現方法結構可行,可以獲得良好的性能,其最高速率可以達到87.3 MHz,完全滿足要求。

        4 結束語
        本設計通過來實現整個系統,充分利用了Altera公司產品高速大容量開發靈活方便等優點,并使用QuartusⅡ開發環境所提供的庫資源,同時最大限度地利用和發揮了FPGA的優勢,從而簡化了系統設計,縮短了設計周期。

        本文引用地址:http://www.104case.com/article/191197.htm

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 蓝田县| 鄂伦春自治旗| 庄浪县| 商城县| 高要市| 新竹县| 麻江县| 和平区| 定陶县| 宁明县| 米脂县| 买车| 连南| 汉中市| 仁布县| 桂平市| 安仁县| 龙海市| 庆元县| 塔河县| 鄯善县| 镇安县| 新化县| 乡宁县| 百色市| 同江市| 萨迦县| 栖霞市| 轮台县| 九江市| 绥阳县| 武义县| 茂名市| 山阳县| 哈尔滨市| 临沭县| 和平县| 兴业县| 汶川县| 定西市| 简阳市|