《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于CORDIC算法的光相位檢測及FPGA實現
基于CORDIC算法的光相位檢測及FPGA實現
來源:電子技術應用2011年第9期
胡 博,段發階,張 超,呂昌榮,蔣佳佳,董宇青
(天津大學 精密測試技術及儀器國家重點實驗室,天津300072)
摘要: 基于交流相位跟蹤零差補償技術,采用CORDIC算法檢測光相位變化,并在FPGA中設計了CORDIC算法實現的流水線結構,實現了對光相位變化的實時檢測。同時,通過查找表和拋物線插值校正算法解決了CORDIC算法在運算中存在的“死區”問題,實現了光相位變化的高精度檢測。實驗表明,光相位的誤差精度達到10-4。此方法具有實時性強和精度高的優點,適合大量數據的高速處理。
中圖分類號: TP301
文獻標識碼: A
文章編號: 0258-7998(2011)09-0070-04
The optical phase detection based on CORDIC algorithm and it′s realization in FPGA
Hu Bo,Duan Fajie,Zhang Chao,Lv Changrong,Jiang Jiajia,Dong Yuqing
State Key Laboratory of Precision Measuring Technology & Instruments, Tianjin University, Tianjin 300072,China
Abstract: This paper employs CORDIC algorithm to detect the variation of the optical phase based on phase tracking with AC and devises pipeline architecture in FPGA to realize the algorithm, so as to achieve the real-time detection of optical phase changes. Meanwhile, this thesis solves the "dead zone" problem existing in CORDIC computation through the look-up table and parabolic interpolation correction algorithm, which reaches the precise detection of optical phase changes. The simulation proves that the accuracy of measurement reaches 10-4 order magnitude. While maintaining a good precision, the algorithm is real-time and fits the high-speed processing for large amounts of data.
Key words : optical phase detection;CORDIC;arcsine;look-up table;parabolic interpolation


    當前,非接觸式測量已經逐漸取代接觸式測量,成為測量發展的方向。而在各種各樣的非接觸式測量方法中,光纖干涉投射技術測量物體表面形貌的方法,由于其光路具有柔軟、形狀可變、傳輸距離遠、抗干擾能力強等優點,得到了越來越廣泛的應用,尤其在各種有強電磁干擾、易燃易爆等惡劣環境中,光纖干涉投射測量技術更是有著很高的應用價值。
    在光纖干涉投射技術中,裸露在空氣中的光纖容易受到溫度、振動的影響,使臂長差發生變化,進而產生光相位的變化,導致干涉條紋漂移,從而影響到測量的精度[1]。交流相位跟蹤零差補償技術(PTAC)是實現光纖相位變化檢測和誤差補償的一種關鍵技術[2],其中涉及信號解調和相位求解,求解反正弦是相位求解的一種主要方法[2]。在FPGA中,傳統的求解反正弦函數的主要方法是查找表法[3],查找表數據量的大小和精度緊密相關,在高精度下,查找表法需要大量存儲單元,另外也需要校正算法來計算未計入表中的點,這樣就對處理器資源提出很高的要求。
    針對傳統反正弦函數求解方法的缺點,本文采用CORDIC算法求解反正弦值,得到光相位變化并在FPGA中設計了CORDIC算法實現的流水線結構,從而達到了對光相位變化的實時檢測。同時,提出采用查找表配合拋物線插值校正算法解決CORDIC算法在運算中存在的“死區”問題。通過實驗驗證該了方法的可行性。
1 系統結構
    光纖干涉投射系統由激光器、聚焦透鏡和3 dB耦合器等組成。激光器發出的激光經過聚焦透鏡耦合到光纖,經3 dB耦合器分光后由兩光纖臂輸出。兩光纖輸出端可被看作是楊氏雙孔干涉中的兩個小孔,其輸出光由同一點光源發出,頻率相同,具有恒定的相位差,滿足楊氏雙孔干涉條件,從而在輸出端產生干涉條紋。在實際測量中,溫度、振動的影響使光纖發生臂長差變化,從而使光相位發生變化,導致干涉條紋漂移。為解決這一問題,通過PTAC對光相位進行調制解調得到光相位變化信息并對相位誤差進行補償。
    如圖1所示,光纖干涉投射交流相位跟蹤零差補償系統由激光器、聚焦透鏡、3 dB耦合器、PZT和信號調理等部分組成。兩輸出臂分別纏繞在兩個PZT上,一路作為信號臂對光相位進行調制,另一路用作控制和補償。兩條輸出臂投射端面存在反射,反射的光返回到3 dB耦合器中發生干涉,構成馬赫-澤德干涉儀[4],干涉的光由光電探測器PD接收。信號臂反射回耦合器的光包含光相位調制信息,同時也存在著由環境影響產生的光相位變化信息。兩束反射光在耦合器中發生干涉,則光相位調制信息轉化為光強變化,再由光電探測器將光強變化轉化為電信號。


 
    經過AD轉換后,輸入FPGA進行計算,通過求解反正弦求出?琢。改變驅動器的直流偏置,即改變待測鏡和參考鏡的相位差?琢。再經過數模轉換、高壓放大,通過控制PZT2調整另一輸出臂的長度,使兩光纖臂相位差保持為一正弦函數,消除溫度振動等環境因素帶來的影響。
2 反正弦算法實現
2.1 反正弦算法原理

    基于CORDIC算法計算反正弦。數字信號處理中常常會遇到求解超越函數的問題,如求解矢量旋轉、反三角函數運算、雙曲函數等,CORDIC是為了這些問題而提出的[5]。CORDIC基本思想是用一組確定的角度不斷擺偏去逼近所求的角度,而這一組角度與運算基數(2i)有關。在硬件電路中,CORDIC運算可以只通過加減操作和移位操作實現,大大節約了資源。CORDIC算法可由式(3)、(4)、(5)、(6)給出[6]。其中,(xi,yi)是矢量的坐標,zi為剩余未旋轉的角度。

2.2 反正弦程序設計
2.2.1 字長設計

    輸入值范圍為[-1,1],輸入FPGA的初值c為12位。選第一位為符號位,第二位為整數位,后10位為小數位。在FPGA中,使用浮點形式計算小數比較復雜,因此,將小數部分左移10位,化成定點形式運算。CORDIC的計算次數取決于xi、yi的小數位數。如式(8),用yi與輸入初值c比較,如果yi的小數位為10位,則最多進行10次CORDIC計算,精度很難保證。因此,設計xi、yi的小數位為22位,在c后面補0,補足22位小數位,則最多可進行22次CORDIC計算。因為z的值域范圍為[-1.570 8 rad,1.570 8 rad],將z設計成25位,z[24]為符號位,z[23:22]為整數位,z[21:0]為小數位。
2.2.2 實現結構的設計
    在FPGA中,CORDIC的實現結構可以選擇迭代結構或流水線結構。迭代結構是直接由公式寫出循環語句,處理完當前數據才可以處理下一個數據,缺點是效率低。本設計采用流水線結構,流水線結構在數據處理的同時,還能繼續輸入和處理后續數據,提高了數據吞吐率。此外,設計中采用前端數據處理加22級CORDIC計算加后端處理,第一個數據需要24個時鐘周期處理完畢,之后每個周期都可以輸出一個處理結果,可以顯著提高數據處理速度。
2.2.3 CORDIC結構
    本設計總共有22級CORDIC計算模塊,第i級CORDIC計算模塊如圖3所示。yi與|ci|比較,決定di的值,再根據式(7)來計算xi+1、yi+1、zi+1,同時傳遞輸入值的符號位,在流水線的后端處理模塊處理。若輸入c[11]為1,則結果為-arcsinc;若輸入c[11]為0,則結果為arcsinc。

3 算法校正
    輸入數據范圍為[-1,1],將計算結果與真實結果比較,得到誤差分布如圖4所示。

    由圖4可見,在橫坐標絕對值為0.6、0.8、0.9附近出現較大誤差,最大誤差達到10-1數量級。CORDIC算法使用的是一種數值計算逼近的思想,增減的步長值是離散的,為arctan(2i)。在橫坐標絕對值為0.3、0.6、0.8、0.9附近,CORDIC計算存在“死區”。本文采用查找表和拋物線插值校正,在誤差值較大的區間[c1,c3],令:
  
    在前端數據處理中判斷輸入值是否在需要校正的區間,若在則進行拋物線插值校正。用少量查找表存儲校正區間端點的反正弦值和分母的比值。選用FPGA為32 bit,在其中設計乘法運算時,乘數和被乘數最高為16 bit才不會使數據溢出。在所有拋物線插值校正系數中,區間[0.95,0.96]上拋物線插值校正的一次項系數最大為22.108 9。因此選擇高5位為整數位,低11位為小數位進行運算。
4 實驗與仿真
    CORDIC程序流程圖如圖5所示,初始化之后,先判斷輸入值c是否在需要校正的區間。若是,則進入拋物線插值校正運算;否則進行CORDIC運算,使x0=1/An,y0=0,z0=0。CORDIC運算計算出一個小數的反正弦值需要24個時鐘周期,為了保證流水線的機能,當輸入值c在需要校正的區間時,插值計算后的數據在CORDIC運算模塊中直接傳輸。計算出反正弦值后,判斷輸入值c的符號位,如果是0,則c為正數,反正弦值也為正數;如果是1,則c為負數,反正弦值也為負數。

    仿真軟件采用ModelSim SE PLUS 6.2b。輸入的c值范圍為[-1,1],存放在ModelSim的測試激勵文件中。處理一個數據需要24個時鐘周期,之后每個周期都能輸出一個數據,如圖6所示。

    將仿真后的數據導入Matlab得到反正弦仿真曲線,如圖7(a)所示,并與理想值對比,得到如圖7(b)所示誤差曲線,CORDIC計算部分弧度值精度達到10-4數量級,經過校正的部分,誤差從10-1數量級降到10-4數量級。
    本設計采用流水線結構,提高了數據吞吐率。仿真實驗表明,光相位的誤差精度達到10-4數量級,精度較高,且具有較高的運算速度,適合大數據量高速處理。
參考文獻
[1] Duan FaJie,Zhang Cong,Zhang Chao,et al.Fourier transform profilometry based on fiber-optic interferometric projection[C],2009 2nd International Congress on Image and Signal Processing.2009.
[2] 李超.邁克爾遜型全光纖加速度地震檢波器理論與實驗研究[D].天津:天津大學,2007.
[3] 付雷,陳淑芬,孟彥斌.數字式開環單模光纖陀螺中求arcsine的查表和線性插值法[J].北京理工大學學報,2003,23(4):499-502.
[4] 孟克.光纖干涉測量技術[M].哈爾濱:哈爾濱工程大學出版社,2008:67-74.
[5] RAY A.A survey of CORDIC algorithms for FPGA based  computers[C].Proceeding.ACM/SIGDA Conference,1998:191-200.
[6] CHANG Y K,Swartzlander.An analysis of the CORDIC algorithm for direct digital frequency synthesis[C].In:IEEE International Conference on ASAP.California,USA:IEEE  Press,2002:111-119.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美视频在线免费看| 亚洲国产成人porn| 欧美11—12娇小xxxx| 欧美一级精品大片| 亚洲一区精品电影| 99在线精品免费视频九九视| 亚洲欧洲一区二区在线播放 | 午夜精品影院| 亚洲天堂av在线免费观看| 亚洲卡通欧美制服中文| 最新高清无码专区| 亚洲人午夜精品免费| 91久久久一线二线三线品牌| 最新亚洲视频| 91久久国产精品91久久性色| 亚洲国产女人aaa毛片在线| 曰韩精品一区二区| 亚洲第一综合天堂另类专| 在线电影一区| 亚洲国产人成综合网站| 亚洲国产清纯| 亚洲精品综合精品自拍| 日韩亚洲在线| 中文欧美日韩| 亚洲综合成人婷婷小说| 亚洲欧美乱综合| 亚洲欧美一区二区激情| 性感少妇一区| 久久国产欧美| 亚洲国产影院| 99视频精品在线| 亚洲午夜av在线| 亚洲欧美综合| 久久久久久亚洲精品不卡4k岛国| 久久久青草青青国产亚洲免观| 久久青青草原一区二区| 免费不卡在线观看| 欧美人体xx| 国产精品久久久久久久久久免费看 | 亚洲视频在线观看三级| 亚洲欧美激情精品一区二区| 欧美一区二区三区四区夜夜大片| 久久精品国产77777蜜臀| 免费观看日韩av| 欧美视频日韩视频| 国产美女一区二区| 亚洲成色www久久网站| 亚洲免费福利视频| 亚洲欧美久久久| 亚洲激情影视| 亚洲一区二区黄| 久久精品青青大伊人av| 欧美成人午夜剧场免费观看| 欧美视频成人| 国产一区观看| 99成人精品| 久久av老司机精品网站导航 | 亚洲精品影视| 性亚洲最疯狂xxxx高清| 麻豆精品视频在线| 欧美视频在线一区二区三区| 国产亚洲一区在线播放| 亚洲精品综合在线| 欧美一区二区三区视频在线| 亚洲美女精品一区| 欧美一级理论片| 欧美激情欧美激情在线五月| 国产精品青草久久久久福利99| 狠狠久久亚洲欧美| 中文精品99久久国产香蕉| 亚洲缚视频在线观看| 亚洲一区在线直播| 美女黄色成人网| 国产精品久久久免费| 亚洲国产天堂网精品网站| 亚洲视频电影在线| 亚洲国产综合在线| 午夜欧美精品| 欧美另类69精品久久久久9999| 国产欧美在线播放| 亚洲精品欧美| 亚洲国产精品www| 午夜日韩视频| 欧美日韩国产成人高清视频| 国内精品一区二区| 亚洲影视中文字幕| 99国产精品久久久久久久| 久久久久国色av免费观看性色| 欧美日韩精品免费| 亚洲国产精品第一区二区三区| 欧美亚洲在线观看| 亚洲一区二区三区四区五区午夜| 久久精品欧美| 国产精品无码专区在线观看| 日韩视频在线免费| 91久久香蕉国产日韩欧美9色| 欧美在线一区二区| 欧美视频在线不卡| 亚洲激情不卡| 亚洲第一福利视频| 久久成人免费| 国产精品久久久久久久久久尿| 亚洲人精品午夜在线观看| 亚洲国产精品va在看黑人| 久久久91精品国产| 国产农村妇女毛片精品久久麻豆| av72成人在线| 中国女人久久久| 欧美喷潮久久久xxxxx| 在线成人国产| 亚洲高清资源| 久久资源在线| 狠狠色综合一区二区| 午夜精品视频在线观看一区二区| 亚洲综合日韩| 国产精品普通话对白| 亚洲婷婷在线| 亚洲综合视频1区| 欧美午夜精彩| 一本一道久久综合狠狠老精东影业| 一区二区高清视频| 欧美日韩免费观看一区| 亚洲欧洲免费视频| 999亚洲国产精| 欧美日本国产精品| 亚洲精品一区在线观看| 日韩视频免费观看| 欧美日本国产| 一区二区三区欧美视频| 亚洲性图久久| 国产精品国产三级国产a| 中日韩美女免费视频网站在线观看 | 99天天综合性| 欧美日韩一区三区四区| 艳女tv在线观看国产一区| 亚洲一区二区三区视频播放| 国产精品久久久久久亚洲调教 | 亚洲欧美激情一区二区| 欧美亚洲综合在线| 国产三区二区一区久久| 久久成人国产精品| 免费不卡亚洲欧美| 亚洲区一区二区三区| 一区二区三区欧美在线| 国产精品久久久久免费a∨| 香蕉av777xxx色综合一区| 久久久久久久精| 亚洲国产网站| 亚洲欧美日韩成人| 国产午夜精品理论片a级大结局 | 久久精品中文字幕一区| 在线观看日韩专区| 日韩图片一区| 国产精品嫩草99av在线| 欧美一区二区三区的| 免费毛片一区二区三区久久久| 亚洲精品在线观看免费| 午夜视频一区| 怡红院精品视频| 一区二区三区国产精华| 国产精品一区二区男女羞羞无遮挡 | 久久精品日产第一区二区三区| 欧美v日韩v国产v| av成人国产| 久久精品国亚洲| 亚洲高清123| 亚洲伊人色欲综合网| 国产亚洲欧洲| 一本色道久久综合狠狠躁篇的优点| 国产精品推荐精品| 亚洲人成网站精品片在线观看 | 亚洲国产精品久久久久秋霞影院 | 性欧美大战久久久久久久久| 免费观看亚洲视频大全| 亚洲视频 欧洲视频| 久久久久久久网| 日韩视频在线免费观看| 久久精品首页| 99日韩精品| 免费成人av在线| 亚洲伊人伊色伊影伊综合网| 欧美福利视频在线观看| 亚洲性色视频| 欧美成人亚洲成人| 亚洲欧美日韩精品久久| 欧美成人精品影院| 亚洲欧美中文日韩v在线观看| 欧美高清在线一区| 亚洲欧美日韩国产中文| 欧美伦理在线观看| 久久精品国产一区二区三| 欧美午夜视频网站| 91久久夜色精品国产网站| 国产精品久久久久久久久久久久| 亚洲人体影院| 国产香蕉97碰碰久久人人| 中文亚洲字幕| 亚洲成人直播| 久久精品免费电影| 正在播放亚洲一区|