Xtag,Xtag2 & JTag

Technical discussions related to any XMOS development kit or reference design. Eg XK-1A, sliceKIT, etc.
User avatar
Folknology
XCore Legend
Posts: 1274
Joined: Thu Dec 10, 2009 10:20 pm
Contact:

Xtag,Xtag2 & JTag

Post by Folknology »

The latest incarnation of development connections is the XTAG2 board and standard. prior to that there was XTAG and on board usb JTAG FTDI chips which looks a lot like standard JTAG. If one is building a development board the question arises over what to use out of these possible alternatives, so here are some questions to help start a thread which will enable folks building such things to make such decisions.

1) Can one use a standard JTAG board/unit like Arm and FPGA products support? If so are them some guidelines and or requirements like OCD compliance? Also are there any XMOS/tested or approved JTAG products?

2) Does one have to provide an additional virtual console when using another JTAG solution, or is that just an optional feature.

3) Looking at the schematics for the Dev kits and XTAG2 etc.. It seems like an extra LLink 4 pin channel is added to the JTAG signals. How is this link used and what benefit does it provide?

4) What are the key benefits offered by XTAG2 vs XTAG, what function does the L1 add to XTAG2

Sorry if these questions seem a little obvious but I am trying to get to grips with what are the options are when developing a custom dev board. Also clarifying what XTAG/2 offer over JTAG is obviously beneficial to the over all community understanding.


nisma
Active Member
Posts: 53
Joined: Sun Dec 13, 2009 5:39 pm

Post by nisma »

1) Yes, it´s possible
2) Optional feature for the user when running the software
3) Booting from the LLink, or for loading custom firmware into the XTAG2 and using the
link as usual.
4) as point 3, and specially if running user code on XTAG2. That code is loaded from PC ad
every time the XTAG2 is connected to the USB. There is a custom bootloader inside the
8k PROM of the XTAG2.
User avatar
paul
XCore Addict
Posts: 169
Joined: Fri Jan 08, 2010 12:13 am
Contact:

Post by paul »

1) Yes, but some work would need to be done here to get them to work and the XMOS tools won't support them directly. XMOS would reccommend XTAG2

2) Not quite sure what you mean here, but if you are talking about print statements then they are optional, as is the virtual serial interface

3) Sorry to contradict nisma here, but it isn't used for booting. It is planned that XTAG2 will eventually provide an XMOS Link <-> USB adapter as an option for fast data transfer to/from a host

4) XTAG2 is about 10x faster than XTAG and uses XMOS tech. so is much more under XMOS' control - this will be the primary supported device for debugging etc as XMOS has full control of the feature set (and can add things like (3)). The L1 on the XTAG2 does all the work instead of using an FTDI chip.

Also, not quite sure what nisma means in (4), but all the software is in the 8K OTP. No software is loaded onto the XTAG2 L1, it is only used as a device to provide a USB to JTAG bridge.
Paul

On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
User avatar
Folknology
XCore Legend
Posts: 1274
Joined: Thu Dec 10, 2009 10:20 pm
Contact:

Post by Folknology »

Thanks Nisma & Paul Great responses.

@Paul couple more questions if I may

1) Is the source code available for XTAG2?
2) Although the XTAG code is burned into the OTP, is it possible to load further code?
3) I am fascinated by the idea of XMOS Link <-> USB is this only for debugging or could this be used more generally in a USB driver type scenario. Can you provide any further information?
4) Will the XMOS Link <-> USB feature require a hardware design change on the XTAG2

XTAG2 looks like the way to go for my projects, particularly if I can get access to the code.
User avatar
paul
XCore Addict
Posts: 169
Joined: Fri Jan 08, 2010 12:13 am
Contact:

Post by paul »

1) The JTAG side of things is available from http://www.xmoslinkers.org/node/321 - the USB side isn't on general release. You would need to contact XMOS for further information on this.

2) I believe it is possible to run custom code using the JTAG interface to the XTAG2. There are some through holes that provide the relevant connections. Whether you need to make any modifications to stop the device automatically booting from OTP I am not sure about - check the boot mode pin configurations for this.

3) This hasn't been fully defined as yet apart from there probably will be support for it in future. I guess it would be a general purpose thing as that would prove to be more useful.

4) Unlikely as the connections are already there, though it might require a new board to be bought as a firmware upgrade would be needed and this can't be done with devices that have the OTP blown.
Paul

On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
User avatar
Folknology
XCore Legend
Posts: 1274
Joined: Thu Dec 10, 2009 10:20 pm
Contact:

Post by Folknology »

Once again Paul thanks for your comprehensive feedback

It brings to mind a few more queries however

First I noticed this thread when searching for USB hints on Linkers, it seems to indicate loading software onto the XTag2, is what nisma refers to in (4) ?
he XTAG-2 hardware is connected to provide a serial port via the XSYS connector. The UART itself is provided by software loaded onto the XTAG-2 at run time by the debugger. There is no virtual COM port for the XTAG-2 (Could you please point me at the documentation that states there is as this is incorrect). The decision was taken to provide a UART via the software tools in order to have consistancy across Windows, Linux and OSX as users were having problems with using the UART on any system apart from Windows.

The UART support in the tools for the XK-1 is currently in beta and as such is only available in the command line tools. Only sending data to the host with a baud rate of 115200 is supported at this time. This is being addressed and the UART will be integrated into the XDE in a future release of the development tools.

Currently if you require output from the UART then from the command line run the command

xrun --uart test.xe
Link - http://www.xmoslinkers.org/forum/viewto ... ?f=7&t=555


Secondly I see the JTag code for Xtag2 that you linked to - thanks thats really helpful.
However I was looking to emulate directly the XTag2 and would thus need the L1/3318 usb code at the XTag2 end to achieve this. How do I go about getting the source code for this?

regards
Al
User avatar
paul
XCore Addict
Posts: 169
Joined: Fri Jan 08, 2010 12:13 am
Contact:

Post by paul »

Ah ok... I hadn't quite realised how the UART stuff on XTAG2 works.

Source code or a binary library for the USB code is currently only available directly from XMOS. Please contact them using the XMOS Ticketing system
Paul

On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
User avatar
Folknology
XCore Legend
Posts: 1274
Joined: Thu Dec 10, 2009 10:20 pm
Contact:

Post by Folknology »

I placed a new ticket #1385

Awaiting response..
User avatar
Folknology
XCore Legend
Posts: 1274
Joined: Thu Dec 10, 2009 10:20 pm
Contact:

Post by Folknology »

Given the fact I haven't had a response yet from my ticket and the fact that the XTag2 code (including its usb code) appears to be rather closed I am going to have to follow a plan b otherwise my project will slip badly.

The issues with the USB interface choices are also covered here: http://www.xcore.com/forum/viewtopic.php?f=8&t=130

Thus I am now working on using the FTDI FT2232D to handle the JTAG stuff as I cannot afford for this project to derail.

Is it possible to use lower cost alternatives to FTDI FT2232D, anyone have experience with this?

regards
Al
kster59
XCore Addict
Posts: 162
Joined: Thu Dec 31, 2009 8:51 am

Post by kster59 »

The FT2232H is lower cost than the FT2232D in the US.

If all you want is USB then you have a lot of options. If you want JTAG I think the FT2232D is the only solution directly supported.

If you use the FT2232H code and modify the XMOS tools to use the JTAG stuff, I'd love to see it.

If you want USB, ethernet and other peripherals like, I2C/I2S, SPI and SDRAM, it's probably just to program a cheap ARM and hang the XMOS off it with an XLINK. I already made my design with such a configuration and I save a ton of board space and money.
Post Reply