JTAG VIA USB

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

JTAG VIA USB

692 Views
chrisgulick
Contributor II

I have a suggestion for NXP. Implement JTAG via USB much like DFU is right now. Use another pin on a MCU/CPU if low on POR or reset in general then USB becomes JTAG port. This way I don't have to spend hundreds if not over a thousand dollars for stupid JTAG probes. I have JTAG probes comming out my you know where for all the different MCU's/CPU's I use. I have LPClink2 for NXP, STLinkv3 (mini and V3) for ST Micro, JLINK for Renesas RZ/A2M CPU. $1000.00 for a jlink is absurd no matter how you look at it. It would be very cool to run OCD or VisualGDB via USB JTAG implemented on MCU. Don't tell me there is no room in the silicon I know better. With USB JTAG 3rd party companies can write nice GUI's all day long and see if the market will pay a grand to single step thru code. USB is implemented on all but the lowest end of MCU's so the infrastructure is already in place.

1 Reply

639 Views
converse
Senior Contributor V

This is really not a good idea.

The economics of producing MCUs is dominated by two things (silicon area and pin count) and increasing either, increases the cost of the chip. This maybe doesn't make a lot of difference to a buyer of chips who buys a few hundred, but if you are buying millions, then it makes a significant difference. Also, debug is used only during the development of the end product - when shipping the product you want to switch that off - so do you want to bear the cost of USB debug in every device?

Historically, this (the debug problem) was solved by JTAG. When ARM developed their MCU's (Cortex-M), they cost reduced the debug by introducing SWD (smaller silicon area, fewer external pins, when compared with JTAG). SWD has a very simple interface that requires no on-chip drivers and takes very few pins. This interface is standardised and cheap, meaning that there are lots of cheap debug probes. MCU producers virtually give these away (LPC-Link2 is about $20) as it helps their MCU sales, but they are not keen on you using the same device for a different MCU vendor - through software. ARM  addressed this by releasing CMSIS-DAP (which is available for most of the vendor-specific debug probes) and most debuggers/IDE now support  this (meaning, for example, you can actually use LPC-Link2 with ST, or any other vendors debugger and silicon).

Note that if you buy, for example, J-Link for ARM, then you can use that on pretty much any ARM-based chip, regardless of the vendor. The reason J-Link s expensive is because it is expensive to produce and maintain, if you are not subsidised by selling MCU's. In my experience, J-Link is faster and much more reliable than the 'cheap' vendor-specific debug probes.

p.s. I'm nothing to do with NXP or any other chip maker, or debugger, just a (rather old, and long time) MCU developer.