《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 一種基于CORDIC算法的高精度反正切求解
一種基于CORDIC算法的高精度反正切求解
2022年電子技術應用第1期
仲雅莉1,吳俊輝2,劉 炫2,高 萍1,3,段曉輝1,4
1.國家超級計算無錫中心,江蘇 無錫214072;2;江南大學,江蘇 無錫214122; 3.山東大學,山東 濟南250100;4.清華大學,北京100084
摘要: 傳統(tǒng)的CORDIC(坐標旋轉計算機)算法進行高精度反正切求解時存在迭代次數(shù)多、收斂速度慢、資源消耗大等問題,提出一種改進的高精度CORDIC 算法。該方法利用傳統(tǒng)的CORDIC算法迭代數(shù)次后得到正弦信息,并利用角度和正弦值近似的原理,對迭代后的結果進行誤差補償,有效提高了相同迭代步數(shù)下的計算精度。實驗數(shù)據(jù)表明:32位改進的CORDIC算法,保證絕對誤差小于5×10-9情況下,查找表資源消耗降低了64.8%,觸發(fā)器資源消耗降低了35.3%,輸出時延降低了53.3%。在分子動力學應用場景下,觸發(fā)器資源消耗可降低63.2%,輸出時延可降低60%。改進的CORDIC算法在資源消耗、輸出時延方面優(yōu)于傳統(tǒng)CORDIC算法,適用于高精度計算的場景。
中圖分類號: TP391
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.212393
中文引用格式: 仲雅莉,吳俊輝,劉炫,等. 一種基于CORDIC算法的高精度反正切求解[J].電子技術應用,2022,48(1):12-17.
英文引用格式: Zhong Yali,Wu Junhui,Liu Xuan,et al. A high precision arctangent solution based on CORDIC algorithm[J]. Application of Electronic Technique,2022,48(1):12-17.
A high precision arctangent solution based on CORDIC algorithm
Zhong Yali1,Wu Junhui2,Liu Xuan2,Gao Ping1,3,Duan Xiaohui1,4
1.National Supercomputing Center in Wuxi,Wuxi 214072,China;2.Jiangnan University,Wuxi 214122,China; 3.Shandong University,Jinan 250100,China;4.Tsinghua University,Beijing 100084,China
Abstract: The traditional CORDIC(Coordinate Rotation Computer) algorithm has many iterations, slow convergence speed, and large resource consumption for high-precision arctangent. An improved high-precision CORDIC algorithm is proposed. This method uses the traditional CORDIC algorithm to obtain the sine information after several iterations, and uses the sine value to compensate the error of iteration results,which effectively improves the calculation accuracy. Experimental data shows that the 32 bit improved CORDIC algorithm ensures that the absolute error is less than 5×10-9, the resource consumption of the lookup table is reduced by 64.8%, the resource consumption of the flip-flop is reduced by 35.3%, and the output delay is reduced by 53.3%. In molecular dynamics application scenarios, flip-flop resource consumption can be reduced by 63.2%, and output delay can be reduced by 60%. The improved CORDIC algorithm is superior to the traditional CORDIC algorithm in terms of resource consumption and output delay, and is suitable for high-precision computing applications.
Key words : CORDIC arctangent solution;iterative convergence;error compensation

0 引言

    坐標旋轉計算機(Coordinated Rotation Digital Computer,CORDIC)算法只有移位和加減運算,便于在FPGA等硬件平臺上實現(xiàn)復雜的三角函數(shù)、雙曲函數(shù)、指數(shù)函數(shù)和復數(shù)求模等計算,廣泛應用于數(shù)字鑒相、數(shù)字上下變頻、波形產(chǎn)生、快速傅里葉變換等方面[1-4]

    針對CORDIC算法中由于迭代次數(shù)多、輸出延時大和精度較低等問題,國內外很多學者進行了研究和改進。文獻[5]提出了基于自適應旋轉角度的CORDIC算法,該算法雖然減少了迭代次數(shù),但每次迭代都需要額外判斷,增加了實現(xiàn)難度。文獻[6]提出了將查找表和傳統(tǒng)CORDIC算法相融合,通過查找表將角度值細化,通過數(shù)學量化分析,根據(jù)細化后的較小角度補碼,直接按位值進行角度單向旋轉,該算法隨著對精度要求的提高,查找表存儲空間大大增加,硬件資源消耗巨大。文獻[7]提出了一種基于最佳一致逼近方法的幅度與相位補償算法,第一步是利用傳統(tǒng)的CORDIC算法迭代數(shù)次后得到向量信息,第二步是采用最佳逼近法進行多項式補償,該算法雖然提高了精度,但逼近算法需要存儲多項式系數(shù),硬件資源消耗較大。文獻[8]提出來一種基于CORDIC算法的反正切函數(shù)計算的改進算法,該算法對累加器中因截尾而產(chǎn)生的誤差做了算法改進,僅增加了運算速度,精度并未明顯提高。文獻[9]提出了一種基于查找表的改進的CORDIC算法,該方法通過縮減有效數(shù)據(jù)位寬、合并迭代等手段節(jié)省了剩余角度Z的計算量,該算法把迭代次數(shù)進行拆分,用了14次迭代和查找表的結合,硬件資源消耗較多,性能提升卻不足。




本文詳細內容請下載:http://ihrv.cn/resource/share/2000003902。




作者信息:

仲雅莉1,吳俊輝2,劉  炫2,高  萍1,3,段曉輝1,4

(1.國家超級計算無錫中心,江蘇 無錫214072;2;江南大學,江蘇 無錫214122;

3.山東大學,山東 濟南250100;4.清華大學,北京100084)




wd.jpg

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。