曹劍英
(集寧師范學院 物理系,內(nèi)蒙古 烏蘭察布 012000)
基于擴展CORDIC算法的正切余切函數(shù)的設計
曹劍英
(集寧師范學院 物理系,內(nèi)蒙古 烏蘭察布 012000)
傳統(tǒng)的坐標旋轉算法(Cordinate Rotational Digital Computer,CORDIC)已經(jīng)能夠在硬件上較為滿意地計算三角函數(shù),但是依然存在范圍過窄的限制;需要進一步改進和完善的地方.本文基于擴展的CORDIC算法原理對正切余切函數(shù)在硬件上的設計.
坐標旋轉算法;正切余切函數(shù);設計
1.1 算法推導[1]
圖1 平面坐標的旋轉
CORDIC算法是一種旋轉坐標的方法.設起點坐標為P0=(x(1),y(1)),旋轉θ角度,得到終點坐標,設為Pn=(x(2),y(2)),如圖1所示.由三角函數(shù)知識,旋轉后的坐標由式(1-1)計算得到
其中
即
矩陣R可以寫成
把cosθ去掉后相當于把旋轉后矢量的模減小了,為了保證最終的結果正確,一般在結果的后面乘上一個系數(shù)K.對于某一個角度β,假定初始角度為z0,可以通過z0經(jīng)過若干個小角度θi的旋轉獲得,β=z0+Σθi;并可以得到如下所示的迭代公式:
1.2 傳統(tǒng)CORDIC的模型
以上所作的Cordic理論分析,只是Cordic算法提出時的理論雛形;之后,John Walther于1971年對其進行了擴展引申,進一步的完備了Cordic算法,得到以下Cordic的迭代模型[2].
這里,
根據(jù)δi取值的判讀方式,CORDIC算法又分為旋轉模式和向量模式.當m取不同的值時,可以得到CORDIC的三種不同計算方式,在各個計算方式下,通過多次迭代,可以計算得到多個函數(shù)的值,比如三角函數(shù)、雙曲函數(shù)以及開方運算等.
1.3 擴展CORDIC算法
我們可以知道傳統(tǒng)CORDIC迭代算法可以實現(xiàn)乘法、除法、三角函數(shù)、雙曲函數(shù)、指數(shù)、對數(shù)以及開方等運算.但是傳統(tǒng)CORDIC算法存在求值受限的問題,比如Circular下的CORDIC算法只能進行0°~99°范圍內(nèi)三角函數(shù)運算,弧度還不能涵蓋0~π.針對CORDIC的這類問題,Xiaobo Hu等3位教授在在Expanding the Range of Convergence of the Cordic Algorithm[3]中提出了改進型的CORDIC算法.
CORDIC迭代算法并不能直接被用于計算正切和余切函數(shù).由于圓周CORDIC算法能被用于計算正弦與余弦函數(shù),而線性CORDIC算法能實現(xiàn)兩變量的乘法與除法操作,基于此,本論文擬采用圓周CORDIC與線性CORDIC相結合的方式來實現(xiàn)正切與余切的操作,如圖2所示.
圖2 基于CORDIC的正切余切的實現(xiàn)
本文采用的定點數(shù)據(jù)格式如圖3所示,使用16位二進制來表示小數(shù)部分,8位表示整數(shù)部分,還有一位是符號位.
圖3 定點數(shù)據(jù)格式(一位符號位,8位整數(shù)位以及16位小數(shù)位)
在本文中,我們引入M倍降速遞歸流水線技術(這里M=2),在一個模塊中同時實現(xiàn)正切與余切運算.該模塊的內(nèi)部結構如圖4所示.從而可知,通過增加較為簡單的控制電路,可以使整個模塊能夠節(jié)省將近5%的LUTs[4].
圖4 基于M倍降速遞歸流水線技術的正切余切模塊
4.5.2仿真驗證.
表1 測試用例以及仿真結果分析
在Modelsim中編寫了TestBench文件進行測試,測試用例如表1所示.由于在模塊內(nèi)部,針對符號位是做了特殊處理的,因此會出現(xiàn)在多次迭代后,±θ的正切或余切只是符號位有差別,而不會因為迭代的原因?qū)е掠薪^對值上的偏差.此外,從表1的誤差比率來看,本文所設計的正切余切計算模塊能較為精確地獲得角度θ的正切余切值.
〔1〕孔德元.針對正弦余弦計算的CORDIC算法優(yōu)化及其FPGA實現(xiàn)[D].中南大學碩士論文,2008.1-3.
〔2〕J.E.Volder.The CORDIC trigonometric computing technique [J].IRE Trans.on Electron.Computers,vol. EC-8,1959.P.330-P.334.
〔3〕Xiaobo Hu,Ronald G.Harber,and Steven C.Bass, Expanding the Range of Convergence of the CORDIC Algorithm,IEEE Trans.on Computers,[J].vol.40,no.1, 1991.Jan.P.13-P.21.
〔4〕曹劍英.M倍降速遞歸流水線技術實現(xiàn)正切余切函數(shù)[J].通信技術,2013(05).
O174
A
1673-260X(2013)11-0005-02