Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 1台灣大學 吳安宇 教授
COordinate Rational DIgital Computer
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 2台灣大學 吳安宇 教授
OutlineOutlineIntroductionConventional CORDIC AlgorithmEnhancement of CORDIC
MVR-CORDIC AlgorithmEEAS-Based CORDIC Algorithm
Vector Rotational CORDIC Family
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 3台灣大學 吳安宇 教授
IntroductionIntroductionVector rotation is the kernel of various digital signal processing (DSP) applications, including
Digital filters:Orthogonal digital filters, and adaptive lattice filters.
Linear transformation:DFT, Chirp-Z transform, DHT, and FFT.
Matrix based digital signal processing algorithms:QR factorization, with applications to Kalman filtering
Linear system solverssuch as Toeplitz and covariance system solvers,……,etc.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 4台灣大學 吳安宇 教授
Rotational OperationRotational Operation
(xin,yin)
(xout,yout
θ
)
Each vector rotation takes 4 multiplications
and 2 additions
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 5台灣大學 吳安宇 教授
Digital Lattice FilterDigital Lattice FilterLow-sensitivity to coefficient quantization error
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 6台灣大學 吳安宇 教授
Normalized Lattice SectionNormalized Lattice SectionGivens Rotation
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 7台灣大學 吳安宇 教授
Fast Fourier TransformationFast Fourier Transformation
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 8台灣大學 吳安宇 教授
Fast Fourier TransformationFast Fourier TransformationTwiddle factor
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 9台灣大學 吳安宇 教授
OutlineOutlineIntroductionConventional CORDIC AlgorithmEnhancement of CORDIC
MVR-CORDIC AlgorithmEEAS-Based CORDIC Algorithm
Vector Rotational CORDIC Family
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 10台灣大學 吳安宇 教授
Conventional CORDIC AlgorithmConventional CORDIC Algorithm
−=
++
)()(
.cossinsincos
)1()1(
iyix
iyix
αααα
−
−−=
++
)()(
.1
21)1()1(
2 iyix
i
i
iyix
i
i
µµ
⋅
−⋅=
++
)()(
1tantan1
cos)1()1(
iyix
iyix
αα
α
)2tan2tan( 11 ii
iii
−−−− == µµα
⇓
⇓
where
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 11台灣大學 吳安宇 教授
Conventional CORDIC AlgorithmConventional CORDIC AlgorithmEase-to-implementation (shift-and-add only)
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 12台灣大學 吳安宇 教授
Conventional CORDIC AlgorithmConventional CORDIC Algorithm
Example:Rotation angle: θ = π/8 = 0.3927
( ) ( ) ( ) { }1,1 ,1
0, −+=
−≡ ∑−
=
iiaiN
iCORDICm µµθξ
( ) ( ) ( ) ( )( ) ( ) ( ) ( )+++
+≈3322
1100aa
aaµµµµθ
Sequentially performing of sub-angles, a(i)
V(2)
V(0)
V(1)V(3)
V(4)
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 13台灣大學 吳安宇 教授
Generalized CORDICGeneralized CORDIC
V(2)V(0)
V(1) V(3)V(4)
122 =+ yx
Circular
Linear
V(1)
V(3)
V(3)
Hyperbolic
V(0)V(1)
V(2)m→0 , linear system ;
m=1 , circular system ;
m=-1 , hyperbolic system.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 14台灣大學 吳安宇 教授
Summary of CORDIC AlgorithmSummary of CORDIC AlgorithmBoth micro-rotation and scaling phasesInitiation:Given x(0),y(0),z(0)
For i=0 to n-1 , Do
/*CORDIC iteration equation */
/*Angle updating equation*/(i)a- miz(i)1)z(i µ=+
/*Scaling Operation (required for m=±1 only)*/
End i loop
=
)()(
)(1
nynx
nKyx
mf
f
−
−−=
++
)()(
.1),(
),(21)1()1(
2 iyix
ims
imsmiyix
i
i
µµ
)21(1
0
),(22∏−
=
−+=n
i
imsim mK µ
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 15台灣大學 吳安宇 教授
Modes of OperationsModes of Operations
)(iz(n)-z(n)-z(0)1
0im
n
ia∑
−
=
== µθ
υµ = sign of z(i)
Vector rotation mode (θ is given)objective is to compute the final vector
Usually , we set z(0)= θ
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 16台灣大學 吳安宇 教授
Modes of Operations (cont’d)Modes of Operations (cont’d)Angle accumulation mode (θ is not given)
Objective is to rotate the given initial vector back to x-axis ,and the angle can be accrued.
µ = - sign x(i)y(i) υ
V(0)
V(1)
X-axis
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 17台灣大學 吳安宇 教授
Basic processor for Micro-Basic processor for Micro-RotationRotation
X(i) Y(i)
X-Reg Y-Reg
+/- +/-
Barrel shifter
Barrel shifter
X(i+1) Y(i+1)
mux mux mux mux
X-Reg Y-RegZ-reg
iµ
Z(i+1)
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 18台灣大學 吳安宇 教授
Basic processor for Scaling Basic processor for Scaling OperationOperation
)('2)(')1('
)('2)(')1('
:2
)(2)(')1('
)(2)(')1('
:1
nyiyiy
nxixix
Type
nyiyiy
nxixix
Type
q
q
p
p
i
i
i
i
−
−
−
−
+=+
+=+
+=+
+=+
X(n) Y(n)
X(n) Y(n)
+/- +/-
Barrel shifter
Barrel shifter
X-Reg Y-Reg
ff y x
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 19台灣大學 吳安宇 教授
Advantages and disadvantagesAdvantages and disadvantages
-Simple Shift-and-add Operation.
(2 adders+2 shifters v.s. 4 mul.+2 adder)
-Small area.
-It needs n iterations to obtain n-bit precision.
-Slow carry-propagate addition.
-Area consuming shifts.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 20台灣大學 吳安宇 教授
Enhancement of CORDICEnhancement of CORDIC
ArchitecturePipelined ArchitectureFaster Adder (CSA)
AlgorithmRadix-4 CORDICMVR-CORDICEEAS-CORDIC
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 21台灣大學 吳安宇 教授
Pipelined architecturePipelined architecture
Basic
CORDIC
Processor
1
Basic
CORDIC
Processor
2
Basic
CORDIC
Processor
n+s
L
A
T
C
H
L
A
T
C
H
L
A
T
C
H
f
f
yx
)0()0(
1
1
++
++
sn
sn
yx
)1(snv + )1(2 −+snv)2(1−+snv)0(1++snv
Ni−µ1−iµ
Expand folded CORDIC processor to achieve the pipelined architectureShifting can be realized by wiring
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 22台灣大學 吳安宇 教授
Faster Adder (CSA)Faster Adder (CSA)
+
+
+
sign
Ripple Adder and its sign calculation
+
+
+
+
+
+
sign
CSA VMAand its sign calculation
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 23台灣大學 吳安宇 教授
Critical Path of CSACritical Path of CSA
+++
+++
sign
CSA VMAand its sign calculation
+++
sign
CSA VMAand its sign calculation
In on-line approach , we want to get sign bit as soon as possible !
Critical path analysis:
CPA=wordlength
CSA=2FA (Best Case)
CSA=wordlength (worst case)
Redundant Number System to eliminate non-rotation or puzzle rotation
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 24台灣大學 吳安宇 教授
Radix-4 CORDICRadix-4 CORDICReduce Iteration Numbers
High radix CORDIC.(e.g. Radix-4, Radix-8)1 stage of Radix-4 = 2 stages of Radix-2
Faster and SmallerEmploy the Radix-4 micro-rotations to
Reduce the stage number.But Km may not be constant.
∏−
=
−+=1
0
),(22 41n
i
imsim mK µ { }2,1,0 ±±=µ
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 25台灣大學 吳安宇 教授
OutlineOutlineIntroductionConventional CORDIC AlgorithmEnhancement of CORDIC
MVR-CORDIC AlgorithmEEAS-Based CORDIC Algorithm
Vector Rotational CORDIC Family
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 26台灣大學 吳安宇 教授
Modification of CORDIC AlgorithmModification of CORDIC AlgorithmSkip some micro-rotation angles
For certain angles, we can only only reduce the iteration number but also improve the error performance.For example, θ=π/4
ConventionalCORDIC
[ ]1, 1, 1, 1, 1,µ = −
MVR-CORDIC [ ]1, 0, 0, 0, 0,µ =
ξm= 7.2*10-3
ξm= 0
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 27台灣大學 吳安宇 教授
Modification of CORDIC AlgorithmModification of CORDIC AlgorithmRepeat some micro-rotation angles
Each micro-rotation angle can be performed repeatedlyFor example, θ =π/2: execute the micro-rotation of a(0) twice
Confine the number of micro-rotations to RmIn conventional CORDIC, number of iteration=WIn the MVR-CORDIC, Rm << WHardware/timing alignment
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 28台灣大學 吳安宇 教授
Modification of CORDIC AlgorithmModification of CORDIC AlgorithmWith above three modification
wheres(i) ∈ {0, 1, 2, …, W} is the rotational sequence that determines the micro-rotation angle in the ith iterationα(i) ∈ {-1, 0 ,1} is the directional sequence that controls the direction of the ith micro-rotation
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 29台灣大學 吳安宇 教授
Constellation of Reachable AnglesConstellation of Reachable Angles
(a) Conventional CORDIC with N=W=4(b) MVR-CORDIC with W=4 and Rm=3
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 30台灣大學 吳安宇 教授
Summary of MVRSummary of MVR--CORDIC CORDIC AlgorithmAlgorithm
Both micro-rotation and scaling phases
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 31台灣大學 吳安宇 教授
VLSI ArchitectureVLSI ArchitectureIterative structure
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 32台灣大學 吳安宇 教授
OutlineOutlineIntroductionConventional CORDIC AlgorithmEnhancement of CORDIC
MVR-CORDIC AlgorithmEEAS-Based CORDIC Algorithm
Vector Rotational CORDIC Family
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 33台灣大學 吳安宇 教授
Extended Elementary Angle SetExtended Elementary Angle SetApply relaxation on EAS of
EAS is comprised of arctangent of single singed-power-of-two (SPT) termEffective way to extend the EAS is to employ more SPT terms
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 34台灣大學 吳安宇 教授
Constellation of EEASConstellation of EEAS
Constellation of elementary angles of (a) EAS S1, (b) EEAS S2, with wordlength W=8.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 35台灣大學 吳安宇 教授
Example of EAS and EEASExample of EAS and EEAS
Example of elementary angles of (a) EAS S1, (b) EEAS S2, with wordlength W=3.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 36台灣大學 吳安宇 教授
Summary of EEAS SchemeSummary of EEAS SchemeBoth micro-rotation and scaling phases
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 37台灣大學 吳安宇 教授
VLSI ArchitectureVLSI ArchitectureIterative structure
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 38台灣大學 吳安宇 教授
Comparison of Rotation SchemesComparison of Rotation Schemes
Comparison of existing approaches/algorithms performingvector rotation in 2D plane, where the wordlength, W, is 16.
HardwareRequirement
Full Adder(FA) Count
SQNRPerformance
Direct Implementation
Conventional CORDICAlgorithm
Angle Recoding (AR)Technique (Rm=6, Rs=6)
EEAS-based CORDICAlgorithm (Rm=2, Rs=2)
4 Multipliers,2 Adders
About43 Adders
24 Adders
16 Adders
1,056
688
384
256
98.7dB
97.4dB
93.3dB
95.1dB
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 39台灣大學 吳安宇 教授
OutlineOutlineIntroductionConventional CORDIC AlgorithmEnhancement of CORDIC
MVR-CORDIC AlgorithmEEAS-Based CORDIC Algorithm
Vector Rotational CORDIC Family
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 40台灣大學 吳安宇 教授
Family of VR CORDIC AlgorithmFamily of VR CORDIC Algorithm
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU
pp. 41台灣大學 吳安宇 教授
Set Diagram of VR CORDIC FamilySet Diagram of VR CORDIC FamilyRelationship among members in VR CORDIC family can be represented as