读书笔记 Advanced FPGA(8)Implementing Math Functions

//对需要调用IP core的乘除法来说,做好仿真最重要,包括运算周期的仿真和控制信号的设置

This chapter covers a variety of problems encountered when an FPGA designer attempts to implement a complex math function in an FPGA. Interestingly, most real-world math problems can be solved by combinations of shift and add operations. This chapter describes a few of these methods as they relate to division and trigonometric operations and then also explains how to expand this to a broader class of functions. In many cases, there are a number of alternative solutions that require optimizations for a given application.


SUMMARY OF KEY 

POINTS

-The multiply and shift method is an easy way to perform division but can
only be used when the divisor is represented in a specific form.
-This compact architecture is useful for fixed-point divisions that can afford
the relatively large latency of an iterative division process.
-The Goldschmidt method provides a way to pipeline the division process in
a manner that is much more efficient than unrolling the loop of the iterative
method.
-Taylor and Maclaurin series expansions can be used to break down
complex functions into multiply and add operations that are easily
implemented in hardware.
-The CORDIC algorithm should be preferred over a Taylor expansion for
the calculation of sine and cosine operations.


你可能感兴趣的:(FPGA开发)