Using more than one L1 processor on a PCB?

Technical discussions around xCORE processors (e.g. xcore-200 & xcore.ai).
Post Reply
kster59
XCore Addict
Posts: 162
Joined: Thu Dec 31, 2009 8:51 am

Using more than one L1 processor on a PCB?

Post by kster59 »

Has anyone tried using more than 1 L1 on a PCB? I saw in the 64 processor version, the clk signal is buffered with a 74LVC841A.

I guess that is needed for the 64 processors to give enough current.

However, with just say 2 L1 processors, can't I just use one clock oscillator? How much current does the clk need to put out?

Also what's the maximum length of wire between XMOS links before I need some sort of buffer?


User avatar
leon_heller
XCore Expert
Posts: 546
Joined: Thu Dec 10, 2009 10:41 pm
Location: St. Leonards-on-Sea, E. Sussex, UK.
Contact:

Post by leon_heller »

It depends on the oscillator, but most won't have any problems with two clock inputs. For instance, the 3.3V ACT9000 can drive 5 TTL loads and 15 pF.
kster59
XCore Addict
Posts: 162
Joined: Thu Dec 31, 2009 8:51 am

Post by kster59 »

In the xmos reference designs, the oscillator has a single output pin that goes to a 33ohm resistor and the other end of the resistor goes into the input of the xmos device.

For say two L1 devices, do you put two 33 ohm resistors in parallel and one just go to each output pin or should you parallel up the connection of the oscillator AFTER the 33 ohm resistor?

Thanks for the help.
User avatar
leon_heller
XCore Expert
Posts: 546
Joined: Thu Dec 10, 2009 10:41 pm
Location: St. Leonards-on-Sea, E. Sussex, UK.
Contact:

Post by leon_heller »

I think that the resistors are to damp any reflections that might occur. I'd use one for each input.
User avatar
Woody
XCore Addict
Posts: 165
Joined: Wed Feb 10, 2010 2:32 pm

Post by Woody »

kster59 wrote:In the xmos reference designs, the oscillator has a single output pin that goes to a 33ohm resistor and the other end of the resistor goes into the input of the xmos device.

For say two L1 devices, do you put two 33 ohm resistors in parallel and one just go to each output pin or should you parallel up the connection of the oscillator AFTER the 33 ohm resistor?

Thanks for the help.
The 33R resistors are indeed series termination to avoid reflections. Probably best to put two 33R resistors at the oscillator's output and take separate traces from those resistors to the clock inputs on the XCores.

You'll also want to put 33R resistors on the XmosLinks between the L1 devices. Put the resistors at the Tx side of each signal trace.

You'll find better descriptions of series termination online, but here goes:

The need for termination
For signals transmitted down long PCB traces or cables, the signal can reflect off the end of the trace/cable, just like a water wave reflecting off the wall of a port. If the end of the PCB trace/cable is high impedence (like the input of the XCore), then the reflection will cause the voltage to double and head back to the driver (at approx the speed of light (~1foot per ns)). In reality a clamping diode on the XCore's input will limit the overshoot so it won't reflect up to 6.6V from 3.3V, but will clamp at ~4.0V.

Series termination
In theory, series termination adds a resistor at the driver, so that only half of the signal voltage transmits to the receiver. When the signal hits the receiver it reflects, and series termination uses this reflection to push the voltage up to the full level 3V3. The reflection then makes it back to the driver and all reflections stop.

The benefits of series termination are that it only dissipates power in the termination resistor on signal edges.

Considerations for Series Termination Layout
1. The series terminator must be close to the driver not the receiver.
2. The PCB trace should be point to point with no forks.
3. Whilst vias are usually unavoidable, keep them to a minimum.
4. Its good to track the trace on a layer next to a GND or PWR plane.
5. If a significant part of the track is on a layer between two GND/PWR planes, do not track other significant part of the track on an outer layer (next to only 1 GND/PWR plane). These parts of the track will have very different impedences, and cause reflections where they meet.

What value series resistor?
You're trying to match the (series resistor)+(drivers output impedence) to half of the track impedence. The track impedence changes depending on layout and construction but is about 100-120ohms. From experience, 33R and 27R series terminators are commonly seen.

If you want further info look for books by Howard Johnson. He's great!
User avatar
wibauxl
Active Member
Posts: 35
Joined: Mon Dec 14, 2009 4:40 pm

Post by wibauxl »

kster59 wrote:In the xmos reference designs, the oscillator has a single output pin that goes to a 33ohm resistor and the other end of the resistor goes into the input of the xmos device.
Yet, on the XK1 schematics, there aren't any link or oscillator resistors, and that seems to work quite well. Is there a maximum distance after which you need to set such resistors?

Thanks,
User avatar
leon_heller
XCore Expert
Posts: 546
Joined: Thu Dec 10, 2009 10:41 pm
Location: St. Leonards-on-Sea, E. Sussex, UK.
Contact:

Post by leon_heller »

The track length should be 1/10 or less of the fundamental signal wavelength, for pulsed signals, IIRC. One has to take account of the harmonics.

If anyone wants to hear about this stuff straight from the horse's mouth, as it were, the aforementioned Howard Johnson is leading several short courses on High Speed Digital Engineering at Oxford, in June, and is presenting two of them:

http://cpd.conted.ox.ac.uk/electronics/ ... n_week.asp
Post Reply