[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