《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計(jì)應(yīng)用 > 一種基于CORDIC算法的高精度反正切求解
一種基于CORDIC算法的高精度反正切求解
2022年電子技術(shù)應(yīng)用第1期
仲雅莉1,吳俊輝2,劉 炫2,高 萍1,3,段曉輝1,4
1.國家超級計(jì)算無錫中心,江蘇 無錫214072;2;江南大學(xué),江蘇 無錫214122; 3.山東大學(xué),山東 濟(jì)南250100;4.清華大學(xué),北京100084
摘要: 傳統(tǒng)的CORDIC(坐標(biāo)旋轉(zhuǎn)計(jì)算機(jī))算法進(jìn)行高精度反正切求解時(shí)存在迭代次數(shù)多、收斂速度慢、資源消耗大等問題,提出一種改進(jìn)的高精度CORDIC 算法。該方法利用傳統(tǒng)的CORDIC算法迭代數(shù)次后得到正弦信息,并利用角度和正弦值近似的原理,對迭代后的結(jié)果進(jìn)行誤差補(bǔ)償,有效提高了相同迭代步數(shù)下的計(jì)算精度。實(shí)驗(yàn)數(shù)據(jù)表明:32位改進(jìn)的CORDIC算法,保證絕對誤差小于5×10-9情況下,查找表資源消耗降低了64.8%,觸發(fā)器資源消耗降低了35.3%,輸出時(shí)延降低了53.3%。在分子動力學(xué)應(yīng)用場景下,觸發(fā)器資源消耗可降低63.2%,輸出時(shí)延可降低60%。改進(jìn)的CORDIC算法在資源消耗、輸出時(shí)延方面優(yōu)于傳統(tǒng)CORDIC算法,適用于高精度計(jì)算的場景。
中圖分類號: TP391
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.212393
中文引用格式: 仲雅莉,吳俊輝,劉炫,等. 一種基于CORDIC算法的高精度反正切求解[J].電子技術(shù)應(yīng)用,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 引言

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

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




本文詳細(xì)內(nèi)容請下載:http://ihrv.cn/resource/share/2000003902。




作者信息:

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

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

3.山東大學(xué),山東 濟(jì)南250100;4.清華大學(xué),北京100084)




wd.jpg

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