Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <vvphlr$22kn$2@dont-email.me>
Deutsch   English   Français   Italiano  
<vvphlr$22kn$2@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: Bill Sloman <bill.sloman@ieee.org>
Newsgroups: sci.electronics.design,comp.dsp
Subject: Re: DDS question: why sine lookup?
Date: Sun, 11 May 2025 16:55:55 +1000
Organization: A noiseless patient Spider
Lines: 39
Message-ID: <vvphlr$22kn$2@dont-email.me>
References: <1t4o1k1uo8qa244fcv7jr7dnljlvp72vmq@4ax.com>
 <ntls1kddgtc3n9ghrjlnqp4q8jsh8f9pmr@4ax.com> <vvo3pg$3l8r7$1@dont-email.me>
 <ad7v1kttjfhjulnameem9ta8gjst5cpa45@4ax.com>
 <ba55fl-ru91.ln1@coop.radagast.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 11 May 2025 08:55:56 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="52959bd639cb7711fced2f7d5f8f858b";
	logging-data="68247"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18/jvmhKH7YLM4wkJ9TbkFXuARlo/uTsLs="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:+9qemUara/mw2208/7xj6XvxeMU=
In-Reply-To: <ba55fl-ru91.ln1@coop.radagast.org>
X-Antivirus: Norton (VPS 250511-0, 11/5/2025), Outbound message
X-Antivirus-Status: Clean
Content-Language: en-US

On 11/05/2025 9:50 am, Dave Platt wrote:
> In article <ad7v1kttjfhjulnameem9ta8gjst5cpa45@4ax.com>,
> john larkin  <jl@glen--canyon.com> wrote:
> 
>> Looks like the best way is logic in the FPGA doing classic sine DDS,
>> maybe 6 or 8 output pins driving an R-2R network, a 3 or 5-pole
>> Chebyshev LC filter, and an LVDS receiver as the comparator.
> 
> Be wary of that approach.
> 
> I tried something like it (sans comparator), while using a simple FPGA
> to generate a (modulated) 10.7 MHz IF signal for an FM-stereo test
> generator.  The results were ungood.
> 
> The output waveform had some pretty horrible glitches, at the times of
> the transitions between values.  There's enough variation in delay in
> the signal paths inside the FPGA to create a significant (in
> picoseconds and nanoseconds) delay between the transition times of the
> R2R bits.  If you're trying to go from (for example) 0x7F to 0x81,
> your MSB is going to be transitioning high when most of your LSBs are
> transitioning low.  There's very likely to be a brief moment of time
> when the effective value is 0xFF (if the MSB transitions first) or
> 0x00 (if it transitions last), or some random and unpredictable and
> ever-changing mix of bits.  The resulting spikes are narrow, but can
> have a pretty fierce amplitude to them.
One approach that might help, but isn't going to be all that cheap, 
would be to latch the digital information coming out of the FPGA into 
something like an ECLinPS latch which has very fast internal logic and 
rather less variation in propagation delay between the clock edge going 
into the ECLinPS latch and the output edges of the data outputs.

The other advantage is that ECL is current steering logic, so the latch 
rails are a lot clean than the rails inside the FPGA and the nominally 
unchanged edges aren't going to move as much.

-- 
Bill sloman. Sydney