關于FPGA流水線設計的論文
This work investigates the use of very deep pipelines for
implementing circuits in FPGAs, where each pipeline
stage is limited to a single FPGA logic element (LE). The
architecture and VHDL design of a parameterized integer
array multiplier is presented and also an IEEE 754
compliant 32-bit floating-point multiplier. We show how to
write VHDL cells that implement such approach, and how
the array multiplier architecture was adapted. Synthesis
and simulation were performed for Altera Apex20KE
devices, although the VHDL code should be portable to
other devices. For this family, a 16 bit integer multiplier
achieves a frequency of 266MHz, while the floating point
unit reaches 235MHz, performing 235 MFLOPS in an
FPGA. Additional cells are inserted to synchronize data,
what imposes significant area penalties. This and other
considerations to apply the technique in real designs are
also addressed.
PIECEWISE_EVAL: evaluates a piecewise function of x
usage: y = PIECEWISE_EVAL(x,breakpoints,funs)
arguments (input)
x - vector or array of points to evaluate though the function
breakpoints - list of n breakpoints, -inf and +inf are implicitly
LINEINTRGAL Line Integral in a 2D Vector Field.
LINEINTRGAL(X,Y,U,V,C) computes the line integral along the lines given in cell array C.
X and Y define the coordinates of a rectangular grid over which
U and V are defined. X and Y must be monotonic and 2D plaid as
% produced by MESHGRID. X, Y, U, and V must all be the same size.
CCS編程環境 使用的是匯編加C的混合編程方法:
The programme of the Correlation Algorithm.
Using INT2 to get the input signal.
array x, in first step, is the input signal produced by programme,
in next step, is the input signal get from A/D,
the length is 128, 32-bit floating point.
array y, in first step, is the input signal produced by programme,
in next step, is the input signal get from A/D,
the length is 128, 32-bit floating point.
array cor is the Correlation result, the length is 255, 32-bit floating point.
Input
The input consists of two lines. The first line contains two integers n and k which are the lengths of the array and the sliding window. There are n integers in the second line.
Output
There are two lines in the output. The first line gives the minimum values in the window at each position, from left to right, respectively. The second line gives the maximum values.
Sample Input
8 3
1 3 -1 -3 5 3 6 7
Sample Output
-1 -3 -3 -3 3 3
3 3 5 5 6 7
C++, although a marvelous language, isn t perfect. Matthew Wilson has been working with it for over a decade, and during that time he has found inherent limitations that require skillful workarounds. In this book, he doesn t just tell you what s wrong with C++, but offers practical techniques and tools for writing code that s more robust, flexible, efficient, and maintainable. He shows you how to tame C++ s complexity, cut through its vast array of paradigms, take back control over your code--and get far better results