数字信号-外文翻译-外文文献-英文文献-基于FPGA的CORDIC算法综述.doc
《数字信号-外文翻译-外文文献-英文文献-基于FPGA的CORDIC算法综述.doc》由会员分享,可在线阅读,更多相关《数字信号-外文翻译-外文文献-英文文献-基于FPGA的CORDIC算法综述.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、A survey of CORDIC algorithms for FPGA based computers1. ABSTRACTThe current trend back toward hardware intensive signal processing has uncovered a relative lack of understanding of hardware signal processing architectures. Many hardware efficient algorithms exist, but these are generally not well k
2、nown due to the dominance of software systems over the past quarter century. Among these algorithms is a set of shift-add algorithms collectively known as CORDIC for computing a wide range of functions including certain trigonometric, hyperbolic, linear and logarithmic functions. While there are num
3、erous articles covering various aspects of CORDIC algorithms, very few survey more than one or two, and even fewer concentrate on implementation in FPGAs. This paper attempts to survey commonly used functions that may be accomplished using a CORDIC architecture, explain how the algorithms work, and
4、explore implementation specific to FPGAs.2. INTRODUCTIONThe digital signal processing landscape has long been dominated by microprocessors with enhancements such as single cycle multiply-accumulate instructions and special addressing modes. While these processors are low cost and offer extreme flexi
5、blility, they are often not fast enough for truly demanding DSP tasks. The advent of reconfigurable logic computers permits the higher speeds of dedicated hardware solutions at costs that are competitive with the traditional software approach. Unfortunately, algorithms optimized for these microproce
6、ssor based systems do not usually map well into hardware. While hardware efficient solutions often exist, the dominance of the software systems has kept those solutions out of the spotlight. Among these hardware-efficient algorithms is a class of iterative solutions for trigonometric and other trans
7、cendental functions that use only shifts and adds to perform. The trigonometric functions are based on vector rotations, other functions such as square root are implemented using an incremental expression of the desired function. The trigonometric algorithm is called CORDIC, an acronym for coordinat
8、e rotation digital computer. The incremental functions are performed with a very simple extension to the hardware architecture, and while not CORDIC in the strict sense, are often included because of the close similarity. The CORDIC algorithms generally produce one additional bit of accuracy for eac
9、h iteration.3. CORDIC THEORY: AN ALGORITHM FOR VECTOR ROTATIONAll of the trigonometric functions can be computed or derived from functions using vector rotations, as will be discussed in the following sections. Vector rotation can also be used for polar to rectangular and rectangular to polar conver
10、sions, for vector magnitude, and as a building block in certain transforms such as the DFT and DCT. The CORDIC algorithm provides an iterative method ofperforming vector rotations by arbitrary angles using only shifts and adds. The algorithm is derived from the general (Givens) rotation transform:wh
11、ich rotates a vector in a Cartesian plane by the angle These can be rearranged so that:So far, nothing is simplified. However, if the rotation angles are restricted so that , the multiplication by the tangent term is reduced to simple shift operation. Arbitrary angles of rotation are obtainable by p
12、erforming a series of successively smaller elementary rotations. If the decision at each iteration, i, is which direction to rotate rather than whether or not to rotate, then the term becomes a constant.The iterative rotation can now be expressed as:Where:Removing the scale constant from the iterati
13、ve equations yields a shift-add algorithm for vector rotation. The product of the Kis can be applied elsewhere in the system or treated as part of a system processing gain. That product approaches 0.6073 as the number of iterations goes to infinity. Therefore, the rotation algorithm has a gain, An ,
14、 of approximately 1.647. The exact gain depends on the number of iterations, and obeys the relation.The angle of a composite rotation is uniquely defined by the sequence of the directions of the elementary rotations. That sequence can be represented by a decision vector. The set of all possible deci
15、sion vectors is an angular measurement system based on binary arctangents. Conversions between this angular system and any other can be accomplished using a look-up. A better conversion method uses an additional adder-subtractor that accumulates the elementary rotation angles at each iteration. The
16、elementary angles can be expressed in any convenient angular unit. Those angular values are supplied by a small lookup table (one entry per iteration) or are hardwired, depending on the implementation. The angle accumulator adds a third difference equation to the CORDIC algorithm:Obviously, in cases
17、 where the angle is useful in the arctangent base, this extra element is not needed.The CORDIC rotator is normally operated in one of two modes. The first, called rotation by Volder4, rotates the input vector by a specified angle (given as an argument). The second mode, called vectoring, rotates the
18、 input vector to the xaxis while recording the angle required to make that rotation.In rotation mode, the angle accumulator is initialized with the desired rotation angle. The rotation decision at each iteration is made to diminish the magnitude of the residual angle in the angle accumulator. The de
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 外文 翻译 文献 英文 基于 FPGA CORDIC 算法 综述
限制150内