[hpsdr] "Taylor Corrected DDS"

Robert McGwier rwmcgwier at comcast.net
Thu Jun 15 07:26:21 PDT 2006


Alberto:

You are correct.. But on my desktop, none of this is an issue.

The topic was about DDS's on FPGA's and possibly CPLD's.   2^18 complex 
numbers at (say)  4 bytes each (2 bytes real,  2 bytes imaginary) giving 
1 MB of RAM required on the FPGA, might be a problem on a CPLD, it would 
be a deal killer.

I found that on the desktop,   I could do one transcendental function 
evaluation sequence and then run (using double precision)the simple 
vector rotate to produce the I/Q output for days before any problems 
creeped in.   The available dynamic range in the mantissa alone (forget 
the exponent) is 288 dB and thought floating point error is creeping in 
using this technique,   it is negligible until days have passed.  Once a 
week,  you should turn on the oscillator and restart it.  ;-).

Bob



Alberto I2PHD wrote:
> ***** High Performance Software Defined Radio Discussion List *****
>
> Bob,
>
>    what about precomputing a table with 2^18 = 262144 entries of cosine values between 0 and pi/2 and indexing into 
> that, with a zero-order interpolation, taking the value of the nearest index ? Wouldn't that be both fast and accurate ? 
> Granted, you use some RAM, but RAM is not a scarce resource nowadays...
>
> 73  Alberto  I2PHD
> ----------------------------
>
> Robert McGwier wrote:
>   
>> Your way will be faster,  smaller, and will have much poorer 
>> performance.    The 2^12 * 2^8  will be "secants"  connecting the 2^20 
>> points on the circle as defined by the trig identities and the two 
>> tables.  The 2^12 linear interpolation will simple yield secants between 
>> the 2^12 points in the first table.   The 2^12 * 2^8 will be an exact 
>> match to the correct complex numbers on all 2^20 points.  The linear 
>> interpolation way will NEVER be on the correct value between the 2^12 
>> original points.   This will have significantly higher total harmonic 
>> distortion, spurs, etc.
>>
>> 73's
>> Bob
>> N4HY
>>     
> _______________________________________________
> HPSDR Discussion List
> To post msg: hpsdr at hpsdr.org
> Subscription help: http://lists.hpsdr.org/listinfo.cgi/hpsdr-hpsdr.org
> HPSDR web page: http://hpsdr.org
> Archives: http://lists.hpsdr.org/pipermail/hpsdr-hpsdr.org/
>
>   


-- 
AMSAT VP Engineering. Member: ARRL, AMSAT-DL, TAPR, Packrats,
NJQRP/AMQRP, QRP ARCI, QCWA, FRC. ARRL SDR Wrk Grp Chairman
Laziness is the number one inspiration for ingenuity.  Guilty as charged!


 1150381581.0


More information about the Hpsdr mailing list