XMOS XS1-L1 Module

XCore Project reviews, ideas, videos and proposals.
User avatar
Brilldea
Member
Posts: 15
Joined: Thu Jan 26, 2012 1:25 pm
Location: Singapore

XMOS XS1-L1 Module

Post by Brilldea »

I first heard about XMOS a couple years ago and I bought one of the original G4 kits. A couple weeks ago I decided check back in and I found that there is now a 48 pin QFP L1 device. I immediately thought of a couple projects I would like to do to learn about the hardware and to get back into XMOS.

I see there is a past thread about a XMOS DIP module - I love this idea. However, there are some aspects that I think could be improved upon.
  • An assembly that could be completely machine assembled. Mostly SMT all from the top side. The DIP module can be difficult and costly to assemble.
  • An assembly that could be versatile as a module to learn from but also for small or medium production runs or for traveling with you for programming from anywhere.
  • An assembly that allowed for the JTAG2 to connect to it without an adapter board (sort of).
Here is my concept for a module. I'm interested in hearing what the community thinks. With your input, I think I can create a small product line of modules and adapters.

First - an image I used to study the size. The idea is that the XMOS Module itself is an all SMT and is loaded from the top. This module can then be placed on top of headers or skewered from other boards. The sockets on the XMOS module (and other boards) are bottom entry. The socket is 1.27mm pitch, probably 2x10 for a total or 20 pins. There would be a socket on each end for a total of 40 pins. The sockets/headers were chosen for density, easy of plug and play and low profile. These particular socket have a higher cycle count than some of the other super high density and super low profile sockets I've worked with.
concept.png
In addition to the core module, there would be other modules. There would be a JTAG2 adapter module with the proper connector to connect up a JTAG2. On this module there could be a 3.3V DC regulator and perhaps other solder jumper or shorting block type jumper for connecting XLINK and rx/tx to the JTAG2. This module would have the same socket as the XMOS module. And because of the regulator could be powered by USB.

There would, of course, be a 40-PIN DIP 600mil style adapter. This adapter could have the headers on it. Tall enough to skewer multiple socket boards.

Another board could be a learning board with buttons and LEDs, something that the XMOS module could connect to for basic experimentation.

Some images of the socket and headers I'm considering.
socket.png
header.png
So, community, what do you think? Good idea? Bad idea? What would you add? What would you take away?

I've been debating with myself about what to call the product line and individual modules, I'm open to suggestions.

I'd like to work through this design and then I'd be interesting in producing and selling modules if it appeals to others. I haven't explored pricing in detail yet, but of course it has to be reasonable.
You do not have the required permissions to view the files attached to this post.


User avatar
Brilldea
Member
Posts: 15
Joined: Thu Jan 26, 2012 1:25 pm
Location: Singapore

Post by Brilldea »

Today I received some sample connectors I ordered. These are the headers and sockets that may be used for interconnecting the different plates. The pictures aren't so good, but give you a better idea of the parts size and arrangement.

The socket is a bottom entry socket. 2x10. SMT. This would be on any boards that will be stacked like the JTAG adapter and the XMOS module.

The headers I ordered in various lengths. These particular headers are 2x11, but the final ones will be 2x10 . Multiple sockets can stack on the 60 and 90mm tall units. 1 board can stack on the 30mm height. These headers would be on the base plates like the 40-pin DIP adapter.

The PCB thickness will probably be 1.0mm or just a hair more.
arrangement fuzzy.jpg
socket closeup.jpg
Connector stack.jpg
You do not have the required permissions to view the files attached to this post.
DanB
Experienced Member
Posts: 118
Joined: Fri Jan 28, 2011 1:13 am

Post by DanB »

Hi Timothy,

The plans look great and the stacking connector is ideal. Using this concept to add other modules (such as your button and LED board) is interesting, is there some way to also bring up the pins such that you can link multiple XS1-L1 boards together? That would be fantastic, though I suppose it'd be hard to get the extra I/O from the stacked cores to the breadboard. Probably not an issue if you're using the second (or third...) XS1-L1 board for more processing grunt rather than for additional I/O.

Dan.
User avatar
Brilldea
Member
Posts: 15
Joined: Thu Jan 26, 2012 1:25 pm
Location: Singapore

Post by Brilldea »

Dan - thanks for the encouragement.

I've settled on a name for the product line, I'll call it XMP, short for XMultiPlane. The Planes can be stacked. The inspiration for the name comes from the famous multiplane camera used in animation features and made famous by Walt Disney. X, of course, is like XMOS. Each Plane will have will a unique name like XMP-L1-48 for the processor board. Maybe XMP-JTAG-ADAPTER for the JTAG2 Adapter board.

So, for your question on stacking multiple XMP-L1-48, you could stack them them. The skewer would have to be long enough. The trouble would come in that all the I/O and JTAG and power pins would line up for all the processors in a vertical stack. This can be undesirable. Therefore, it won't be a recommended orientation. However, I'm thinking of including XLB and XLC as horizontal four pin headers on the short sides. This would allow for 2-bit xlink communication without the worry of I/O overlap.

I'm working through my schematic now for the XMP-L1-48. I'm pretty much using the example XMOS 40-pin DIP and the XK-1A example schematics to understand the hardware. I've also read over portions of the data sheet several times. I've attached my in progress schematic. There is much left to do on the schematic, but today I hope to work through more of it and get into setting up all the PCB footprints so I can soon start working on a layout. The connector pin outs won't be defined until I get more into the board layout because I'll need to review what is the optimal routing.
You do not have the required permissions to view the files attached to this post.
DanB
Experienced Member
Posts: 118
Joined: Fri Jan 28, 2011 1:13 am

Post by DanB »

Brilldea wrote: I've settled on a name for the product line, I'll call it XMP, short for XMultiPlane.
It's great to see progress being made on this project :)

My only comment regarding the naming convention you have chosen is that it is rather similar to the XMOS XMP-64 development kit. Whether this is actually an issue, though, is something for you and/or XMOS to consider.

Otherwise, looking good...
User avatar
Brilldea
Member
Posts: 15
Joined: Thu Jan 26, 2012 1:25 pm
Location: Singapore

Post by Brilldea »

Hmm - good point. I hadn't considered it from that angle. I was searching so many other names though like xplate, xstrata, etc, but several of those names were taken by trademarks and such.
User avatar
Brilldea
Member
Posts: 15
Joined: Thu Jan 26, 2012 1:25 pm
Location: Singapore

Post by Brilldea »

I'm still plugging away on this idea. The past week or so I've been off and on working on the PCB layout. I'm getting closer, but I also find when I do a PCB that once it is all routed that I still have about 30% of work to do like cleaning up footprints, doing some reroutes, naming, labeling, centering, and exporting and creating all the documentation for production.

I am still considering a jumper for allowing an XLINK boot and I am looking for the right connector to place, or at least leave a footprint for, at the ends of the board for linking multiple boards together with XLINK. I also want to clean up the routes and angles around the XMOS - I know it can be better.

In the mean time here is an in-progress picture of the PCB routing in EAGLE. This is a 2 layer PCB, 16mm wide by 50.8mm long.

I was thinking it would be a good goal to have a prototype PCB and parts ready for Easter weekend. That means I need to finish the PCB route next week and get it off to a manufacturer for a two week or so turnaround plus shipping. I hope I find enough time for this.
You do not have the required permissions to view the files attached to this post.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

What is your drill size for the vias?
It is expensive to use drills smaller than 0.25/0.30 mm.
Probably not the most confused programmer anymore on the XCORE forum.
User avatar
Brilldea
Member
Posts: 15
Joined: Thu Jan 26, 2012 1:25 pm
Location: Singapore

Post by Brilldea »

lilltroll - the drill size is currently 0.2mm, which is at the limit of the board houses I usually work with. Part of that 30% of work to do, once the board is fully routed, is to review items like this. In some areas I may be able to increase the drill size. I also usually do a couple rounds of quoting with my vendors. I'm always curious to hear what they have to say.

Anything else catch your eye?