扩展因子预编码的两阶段CORDIC旋转算法2S-PCS
CORDIC算法常用于高效地用硬件实现向量旋转操作,如何减少迭代次数并保持扩展因子计算与补偿的简单性是算法的难点.文中提出一种表驱动的2S-PCS算法,其流水线较短且扩展因子可预先计算并优化编码.算法首先将[-π,π]内的旋转角映射到[0,π/4]内,并产生初值调整和旋转方向控制信号.之后的旋转过程分为两阶段,步1进行扩展因子可变的大角度旋转,使剩余旋转角进入步2的收敛域.步1的迭代系数和扩展因子均由映射后旋转角的高字段作为地址查表获得.步2扩展因子恒为1,迭代系数直接由旋转角的二进制编码决定.整个过程不需z通道和扩展因子计算通道,节省了面积开销.2S-PCS利用角度分解算法生成步1的迭代系数,约束非零系数的位置,并对扩展因子进行基4-Booth编码,同时合并相邻的计算量小的迭代,以减少流水线级数.2S-PCS算法利用CSA实现三数累加,同时忽略超出精度表示范围的表达式,以减少延迟、降低复杂性.短流水线还可减少计算通路的圆整(rounding)误差,提高精度.2S-PCS算法克服了全字段查表可扩展性差的问题,入口数随数据精度的增加而缓慢增长,可扩展性好.当采用28位数据通路时,与常规CORDIC算法相比,2S-PCS算法的流水线级数减少约38%,面积减少约27.9%,精度提高3位左右,具有明显的性能优势.
向量旋转、CORDIC算法、查找表、免扩展、角度重编码
34
TP302(计算技术、计算机技术)
海军工程大学自然科学基金HGDQNJJ10028
2011-08-16(万方平台首次上网日期,不代表论文的发表时间)
共9页
729-737