Issues with Custom L1-64 PCB
-
- XCore Legend
- Posts: 1274
- Joined: Thu Dec 10, 2009 10:20 pm
Actually to be honest the Xtag2 should have buffers on it, one common issue with Xmos chips is their rather puny output..
-
- XCore Legend
- Posts: 1274
- Joined: Thu Dec 10, 2009 10:20 pm
Also note that the XTag2 has a 33R resistor in series on the TCK line to try to match the high speed impedance of the track+connector, luckily this only drives a single pin, however it still takes a chunk out of the supposed 100R limit stated in the errata.
-
- XCore Expert
- Posts: 956
- Joined: Fri Dec 11, 2009 3:53 am
- Location: Sweden, Eskilstuna
Haha - I'm looking at the same thing in the XTAG2 schematics - but your where faster :mrgreen:
Correct me if I am wrong, but the 33 ohms is a serial termination - instead of using (a more common) termination down to ground close at the reciever - as that would consume more current from the transmitter. Maybe time to use 1 Gsample/s tomorrow and check U(t)
Correct me if I am wrong, but the 33 ohms is a serial termination - instead of using (a more common) termination down to ground close at the reciever - as that would consume more current from the transmitter. Maybe time to use 1 Gsample/s tomorrow and check U(t)
Probably not the most confused programmer anymore on the XCORE forum.
-
- Respected Member
- Posts: 283
- Joined: Fri Mar 19, 2010 4:49 am
As a side note, I built a buffer card between the XTAG2 and the Audio card with high speed 25mA buffers on all lines. I needed this for other reasons. It did not help with XTAG2 issues (although I can't verify it without a good system, but worked no worse or better than without it). I wait for the next tools release for new firmware.
-
- XCore Addict
- Posts: 162
- Joined: Thu Dec 31, 2009 8:51 am
I assembled a second identical board to rule out a bad chip but it's still the exact same problem.
Debug through the JTAG is necessary so if it isn't working then I would like to figure out what is causing it.
The burn to flash and the debug mode run don't seem to work. I'll try hooking up the logic analyzer later and try an infinite loop toggling a pin on/off.
The XK1 demo board I have works fine.
I tested my code and am ready to roll out a device into production. Just need some help tracking down what's wrong with the schematic or pcb.
Debug through the JTAG is necessary so if it isn't working then I would like to figure out what is causing it.
The burn to flash and the debug mode run don't seem to work. I'll try hooking up the logic analyzer later and try an infinite loop toggling a pin on/off.
The XK1 demo board I have works fine.
I tested my code and am ready to roll out a device into production. Just need some help tracking down what's wrong with the schematic or pcb.
-
- XCore Addict
- Posts: 165
- Joined: Wed Feb 10, 2010 2:32 pm
To check for XCore life and controllability via JTAG I always try a command line access via xgdb:
First check that you can connect to the jtag device (XTAG or board with JTAG driver)This should list one device. If it can't find anything it will say 'No Available Devices Found'
Now check basic XCore and JTAG operation. I always slow the speed of the JTAG down at this stage, just in case there are any PCB problems with the JTAG which prevent it from working at full speed.
This should give a response like this:
If the first number is '0x00000000',
or you get something like this
'XDBG [ERROR] :: Cannot initialise debug device interface'
you have a problem with either the JTAG or the XCore, and you know you need to work on that. Otherwise, you know that basic operation is functioning. You may want to try connecting without the --jtagspeed option to ensure the JTAG chain works OK at full speed now.
First check that you can connect to the jtag device (XTAG or board with JTAG driver)
Code: Select all
xrun --listdevices
Now check basic XCore and JTAG operation. I always slow the speed of the JTAG down at this stage, just in case there are any PCB problems with the JTAG which prevent it from working at full speed.
Code: Select all
xgdb
connect --jtagspeed 10
Code: Select all
(gdb) connect --jtagspeed 10
0xffffc04e in ?? ()
(gdb)
or you get something like this
'XDBG [ERROR] :: Cannot initialise debug device interface'
you have a problem with either the JTAG or the XCore, and you know you need to work on that. Otherwise, you know that basic operation is functioning. You may want to try connecting without the --jtagspeed option to ensure the JTAG chain works OK at full speed now.
-
- XCore Expert
- Posts: 956
- Joined: Fri Dec 11, 2009 3:53 am
- Location: Sweden, Eskilstuna
Good tips here - I think many will come up with there own custom designs in the near future.
- And we will have initial problems on the deployment.
- And we will have initial problems on the deployment.
Probably not the most confused programmer anymore on the XCORE forum.
-
- XCore Legend
- Posts: 1274
- Joined: Thu Dec 10, 2009 10:20 pm
I guess an important question given the errata is if there is a mistake with the reference design or the XTag2 design.
For the reference design, should one incorporate a buffer for the TRST_N line input given it drives 3 pins? Or is it expected that the XTAG programmer connecting to this pin is capable of pushing those 3 pins low without a buffer, i.e. directly from its xmos pin output?
One other clarification is given the design reference it seems to indicate that pullups are not required, rather the internal weak pullups are used on control pins, if this is the case, if so I can reduce my BOM for Amino..
Some clarification from Xmos here would be very welcome..
regards
Al
For the reference design, should one incorporate a buffer for the TRST_N line input given it drives 3 pins? Or is it expected that the XTAG programmer connecting to this pin is capable of pushing those 3 pins low without a buffer, i.e. directly from its xmos pin output?
One other clarification is given the design reference it seems to indicate that pullups are not required, rather the internal weak pullups are used on control pins, if this is the case, if so I can reduce my BOM for Amino..
Some clarification from Xmos here would be very welcome..
regards
Al
-
- XCore Addict
- Posts: 162
- Joined: Thu Dec 31, 2009 8:51 am
Thanks for the tips. I will try it and report back.
Does the XMOS device support some sort of boundary scan through the JTAG port? Is there a tutorial or document to figure out how to find bad connections using the boundary scan during production?
Thanks.
Does the XMOS device support some sort of boundary scan through the JTAG port? Is there a tutorial or document to figure out how to find bad connections using the boundary scan during production?
Thanks.
-
- XCore Addict
- Posts: 162
- Joined: Thu Dec 31, 2009 8:51 am
I followed your instructions and I get '0x00000000'. If I turn off power to the device I get Cannot initialise debug device interface.
Any other hints to debug this problem or obvious errors in my schematic?
Thanks.
Any other hints to debug this problem or obvious errors in my schematic?
Thanks.
Woody wrote:To check for XCore life and controllability via JTAG I always try a command line access via xgdb:
First check that you can connect to the jtag device (XTAG or board with JTAG driver)This should list one device. If it can't find anything it will say 'No Available Devices Found'Code: Select all
xrun --listdevices
Now check basic XCore and JTAG operation. I always slow the speed of the JTAG down at this stage, just in case there are any PCB problems with the JTAG which prevent it from working at full speed.This should give a response like this:Code: Select all
xgdb connect --jtagspeed 10
If the first number is '0x00000000',Code: Select all
(gdb) connect --jtagspeed 10 0xffffc04e in ?? () (gdb)
or you get something like this
'XDBG [ERROR] :: Cannot initialise debug device interface'
you have a problem with either the JTAG or the XCore, and you know you need to work on that. Otherwise, you know that basic operation is functioning. You may want to try connecting without the --jtagspeed option to ensure the JTAG chain works OK at full speed now.