Trade Study for Motorola 68HC12 Debug Tools
By Gary Olmstead
Toucan Technology
Revision: NC
October 27, 2003
Trade Study for Motorola 68HC12
Debug Tools
An Overview of Each Company’s 68HC12
Products
This document compares different methods and products used to debug programs written for the Motorola 68HC12 family of microcontrollers. Only three approaches are considered here, Motorola’s evaluation boards, BDM, and ICE. Software simulators and logic analyzers are not considered.
Appendix A contains an e-mail communication received from Doron Fael, of Nohau Corp. Appendix B contains a quote from Lauterbach Corp. detailing their 68HC12D60 line of ICE products.
This document assumes that the user will probably be required to support more than one variant of the 68HC12, that it will sometimes be necessary to determine exactly how long a routine takes to execute, and that lowest possible purchase price is not the primary consideration.
For this document, 68HC12 refers to any Motorola 16 bit microcontroller that contains the number 12. Base part numbers are MC68HC12, MC68HC812, MC68HC912 and MC9S12 also known as STAR12. Motorola recommends that all new 16-bit designs use the MC9S12 components.
BDM Background Debug Mode, a serial debug interface. The hardware interface is split between the dedicated hardware on the 68HC12 microcontroller and a custom box that is connected to a desktop computer via a serial or parallel port.
ICE In Circuit Emulator replaces the microcontroller with a full custom hardware interface.
Evaluation boards can be most easily described as a baby ICE. They replace the microcontroller with a custom interface, but don’t have the features of a complete ICE.
The 68HC12 has hardware on board to assist in program development and programming the memory, both during assembly and in the field. This capability is called Background Debug Mode, or BDM. Logic that is located on the 68HC12, but separate from the CPU allows memory locations to be read, and in some cases written while the program is running. Other BDM commands require the CPU to stop the main program, and execute dedicated code instead.
BDM products communicate with the PC via a serial (RS-232 or USB) or parallel (extended printer port) interface.
Since the majority of the BDM hardware is either inside the 68HC12, or in the connected PC, BDM interfaces are very inexpensive. They are also very versatile, since a single BDM module can support every 68HC12. BDM interfaces impose a very low size and cost penalty on the target board, since they connect via a dedicated 6 or 10-pin connector.
On the other hand, since they are almost totally dependent on features built into the 68HC12, BDM products are virtually impossible to differentiate from each other except in the features offered in the PC portion of the user interface. This makes them very difficult to compare except with a direct evaluation.
In Circuit Emulators replace the CPU with a connector to an external mother board containing another 68HC12 of the same variety and some associated logic and possibly some extra memory.
The advantages over BDM include the ability to trace instruction execution, track and report what portion of the code is actually executed (code coverage) and how much time is required to execute a particular piece of code (performance analysis).
The main disadvantage is that the target board CPU must be accessible and removable. Another disadvantage is that the cost of an ICE is several times more expensive than BDM. This is partly because of the extra memory and other components, but also because a special interface board is required for each variant of the 68HC12.
Appendix A is a letter from Doron Fael of Nohau that contains a more complete list of the advantages of ICE over BDM.
Motorola published a list of third party development tool partners dated Q3 2002. The names on this list are:
Axiom Mfg.
Avocet Systems
COSMIC Software
Hitex Development Tools
IAR Systems
ISYSTEM
Kevin W. Ross
Lauterbach
Metrowerks
Nohau Corp.
Noral Micrologics Inc.
P&E Microcomputer Systems
Sid Price’s Software Tools
Ashling Microsystems
Hitex Development Tools
ISYSTEM
Lauterbach
Motorola evaluation boards
Nohau Corp.
Axiom makes and sells a series of development boards that have a microcomputer and various accessories on a small card. Accessories consist of a solder-less breadboard area, an LCD interface connector, a 4X4 keypad, and two RS-232 interfaces. Axiom currently supports only the A4, B32, D60A, DG128, and DP256 variants. More are promised “soon”. Axiom does not supply its own software, but recommends Motorola’s DeBug12.
For more information: www.axman.com. Manuals can be downloaded for free evaluation.
Avocet makes and sells a variety of 68HC12 products that were mainly acquired from companies that no longer exist. A company called 2500AD originally sold their C compiler. Huntsville Microproducts originally developed and sold their BDM debugger. It isn’t clear whether these products are well integrated or not. Avocet provides a program called SourceGate II for debug, but absolutely not one single detail about its operation or appearance or suitability.
For more information: www.avocetsystems.com.
COSMIC sells a 68HC12 C compiler that is highly regarded. They also make and sell a BDM debugger called ZAP. Unfortunately, ZAP is not nearly as good as the compiler. It is given to undocumented errors, and unexplained lock-ups. The installation procedure in the instruction manual is completely outdated. Display windows go blank for no reason. ZAP requires a dongle, although the compiler does not seem to notice if the dongle exists or not.
For more information: www.cosmic-software.com. A 68HC12 simulator can be downloaded for free.
Hitex supplies the TantinoS12, which is a fairly standard BDM product. Their PC program is HiTop5, which is a very basic interface, although it can save program trace sequences.
Hitex also supplies another BMD product called the JProbeHC12. They don’t have a head to head comparison of the two products.
For more information: www.hitex.com. A video presentation of HiTop5 can be downloaded.
IAR supplies C-Spy Debugger and Embedded Workbench IDE. These are software only; IAR does not supply hardware. It appears to be intended for any BDM that can connect to the P&E Micro hardware. This estimate is based on a single link to the P&E Micro web site. Unfortunately, most of their literature talks about the value of having a particular functionality, and not about how any of their products actually achieves that goal.
There are reports that IAR does not support chips running faster than 16 MHz. Many versions of the 68HC12 now run at 25 MHz, and some run at 32 MHz.
For more information: www.iar.com A free demo is available.
ISYSTEM
Kevin Ross makes a line of development boards with processors and various accessories on a card. He doesn’t supply software, but seems to have some sort of agreement with Sid Price (see below). Unfortunately, this business is a sideline for Kevin, and he only supports the A4, B32, and D60 variants. He is working on others, but which varieties, and when they will be available isn’t certain.
Lauterbach is one of the companies that make only debug products. They make both BDM and ICE products. The two lines have confusingly similar names.
For more information: www.lauterbach.com. A 68HC12 simulator can be downloaded.
Metrowerks supplies CodeWarrior, a highly regarded compiler and development environment. However, their main interest is 32-bit processors, and high volume products like Palm. Their commitment to “lesser” products like the 68HC12 is half-hearted at best. In this case, the 68HC12 debugger is given to misrepresenting the contents of the stack.
Nohau is one of the companies that make only debug products, both BDM and ICE.
For more information: www.nohau.com .
Noral only makes BDM products. Their debugger supports a non-standard, extended BDM interface in addition to the usual 6-pin interface. The extra pins enable the user to change clock speeds and change operating modes on the fly, which isn’t usually possible with BDM. Noral’s Flex-BDM/68HC12 supports only the 812A0, 812A4, 12B32, 912BC32, D60, D60A, DA128, DA128A, DG128, DG128A, DT128, DT128A and STAR12. It isn’t clear whether support will be extended to the rest of the family.
For more information: www.noral.com .
P&E makes most of Motorola’s evaluation boards in addition to its own line of (different) products.
For more information: www.pemicro.com .
Sid Price sells a debugger called StingRay, but no hardware. StingRay will run on Kevin Ross’ boards (see above).
For more information: www.softtools.com .
Motorola listed Ashling as a supplier of 68HC12 ICE products, but the Ashling web site does not mention any support for any Motorola product of less than 32 bits. Ashling will not be dealt with further in this report.
Hitex sells two products that are billed as BDM and ICE combined. These are the DProbe12 and DProbeS12.
For more information: www.hitex.com .
Isystem supports all advertised 68HC12 variants. In addition to RS-232 and printer ports, these products can communicate via USB and Ethernet. This makes it possible to run the emulator on a remote site, which is great until you have to press the reset button. One instruction manual covers seven different products that connect to more than two dozen different processors from PIC to Power PC. This makes the manual very large, and sometimes confusing.
For more information: www.isystem.com .
Lauterbach ICE products support most of the catalog variants, however they don’t specifically list support for every suffix variation. For example, they list support for the D60, but not the D60A. The same is true for every “B” suffix part.
Usually, an “A” or “B” suffix would only indicate a speed difference, or some other small change that would not be a concern for program development. That is not the case for the 68HC12. Motorola has chosen to make significant changes to existing parts without changing the base part number. For example, the D60A has a FLASH EEPROM that is very different from, and completely incompatible with the D60 FLASH. Using D60 FLASH programming hardware will destroy a D60A FLASH. Using D60A FLASH programming hardware will not program a D60. It isn’t clear whether Lauterbach is aware of this or not (This isn’t idle speculation or a slam at Lauterbach: there are people in the 68HC12 group at Motorola who aren’t aware of the differences.)
Lauterbach supports either a 10/100 MHz Ethernet connection, or USB. These are the only products that come in a box, with an internal power supply, and a controller that is separate from both the PC and the target.
All of the Lauterbach hardware interfaces to a single user interface called Trace32. This means that Lauterbach is the only system that can run on virtually any desktop computer: Windows, Macintosh, Linux, Unix, and even DOS. One the other hand, the least expensive Lauterbach ICE product is more than twice the price of the next most expensive solution.
For more information: www.lauterbach.com .
Motorola sells a line of development products for most of its embedded processors. These are designed, manufactured and supported by third parties, so their features and ease of use vary from product line to product line.
Earlier products like the 68H05 and 68HC11 had very sophisticated designs. Although called “evaluation” boards, they were much more. They operated in a mode that brought the address and data buses off chip, and then filled in the memory map with external RAM. This meant that downloading was greatly speeded up by the elimination of the erase-and-burn cycle with EPROMS. In addition, it made it easy to probe the address and data bus with scopes and logic analyzers. These evaluation boards were very useful and cost effective solutions for the 68HC11 and 68HC05.
The evaluation boards for the 68HC12 don’t work that way. They consist of little more than a processor, a BDM interface, a crystal, restart logic and an area of holes for the user to add a little bit of custom logic. They are purely “evaluation” products and are no longer suitable for developing anything beyond the simplest products.
Motorola also has a software debugger that goes by various names: DeBug12, D-Bug12, and MCUeZ12. It is an excellent product, but since it has not been kept current, it only supports the earliest generation of 68HC12 products: A8, B32, D60 and D128. The FLASH programming routines in particular have changed significantly for later products, and this product would not be able to program them.
For more information: www.motorola.com . Instruction manuals can be downloaded.
Nohau ICE products consist of a motherboard, a processor specific daughter board, a cable to a target connector, and an optional trace board. There is no enclosure. The user must supply power supplies and a PC. The daughter board and the target connector are different for each sub-family of HC12 processors. There are three motherboards, but the one for the HCS12 will handle all existing 68HC12 as well as HCS12 variants. The other two motherboards are earlier designs that have been superseded by the HCS12 design.
Nohau makes a point of emphasizing that they are the only company that supports every variant of the 68HC12. This seems to be true, since they advertise support for variants that are not available (yet) at Arrow or Avnet, and are not listed as current products in Motorola’s selector guide.
Nohau also has very active and knowledgeable support for the 68HC12.
For more information: www.nohau.com .
Nohau’s ICE products provide maximum performance and debug features where price isn’t the main concern. Lauterbach’s separate inclusion of a power supply, enclosure and Power PC controller add a great deal of cost and complexity without adding offsetting capability.
E-mail from Doron Fael, Nohau Corp.
Hi Gary,
Here is the information you are looking for in regard to differences between
full-ICE and BDM for the HCS12.
I decided to write to you before receiving your email because I will be
traveling and will have only limited email access.
Full Emulator Advantages as compared to a BDM 1) Sophisticated Hardware
Trace - 131,000 Frames. Records Instructions + Data accesses + Time Stamp
+ 16 bit User selected pins + more.
2) Sophisticated Triggers and Filter configure the trace and possibly also
the MCU to stop after complex sequences, and to narrow down the trace
recording to the relevant information for the debugging session.
3) Unlimited number of breakpoints Hardware & Software
4) Extensive support for Reset & COP Watchdog Reset cycling (does-not exist
or is very limited on a BDM)
5) Extensive support for Power-Downs cycling (does-not exist or is very
limited on a BDM)
6) Limp-Home Clock-Loss Debug support (does-not exist or is very limited
on a BDM)
7) Full support for Speed Changes (BDMs don't allow many speed changes)
8) Flexible Emulation RAM can replace Flash and EEPROM (easier and faster
download with no need to re-program Flash and EEPROM every time you
recompile your code. The internal Flash and EEPROM may also be used, which
is usually used only in late debug stages)
9) Entirely non-intrusive Shadow memory - always available (the Shadow RAM
allows viewing writes to SFRs and Memory in real-time as code executes.
It is entirely non-intrusive, and is available during all the HCS12
operating conditions)
10) The Trace adds the ability to debug applications that must not stop
during debugging (such as some motor control and communication network
applications)
11) The full-emulator allows to debug code before a target is available
12> The full-emulator has a Large Emulation RAM (1MByte paged + 64Kbyte
non-paged. This allows code development for future larger Derivatives
(like the future 9S12E256) today. For most practical purposes, the future
part is reflected to the user and the application.
13) Code Coverage and Performance Analysis. Code coverage allows to detect
which lines of code are executed and which aren't. This is needed for
validity of critical applications that need to analyze which lines of code
are executed and which aren't. Performance Analysis allows to analyze how
the CPU time is divided between the various functions. It allows to then
optimize some of the functions that are found to drain too much of the
HCS12 resources.
14) The full-ICE is more easy to start to use than BDM. We have very good
reports about having the full-ICE out of the box and tracing in half an
hour (car forward it to you if you like). On the other hand the BDM is
sometimes more difficult to get started with, especially for new users
that never used the HC12/HCS12 and any BDM before. As you know, setting
the correct BDM communication speed is important, connecting the BKGD,
Reset, MODA and MODB is also important, all this often create delays in
starting the actual work in the case new users of BDMs.
The most efficient way to fully understand these advantages, is for us to show
you a demo of the full-emulator and these features. We have the ability to
show you a web-based live demo of the emulator and these features.
Since I will be traveling in the next couple of weeks, and will have
limited email access I want to suggest that you contact my colleague
Steve Russell (cc on this email) who is working with me on the design of
the HCS12 line of emulators. Steve can show you this web-based live demo
of all the mentioned features if you are interested, and answer further
questions that you may have.
I will be happy to continue this dialog with you also, after I return
(after September 5), or as much as my limited email access will allow
during my traveling.
Hope this helps,
Doron
Nohau Corporation
HC12 In-Circuit Emulators
Quote from Lauterbach
General Motors
Attn: Mr. Gary Olmstead
Torrance CA
Date 09/08/03
QUOTE
QUOTE NO. 030611
We thank you for your request dated 09/08/03 and offer you:
Item-Qty.-Unit-Part-No.-----Description------------------------------Disc.--Curr.----UnitPrice---TotalPrice
1 1 pcs
LA-7820 PODBUS Ethernet Controller 100 MBit 64 MByte $ 3,200.00
3,200.00
- Ethernet Controller for ICD,
- 10/100 MHz Ethernet
Interface,
- 80 MHz PowerPC Controller,
- 64 MByte Memory, PODBUS
Interface,
- Switching Power Supply
110..240V
2 1 pcs
LA-8602 Driver Package for Ethernet PC LAN on CD $ 910.00
910.00
-
Host Driver Package for PC includes driver
- for PC-NFS, NOVELL LAN
Workplace, LanManager,
- DEC-NET PathWorks,
WindowsSocket
- on CD (ISO 9960)
3 1 pcs
LA-7805 Interface Cable for PARALLEL/Fire PODBUS 1.5m $ 86.00
86.00
4 1 pcs
LA-9100 FIRE System Controller $ 2,350.00
2,350.00
- Controller for FIRE,
-
includes controller CPU, 16 MByte DRAM,
- switching power supply,
- PODBUS interface, port
analyzer connectors (32 ch.),
- FIREBUS connector
5 1 pcs
LA-9150 FIRE Emulation Controller $ 3,500.00
3,500.00
- Emulation Controller for
FIRE,
- includes trigger unit,
scalable trace 64K*160,
- time-stamp, clock and voltage
sense,
- VCO (1..150 MHz), pulse generator,universal counter,
- dualport controller
6 1 pcs
LA-9642 FIRE Emulator for MCS12 1MB $
7,200.00 7,200.00
- supports MCS12 family,
- 1 MByte Emulation Memory
- 1 MByte Break Memory
- 1 Meg * 3 bit Flag Memory
- requires no FIRE-RAM
- requires module M-MCS12-xx
7 1 pcs
LA-9647 Module for 68HC12D60 $ 1,770.00
1,770.00
- supports 68HC12D60
- with FIRE-MCS12-256
- adaptation to ET112-QF36
- requires a special converter for ET80-QF14
(LA-9648)
8 1 pcs
YA-1101 Emul. Adapter for YAMAICHI socket ET112-QF36 $ 480.00
480.00
- H8/510,HC12
- ET112 to YAMAICHI socket
(YA-1158)
- square, 0.65 pitch
- YAMAICHI socket part number:
- IC149-112-042-B5 without
locater pin
- IC149-112-142-B5 with
locater pin
- For 68HC12 use LA-1105 for
orginal CPU
9 1 pcs
YA-1158 YAMAICHI Socket ET112-QF36 $ 141.00
141.00
- YAMAICHI socket for adapter
YA-1101
- for H8/510
- ET112 to YAMAICHI socket QF36
10 1 pcs
LA-8022 TRACE32-FIRE Software Maintenance Contract $ 540.00
540.00
- Standard Software Maintenance
Contract
- for 1 year free software
updates for
- one TRACE32-FIRE system
___________
Net Price $ 20,177.00
===========
Offer includes 3 years hardware warranty and 2 years
software warranty.
Our payment terms:
14 days 2.00% discount, 30 days net.
Best regards,
Jerry Flake
Lauterbach, Inc.
General Motors
Attn: Mr. Gary Olmstead
Torrance CA
Date 09/08/03
QUOTE
QUOTE NO. 030612
We thank you for your request dated 09/08/03 and offer you:
Item-Qty.-Unit-Part-No.-----Description------------------------------Disc.--Curr.----UnitPrice---TotalPrice
1 1 pcs
LA-9104 FIRE System Controller - USB Interface $
3,000.00 3,000.00
- Controller for FIRE,
- includes controller CPU, 16
MByte DRAM,
- switching power supply, USB
(Win98/2000/XP),
- PODBUS output, port analyzer
connectors (32 ch.),
- FIREBUS connector
2 1 pcs
LA-9150 FIRE Emulation Controller $ 3,500.00
3,500.00
- Emulation Controller for
FIRE,
-
includes trigger unit, scalable trace 64K*160,
- time-stamp, clock and voltage
sense,
- VCO (1..150 MHz), pulse
generator,universal counter,
- dualport controller
3 1 pcs
LA-9642 FIRE Emulator for MCS12 1MB $
7,200.00 7,200.00
- supports MCS12 family,
- 1 MByte Emulation Memory
- 1 MByte Break Memory
- 1 Meg * 3 bit Flag Memory
- requires no FIRE-RAM
- requires module M-MCS12-xx
4 1 pcs
LA-9647 Module for 68HC12D60 $ 1,770.00
1,770.00
- supports 68HC12D60
- with FIRE-MCS12-256
- adaptation to ET112-QF36
- requires a special converter
for ET80-QF14 (LA-9648)
5 1 pcs
YA-1101 Emul. Adapter for YAMAICHI socket ET112-QF36 $
480.00 480.00
- H8/510,HC12
- ET112 to YAMAICHI socket
(YA-1158)
- square, 0.65 pitch
- YAMAICHI socket part number:
- IC149-112-042-B5 without
locater pin
- IC149-112-142-B5 with
locater pin
- For 68HC12 use LA-1105 for
orginal CPU
6 1 pcs
YA-1158 YAMAICHI Socket ET112-QF36 $ 141.00 141.00
- YAMAICHI socket for adapter
YA-1101
- for H8/510
- ET112 to YAMAICHI socket QF36
7 1 pcs
LA-8022 TRACE32-FIRE Software Maintenance Contract $ 540.00 540.00
- Standard Software Maintenance
Contract
- for 1 year free software
updates for
- one TRACE32-FIRE system
___________
Net Price $ 16,631.00
===========
Offer includes 3 years hardware warranty and 2 years
software warranty.
Our payment terms:
14 days 2.00% discount, 30 days net.
Best regards,
Jerry Flake
Lauterbach, Inc.
General Motors
Attn: Mr. Gary Olmstead
Torrance CA
Date 09/08/03
QUOTE
QUOTE NO. 030613
We thank you for your request dated
09/08/03 and offer you:
Item-Qty.-Unit-Part-No.-----Description------------------------------Disc.--Curr.----UnitPrice---TotalPrice
1 1 pcs LA-7705 Power Debug Module Ethernet $ 3,600.00 3,600.00
-
Universal BDM debug and JTAG controller,
- 200 MHz
PowerPC, 64 MB DRAM, High-Speed FPGA
- USB
2.0 (Win98/2000/XP), ETHERNET Interface
-
requires additional ethernet driver license,
-
PODBUS Interface (enables to add Parallel Inteface)
2 1 pcs LA-8602 Driver Package for Ethernet PC LAN
on CD $ 910.00 910.00
- Host
Driver Package for PC includes driver
- for
PC-NFS, NOVELL LAN Workplace, LanManager,
- DEC-NET PathWorks, WindowsSocket
- on CD
(ISO 9960)
3 1 pcs LA-7717 BDM Debugger for MCS12 (ICD) $ 1,800.00 1,800.00
-
supports MCS12
-
includes HLL debugger,
-
operation system, cable
-
includes driver for Windows 3.11,
-
Windows NT, Windows 9x, Windows2000, Windows-XP
-
requires PODBUS-interface to host and
- universal Debug Module
4 1 pcs LA-8017 TRACE32-ICD Software Maintenance
Contract $ 540.00 540.00
-
Standard Software Maintenance Contract
- for 1
year free software updates for
- one
TRACE32-ICD system
___________
Net Price $ 6,850.00
===========
Offer includes 3 years hardware
warranty and 2 years software warranty.
Our payment terms:
14 days 2.00% discount, 30 days net.
Best regards,
Jerry Flake
Lauterbach, Inc.
General Motors
Attn: Mr. Gary Olmstead
Torrance CA
Date 09/08/03
QUOTE
QUOTE NO. 030614
We thank you for your request dated 09/08/03 and offer you:
Item-Qty.-Unit-Part-No.-----Description------------------------------Disc.--Curr.----UnitPrice---TotalPrice
1 1 pcs
LA-7704 Power Debug Module USB $
1,820.00 1,820.00
- Universal BDM debug and JTAG
controller,
- 80 MHz PowerPC, 16 MByte
DRAM, High-Speed FPGA,
- 12 MHz USB (Win98/2000/XP),
PODBUS Interface
- (enables to add Parallel and ETHERNET Interface),
- compatible with all BDM and
JTAG debuggers
2 1 pcs
LA-7717 BDM Debugger for MCS12 (ICD) $
1,800.00 1,800.00
-
supports MCS12
- includes HLL debugger,
- operation system, cable
- includes driver for Windows
3.11,
- Windows NT, Windows 9x,
Windows2000, Windows-XP
-
requires PODBUS-interface to host and
- universal Debug Module
3 1 pcs
LA-8017 TRACE32-ICD Software Maintenance Contract $ 540.00
540.00
- Standard Software Maintenance
Contract
- for 1 year free software
updates for
- one TRACE32-ICD system
___________
Net Price $ 4,160.00
===========
Offer includes 3 years hardware warranty and 2 years
software warranty.
Our payment terms:
14 days 2.00% discount, 30 days net.
Best regards,
Jerry Flake
Lauterbach, Inc.
Appendix B Quote from Lauterbach