国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的逐次逼近算法實(shí)現(xiàn)激光干涉信號(hào)細(xì)分

2014-06-07 10:02:38黃曉清高思田盧榮勝
計(jì)量學(xué)報(bào) 2014年4期
關(guān)鍵詞:右移信號(hào)處理細(xì)分

黃曉清, 高思田, 繆 琦, 盧榮勝

(1.合肥工業(yè)大學(xué)儀器科學(xué)與光電工程學(xué)院,安徽合肥 230009;

2.中國(guó)計(jì)量科學(xué)研究院,北京 100029)

基于FPGA的逐次逼近算法實(shí)現(xiàn)激光干涉信號(hào)細(xì)分

黃曉清1, 高思田2, 繆 琦1, 盧榮勝1

(1.合肥工業(yè)大學(xué)儀器科學(xué)與光電工程學(xué)院,安徽合肥 230009;

2.中國(guó)計(jì)量科學(xué)研究院,北京 100029)

為了實(shí)現(xiàn)激光干涉測(cè)量中信號(hào)的高速度、高精度細(xì)分,對(duì)正切細(xì)分算法中的除法運(yùn)算進(jìn)行了改進(jìn),采用逐次逼近算法替代使用較多的移位相減算法。實(shí)驗(yàn)證明逐次逼近算法比移位相減算法運(yùn)算速度更快、資源占用較少。更適合FPGA信號(hào)細(xì)分高速度、高精度要求。

計(jì)量學(xué);細(xì)分;激光干涉;逐次逼近;移位相減;FPGA

1 引 言

高精度幾何尺寸測(cè)量?jī)x器?;诩す飧缮嬖恚?,2]。而激光干涉的信號(hào)處理流程一般有3步。首先,激光干涉輸出的兩路或者四路信號(hào)經(jīng)過(guò)光電轉(zhuǎn)換[3]。其次,利用A/D對(duì)多路信號(hào)采集并將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。最后,再由微處理器或者邏輯電路對(duì)信號(hào)進(jìn)行運(yùn)算和查表得到位移值。

圖1是激光干涉信號(hào)處理流程圖。目前,提高激光干涉儀分辨率的方法主要有兩種:光學(xué)倍程法和電子細(xì)分法[4,5]。然而光學(xué)細(xì)分倍數(shù)增大使得反射次數(shù)和反射面增多,導(dǎo)致光強(qiáng)損失嚴(yán)重,光的偏振態(tài)也會(huì)產(chǎn)生不應(yīng)有的變化,對(duì)光學(xué)元件的鍍膜要求很?chē)?yán)格[6]。

圖1 激光干涉信號(hào)處理流程圖

根據(jù)電子細(xì)分采用的算法不同,最常用的細(xì)分方法主要有正切量化細(xì)分法、三角波細(xì)分法、正余弦結(jié)合細(xì)分法、正弦量化細(xì)分法[7]。由于正切量化細(xì)分法對(duì)光強(qiáng)變化不敏感,利于信號(hào)處理,是4種算法最常用的,該算法中除法運(yùn)算是最關(guān)鍵的,其運(yùn)算的復(fù)雜程度直接影響信號(hào)細(xì)分處理的速度?,F(xiàn)有的細(xì)分方法中除法運(yùn)算無(wú)論在微處理器還是邏輯電路中都很復(fù)雜,而且耗時(shí)較多,影響著整個(gè)信號(hào)處理過(guò)程的速度。本文基于此方法研究了一種逐次逼近算法,原理較簡(jiǎn)單、步驟較少、耗時(shí)較短,對(duì)信號(hào)處理速度有很大提高。

2 細(xì)分算法

2.1 正切量化細(xì)分法

正切量化細(xì)分法的原理是將相互正交的正余弦信號(hào)同時(shí)進(jìn)行A/D轉(zhuǎn)換。轉(zhuǎn)換得到的數(shù)字信號(hào)進(jìn)行除法運(yùn)算求出正切值,然后通過(guò)計(jì)算反正切或者查表獲得相應(yīng)的相位值,該相位值與一個(gè)信號(hào)周期內(nèi)的位移臺(tái)的位置一一對(duì)應(yīng)。

在正切量化細(xì)分中,關(guān)鍵是采用除法運(yùn)算,可以將干涉光信號(hào)sinθ和cosθ直接進(jìn)行內(nèi)存的二維地址尋址變?yōu)橐痪S的tanθ尋址;其次tanθ的線性度好有利于制作細(xì)分表;最后除法運(yùn)算可以消除信號(hào)光強(qiáng)的變化引起的誤差[8]。根據(jù)激光干涉儀輸出的正余弦信號(hào)u1=Asinθ、u2=Acosθ,由式(1)和式(2),就能得到|tanθ|和|cotθ|,如圖2所示。

圖2 正切余切圖

根據(jù)圖2的sinθ和cosθ信號(hào)的正負(fù)和絕對(duì)值大小的比較可以分出8個(gè)區(qū)間(見(jiàn)表1),這是因?yàn)樵谀承㏑AM或ROM比較小的現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA),如果再加上表格細(xì)分倍數(shù)較大,數(shù)據(jù)量多,那么只需要建立一個(gè)區(qū)間或者兩個(gè)區(qū)間進(jìn)行查表(如果8個(gè)區(qū)間非常相似且線性度非常好的話,可以這樣做),但是一般情況下,認(rèn)為誤差在一個(gè)整周期2π空間內(nèi)是完整的。

若整個(gè)區(qū)間要實(shí)現(xiàn)2 048次細(xì)分,細(xì)分?jǐn)?shù)均分到1/8區(qū)間是256次細(xì)分,故只需要輸入8位,就能在0-FF之中實(shí)現(xiàn)256細(xì)分。對(duì)于A/D的精度要求很低,而對(duì)于A/D的信號(hào)質(zhì)量以及穩(wěn)定性很高。若在光路上實(shí)現(xiàn)4倍程或者8倍程,又或者在電路上實(shí)現(xiàn)硬件細(xì)分,就能達(dá)到非常高的細(xì)分精度。

表1 8個(gè)區(qū)間細(xì)分表

基于FPGA的正切量化細(xì)分算法的關(guān)鍵是除法,運(yùn)算一般使用除法IP核或使用移位相減算法,下面將介紹一種逐次逼近算法。

2.2 逐次逼近算法

圖3是逐次逼近算法流程圖,以A、B兩個(gè)數(shù)相除得到一個(gè)10位二進(jìn)制數(shù)的商為實(shí)例。

圖3 逐次逼近算法流程圖

具體步驟如下:首先這種算法主要是針對(duì)小數(shù)B除以大數(shù)A,商在0-1之間,所以結(jié)果只有小數(shù)部分,對(duì)大數(shù)A進(jìn)行除以2、4、8、16、32、…、1 024運(yùn)算(也就是大數(shù)A的二進(jìn)制數(shù)右移1、2、3、…、10位,本次示例采用10 bits精度),然后分別按以下方式比較大小并確定相應(yīng)位的二進(jìn)制數(shù)。

(1)A/2跟B的大小來(lái)確定D[9](D的小數(shù)點(diǎn)后最高位)的值,B大則D[9]為1;B小則D[9]為0;若相等,則D[9]為1,D[8∶0]=0。

(2)D[8](D小數(shù)點(diǎn)后第二位)的確定由前一步來(lái)決定(假設(shè)第一步B比A/2大)。這時(shí)候應(yīng)該比較(A/4+A/2)和B的大小,若B小D[8]為0;若B大則D[8]為1;若相等D[8]為1,D[7∶0]=0。

(3)D[7]小數(shù)點(diǎn)后的第三位的確定先前兩步來(lái)決定哪兩個(gè)數(shù)和B比較大小,類似于第二步,直到最后一位D[0],這樣計(jì)算下來(lái),就得到了D[9∶0]值,也就是B/A,余數(shù)是B-C。

這個(gè)算法的特點(diǎn)是運(yùn)算前把需要的數(shù)據(jù)先準(zhǔn)備好(對(duì)大數(shù)右移),然后就是相加,比較大小,確定每位小數(shù)位數(shù)。這個(gè)左移或者右移操作可以讓硬件乘法器來(lái)操作,可以充分利用FPGA中內(nèi)部資源,并且還能增加運(yùn)算速度。對(duì)于一般的信號(hào)處理是不錯(cuò)的算法,而且該算法的精度是可調(diào)控制的。這個(gè)算法只是將兩路信號(hào)SIN和COS相除,能夠?qū)ο到y(tǒng)誤差有效地抑制。圖4是算法的仿真情況。

圖4 逐次逼近算法模塊的modelsim仿真

輸入的數(shù)據(jù)為DATA_SIN=4b(75)和DATA_ COS==64(100),小數(shù)除以大數(shù)得到的肯定在0到1范圍內(nèi),DATA_TAN為除法結(jié)果(結(jié)果只包含小數(shù)部分)=0.C0(十六進(jìn)制)=0.1100_0000(二進(jìn)制)=0.75(十進(jìn)制)。從圖4看到,在START變?yōu)榈碗娖介_(kāi)始,到結(jié)果DATA_TAN輸出所用時(shí)間為2個(gè)時(shí)鐘周期,根據(jù)輸入的數(shù)據(jù)的不同,這算法耗時(shí)有長(zhǎng)有短,但是可以假設(shè)各種數(shù)據(jù)出現(xiàn)的概率一樣,那么算法的平均耗時(shí)是可以得到的,假設(shè)要實(shí)現(xiàn)精度為8bits的除法,平均耗費(fèi)將為4個(gè)時(shí)鐘周期。若精度16bits,平均耗時(shí)為8個(gè)時(shí)鐘周期。逐次逼近式算法的資源占用情況如下。

2.3 移位相減算法

圖5 移位相減算法流程圖

圖5是定點(diǎn)型移位相減算法流程圖。輸入的A與B是假設(shè)為16 bit數(shù)字信號(hào),保證每次相除時(shí)總是A≤B(A為被除數(shù),B為除數(shù)),這樣保證結(jié)果分布在0~1區(qū)間。每次A右移一位,A即增大2倍,A與B相減,得到的余數(shù)輸入到A。如果A≥B,則C對(duì)應(yīng)的位為1,相減的余數(shù)就是A-B;如果A<B,則C對(duì)應(yīng)的位為0,相減的余數(shù)是A。而相減的余數(shù)賦給A,然后A繼續(xù)右移一位,A和B相減,循環(huán)相減loop次[9]。右移相減次數(shù)越多,精度越高,并保證右移的次數(shù)就是除法的精度位數(shù)。

移位相減法modelsin仿真情況見(jiàn)圖6,輸入的數(shù)據(jù)為DATA_BIG=4b(75)和DATA_SMALL==64(100),小數(shù)除以大數(shù)得到的肯定在0到1范圍內(nèi)(結(jié)果全只包含小數(shù)部分),RESULT為除法結(jié)果=0.300(十六進(jìn)制)=0.11_0000_0000(二進(jìn)制)=0.75(十進(jìn)制)。從圖6看出,在SHIFT_EN變低以及LATENCH變高開(kāi)始,到RESULT輸出結(jié)果耗費(fèi)了5個(gè)時(shí)鐘周期,假設(shè)要實(shí)現(xiàn)該算法的精度為8bits,平均耗費(fèi)7個(gè)時(shí)鐘周期。若精度16 bits,平均耗時(shí)也就11個(gè)時(shí)鐘周期。下面是移位相減算法的資源占用情況。

圖6 移位相減算法modelsim仿真

3 結(jié) 論

根據(jù)逐次逼近算法和移位相減算法的資源占用情況、算法速度、算法精度的比較,算法優(yōu)劣情況如下:

(1)資源占用比較。由于移位相減算法的步驟比逐次逼近算法的步驟要多,而且使用的變量也多很多,所以移位相減算法要占用更多的專用的邏輯寄存器。再?gòu)膱D5和圖8對(duì)比就可以看出,移位相減算法的使用邏輯寄存器是逐次逼近式算法的4倍還多。LE單元兩種算法使用的數(shù)量基本一樣。這就證明逐次逼近算法要比移位相減算法更節(jié)省資源。

(2)算法速度比較。這兩種算法的耗時(shí)都不是固定的。根據(jù)輸入的數(shù)據(jù)不同,得到結(jié)果的步驟不一樣,使用的時(shí)間自然不同,平均使用的時(shí)鐘就減少了,從而達(dá)到提高運(yùn)算速度的要求。首先從流程圖可以看出,移位相減算法的步驟要多一些;其次根據(jù)算法原理,逐次逼近算法流程步驟是先將數(shù)據(jù)準(zhǔn)備好之后(這種處理可以充分使用硬件乘法器),再進(jìn)行比較、相加、再比較。移位相減算法流程步驟卻是比較、相減、移位、賦值、再比較,整個(gè)流程前后相互依賴,所以相對(duì)逐次逼近算法要復(fù)雜;最后對(duì)比圖3和圖6,發(fā)現(xiàn)移位相減算法用來(lái)了5個(gè)時(shí)鐘周期,而逐次逼近式算法只用了3個(gè)時(shí)鐘周期,明顯比移位相減算法要快。

(3)算法精度比較。兩種算法的精度沒(méi)有明顯的區(qū)別,只要循環(huán)次數(shù)更多,用時(shí)更長(zhǎng),精度都能達(dá)到很高,故速度和精度的取舍就需要具體情況具體分析。

[1] 郁道銀,談恒英.工程光學(xué)[M].北京:機(jī)械工業(yè)出版社,2006,306-323.

[2] Wang Q,Chen J.Interferometric system used for testing microdisplacement automatically[J].Nanjing Li Gong Daxue Xuebao/Journal of Nanjing University of Science&Technology,1998,22(2):145-148.

[3] 呂立寧.FPGA在相位激光測(cè)距信號(hào)處理技術(shù)中的應(yīng)用[D].武漢:華中科技大學(xué),2005.

[4] 趙美蓉,曲興華,陸伯印.光程差倍增的納米級(jí)精度激光干涉儀[J].中國(guó)激光,2000,5,27(5):431-434.

[5] 王維東.高精度光柵信號(hào)處理方法研究[D].合肥:合肥工業(yè)大學(xué),2012.

[6] 孫長(zhǎng)庫(kù),葉聲華.激光測(cè)量技術(shù)[M].天津:天津大學(xué)出版社,2001:37-45.

[7] 陳曦.數(shù)字集成的莫爾條紋信號(hào)細(xì)分原理及應(yīng)用[D].沈陽(yáng):沈陽(yáng)工業(yè)大學(xué),2009.

[8] 來(lái)展,邵宏偉,高思田,等.激光干涉儀誤差修正系統(tǒng)的設(shè)計(jì)[J].計(jì)量學(xué)報(bào),2010,31(z2):135-138.

[9] 來(lái)展.激光干涉儀信號(hào)處理系統(tǒng)及納米測(cè)量機(jī)控制系統(tǒng)的研究[D].北京:中國(guó)計(jì)量科學(xué)研究院,2011.

Successive Approxim ation Division Algorithm in Laser Interference Signal Subdivision Based on FPGA

HUANG Xiao-qing1, GAO Si-tian2, MIAO Qi1, LU Rong-sheng1
(1.Hefei University of Technology,Hefei,Anhui230009,China;
2.National Institute of Metrology,Beijing 100029,China)

In order to achieve the goal of the laser interferencemeasurement signal being in high speed and high precision subdivision,the division of tangent subdivision algorithm is improved.The successive approximation algorithm instead of using shift subtraction algorithm is used more in the past.Experiments prove that successive approximation algorithm is faster than shift subtractionm,resource usage is less,and successive approximation algorithm ismore suitable for FPGA based on high speed and high precision requirements.

Metrology;Subdivision;Laser interference;Successive approximation;Shift subtraction;FPGA

TB92

A

1000-1158(2014)04-0311-04

10.3969/j.issn.1000-1158.2014.04.02

2013-08-07;

2014-02-18

國(guó)家自然科學(xué)基金(91023021)

黃曉清(1989-),男,江西吉安人,合肥工業(yè)大學(xué)碩士研究生,研究方向?yàn)閮x器科學(xué)與光電測(cè)試技術(shù)。huangxq@nim.ac.cn高思田為通訊作者。gaost@nim.ac.cn

猜你喜歡
右移信號(hào)處理細(xì)分
華容道玩法大解密
深耕環(huán)保細(xì)分領(lǐng)域,維爾利為環(huán)保注入新動(dòng)力
太極拳養(yǎng)生八式(上)
少林與太極(2018年8期)2018-08-26 05:53:58
《信號(hào)處理》征稿簡(jiǎn)則
《信號(hào)處理》第九屆編委會(huì)
《信號(hào)處理》征稿簡(jiǎn)則
《信號(hào)處理》第九屆編委會(huì)
1~7月,我國(guó)貨車(chē)各細(xì)分市場(chǎng)均有增長(zhǎng)
整體低迷難掩細(xì)分市場(chǎng)亮點(diǎn)
C語(yǔ)言位運(yùn)算中鮮為人知的事
軟件工程(2014年5期)2014-09-24 11:53:38
报价| 吉林省| 霍城县| 三原县| 封丘县| 长海县| 和田市| 大安市| 炉霍县| 密山市| 德昌县| 三江| 高阳县| 东明县| 巴东县| 湘乡市| 贞丰县| 高陵县| 宣威市| 泸州市| 瑞丽市| 丰顺县| 灵宝市| 怀宁县| 金山区| 张家口市| 唐山市| 华池县| 南靖县| 海宁市| 小金县| 顺义区| 弋阳县| 杨浦区| 汨罗市| 庆城县| 漠河县| 虞城县| 尉氏县| 广昌县| 靖江市|