Custom XMOS board, Criticism of design needed!

Technical discussions around xCORE processors (e.g. xcore-200 & xcore.ai).
User avatar
jonecm
Member++
Posts: 23
Joined: Tue Oct 11, 2011 4:36 am

Custom XMOS board, Criticism of design needed!

Post by jonecm »

Hi Guys, I'm developing a custom board utilizing a XMOS L1, This is my first project using the XMOS processor so if some more experienced members could look over it and make sure I'm not doing anything wrong it would be appreciated.
For reference, this is the clock I'll be using
http://parts.digikey.com/1/parts/164197 ... hz-et.html

I've used mainly AVR's before so all the Power on Reset stuff is new to me.

Thanks!
Jon
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 »

Using linear regulators*, almost 80% of the input power will be heat before it reaches the XMOS chip.
I hope power consumption and heat is not an issue in your design.

*I haven't checked the part-numbers, but I cannot see any buck-inductors.
Probably not the most confused programmer anymore on the XCORE forum.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

The PLL will never start, R1 is incorrect with a factor 1000.
Probably not the most confused programmer anymore on the XCORE forum.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

Do you have a solution for programming the SPI-memory?
You do not seem to have any JTAG/XTAG connection.
Probably not the most confused programmer anymore on the XCORE forum.
User avatar
Bianco
XCore Expert
Posts: 754
Joined: Thu Dec 10, 2009 6:56 pm

Post by Bianco »

- C1 PLL decoupling cap value isn't specified, 1uF is recommended.

- Your oscillator is specified for 2.5V operation, not 3.3V
http://www.abracon.com/Oscillators/ASE2series.pdf

- I would use a lower value on the oscillator output series termination: 33R instead of 330R.

- I don't see a 3.3V regulator in this series: http://www.national.com/ds/LM/LM2937.pdf

- The 1.0V regulator BD10KA5WF also comes in a TO-252 package with external heat sink. That is a better choice than the SO-8 version which you have used in your schematics. I don't think that the SO-8 package can dissipate 0.5W, which it has to do when the L1 draws 200mA ((3.3-1.0) * 0.2 = 0.46W).
http://www.rohm.com/products/databook/p ... xka5-e.pdf

- Your power supplies are not reliably sequenced. You will either need to use a 3.3V regulator with a power good signal or an external voltage monitor such as TPS3808G30 to create the enable output signal for the 1.0V regulator.

- Decoupling capacitor on the 7805 input is recommended.
- Decoupling capacitor on the LM2937 output is required.
- Decoupling capacitor on the BD10KA5WF output is required.

- The ground pad of the XMOS chip has netlabel GND while on other places you use a ground symbol.
I'm not sure whether eagle will see this as the same net. Always do a design rule check before you design the PCB to find shorts, open nets etc (and properly setup your design rules beforehand)!

- Try to bend your wires using 90 degree corners only, hurts less on the eye.
Try to avoid a situation like around X0D10 where i cannot see how these pins are exactly wired.. You need a bit more room there, there's plenty of room on your sheet not used. I'm pretty sure that the SPI_SS netlabel is NOT CONNECTED to X0D01, it seems to be floating. I'm not sure about the other SPI signals. I usually draw a connection long enough to fit the entire netlabel to be sure.

- Netlabel TRST_N is not connected to the right wire at the reset buffer output (NC7WZ07).
Also a junction of two wires in the same net is shown in most EDA tools as a dot. I see a few dots in your schematic but some don't, are you sure that they are connected?

- JTAG seems to be a work in progress as Lilltroll already mentioned.

- Have you thought about how to solder the ground pad?
Using a pad with a big hole works fairly well.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

Probably not the most confused programmer anymore on the XCORE forum.
User avatar
jonecm
Member++
Posts: 23
Joined: Tue Oct 11, 2011 4:36 am

Post by jonecm »

Thanks guys for the info.
It would of been very disappointing to get everything together and have the PLL not start ;(
Also would of been awful seeing the blue smoke come out of the oscillator as it burnt up.

I've switched the 1.0 volt regulator to a switching type with associated components to save power.

I cleaned up the schematic a bit and made sure all the nets are connected including one common ground plane.

About the SPI memory port, I plan on programming it externally so no need for the JTAG interface. There shouldn't be any reason I can't just program the SPI flash memory externally/directly is there?

Thanks for all the feedback guys!
You've saved me piles of headaches!
Jon
User avatar
Bianco
XCore Expert
Posts: 754
Joined: Thu Dec 10, 2009 6:56 pm

Post by Bianco »

Well, using an external SPI flash programmer should work, however i strongly recommend to connect the JTAG pins to a header in case it doesn't work out as expected.
User avatar
jonecm
Member++
Posts: 23
Joined: Tue Oct 11, 2011 4:36 am

Post by jonecm »

Hi guys, I've made the changes that were discussed above, I've included an updated schematic if you would like to look over it again that would be awesome!

I found what I believe to be the perfect voltage regulator for these devices, the TC1303A-ZA0EUN, it has a built in 3.3v LDO and an adjustable 600 ma switching regulator for the 1.0V supply as well as a power good output pin (still has to be inverted) and power supply sequencing, the 3.3v comes up first followed by the 1.0V switching.

@Bianco
Thanks for the good advice, I've added a 8 pin JTAG port, As far as I know it should be compatible with the XTAG-2 assuming I make an adapter.

I connected both the reset pins from the PLL and the JTAG together, this shouldn't cause any problems should it?

Dose Mode 2&3 (MSEL) have to be tied to the reset pins for proper function or can I just float it high to boot from the spi when the JTAG connector is not connected?

Thanks!
Jon
You do not have the required permissions to view the files attached to this post.
User avatar
phalt
Respected Member
Posts: 298
Joined: Thu May 12, 2011 11:14 am

Post by phalt »

Hey jonecm, this is a nice board design.

When it's closer to completion, why don't you upload the design and a few images as an XCore project?