亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Visual Basic處理浮點DSP芯片數(shù)據(jù)的方法

        2010-02-06 02:52:08雷文英
        石油管材與儀器 2010年4期
        關(guān)鍵詞:數(shù)據(jù)處理

        雷文英 劉 娜 張 龍

        (1.西安石油大學光電油氣測井與檢測教育部重點實驗室 陜西西安)

        (2.西安電子科技大學通信工程學院 陜西西安) (3.中國石油集團測井有限公司長慶事業(yè)部 陜西高陵)

        Visual Basic處理浮點DSP芯片數(shù)據(jù)的方法

        雷文英1劉 娜2張 龍3

        (1.西安石油大學光電油氣測井與檢測教育部重點實驗室 陜西西安)

        (2.西安電子科技大學通信工程學院 陜西西安) (3.中國石油集團測井有限公司長慶事業(yè)部 陜西高陵)

        文章針對各DSP芯片中浮點數(shù)的特點,對計算機軟件處理浮點DSP的數(shù)據(jù)的方法進行了分析并設(shè)計出相應(yīng)的處理算法,最后在Visual Basic環(huán)境下對各自的算法描述進行了算法實現(xiàn)。實踐表明,該算法處理結(jié)果誤差小,穩(wěn)定可靠,具有可移植性且能滿足系統(tǒng)的實時性要求。

        浮點數(shù);DSP芯片;Visual Basic;數(shù)據(jù)處理

        0 引 言

        浮點DSP芯片數(shù)據(jù)的表示范圍大,運算精度高,能夠滿足寬量程、高精度計算的要求[1],但一般情況下DSP芯片中數(shù)據(jù)是用16進制存儲的,不能直觀地得到具體的10進制浮點數(shù)值,而且數(shù)據(jù)處理方面浮點DSP的浮點數(shù)的處理比定點數(shù)復雜。本文針對浮點DSP芯片數(shù)據(jù)的處理問題,以單精度浮點數(shù)為例,論述了TI公司浮點DSP芯片中常用的IEEE754格式浮點數(shù)和TMS320C3x格式浮點數(shù)在Visual Basic中的處理算法,最后在TMS320VC33DSP芯片數(shù)據(jù)處理上的實際問題中對該算法進行了驗證,并將成果應(yīng)用于油氣井井下壓力測試地面系統(tǒng)中。

        1 浮點DSP的數(shù)據(jù)存儲格式

        TI公司的浮點系列DSP芯片中用到了以下兩種浮點數(shù)的存儲格式:IEEE754格式和TMS320C3x格式[1]。比如在TMS320C67x系列中采用的是IEEE754格式的浮點數(shù),而在TMS320C3x系列芯片中采用的則是TI公司定制的TMS320C3x格式的浮點數(shù)。以上兩種浮點數(shù)的數(shù)值表示范圍是一樣的,區(qū)別在于TMS320C3x格式的浮點數(shù)的指數(shù)和尾數(shù)是以補碼形式表示。下面分別對這兩種浮點數(shù)進行討論。

        1.1 IEEE754單精度浮點數(shù)

        IEEE754單精度浮點格式分為3部分:1位符號[31]、8位指數(shù)[30-23]和23位小數(shù)[22-00]。該格式具體表示的浮點數(shù)大小如下式所示[2]:

        f=(-1)sign×2exponent-127×(1+fraction) (1)

        從式(1)可以看出,該浮點數(shù)的計算過程中沒有出現(xiàn)補碼,很方便和簡練。例如π的IEEE754格式浮點數(shù)內(nèi)存中表示為0x40490FDA,如圖1所示。

        圖1 π的IEEE754單精度浮點數(shù)的內(nèi)存表示

        從圖1可知,sign=0,exponent=128,fraction= 0.10010010000111111011010b,根據(jù)式(1)計算其代表的浮點數(shù)。

        1.2 TMS320C3x格式的浮點數(shù)

        和IEEE754標準浮點數(shù)不同,TMS320C3x格式的浮點數(shù)由如下3部分組成:符號位s,指數(shù)e和小數(shù)f。TMS320C3x單精度浮點的各個部分在內(nèi)存中的分布見圖2。一般將符號位和小數(shù)部分合起來稱為尾數(shù),應(yīng)該注意這里指數(shù)和尾數(shù)都是用補碼的形式表示。

        圖2 TMS320C3x格式單精度浮點數(shù)的存儲格式

        TMS320C3x格式的浮點數(shù)代表的具體浮點數(shù)值為[3]

        因為當s=0時表示 x為正數(shù),(-2)0=1;當 s= 1時表示 x為負數(shù),(-2)1=2,注意到 x=(0.f)×2e中的10恰是-2的2位二進制數(shù)的補碼。如在TMS320C3x格式下 0x40490FDA表示的浮點數(shù)為2.897608e+19。

        2 Visual Basic浮點數(shù)處理算法分析

        本文所采用的算法是一種通用算法,這里用Visual Basic語言對該算法進行具體的編程實現(xiàn)。我們可以根據(jù)以上介紹的兩種不同的單精度浮點數(shù)在內(nèi)存中的表示方式,選擇相應(yīng)的處理方案編寫一個數(shù)據(jù)轉(zhuǎn)換函數(shù),實際需要處理數(shù)據(jù)時只需要對該函數(shù)通過反復的調(diào)用就可以對需要處理的數(shù)據(jù)按4個字節(jié)的16進制數(shù)表示的浮點數(shù)轉(zhuǎn)換為實際需要的10進制表示的浮點數(shù)值。若要處理不同的浮點DSP數(shù)據(jù)只需根據(jù)具體需要選擇調(diào)用響應(yīng)的處理函數(shù)即可。具體的處理IEEE754單精度浮點數(shù)算法程序流程圖如圖3所示。

        圖3 IEEE754單精度浮點數(shù)和TMS320C3x格式單精度浮點數(shù)處理流程圖

        2.1 IEEE754格式的浮點數(shù)的處理

        IEEE754格式的浮點數(shù)在現(xiàn)在的計算機軟件和硬件芯片中有著廣泛的應(yīng)用。像PC機中的VB、VC++和MATLAB語言中的浮點數(shù)都采用該標準;Intel處理器,Analog公司和TI公司的浮點DSP芯片的大部分產(chǎn)品也采用該標準。

        目前計算機內(nèi)部的浮點數(shù)采用IEEE754格式進行存儲,一般程序從內(nèi)存中讀取浮點數(shù)時操作系統(tǒng)已經(jīng)將16進制數(shù)轉(zhuǎn)換為浮點數(shù)值。處理IEEE754格式的浮點數(shù)可以結(jié)合此特點方便地得到處理結(jié)果:第一步,將4個字節(jié)的16進制數(shù)放到一個浮點數(shù)變量floatVal的內(nèi)存存儲空間中;第二步,讀取該浮點數(shù)floatVal的數(shù)值就是處理后的結(jié)果。在Visual Basic中具體處理方法如下:首先將16進制的待處理的32位IEEE754格式的單精度浮點數(shù)分成4個字節(jié)放在Visual Basic語言中的Byte類型的數(shù)組中,然后定義一個Single類型的變量用于儲存處理結(jié)果(Visual Basic中單精度浮點數(shù)在內(nèi)存中占4個字節(jié)),最后調(diào)用Visual Basic API[4]提供的內(nèi)存拷貝函數(shù)CopyMemory將存放IEEE754數(shù)據(jù)的4個字節(jié)的Byte類型的數(shù)組在內(nèi)存中的內(nèi)容原封不動地拷貝到Single類型變量對應(yīng)的內(nèi)存中,此時該Single類型的變量值即是轉(zhuǎn)換的結(jié)果。這種處理方法的優(yōu)點是避開了IEEE754格式浮點數(shù)的具體細節(jié),直接利用內(nèi)存拷貝機制方便地得到結(jié)果。利用此原理也可方便地將 16進制形式表示的IEEE754格式的雙精度浮點數(shù)轉(zhuǎn)換為相應(yīng)的10進制形式的浮點數(shù)值,差別僅僅在于內(nèi)存拷貝的字節(jié)大小應(yīng)該是8個字節(jié)的長度。值得一提的是,由于計算機API接口的通用性,該浮點數(shù)的處理方法也可以方便地移植到Visual C++、Delphi或其他計算機語言的DSP浮點數(shù)處理的應(yīng)用中,比如Visual C++中實現(xiàn)是采用的內(nèi)存拷貝的函數(shù)為memcpy,同時應(yīng)注意用Visual C++中的Char類型代替Visual Basic中的Byte類型。

        2.2 TMS320C3x格式的浮點數(shù)的處理

        由于計算機內(nèi)部采用的浮點數(shù)存儲格式采用的是IEEE754標準,故計算機處理TMS320C3x格式的浮點數(shù)時就沒有處理IEEE754格式的浮點數(shù)方便,需要按照上面介紹的浮點數(shù)組成原理進行按尾數(shù)和指數(shù)拆分并對其進行相應(yīng)的處理,然后將兩部分結(jié)合在一起得到最終的結(jié)果。以 TMS320VC3x格式浮點數(shù)0x40490FDA計算機處理運算為例介紹具體的運算過程。

        1)按位運算提取分數(shù)和指數(shù)部分

        TMS320C3x浮點數(shù)0x40490FDA轉(zhuǎn)換為32位二進制數(shù)記做

        按照圖2的TMS320C3x浮點數(shù)存儲格式,將變量TMS320按位拆分成分數(shù)和指數(shù)部分的處理:

        比如TMS320=0×40490FDA經(jīng)過上述運算后指數(shù)部分expoResultl=0×40=64,分數(shù)部分為fractResult= 0x490FDA ×2-23= 4788186 ×2-23= 0.57079625129699707。

        2)將分數(shù)部分和指數(shù)部分組合成十進制數(shù)

        這一步將分離好的16進制的分數(shù)部分和指數(shù)部分按照式(5)轉(zhuǎn)換成10進制數(shù)就可得到最終的處理結(jié)果。

        以下舉一個例子說明上述過程的具體處理步驟,求TMS320=0x40490FDA代表的浮點數(shù)的處理過程為floatResult={(-2)0+0.57079625129699707}×264= 2.897608e19。

        3 浮點DSP數(shù)據(jù)處理的實例

        為了解決實際工程中浮點DSP數(shù)據(jù)處理的問題,另外為了檢驗以上浮點DSP數(shù)據(jù)處理算法的正確性和魯棒性,工作中采用 VisualBasic語言對TMS320VC33型號的DSP芯片的數(shù)據(jù)做了處理。結(jié)合一個油氣井壓力采集的工程應(yīng)用的項目,采用以上描述的TMS320C3x系列芯片浮點數(shù)的處理算法思想對Visual Basic中對下位機上傳到PC機上的10000條16進制格式的TMS320C3x單精度浮點進行處理,將DSP數(shù)據(jù)處理后的10進制結(jié)果繪制成曲線,如圖4所示。列表框中的最右邊一欄數(shù)據(jù)是采用浮點DSP數(shù)據(jù)處理算法處理后的傳感器測量井下壓力的浮點數(shù)結(jié)果,圖像中橫坐標是時間,縱坐標是壓力值。從該軟件對單精度浮點數(shù)的處理的結(jié)果和實際油氣井下的壓力分布來看,采用Visual Basic對DSP的浮點數(shù)進行處理結(jié)果準確,程序運行穩(wěn)定,能夠滿足浮點DSP數(shù)據(jù)處理和實時性方面的要求。

        圖4 Visual Basic處理單精度浮點數(shù)算法在壓力采集系統(tǒng)中的應(yīng)用

        4 結(jié)束語

        目前,本文提出的Visual Basic處理浮點DSP數(shù)據(jù)的方法已經(jīng)進行過驗證并且以該方法為核心的數(shù)據(jù)處理系統(tǒng)已經(jīng)成功應(yīng)用于油井壓力測試系統(tǒng)中。本文可以得到的結(jié)論主要有:第一,應(yīng)用Visual Basic計算機軟件編程取代復雜的硬件處理電路對浮點DSP芯片數(shù)據(jù)處理,具有較高的可靠性,易于整個系統(tǒng)的維護和測試。第二,該方法處理的數(shù)據(jù)完全能滿足系統(tǒng)的精度要求,誤差不超過1e-6數(shù)量級。第三,本方法處理速度快,實際中轉(zhuǎn)換一組數(shù)據(jù)僅需大約0.1ms,能保證系統(tǒng)實時性的要求。實踐證明,采用本文介紹的浮點數(shù)處理方法可以成功地解決浮點DSP測量數(shù)據(jù)的上位機處理問題。

        [1] 張雄偉,陳 亮,徐光輝.DSP芯片的原理與開發(fā)應(yīng)用(第3版)[M].北京:電子工業(yè)出版社,2003

        [2] http://en.wikipedia.org/wiki/IEEE_754-1985

        [3] 黨 瑞,謝 雁,李利品.TMS320C3x DSP原理與應(yīng)用[M].西安:陜西科技大學出版社,2006

        [4] http://msdn.microsoft.com/

        Lei Wenying,Liu Na and Zhang Long.A float point data processing method for DSP chips by employing Visual Basic.PI,2010,24(4):67~68

        This paper introduces a method of processing float point data through software programming by using Visual Basic, in which two algorithms dealing with two commonly used single precision float numbers of DSP chips are developed.As a result of applying Visual Basic program to implement these algorithms,stability and high-accuracy data handing performance is achieved in practical application.

        float numbers;DSP chips;Visual Basic;data processing

        TP311

        B

        1004-9134(2010)04-0069-03

        雷文英,男,1985年生,現(xiàn)為西安石油大學在讀研究生,主要從事信號與信息處理方面的研究工作。郵編:710065

        2009-09-20 編輯:姜 婷)

        ·方法研究·

        猜你喜歡
        數(shù)據(jù)處理
        驗證動量守恒定律實驗數(shù)據(jù)處理初探
        認知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補與極大似然估計法*
        心理學報(2022年4期)2022-04-12 07:38:02
        ILWT-EEMD數(shù)據(jù)處理的ELM滾動軸承故障診斷
        ADS-B數(shù)據(jù)處理中心的設(shè)計與實現(xiàn)
        電子測試(2018年4期)2018-05-09 07:28:12
        MATLAB在化學工程與工藝實驗數(shù)據(jù)處理中的應(yīng)用
        基于希爾伯特- 黃變換的去噪法在外測數(shù)據(jù)處理中的應(yīng)用
        大數(shù)據(jù)處理中基于熱感知的能源冷卻技術(shù)
        計算機工程(2015年4期)2015-07-05 08:28:04
        Matlab在密立根油滴實驗數(shù)據(jù)處理中的應(yīng)用
        數(shù)據(jù)處理能力在求職中起關(guān)鍵作用
        我國首個“突發(fā)事件基礎(chǔ)數(shù)據(jù)處理標準”發(fā)布
        国产乱子伦露脸在线| 亚洲国产精品无码一线岛国| 一区二区三区视频| 亚洲依依成人亚洲社区| 日本a在线播放| 国产视频免费一区二区| 极品少妇被黑人白浆直流| 97久久人人超碰超碰窝窝| 亚洲国产一区在线二区三区| 国产蜜臀精品一区二区三区| 日韩亚洲一区二区三区四区 | 手机在线看片| 丰满人妻av无码一区二区三区| 囯产精品无码一区二区三区| 澳门精品一区二区三区| 亚洲一区毛片在线观看| 东北妇女肥胖bbwbbwbbw| 国产精品无码久久久久免费AV | 999国产一区在线观看| 国产精品麻豆成人av| 91精品国产在热久久| 国产深夜男女无套内射| 手机看片福利盒子久久青| 日韩av中文字幕少妇精品| 亚洲av无码乱码国产麻豆| 久久精品国产亚洲av大全| 国产精品无码久久久久久久久作品 | 国产99精品精品久久免费| 日韩中文字幕素人水野一区 | 48沈阳熟女高潮嗷嗷叫| 亚洲国产精品久久久久久网站| 亚洲av午夜福利一区二区国产| 亚洲欧洲免费无码| 成av人片一区二区三区久久| 欧美丝袜激情办公室在线观看| 国产成人精品久久二区二区91| 亚洲乱亚洲乱妇无码麻豆| 东京热久久综合久久88| 亚洲蜜桃视频在线观看| 麻豆亚洲一区| 亚洲精品无码不卡av|