在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > Kaiman濾波算法在FPGA上的設(shè)計(jì)與實(shí)現(xiàn)

            Kaiman濾波算法在FPGA上的設(shè)計(jì)與實(shí)現(xiàn)

            作者: 時(shí)間:2012-05-07 來(lái)源:網(wǎng)絡(luò) 收藏

            Kalman濾波理論在20世紀(jì)60年代一經(jīng)提出,便得到了軍事、控制、通信等領(lǐng)域的極廣泛的應(yīng)用。它可以實(shí)現(xiàn)隨機(jī)干擾下的線性動(dòng)態(tài)系統(tǒng)的最優(yōu)估計(jì),目前Kalman濾波器的實(shí)現(xiàn)方式主要有兩種,一是在PC機(jī)上實(shí)現(xiàn),可以同時(shí)滿足計(jì)算精度和實(shí)時(shí)性的要求,但是PC機(jī)體積大,質(zhì)量重,成本高;二是通過(guò)DSP等芯片來(lái)實(shí)現(xiàn),用這種方式實(shí)現(xiàn)的Kalman濾波器雖然體積小,質(zhì)量輕,但是因其指令順序執(zhí)行的CPU架構(gòu),在系統(tǒng)復(fù)雜時(shí)無(wú)法滿足系統(tǒng)的實(shí)時(shí)性要求。隨著控制系統(tǒng)的復(fù)雜性的提高,系統(tǒng)的階次變大,如組合導(dǎo)航系統(tǒng)的濾波,其濾波的階次一般都要18階,如果對(duì)系統(tǒng)進(jìn)一步細(xì)化建?;蛟黾悠鋸?fù)雜性,其濾波階次可以達(dá)到幾十階。因此,Kalman濾波器在工程應(yīng)用中的實(shí)現(xiàn)遇到了系統(tǒng)體積、重量、成本和系統(tǒng)精度、速度等性能不能兼顧的問(wèn)題。隨著現(xiàn)代電子技術(shù)的發(fā)展,具有系統(tǒng)結(jié)構(gòu)和邏輯單元靈活、集成度高以及適用范圍寬等特點(diǎn),可以很好地解決這個(gè)難題。因?yàn)?a class="contentlabel" href="http://www.biyoush.com/news/listbylabel/label/FPGA">FPGA采用的是硬件并行算法,能很好的解決速度和實(shí)時(shí)性的問(wèn)題,并且其具有靈活的可配置特性和優(yōu)良的抗干擾能力,使得構(gòu)成的數(shù)字信號(hào)處理系統(tǒng)非常易于修改、測(cè)試及硬件升級(jí)。隨著FPGA技術(shù)的不斷成熟,其內(nèi)嵌資源不斷豐富,硬核乘法器和塊RAM的數(shù)目不斷增長(zhǎng),使得FPGA實(shí)現(xiàn)復(fù)雜的數(shù)字信號(hào)處理算法變得更為簡(jiǎn)單和快速。因此,本文對(duì)FPGA技術(shù)和Kalman進(jìn)行結(jié)合研究,探索Kalman在FPGA中的實(shí)現(xiàn)方式并進(jìn)行性能驗(yàn)證,以對(duì)基于FPGA的Kalman的工程實(shí)現(xiàn)提供參考。

            本文引用地址:http://www.biyoush.com/article/190405.htm

            1 Kalman濾波算法理論

            Kalman濾波是在時(shí)域內(nèi)以信號(hào)的一、二階統(tǒng)計(jì)特性已知為前提、以均方誤差極小為判據(jù),能自動(dòng)跟蹤信號(hào)統(tǒng)計(jì)性質(zhì)的非平穩(wěn)變化,具有遞歸性質(zhì)的一種算法。它處理的對(duì)象是隨機(jī)系統(tǒng),并能正確估計(jì)出有用信號(hào)。設(shè)離散系統(tǒng)差分方程如下:

            則Kalman濾波方程組如下:

            狀態(tài)一步預(yù)測(cè)方程:

            從式(1)~(6)可知,若利用傳統(tǒng)的處理器實(shí)現(xiàn)Kalman濾波算法,由于其指令執(zhí)行的順序性,至少需要分為5步來(lái)實(shí)現(xiàn),其中每一步還都需要進(jìn)行至少1次的加法和乘法等運(yùn)算,每次運(yùn)算都要順序執(zhí)行,其執(zhí)行速度和效率很低;如果利用FPGA來(lái)進(jìn)行Kalman濾波,根據(jù)其各步的邏輯關(guān)系,可以分為3步來(lái)實(shí)現(xiàn),即第一步計(jì)算狀態(tài)一步預(yù)測(cè)值和一步預(yù)測(cè)均方誤差Pk+1/k,第二步計(jì)算濾波增益Kk+1,第三步計(jì)算狀態(tài)最優(yōu)估值和估計(jì)均方誤差Pk+1/k+1。由此可知,利用FPGA技術(shù)可以實(shí)現(xiàn)Kalman濾波的并行計(jì)算,壓縮計(jì)算時(shí)間,提高解算速度。因此,對(duì)FPGA的Kalman濾波進(jìn)行研究開(kāi)發(fā),可實(shí)現(xiàn)基于FPGA的快速Kalman濾波解算,滿足在對(duì)實(shí)時(shí)性要求更高的環(huán)境中使用。

            2 在FPGA中實(shí)現(xiàn)Kalman濾波算法研究

            由于FPGA實(shí)現(xiàn)Kalman濾波解算速度非???,若利用FPGA的串行口依次輸入觀測(cè)值,由于數(shù)據(jù)串行輸入的特點(diǎn),會(huì)使FPGA的解算部分等待數(shù)據(jù)接收完畢才能執(zhí)行濾波解算,導(dǎo)致整體的解算時(shí)間過(guò)長(zhǎng)。為檢驗(yàn)FPGA實(shí)現(xiàn)Kalman濾波器的計(jì)算性能,本文預(yù)先將觀測(cè)值輸入并保存于FPGA內(nèi)的ROM中,以使FPGA可以連續(xù)地進(jìn)行濾波解算,實(shí)現(xiàn)方案原理如圖1所示。

            圖1中,Kalman濾波解算在FPGA內(nèi)完成,RAM和ROM使用FPGA內(nèi)嵌的硬件RAM存儲(chǔ)器,其中RAM暫存每步的中間結(jié)果,ROM存放濾波中的固定系數(shù),如觀測(cè)矩陣、噪聲系數(shù)陣等。Kalman濾波的解算過(guò)程主要利用內(nèi)嵌的硬核乘法器等資源來(lái)完成。因解算速度較快,解算結(jié)果暫存于一個(gè)稍大的存儲(chǔ)器內(nèi),同時(shí)通過(guò)串行口輸出到PC機(jī)上保存用于分析。該方案的關(guān)鍵問(wèn)題是在FPGA中實(shí)現(xiàn)Kalman濾波算法。

            FPGA實(shí)現(xiàn)Kalman濾波器,其實(shí)質(zhì)就是控制數(shù)據(jù)的轉(zhuǎn)移和存儲(chǔ)并實(shí)現(xiàn)矩陣的相乘、加、減、求逆等運(yùn)算。其中,數(shù)據(jù)的轉(zhuǎn)移控制需要有限狀態(tài)機(jī)(FSM)來(lái)完成,同時(shí)FPGA設(shè)計(jì)中,不可避免的會(huì)遇到資源與速度的問(wèn)題。因此,需要對(duì)上述各關(guān)鍵技術(shù)進(jìn)行研究和實(shí)現(xiàn)。

            2.1 矩陣相乘在FPGA中的實(shí)現(xiàn)

            Kalman濾波計(jì)算中最基本的步驟就是矩陣相乘。對(duì)于其中最常見(jiàn)的D=A×B×C型的矩陣相乘,有兩種實(shí)現(xiàn)方式:方式一,分步相乘;方式二,直接相乘。事先將矩陣A,B,C分別存入ROM1,ROM2,ROM3中,方式一中,首先進(jìn)行兩個(gè)矩陣的相乘,多路選擇開(kāi)關(guān)MUX選通ROM1和ROM2,依次讀取其中的數(shù)據(jù)進(jìn)行乘加,完成前面兩個(gè)矩陣的相乘,結(jié)果存入ROMTEMP中;然后,MUX選通ROMTEMP和ROM3,利用前面同樣的資源,完成三個(gè)矩陣的連乘。方式二中,ROM1,ROM2,ROM3同時(shí)輸出數(shù)據(jù),MUX根據(jù)解算需要配置乘法器和加法器的輸入,所有的過(guò)程同時(shí)進(jìn)行。從上面的執(zhí)行過(guò)程可知,方式一的執(zhí)行需要占用更多的時(shí)間,而方式二的執(zhí)行會(huì)占用更多的資源。對(duì)于上述N階的3個(gè)矩陣相乘,其占用資源和所需時(shí)間如表1所示。

            由表1可知,對(duì)于維數(shù)越大的矩陣相乘,需要的浮點(diǎn)加法器越多。由于浮點(diǎn)加法器的生成利用FPGA內(nèi)的基本邏輯單元——可配置邏輯塊(CLB),所以其占用的CLB等資源也越多。這種現(xiàn)象在上述方式二中尤為突出。本文中研究擬先實(shí)現(xiàn)二階Kalman濾波器,階次較低,資源相對(duì)充足,為檢驗(yàn)FPGA實(shí)現(xiàn)Kalman濾波器的快速性,選用第二種方式進(jìn)行矩陣相乘,以得到最快的解算速度。


            上一頁(yè) 1 2 3 下一頁(yè)

            關(guān)鍵詞: Kaiman FPGA 濾波算法

            評(píng)論


            相關(guān)推薦

            技術(shù)專(zhuān)區(qū)

            關(guān)閉