15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

FIGURE 42.4<br />

coordinate rotation (CORDIC) algorithm. These two approaches are depicted in Fig. 42.4. The two<br />

metrics for measuring the performance of a DDFS are the minimum frequency resolution ∆f<br />

and the<br />

spurious free dynamic range (SFDR). The frequency resolution can be improved by increasing the wordlength<br />

used in the accumulator, while the SFDR is affected by the wordlengths in both the accumulator as well<br />

as the sine/cosine generation block.<br />

One of the main challenges in the development of the table lookup DDFS has been to limit the size<br />

of the sine/cosine table. This has been accomplished through two steps [9]. First, by exploiting the<br />

symmetry of the sine and cosine functions it is only necessary to store β of the period of a sine wave and<br />

derive the remainder of the period through manipulation of the saved portion. Second, the number of<br />

bits per entry can be reduced by dividing the sine table between a coarse ROM and a fine ROM with the<br />

final result obtained after simple post-processing of the values. Combining these two techniques can<br />

result in the reduction of the sine tables by an order of magnitude or better.<br />

In the CORDIC algorithm, Fig. 42.4, sine and cosine of the argument are calculated using a cascade of<br />

k<br />

k<br />

stages, each of which rotates its input complex vector by δ/<br />

2 ( δ = π/<br />

2) if the kth<br />

bit of W is 0 and −δ/<br />

2<br />

if the bit is a 1. Thus each stage performs the following matrix operation:<br />

In [10] a simplification of the CORDIC DDFS is presented in which for small θ,<br />

tan( θ)<br />

is simply<br />

approximated by θ.<br />

In [11] a different modification to the CORDIC architecture is proposed that will<br />

facilitate low-power operation in cases where a sustained frequency is to be generated. This is achieved<br />

by calculating the necessary angle of rotation for each sampling clock period, and dedicating a single<br />

rotation stage in a feedback configuration to contiually rotate the phasor through the desired angle.<br />

Decimate/Interpolate Filters<br />

Variable rate interpolation and decimation filters play a very important role in the development of highly<br />

flexible and self contained all-digital receivers. As previously mentioned, they are the critical element of<br />

all digital timing recovery loops as well as systems capable of operating at a host of user defined symbol<br />

rates. Additionally, digital resampling allows the ASIC designer to ensure that the clock frequency at all<br />

portions of the circuit are the minimum that they need to be to properly represent the signals. This could<br />

have significant impact on the size and power consumption of the resulting ASIC since power scales with<br />

the clock frequency and the square of the supply voltage. Thus, for a given circuit with a critical path of<br />

say τ seconds, if the data rate into the block is lowered by a factor K,<br />

then the frequency dependent portion<br />

of the dissipated power is also scaled by the same factor; however, additional power savings can be achieved<br />

by noting that the block now has Kτ<br />

seconds to complete its task. Because the speed of a digital circuit is<br />

proportional to the supply voltage, we can reduce the supply voltage and still ensure that the circuit meets<br />

the speed constraints.<br />

© 2002 by CRC Press LLC<br />

W<br />

W<br />

+<br />

+<br />

N bits<br />

Reg<br />

N bits κ<br />

Reg<br />

θ (t)<br />

0<br />

θ(t)<br />

Sin()<br />

Look Up or<br />

Generation<br />

Cos ( βWt)<br />

Sin ( βWt)<br />

Cos ( βWt)<br />

Sin ( βWt)<br />

Two most common DDFS architectures: (a) Table lookup and (b) Coordinate rotation (CORDIC).<br />

xout yout xin yin cosθ – sinθ<br />

1 – tanθ<br />

=<br />

sinθ cosθ<br />

=<br />

cosθ<br />

tanθ 1<br />

(a)<br />

(b)<br />

xin yin

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!