EmbeddedRelated.com
Forums

USB as standard debug interface

Started by acd March 18, 2011
Chris H  wrote:

[Things about ICEs ...]

I am curious.  Regardless how an ICE compares to JTAG, BDM, etc., you
seem to consider it a viable option today.

I have not used a "real" ICE since the 8080/Z80/6800 days.
I don't recall even seeing an ICE for at least the last twelve years
in the places I worked or visited.
(Excluding web pages for old equipment sold at eBay)

Are In Circuit Emulators still part of an embedded developer's
toolkit?
What companies manufacture them, for what processor families?
--
Roberto Waltman

[ Please reply to the group.
  Return address is invalid ]
ChrisQ <meru@devnull.com> wrote:
> Initially wanted to use this on the network via a network usb hub. > Although the debug adapter can be seen at the host end, the Keil ide > can't see it at all, so i'm guessing that Keil bypass some or all of the > host (WinXp and W2000) usb stack. No suggestion or solution was > forthcoming from either Keil or Silabs.
I'm pretty sure it's down to too strict timing requirements in Keil's software. For the same reason it can be difficult getting debug interfaces to work in virtual machines. IIRC Keil's interfaces use the host class drivers and don't need custom drivers installed (eg. you can install the IDE and start debugging without rebooting the machine inbetween). -a
On 2011-03-22, Roberto Waltman <usenet@rwaltman.com> wrote:
> Chris H wrote: > > [Things about ICEs ...] > > I am curious. Regardless how an ICE compares to JTAG, BDM, etc., you > seem to consider it a viable option today. > > I have not used a "real" ICE since the 8080/Z80/6800 days.
Me too. The 68HC11 was the last target with which I used "real" ICE.
> I don't recall even seeing an ICE for at least the last twelve years > in the places I worked or visited. > > Are In Circuit Emulators still part of an embedded developer's > toolkit?
Nope.
> What companies manufacture them,
Don't know.
> for what processor families?
None of the ones I've used in the last decade had "real" ICE available. Many of them had JTAG, but that's strictly HW breakpoint, examine memory, and single-step. No tracing. -- Grant Edwards grant.b.edwards Yow! Hmmm ... a CRIPPLED at ACCOUNTANT with a FALAFEL gmail.com sandwich is HIT by a TROLLEY-CAR ...
Chris H wrote:
> In message <KM3ip.82183$5X6.15317@newsfe20.ams2>, ChrisQ > <meru@devnull.com> writes >> Chris H wrote: >> >>> With a decent ICE you do know and you have the full trace and >>> timings. >>> >> An ice can be usefull, but is a very expensive, > > Not expensive in real terms. > >> devices. All this costs serious development time and money. > > Usually a good ICE speeds up development and bug hunting... also used to > sue then for unit testing. > >> Other than bdm, it was just about the only solution available in the >> old z80, 68xx days, but modern micros have (effectively) made ice >> obsolete by building in dedicated microcode for the debug function. > > Not really. Jtag is not the same thing. > >
The last ice used here (last year) was the Renesas unit for the 32c87 series, but must have been at least 10 years since i've seen or used ice otherwise. The Renasas device was a set of pcb's plugged together that needed a special adapter socket on the pcb, so the first few prototype boards were non standard build using the (expensive) special adapters. They were fragile / top heavy to the point that I had to epoxy the adapters to the board for adequate mechanical rigidity. Different boards within the set for different devices within the processor family. It worked, but at over 1000 ukp each, a bit expensive when all I really needed was code download, run, single step and occasional variable and structure examination. The software was good though, shall we say "feature rich", with regular and free updates from Renesas. I think the main drive comes from manufacturers, to get critical mass, with low cost starter kits the way forward to get a cpu family into wide acceptance. Target hardware kits are often 100 ukp or less, including quality, limited size toolchains. Hardware emulators at 1000's don't fit into that picture, especially when lower cost jtag style solutions get 90% of the job done at a fraction of the cost. Any remaining hardware issues can be dealt with more effectively using a scope or logic analyser with a few lines of added code where necessary... Regards, Chris
Grant Edwards <invalid@invalid.invalid> wrote:
> None of the ones I've used in the last decade had "real" ICE > available. Many of them had JTAG, but that's strictly HW breakpoint, > examine memory, and single-step. No tracing.
Many ARM processors contain an embedded trace module. When Keil introduced their ULINKpro debug interface, one of the features they pushed was realtime instruction tracing for Cortex-M devices. -a
On 2011-03-22, Anders.Montonen@kapsi.spam.stop.fi.invalid <Anders.Montonen@kapsi.spam.stop.fi.invalid> wrote:
> Grant Edwards <invalid@invalid.invalid> wrote: >> None of the ones I've used in the last decade had "real" ICE >> available. Many of them had JTAG, but that's strictly HW breakpoint, >> examine memory, and single-step. No tracing. > > Many ARM processors contain an embedded trace module.
True, but none of the ones I've used did. Maybe the next one...
> When Keil introduced their ULINKpro debug interface, one of the > features they pushed was realtime instruction tracing for Cortex-M > devices.
That would be nice... -- Grant Edwards grant.b.edwards Yow! Make me look like at LINDA RONSTADT again!! gmail.com
On 22/03/11 20:49, Grant Edwards wrote:
> On 2011-03-22, Anders.Montonen@kapsi.spam.stop.fi.invalid<Anders.Montonen@kapsi.spam.stop.fi.invalid> wrote: >> Grant Edwards<invalid@invalid.invalid> wrote: >>> None of the ones I've used in the last decade had "real" ICE >>> available. Many of them had JTAG, but that's strictly HW breakpoint, >>> examine memory, and single-step. No tracing. >> >> Many ARM processors contain an embedded trace module. > > True, but none of the ones I've used did. Maybe the next one... > >> When Keil introduced their ULINKpro debug interface, one of the >> features they pushed was realtime instruction tracing for Cortex-M >> devices. > > That would be nice... >
It /can/ be nice, but in reality you don't often have need for tracing. I certainly seldom used it in the old days of using "real" ICE's. On the other hand, when you /do/ have use for tracing, it can save a lot of time in debugging. But tracing is an expensive feature, especially if you only have use of it once a year. If you have a team of 10 Cortex programmers, it could make sense to have one expensive debugger (such as the ULINKpro, if you are using Keil tools) shared in the team, and an ordinary jtag debugger for each programmer for normal use. But if you are working by yourself, it would be hard to justify the price based solely on the trace feature. Tracing has also become far less useful since it became standard to include some hardware data watchpoints, as well as code breakpoints.
On 2011-03-22, David Brown <david.brown@removethis.hesbynett.no> wrote:
> On 22/03/11 20:49, Grant Edwards wrote:
>>> Many ARM processors contain an embedded trace module. >> >> True, but none of the ones I've used did. Maybe the next one... >> >>> When Keil introduced their ULINKpro debug interface, one of the >>> features they pushed was realtime instruction tracing for Cortex-M >>> devices. >> >> That would be nice... > > It /can/ be nice, but in reality you don't often have need for tracing.
To be honest, I probably used tracing more for tracking down hardware problems (spurious interrupts, that sort of thing) than for tracking down software bugs. -- Grant Edwards grant.b.edwards Yow! My life is a patio at of fun! gmail.com
On 22.03.2011 17:56, Roberto Waltman wrote:

> I have not used a "real" ICE since the 8080/Z80/6800 days.
[...]
> Are In Circuit Emulators still part of an embedded developer's > toolkit?
Well, that would tend to depend on how real an ICE has to be for you to consider it a "real" one... I'm pretty sure a pretty realistic ICE (you know, as in: somewhat clunky box with a many-a-pole flat cable coming out of it that ends in a plug that fits a socket which could otherwise hold an actual CPU) has been in use in our shop this year. At least I know who last used it. The whole thing is for a Fujitsu 16FX series processor. And yes, it's worth having it in the toolkit.
Hans-Bernhard Br&#4294967295;ker wrote:

>On Roberto Waltman wrote: >> Are In Circuit Emulators still part of an embedded developer's >> toolkit? > >...The whole thing is for a Fujitsu 16FX series processor. And yes, it's >worth having it in the toolkit.
Yes, of course. I didn't mean that there should not be used or that they are not useful. When any tool saves a project, it saves a project. I was asking, (using a poor choice of words, maybe,) if they are available at all for newer processors. . -- Roberto Waltman [ Please reply to the group. Return address is invalid ]