2
\$\begingroup\$

Doing a quick read up on in-circuit emulator (ICE) hardware, I'm confused as to why the word 'emulator' is included. It sounds like most ICEs are just fancy chips that can control a processor for debug purposes. However, it seems like nothing is being 'emulated'.

Why is this?

Edit: I'm specifically referring to this Analog Devices 'ICE' here.

\$\endgroup\$
8
\$\begingroup\$

This is primarily historical, and I'm sure one of the old timers that has been doing this longer than I've been alive will come in with a better answer.

We take for granted the on board debug capabilities and flash ROM in modern microcontrollers, DSPs and ASICs. In the old days, the processor may have either been one time programmable (use once), or require UV erasure before reprogramming (45 minutes under UV was a good rule of thumb). These types of parts do not work well for rapid iteration during development. In comes the emulator. Since most of these parts were DIP or LCC, they were usually socketed. An emulator board would easily plug into the processor socket or a connected header on the application hardware. The emulator emulated the processor that would ultimately end up there, and have full access to the hardware.

Parts that do not have on board debug facilities still exist and are in active production. The PIC18F14K50 comes to mind. If you want to debug it, you need a special debug board. Microchip has a family of them.

\$\endgroup\$
  • \$\begingroup\$ Now we have on chip debuggers, essentially in some form the processor is being separated from its normal flow and single stepped or at times completely replaced with an OCD that can take over the bus. \$\endgroup\$ – old_timer Feb 26 '17 at 0:41
  • \$\begingroup\$ So in some sense it is not necessarily different from taking the real chip out of its socket back in the day replacing it with the ICE possibly having the real chip somewhere in the ICE or on the other side of what was in the socket, we just do it all on chip, on die now. \$\endgroup\$ – old_timer Feb 26 '17 at 0:42
  • \$\begingroup\$ We also have this notion of system on chip so in a lot of cases we couldnt just replace the processor itself with an emulator, not possible. \$\endgroup\$ – old_timer Feb 26 '17 at 0:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.