Gmail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Trouble with Xilinx DCM - Spartan3
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  9 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
ghelbig  
View profile  
 More options Dec 18 2009, 6:52 pm
Newsgroups: comp.arch.fpga
From: ghelbig <ghel...@lycos.com>
Date: Fri, 18 Dec 2009 15:52:29 -0800 (PST)
Local: Fri, Dec 18 2009 6:52 pm
Subject: Trouble with Xilinx DCM - Spartan3
My apologies if this has been addressed - my web searches came up
empty.

I am using a DCM in a spartan3 to generate the internal clocks - a 1-X
clock and a 1/2-X clock.

The output of the DCM goes to a BUFG.  The output of the BUFG goes to
the feedback pin of the DCM, and to the rest of the logic.

After initialization, the input clock changes frequency.  Shortly
after that, I send a reset (7 clock wide) to the DCM.

The locked signal from the DCM goes away about 22uS after the input
clock changes.  I see a short pulse on status[1] indicating that it
didn't like the input clock, and 22uS later Locked goes low.

About 20uS after that, I send the reset pulse to the DCM.  Locked
never (never) goes high again.

The output clock is present, but the logic is behaving like the
warning on pg 15 of Xapp462 ("can exhibit glitches, spikes, or other
spurious behavior") is very true.

Any clues, hints, sympathy?

Redards,
Gary.


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Patrick Maupin  
View profile  
 More options Dec 19 2009, 12:56 am
Newsgroups: comp.arch.fpga
From: Patrick Maupin <pmau...@gmail.com>
Date: Fri, 18 Dec 2009 21:56:09 -0800 (PST)
Local: Sat, Dec 19 2009 12:56 am
Subject: Re: Trouble with Xilinx DCM - Spartan3
On Dec 18, 5:52 pm, ghelbig <ghel...@lycos.com> wrote:

Is the new input clock frequency within the valid frequency range for
using feedback?  (That range is a lot smaller than if you are only
using the DFS).

Also, I know Xilinx says it will reset after 4 clocks, but for some
reason I always seem to reset for longer than that.  Can't remember if
I've ever been burned or if it just seemed to work out that way.

Regards,
Pat


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
John Adair  
View profile  
 More options Dec 19 2009, 5:36 am
Newsgroups: comp.arch.fpga
From: John Adair <g...@enterpoint.co.uk>
Date: Sat, 19 Dec 2009 02:36:48 -0800 (PST)
Local: Sat, Dec 19 2009 5:36 am
Subject: Re: Trouble with Xilinx DCM - Spartan3
Don't rely on the locked signal for anything. Use the status lines and
make your own locked signal.

The DCM does take a while to fully lock up during which time you will
get strange frequencies and strange mark/space ratios. If you are
trying to do something like a power saving frequency switch you might
be better either to use clock enables to change effective clock rate
or alternatively using an external synthesiser that supports these
sort of frequency changes a bit more elegantly.

John Adair
Enterpoint Ltd.- Home of Merrick1. The Data Mining Solution.

On 18 Dec, 23:52, ghelbig <ghel...@lycos.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
ghelbig  
View profile  
 More options Dec 19 2009, 12:25 pm
Newsgroups: comp.arch.fpga
From: ghelbig <ghel...@lycos.com>
Date: Sat, 19 Dec 2009 09:25:40 -0800 (PST)
Local: Sat, Dec 19 2009 12:25 pm
Subject: Re: Trouble with Xilinx DCM - Spartan3
Details I should have included:

The external clock is a synthesizer that defaults to 50MHz.  After
initialization, it is changed to 100MHz.  The DCM is used to reduce
the skew between the internal clock and the external clock and create
a half-speed clock for some of the logic.

Some percentage of the time, the chip "just don't run"; my current
theory is that the clock comes up strange.

I'm not getting anything useful from the status lines.  At the time
the frequency is changed, I get a pulse on status[1]; after that, they
are always low.  I've waited "forever", and the locked signal never
goes true.

Thanks!

On Dec 19, 2:36 am, John Adair <g...@enterpoint.co.uk> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
John Adair  
View profile  
 More options Dec 19 2009, 1:01 pm
Newsgroups: comp.arch.fpga
From: John Adair <g...@enterpoint.co.uk>
Date: Sat, 19 Dec 2009 10:01:32 -0800 (PST)
Local: Sat, Dec 19 2009 1:01 pm
Subject: Re: Trouble with Xilinx DCM - Spartan3
I would suggest holding the DCM in reset until the input clock is
stable and running at correct rate. Note also the lock times can be up
nearly 3ms in some circumstances going by the data in datasheet ds099.

John Adair
Enterpoint Ltd. - Home of Drigmorn3. The Spartan-6 Starter Board.

On 19 Dec, 17:25, ghelbig <ghel...@lycos.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Patrick Maupin  
View profile  
 More options Dec 19 2009, 1:12 pm
Newsgroups: comp.arch.fpga
From: Patrick Maupin <pmau...@gmail.com>
Date: Sat, 19 Dec 2009 10:12:44 -0800 (PST)
Local: Sat, Dec 19 2009 1:12 pm
Subject: Re: Trouble with Xilinx DCM - Spartan3
On Dec 19, 11:25 am, ghelbig <ghel...@lycos.com> wrote:

> Details I should have included:

> The external clock is a synthesizer that defaults to 50MHz.  After
> initialization, it is changed to 100MHz.  The DCM is used to reduce
> the skew between the internal clock and the external clock and create
> a half-speed clock for some of the logic.

> Some percentage of the time, the chip "just don't run"; my current
> theory is that the clock comes up strange.

There are a few possibilities here. A couple off the top of my head:

1) Your synthesizer has excessive jitter at 100 MHz;

2) Your clock termination, board traces, etc. smear the clock out and
reduce the amplitude greatly at 100 MHz.  This can also look (to the
FPGA) like jitter, as you have a slow ramp through the transition
region, but this could even look like missing clocks if it is bad
enough.

My favorite debugging technique in this scenario is to blow off the
DLL, and take the clock straight out another I/O pin, and hang a scope
off it.  This is a little hard to do at 100 MHz, so the next best
thing is to take the clock in as a clock (again without the DLL), and
have a couple of counters, one running off the posedge, and one
running off the negedge.  For example, if you bring the outputs of a
divide by four on the negedge and a divide by four on the posedge out
a couple of pins, now you have two locked 25 MHz signals.  Put them on
a scope on infinite persistence, and look for anomalies.

HTH,
Pat

1) Your clock termination frequency doesn't actual swi
Have you checked the jitter of the input clock when it is running at
100 MHz.


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
emeb  
View profile  
 More options Dec 20 2009, 9:43 am
Newsgroups: comp.arch.fpga
From: emeb <ebromba...@gmail.com>
Date: Sun, 20 Dec 2009 06:43:19 -0800 (PST)
Local: Sun, Dec 20 2009 9:43 am
Subject: Re: Trouble with Xilinx DCM - Spartan3
On Dec 19, 10:25 am, ghelbig <ghel...@lycos.com> wrote:

Another suggestion, probably as helpful as "is it plugged in?" - make
sure that the logic which generates your DCM reset isn't being clocked
by that DCM. I facepalmed this once...

Eric


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Patrick Maupin  
View profile  
 More options Dec 20 2009, 3:11 pm
Newsgroups: comp.arch.fpga
From: Patrick Maupin <pmau...@gmail.com>
Date: Sun, 20 Dec 2009 12:11:22 -0800 (PST)
Local: Sun, Dec 20 2009 3:11 pm
Subject: Re: Trouble with Xilinx DCM - Spartan3
On Dec 20, 8:43 am, emeb <ebromba...@gmail.com> wrote:

Yeah, that's an excellent idea.  Especially in a complicated design,
reset loops are easy to achieve...

Pat


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
ghelbig  
View profile  
 More options Dec 23 2009, 1:40 pm
Newsgroups: comp.arch.fpga
From: ghelbig <ghel...@lycos.com>
Date: Wed, 23 Dec 2009 10:40:46 -0800 (PST)
Local: Wed, Dec 23 2009 1:40 pm
Subject: Re: Trouble with Xilinx DCM - Spartan3
On Dec 20, 12:11 pm, Patrick Maupin <pmau...@gmail.com> wrote:

I think I found a solution.

The external clock is spec'd at 150 fS (150 femptoseconds) of jitter,
so I didn't go there.

The status lines are near useless; observed behavior does not match
their description.  No amount of futzing with reset would make it
behave as documented.

I am switching the synthesizer from 50MHz to 100MHz after
initialization.  According to the data sheet, either the low range
(18~167 MHz) or the high range (48~280 MHz) should be "just fine".

In practice, the high range works (the DCM regains lock), and the low
range does not.

Live and learn.


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2010 Google