基于FPGA的Kalman濾波器實現研究
3 性能對比及分析
為驗證本文研究利用FPGA實現Kalman濾波算法的性能,采用二階Kalman濾波器進行實際性能對比測試。建立數學模型如下:選取狀態轉移矩陣
對于該濾波器分別利用三種方式實現:采用Matlab在PC機上實現、利用DSP實現和利用FPGA實現。其中,PC機為DELL Dimension4700臺式機,安裝Matlab 7.0軟件;DSP選用雙精度浮點型TMS320C6713型號的芯片;FPGA型號為XC2VP30,主頻100 MHz,內嵌多達136個硬核乘法器和2 MB硬件RAM。為得到更準確合理的結果,分別截取第1~3次、11~13次、21~23次的計算結果來對比。因為在PC機上利用Matlab實現的Kalman濾波器通過軟件設置可以達到很高的計算精度,所以將其得到的結果作為標準值(真值),分別用FPGA實現和DSP實現的結果與其進行對比分析。選取估計均方誤差陣Pk+1/k+1的第一個元素來進行對比分析各實現方式的性能,其解算結果對比如表2和表3所示。本文引用地址:http://cqxgywz.com/article/190479.htm

由表2可知,利用FPGA實現的濾波結果,其精度與用Matlab實現的精度相差無幾,且略高于利用DSP實現的單精度的結果。由表3可知,在解算時間方面,利用FPGA實現方式的快速性遠遠高于利用其他兩種方式。而且,對于階次越高的Kalman濾波器的實現,傳統處理器所需的時間越長,利用FPGA實現方式的時間的優越性越顯著。
4 結語
針對Kalman濾波的傳統實現方法的不足,本文提出利用具有可并行計算特點的FPGA來實現Kalman濾波的方案,并對FPGA實現Kalman濾波的三種方式進行了研究,確定了利用IP核作為主要計算元件的實現方式。對Kalman濾波實現過程中的關鍵問題進行了研究和實現。通過對PC機、DSP和FPGA三種實現方式的結果對比,驗證了利用FGPA實現的Kalman濾波器具有較高的精度和極高的實時性。














評論