Electronics Computer-Aided Design electrical level conversion

Bookmark this page:  YahooMyWeb Yahoo!  Google Google  Windows Live Favorites Windows Live  del.icio.us del.icio.us  digg digg  Add to Netscape Netscape
Subject Author Date
electrical level conversion Kurt Kaiser 12-13-06
Posted by Kurt Kaiser on December 13, 2006, 5:19 am
Please log in for more thread options


Hi there,

I'm currently having a serious problem: I got an LVPECL clock synthesizer
and I want to connect it to several clock inputs on my FPGA. The FPGA
features 2 LVDS interfaces, whereas each LVDS pair is located at opposite
sides of the device, meaning there will be some extensive routing to do. I
designed a resistor network for the level conversion from LVPECL to LVDS.
What I'd like to know now is
a) Can I route the 2x2 lines (two times differential to the two opposite
sides of the FPGA) one-to-one out of my clock device to the inputs or should
I use a dedicated buffer / repeater IC for clock distribution?
b) If clock buffer are needed, should I use LVPECL buffers and do the
conversion to LVDS level afterwards or should I perfom the conversion before
the buffer and then use an LVDS IC?
c) Where should I place the level conversion network? Is is better to place
it right at the LVPECL output or is it more advisable to do it right before
the FPGA inputs after a transmission line length of about 7 cm?
Any help, comments, advice is highly appreciated!

Thank you all very much.
Kurt



Posted by John Larkin on December 13, 2006, 9:58 am
Please log in for more thread options


On Wed, 13 Dec 2006 11:19:14 +0100, "Kurt Kaiser"

>Hi there,
>
>I'm currently having a serious problem: I got an LVPECL clock synthesizer
>and I want to connect it to several clock inputs on my FPGA. The FPGA
>features 2 LVDS interfaces, whereas each LVDS pair is located at opposite
>sides of the device, meaning there will be some extensive routing to do. I
>designed a resistor network for the level conversion from LVPECL to LVDS.
>What I'd like to know now is
>a) Can I route the 2x2 lines (two times differential to the two opposite
>sides of the FPGA) one-to-one out of my clock device to the inputs or should
>I use a dedicated buffer / repeater IC for clock distribution?
>b) If clock buffer are needed, should I use LVPECL buffers and do the
>conversion to LVDS level afterwards or should I perfom the conversion before
>the buffer and then use an LVDS IC?
>c) Where should I place the level conversion network? Is is better to place
>it right at the LVPECL output or is it more advisable to do it right before
>the FPGA inputs after a transmission line length of about 7 cm?
>Any help, comments, advice is highly appreciated!
>
>Thank you all very much.
>Kurt
>

Do you need level conversion at all? Some FPGA lvds inputs will work
fine with lvpecl drive.

But why does the fpga need two identical clocks? What kind of fpga are
you using? I sure hope you're not doing a single synchronous logic
system driven by two clock inputs!

John


Posted by Kurt Kaiser on December 13, 2006, 10:10 am
Please log in for more thread options



> But why does the fpga need two identical clocks? What kind of fpga are
> you using? I sure hope you're not doing a single synchronous logic
> system driven by two clock inputs!

I'm using Virtex-4 FX60. Depending on the implemented designs I will use
either the clock input on one side or the other, not both the at the same
time of course. So I'm hoping for more flexibility and freedom of clock
routing if I have two clocks available and stick to the one that fits better
from design to design. The FPGA's input is LVDS.

Bye

Kurt



Posted by John Larkin on December 13, 2006, 11:27 am
Please log in for more thread options


On Wed, 13 Dec 2006 16:10:30 +0100, "Kurt Kaiser"

>
>> But why does the fpga need two identical clocks? What kind of fpga are
>> you using? I sure hope you're not doing a single synchronous logic
>> system driven by two clock inputs!
>
>I'm using Virtex-4 FX60. Depending on the implemented designs I will use
>either the clock input on one side or the other, not both the at the same
>time of course. So I'm hoping for more flexibility and freedom of clock
>routing if I have two clocks available and stick to the one that fits better
>from design to design. The FPGA's input is LVDS.
>
>Bye
>
>Kurt
>

OK,


<-----fpga----->

pecl+ ----r1-------------------0----------------0----+---r3------ gnd
|
r2
|
pecl- ----r1-------------------0----------------0----+---r3------ gnd


something like that maybe. The r1's are very close to the pecl source,
and the terminators are fairly close to the fpga's second clock pair.
The differential impedance of the traces should slam into a matching
termination, r2 || 2*r3.

Check the common-mode range of the fpga lvds receivers. It shouldn't
take much voltage shifting to get the lvpecl into the legal lvds
range. On a Spartan3, I don't think it would take any at all.

What sort of Vccio range do these V4's use? They keep going down.

One of my guys spent a lot of time - too much time - trying to reduce
jitter on a signal that passes through a S3 chip a few times. He did
all sorts of exotic stuff to the off-chip circuits, oscillators
comparators and such. I finally took a look at it yesterday. Turns out
there's an ldo furnishing the 1.2 volt core voltage, and it had a 22
uF ceramic cap across its output, and it was oscillating, a nice 100
mV sawtooth at 24 KHz. That was of course modulating the prop delay of
the fpga!

Looks like I'm going to break one of my rules and replace the 1206
ceramic cap with a tantalum.

John



Posted by PeteS on December 13, 2006, 2:24 pm
Please log in for more thread options


John Larkin wrote:
> On Wed, 13 Dec 2006 16:10:30 +0100, "Kurt Kaiser"
>
>>> But why does the fpga need two identical clocks? What kind of fpga are
>>> you using? I sure hope you're not doing a single synchronous logic
>>> system driven by two clock inputs!
>> I'm using Virtex-4 FX60. Depending on the implemented designs I will use
>> either the clock input on one side or the other, not both the at the same
>> time of course. So I'm hoping for more flexibility and freedom of clock
>> routing if I have two clocks available and stick to the one that fits better
>>from design to design. The FPGA's input is LVDS.
>> Bye
>>
>> Kurt
>>
>
> OK,
>
>
> <-----fpga----->
>
> pecl+ ----r1-------------------0----------------0----+---r3------ gnd
> |
> r2
> |
> pecl- ----r1-------------------0----------------0----+---r3------ gnd
>
>
Ok if there is no stub to clock destination 1, otherwise I would split:

pecl+ ------r1----------------------------------------0---r3-------- gnd
| CK1 r2
pecl- ------r1---------|------------------------------0---r3--------gnd
| |------------------------------0---r3--------gnd
| CK2 r2
|----------------------------------0--r3--------gnd

for a fully terminated solution. Depends on layout, clock speed,
allowable mismatch, over/undershoot etc. John's would probably work; I'd
only use this where really really necessary.

> something like that maybe. The r1's are very close to the pecl source,
> and the terminators are fairly close to the fpga's second clock pair.
> The differential impedance of the traces should slam into a matching
> termination, r2 || 2*r3.
>
> Check the common-mode range of the fpga lvds receivers. It shouldn't
> take much voltage shifting to get the lvpecl into the legal lvds
> range. On a Spartan3, I don't think it would take any at all.

For LVDS on Spartan (and V4 I believe), the user provides Vref, so it's
just a matter of providing the appropriate Vref, AFAICT.

>
> What sort of Vccio range do these V4's use? They keep going down.
>
> One of my guys spent a lot of time - too much time - trying to reduce
> jitter on a signal that passes through a S3 chip a few times. He did
> all sorts of exotic stuff to the off-chip circuits, oscillators
> comparators and such. I finally took a look at it yesterday. Turns out
> there's an ldo furnishing the 1.2 volt core voltage, and it had a 22
> uF ceramic cap across its output, and it was oscillating, a nice 100
> mV sawtooth at 24 KHz. That was of course modulating the prop delay of
> the fpga!


>
> Looks like I'm going to break one of my rules and replace the 1206
> ceramic cap with a tantalum.
>
> John

I have an LDO that requires an output resistance of no less than 0.5
ohm, (0.5 - 5 ohm is stated, IIRC), so rather than use a tant, I use a
ceramic with a 0.5 ohm in series with it - that way at least I don't
have to deal with the issues of tants, and the effective ESR maintains
over temp a whole lot better than a tant.

Cheers

PeteS



>
>

Similar ThreadsPosted
electrical level conversion December 13, 2006, 5:19 am
Logic Level Translator November 1, 2005, 12:40 pm
about hspice level 28 model. January 5, 2007, 12:04 pm
LEVEL within .MODEL in ngspice January 11, 2007, 4:55 am
ic level design in orcad 9.2 and multisim 2001 February 3, 2005, 10:24 am
Gate level tool for Soft error rate estimate September 19, 2007, 11:05 am
electrical interface problem December 7, 2005, 11:56 am
How draw electrical drawings? January 17, 2006, 2:07 pm
Assembler to PAP conversion ? January 8, 2006, 5:24 am
CadStar .pcb to .cdi conversion March 2, 2006, 11:02 am
CadStar .pcb to .cdi conversion March 2, 2006, 12:25 pm
Conversion? Gerber to 3D (.sat, .dxf, etc) December 11, 2006, 1:57 am
Any decent free electrical cad programs out there ??? July 15, 2006, 9:23 pm
EAGLE Netlist conversion September 29, 2004, 8:03 pm
Easy-PC to Circuitmaker Conversion December 26, 2004, 3:11 pm