新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于IQmath庫的定點DSP算法設計

        基于IQmath庫的定點DSP算法設計

        作者: 時間:2010-11-16 來源:網絡 收藏

        摘要:基于TI公司提供的IQmath庫實現在定點芯片TMS320F28xx上進行精確的浮點運算,方便開發(fā)人員采用C/C++編寫浮點運算程序,可以節(jié)省設計和調試時間。IQmath庫主要應用于高速度和高精度的實時計算,與直接采用ANSI C語言相比效率更高,這對設計實時性要求很高的控制系統尤其重要。
        關鍵詞:IQmath庫;TMS320F28xx;浮點運算;實時性

        引言
        數字信號處理器分為定點和浮點兩種基本類型,它們之間最大差異在于浮點比定點DSP具有更強大的計算能力和更大范圍的動態(tài)精度。浮點DSP內部設有專門支持浮點運算的硬件單元,對浮點格式的數據可以直接通過代碼加入硬件運算中,因此運算速度很高。而定點DSP沒有定點運算單元,它對浮點格式的實數必須通過軟件才能實現,這樣就增加了指令代碼,間接地使得定點DSP運算速度低于浮點DSP,典型的浮點處理器,如TI公司的C6000系列,幾乎所有的嵌入式微控制器都為定點處理器,如TI公司的C2000系列。因為浮點DSP的價格更加昂貴,因此定點DSP仍然有其巨大的優(yōu)勢。但是任何算法都需要進行浮點運算,因此如何提高在定點DSP上進行的浮點運算的速度和精度,就成為了用戶開發(fā)時必須要考慮的關鍵問題。TI公司專門為定點處理器TMS320C2000系列提供的IQmath庫為解決上述問題提供了良好的實現方法。

        1 數的定標:Q格式
        定點DSP不能直接處理小數,編程時處理小數有3種方法:
        ①把變量定義成float類型。該方法編程量最小,但編譯出來的代碼最大。
        ②把整數變量放大來表示小數。這是許多開發(fā)定點DSP的程序員經常使用的方法,但程序不具有可移植性。
        ③采用整數定標的方法來確定小數,即采用Q格式來表示小數。對于定點處理器而言,不管定義哪種類型的數據最終都采用整型數據進行具體的運算。
        整數定標的實質就是通過確定小數點位于哪一位,從而確定小數的精度,通常用Q格式表示。一個32位有符號定點數的Q格式如下:
        a.JPG
        其中,S是符號位,I是整數部分,f是小數部分。定點數的大小按下式計算:
        b.JPG
        比如Q15定點數的小數點位于第15位的右側,小數0.25用Q15表示則為2000H。這樣很簡單地用一個整數格式表示了一個小數,對于定點DSP來說處理小數就與處理整數完全相同了。需要注意的是,采用Q格式數據進行算法設計的時候必須考慮溢出,各種Q格式數據表示的范圍和精度參考文獻。

        2 TMS320F2812定點DSP處理器
        作為TI公司C2000系列DSP典型產品,定點處理器TMS320F2812具有很高的性價比,廣泛應用于工業(yè)控制,特別是應用于處理速度、處理精度方面要求較高的領域。TMS320F2812整合了Flash存儲器、A/D轉換器、事件管理器、QEP以及多種通信模塊,具有強大的控制和信號處理能力,便于用戶開發(fā)高性能的數字控制系統。特別是TI公司為C28xx內核專門設計的IQmath庫能夠實現在定點DSP處理器上進行精確的浮點運算和復雜的控制算法。

        3 IQmath庫及其應用
        IQmath庫是高度優(yōu)化和具有高精度的數學函數庫集合。IQmath庫里面包含的函數都是采用Q格式定點數作為輸入/輸出,允許程序設計人員在定點TMS320F281xx處理器上進行浮點算法設計,從而提高運算速度。
        3.1 IQmath庫組成
        IQmath庫可以在c/C++程序設計中使用,它包含4個部分:
        ◆IQmath頭文件IQmathLib.h
        ◆包含所有函數和數值表的目標文件IQmath.lib
        ◆命令連接文件IQmath.cmd
        ◆調試用的GEL文件IQmath.gel
        3.2 IQmath庫函數
        IQmath庫中主要包括以下函數(用戶在程序設計開發(fā)時可以直接調用):
        ◆格式轉換函數IQ()、IQN()、IQtoF()、IQtoIQN()等
        ◆算術運算函數IQmpy()、IQdiv()等
        ◆三角運算函數IQsin()、IQcos()、IQatan2()等
        IQmath庫中的各個函數及其含義參考文獻。


        上一頁 1 2 3 下一頁

        關鍵詞: DSP

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 施秉县| 炎陵县| 遵义县| 泸州市| 元氏县| 阜城县| 平昌县| 乌拉特前旗| 文成县| 鹤峰县| 桂东县| 金平| 罗平县| 诸暨市| 梅河口市| 阿合奇县| 南阳市| 东至县| 东辽县| 娱乐| 达州市| 鄢陵县| 舟山市| 工布江达县| 农安县| 云南省| 绥滨县| 旬阳县| 永兴县| 民勤县| 农安县| 贵阳市| 五指山市| 德清县| 大渡口区| 镇沅| 天气| 枣强县| 阿拉善盟| 周口市| 齐河县|