Digital Signal Processing Reference
In-Depth Information
12.5.3 Novel Optimal Hardware Design
Yet another approach to designing optimal hardware of the CORDIC is to map the expressions in r i
into two binary constants using reverse encoding and then use four multipliers and two adders to
compute the desired results. This novel technique results in a single-stage CORDIC architecture.
The design is shown in Figure 12.19.
The inverse coding is accomplished using (12.16). The inverse coding for const1 is simply derived
as:
N 1
N 1
1 r i 2 ði þ 1 Þ ¼
1 b i 2 i 2 M þ 2 N
ð 12 : 22 Þ
i¼Mþ
i¼Mþ
In HW design, as the original b i are kept intact they are used for computing the two constants. To
cater for the 2 N term in (12.22), a 1 is appended to b as the LSB b N , and for the 2 M factor the
corresponding b M þ 1 bit is flipped and is assigned a negative weight. Then const1 is given as:
N
¼b 0 1 2 M þ
2 b i 2 ði 1 Þ
const
1
ð
12
:
23
Þ
i¼Mþ
where b 0 1 is the complement of bit b M þ 1 . Similarly for const2, the first r k are computed for
i ¼ M þ
1,
...
, N
1 as:
rr k ¼ r i r j where
k ¼ i þ j
and
k P
These rr k are then inverse coded using (12.22) and an equivalent value is computed similar to the
const1 computation by expression in (12.23). For N ¼ 16 and P ¼ 16, this requires computing the
cos θ
x 4
x
+
table x
-
P 2
P 1
x
x
sin
θ
+
y 4
M
P 1
x
table y
P 2
M
const 2
N −1
N −1
( i
+
j )
2
1
r j
i
i = M +1
j = i +1
( i + j ) ≤ P 2
N
N-M
const 1
N
1
2 i
r i
i = M +1
Figure 12.19 Optimal hardware design with single-stage implementation of the CORDIC algorithm
 
Search WWH ::




Custom Search