3
TM
GENERAL DESCRIPTION
The CS2420 performs N-point FFT/IFFT following the
equations below:
Where N is 2048, 4096 or 8192, SDC is the scaling down
control signal, X(n) is the complex input data and Y(k) the
complex output data. Both the real and imaginary
components of input X(n) and output Y(k) are 16-bit two's
complement numbers.
In order to achieve highest data throughput rate possible,
CS2420 employs fixed-point arithmetic operations and pre-
scaling strategy to handle possible overflow in computation.
The core has 7-bit unconditional scaling down operations and
7-bit controlled scaling down operations specified by input
signal SDC, giving the user the necessary gain control means
required in the application.
CS2420 employs two computation u n its in pipeline t o per form
the transform in three passes, using a mixed radix-8/radix-16
and radix-32 algorithm. Processing unit 1 consists of a radix-4
butterfly, an 8-point/16-point twiddle LUT, a complex number
multiplier and a selectable radix-2/radix-4 butterfly. It
performs one 16-point transform or two 8-point transforms in
16 clock cycles according to the control signals from the
trans fo rm controller. Processing unit 2 consists of a 2048/4092/
8192-point twiddle factor generator, a complex number
multiplier and a radix- 2 butterfly. In the first two passes of the
computation, it takes the output of processing unit 1 and
performs twiddle operation. In the last pass, it either directs
the output of processing unit 1 to the controller when the core
is in 2048- or 4096-point transform mode or performs 32-point
twiddle and radix-2 operations when the core is in 8192-point
mode.
Programming CS2420 is performed when the synchronous
reset signal CLR is active. The programming signals, namely,
IFFT, CFG and SDC, are loaded into the core. These set up the
transform type, transform size and scaling down controls.
CS2420 performs the three computation passes continuously
in a pipelined manner without wasting any clock cycle, due to
the fixed-point arithmetic and pre-scaling strategy used. The
core can perform the transform and loading input data/
downloading transform result with a 4x clock. For example,
an 8192-point transform with data/IO can be performed with
32768 clock cyc le s.
The scaling down operation is spread into various computing
passes and computation units. The two processing units use
18-bit arithmetic operations and detect the possible overflow
in computation. When overflow occurs, the processing units
flag it to the controller and saturate the overflow results on the
fly.
The core has separate I/O indicator and control signals to
support simultaneous or separate loading input data and
downloading the transform result. The input data is burst in
to and the transformed result is burst out from CS2420 on
block-by-block basis.
YBS O 1 Output data Y block start signal, active HIGH, asserted when the first
data of the N-point transforme d bloc k is on the outp ut port . The remai n-
ing N-1 data of the N-point transform result come out of the core in the
following N-1 clock cycles in the natural order.
YAV O 1 Output dat a Y avail abl e i nd icator, activ e HIGH , as se rted with ev ery da ta
of the N-point transform result
YRe O16 Real c ompon ent of output da ta Y, in two’ s c omple ment format, vali d only
when YAV is HIGH
YIm O16 Imaginary component of output data Y, in two’s complement format,
valid only when YAV is HIGH
YOV O 1 Output data Y overflow signal, active HIGH, asserted when overflow
occurs when the transform is performed. It is reset when a new trans-
form starts and is associated with the N-point block.
Table 1: I/O Description for the CS2420
Name I/O Width Description
FFT: Yk() 1
27SDC+
--------------------Xn()W
N
nk– ,k=0, 1, 2,.. [1]
n0=
N1–
∑
=
IFFT Yk() 1
27SDC+
--------------------Xn()W
N
nk ,k=0, 1, 2, [2]
n0=
N1–
∑
=