Return-Path: <majordom@post.thorcom.com>
Received: (qmail 25161 invoked from network); 24 Jan 2002 06:23:58 -0000
Received: from unknown (HELO warrior.services.quay.plus.net) (212.159.14.227)  by excalibur.plus.net with SMTP; 24 Jan 2002 06:23:58 -0000
Received: (qmail 22498 invoked from network); 24 Jan 2002 06:23:57 -0000
Received: from unknown (HELO post.thorcom.com) (212.172.148.70)  by warrior.services.quay.plus.net with SMTP; 24 Jan 2002 06:23:57 -0000
Received: from majordom by post.thorcom.com with local (Exim 3.33 #2) id 16TdFh-00048T-00 for rsgb_lf_group-outgoing@blacksheep.org; Thu, 24 Jan 2002 06:20:49 +0000
Received: from mail008.syd.optusnet.com.au ([203.2.75.232]) by post.thorcom.com with esmtp (Exim 3.33 #2) id 16TdFf-00048O-00 for rsgb_lf_group@blacksheep.org; Thu, 24 Jan 2002 06:20:47 +0000
Received: from CO3043446A (c22590.sunsh1.vic.optusnet.com.au [203.164.134.8]) by mail008.syd.optusnet.com.au (8.11.1/8.11.1) with SMTP id g0O6Ju817534 for <rsgb_lf_group@blacksheep.org>; Thu, 24 Jan 2002 17:19:56 +1100
Message-ID: <003701c1a49f$a026feb0$0886a4cb@CO3043446A>
From: "Graeme Zimmer" <gzimmer@optushome.com.au>
To: rsgb_lf_group@blacksheep.org
References: <E16TKKA-0000vM-00@mail1.isys.net>
Subject: LF: Re: Digital Sine Generators
Date: Thu, 24 Jan 2002 17:23:21 +1100
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Precedence: bulk
Reply-To: rsgb_lf_group@blacksheep.org
X-Listname: rsgb_lf_group
Sender: <majordom@post.thorcom.com>

Dear Klaus,

Thank you for your good humour and patience in answering my dumb questions.
It's embarrassing for me to show my ignorance in public, but it's worth it
if
I learn something useful.

For a long time now I've been trying to understand the practical trade-offs
in DDS design.

So let's see if I have this DDS Distortion thing right ...........

Memory Quantisation:
----------------------

If all of the bits in a DDS latch are used to drive the Sine ROM, then there
is NO problem with memory quantisation.

If the Latch has many bits (e.g. to get fine frequency steps) then the ROM
will have to be excessively large. If only the higher order bits are used to
drive the ROM, then the wave generated will have a degree of roughness.

In the special case where the low order (unused) bits do not change (e.g.
where the matching low order Increment bits are at zero), then there is also
no quantisation error (is this correct?).

Question: If we use a modern DDS chip, but limit the steps used to those
which only exercise the ROM address lines, does this give us a more pure
signal ?

In practical DDS design, there are various methods to increase the
resolution without increasing the ROM size. One method is to interpolate the
"missing" readings. The simplest would be to draw a straight line between
the two readings and then subdivide it into as many points as are required.

D/A Quantisation:
-------------------

This is caused by the limit to the number of bits in each ROM location.