Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > DDR Why not

Reply
Thread Tools

DDR Why not

 
 
nfirtaps
Guest
Posts: n/a
 
      03-14-2007
I am in the unfortunate situation of not having access to a PLL on my
Altera and need to deserialize a DDR signal. It would be most
advantageous to double the clock rate and sample on every rising edge
to deserialze my DDR signal. I have read on this forum there are some
circuits that do not require a PLL to double the clock (using some
xors, nots and ff's), and I have implemented these circuits. They
seem to be junk, and are very frequency dependant.

I have also read that you cannot take the clock, the inverted clock
and deserialize using rising egde flip flops to sample the signal?
Why is this?

Thanks,
Lloyd

 
Reply With Quote
 
 
 
 
KJ
Guest
Posts: n/a
 
      03-14-2007
On Mar 14, 11:59 am, "nfirtaps" <(E-Mail Removed)> wrote:
> I am in the unfortunate situation of not having access to a PLL on my
> Altera and need to deserialize a DDR signal. It would be most
> advantageous to double the clock rate and sample on every rising edge
> to deserialze my DDR signal. I have read on this forum there are some
> circuits that do not require a PLL to double the clock (using some
> xors, nots and ff's), and I have implemented these circuits. They
> seem to be junk, and are very frequency dependant.

Just curious, in what way are they 'junk'?

>
> I have also read that you cannot take the clock, the inverted clock
> and deserialize using rising egde flip flops to sample the signal?
> Why is this?
>

Usually it's because the duty cycle is not very well controlled by the
time it gets to the point where you need it so your 'falling' edge
doesn't occur anywhere near the midpoint of the clock cycle. Then
about all you can do is play games with resistors and capacitors to
try to tweak the edges to be just right....it's not a robust solution.

Even without a PLL you can easily make a divider though to generate a
clock enable. If you can, change the oscillator to 2x of what you
have now and use that as your clock instead throughout the design.
Use the output of the divider as the clock enable for anything that
needs to run at the 1x speed.

Kevin Jennings

 
Reply With Quote
 
 
 
 
nfirtaps
Guest
Posts: n/a
 
      03-14-2007
On Mar 14, 10:22 am, "KJ" <(E-Mail Removed)> wrote:
> On Mar 14, 11:59 am, "nfirtaps" <(E-Mail Removed)> wrote:> I am in the unfortunate situation of not having access to a PLL on my
> > Altera and need to deserialize a DDR signal. It would be most
> > advantageous to double the clock rate and sample on every rising edge
> > to deserialze my DDR signal. I have read on this forum there are some
> > circuits that do not require a PLL to double the clock (using some
> > xors, nots and ff's), and I have implemented these circuits. They
> > seem to be junk, and are very frequency dependant.

>
> Just curious, in what way are they 'junk'?
>


When you look on the output on the scope it looks horrible. The
waveform is very distored, and it is very dependant on frequency.

>
>
> > I have also read that you cannot take the clock, the inverted clock
> > and deserialize using rising egde flip flops to sample the signal?
> > Why is this?

>
> Usually it's because the duty cycle is not very well controlled by the
> time it gets to the point where you need it so your 'falling' edge
> doesn't occur anywhere near the midpoint of the clock cycle. Then
> about all you can do is play games with resistors and capacitors to
> try to tweak the edges to be just right....it's not a robust solution.
>


Looks like I am going to be playing games then. I am out of luck, and
unfortunately I cannot change the clock to double the rate. Thanks
for your reply.

> Even without a PLL you can easily make a divider though to generate a
> clock enable. If you can, change the oscillator to 2x of what you
> have now and use that as your clock instead throughout the design.
> Use the output of the divider as the clock enable for anything that
> needs to run at the 1x speed.
>
> Kevin Jennings



 
Reply With Quote
 
Homuncilus
Guest
Posts: n/a
 
      03-17-2007
On 3月15日, 上午12时22分, "KJ" <(E-Mail Removed)> wrote:
> On Mar 14, 11:59 am, "nfirtaps" <(E-Mail Removed)> wrote:> I am in the unfortunate situation of not having access to a PLL on my
> > Altera and need to deserialize a DDR signal. It would be most
> > advantageous to double the clock rate and sample on every rising edge
> > to deserialze my DDR signal. I have read on this forum there are some
> > circuits that do not require a PLL to double the clock (using some
> > xors, nots and ff's), and I have implemented these circuits. They
> > seem to be junk, and are very frequency dependant.

>
> Just curious, in what way are they 'junk'?
>
>
>
> > I have also read that you cannot take the clock, the inverted clock
> > and deserialize using rising egde flip flops to sample the signal?
> > Why is this?

>
> Usually it's because the duty cycle is not very well controlled by the
> time it gets to the point where you need it so your 'falling' edge
> doesn't occur anywhere near the midpoint of the clock cycle. Then
> about all you can do is play games with resistors and capacitors to
> try to tweak the edges to be just right....it's not a robust solution.
>
> Even without a PLL you can easily make a divider though to generate a
> clock enable. If you can, change the oscillator to 2x of what you
> have now and use that as your clock instead throughout the design.
> Use the output of the divider as the clock enable for anything that
> needs to run at the 1x speed.
>
> Kevin Jennings


I have an idea about it which is delineated by verilog.

 
Reply With Quote
 
KJ
Guest
Posts: n/a
 
      03-17-2007
> I have an idea about it which is delineated by verilog.

Congratulations


 
Reply With Quote
 
Andy
Guest
Posts: n/a
 
      03-19-2007
On Mar 14, 10:59 am, "nfirtaps" <(E-Mail Removed)> wrote:
> I have also read that you cannot take the clock, the inverted clock
> and deserialize using rising egde flip flops to sample the signal?
> Why is this?


Depending on timing margins, and the particular FPGA architecture, you
may be able to use inverted clock or not. On older xilinx
architectures (V2 and older) there was a small skew between inverted
clock input and "true" falling edge. Depending on your timing
requirements, this may or may not work for you. IIRC, it was on the
order of 40 ps. Newer xilinx parts distribute global clocks
differentially, and there is no (signicifcant) skew, so they just
work.

Andy

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
DDR Video cards on non-DDR Mobos Dave Hardenbrook A+ Certification 7 02-05-2007 04:41 PM
Mixing DDR & DDR@ Memory Martin Kallikak, Jr. Computer Support 8 01-31-2007 02:34 PM
why why why why why Mr. SweatyFinger ASP .Net 4 12-21-2006 01:15 PM
findcontrol("PlaceHolderPrice") why why why why why why why why why why why Mr. SweatyFinger ASP .Net 2 12-02-2006 03:46 PM
Duel channel DDR = normal DDR? TmcT NZ Computing 3 09-19-2003 11:03 PM



Advertisments