technical writing, technical articles, technical writers

     Home          Rates and Policies          About Bernie           About Toni         


Smart engineering slashes costs on emulator design

Most companies that manufacture microcontrollers also produce emulators for their products. The cost of these emulators ranges from $1000 to $10,000. To accommodate small companies that can’t afford to spend that much money for an emulator, many MCU manufacturers, including NEC Electronics Inc., also offer low-cost development boards as an alternative.  Prices range from as little as $99 up to about $250.   

However, development boards don’t do real-time emulation, or do so only in a very limited way – that’s why they are cheap.  They are a “make-do” solution at best.  Although it’s true that some development boards can be enabled to provide real-time emulation, in order to achieve it additional hardware is required. But with the additional hardware the cost approaches that of a true emulator, and any benefit of buying a low-cost development board is lost.

Without real-time emulation, development costs are high

Because development boards do not have real-time emulation; you can’t do real-time trace, break points, or tracking of registers – all critical functions in guaranteeing that you start production with a flawless part.

To get around this problem, the customer can get an OTP (one-time programmable) or FLASH version of their micro, program it, plug it into the target system, and try it out.  If they encounter a problem, they must remove the device, plug the development board into their target system, and try to figure out what’s going on.  Several iterations of this highly inefficient process may be necessary to solve the problem.  But without real-time emulation speed, issues are difficult to resolve. 

Both these situations add to the development time, thereby increasing costs.  Worse, the risk is high when moving into production before a problem is discovered, and the cost of correcting it can be disastrous for a small company.

Other factors can add to the cost of a development board.  For example, many boards don’t come with a programmer to program an EPROM or a FLASH device.  Most microcontrollers have memory on board, so once the system development is complete, the user will want to evaluate the part in their actual system. To do this, you need to program the users code into an OTP or Flash based version of the part. This means you have to buy a programmer costing anywhere between $200 to $2000.

Cost is not the only problem

In general, a low-cost development board is specific to a particular part, not the whole family of parts. So a customer will need a different board for each member of a product family.  This creates problems for the MCU manufacturer as well as for the customer.  Every time the manufacturer introduces a new subseries, a new development board must be designed for it. This is a time-consuming and expensive process.  Thus it is often cost- and time-prohibitive to make new boards, and a customer may not be able to get a board for the new micro they are using.

NEC offers development boards for several of its lines of microcontrollers. In addition to the problems of development costs and availability, our technical support people have to spend a lot of time working with our customers to solve the technical problems that result from using a development board rather than an emulator. Many of these problems are inherent in the nature of the board itself, and can’t be designed out.  So it became apparent to us that to serve our small company customers effectively, we needed to design a true emulator that could be sold at a fraction of the cost of our high-end models.

The result of our efforts for the LCE (low-cost emulator) for our K0S family of MCUs has exceeded our most optimistic goals.  Not only were we able to realize many cost-saving innovations that allow us to sell it for $500, (about one-tenth the price of our cheapest high-end emulator), we did it with no significant sacrifice of functionality.

We didn’t invent anything new.  Everything we accomplished was done by taking advantage of recent cutting-edge technology, some unique advantages we enjoy because of our relationship with design partners, and by plain old smart engineering.

Here’s how we did it.

We began by cutting excess fat 

One of the principle challenges we faced was to design a low-cost emulator without sacrificing any significant functionality.  A couple of the economies were easily accomplished by eliminating features that are not used by our customers.  ‘Coverage’, for example, provides a graphic that tells the engineer what parts of memory a program uses, and which part it does not use.  Our customer support team for development tools told us that less than one percent of our customers uses this feature. So we were able to cut cost by eliminating a feature that won’t be missed by our customers.

In our high-end emulators we provide six ‘qualified’ breakpoints. The LCE supports up to 64K simple breakpoints (that is, they break on address only). A qualified breakpoint is one that implements a condition more complex than an address break only, such that the breakpoint will cause the emulator to stop only when all the conditions of the breakpoint are met.  Qualified breakpoints are powerful tools but expensive to implement.  Again, we found out that our customers rarely use all six breakpoints, so we achieved another substantial economy by putting only three qualified breakpoints in the LCE. Those three breakpoints will be adequate for more than 99% of all designs.

Another simple economy was to eliminate the box (which is not really necessary) around the LCE, and to substitute a plastic shield to protect the top of the emulator.

No secrets, just smart engineering

Our most basic design decision was to use two boards – a motherboard with an Evachip (evaluation chip), and a daughterboard for the micro being emulated. The Evachip is the CPU core that will work with any micro in the family.  A single IC (which we call the Realchip) on the daughterboard is the actual production micro that includes the CPU, and all the peripherals for that particular subseries. In the LCE, the Evachip disables the Realchip’s CPU and puts the Realchip in a special emulation mode where the Realchip emulates the micro’s peripherals, but not the CPU. 

The peripherals are the primary difference in our micros when you go from one subseries to another subseries in a product family.  The CPU and the instruction set are the same; it’s only the peripherals that change.

Because the daughterboard has only one IC and a couple of connectors, we can design a new board very quickly and at a low cost – a major difference between the LCE and development boards. This means it is fast and inexpensive for the customer to move to a new subseries.

Once our customer buys the motherboard and a daughterboard for one subseries in a family, they can go to a different subseries simply by buying another daughterboard for about $100.  If a customer is using a high-end emulator, there’s no easy way to go to a different family of parts without buying a new emulator board at a cost of at least $1300.

A second major design economy was accomplished by taking advantage of the latest PLD technology to drastically reduce the number of logic chips on the emulator board.  By using just three PLDs with very high integration, we were able to make the board much smaller than a high-end emulator board.  The LCE and the daughterboard together have a combined area of less than 50 square inches.  Without the PLDs, the emulator board alone could have been up to 225 square inches.  Taking this direction achieved a double economy: the smaller board costs less to make, and the PLDs are much cheaper than the logic circuitry they replace.

Another cost saving for the customer is that we provided two ways to connect the emulator to the target system.  One is a ribbon cable connection and the other is our high-end emulator probe. The choice is a tradeoff between cost and convenience.  The ribbon cable costs about $2, and the probe can cost up to $600.

To use the ribbon cable, one or two 50-pin headers must be wired into the target board. If the headers need to be removed for the final design, the PCB needs to be relayed out for the production design. For people who want to use our high-end emulator probe, we have put a 120-pin connector on the daughterboard. If they choose to use the probe, they buy a special socket and solder it onto their target system. They plug one end of the probe into the 120-pin connector, and the other end into the socket. The advantage of the probe is that the socket has the same footprint as the MCU, thereby saving the customer a new PCB layout.

On most development boards, a Monitor ROM (roughly the equivalent of the BIOS in a PC) resides on the board to control the emulator hardware. In the LCE, we replaced the Monitor ROM with low-cost RAM, and included the BIOS program in our debugger software. When the LCE is turned on, the BIOS program is downloaded into the RAM on the LCE.  This is a multiple economy because it also makes it easy for us to update our LCEs later – we need only to send our customers a replacement CD with the software upgrade. 

In some instances we were able to enhance performance without adding cost.  For example, low-cost development boards typically use a serial interface to connect the board to the PC. As a result, it takes a long time for the user to download their program to the development board’s RAM. Some high-end emulators require an interface board such as a PCMCIA that you plug into the PC.  For the LCE, we chose to use the PC’s parallel interface, which loads the program into the emulator eight times faster than an RS232, and costs less than putting a board into the computer.  Doing it this way increased the performance of the LCE/PC interface (at no increase in cost compared with using a serial interface), yet without the higher cost of a PCMCIA board.

And throw in a little bit of luck

Some of the economies we were able to make were simply by taking advantage of connections within the company or with partner companies.  For example, we make our own Evachips. We are able to get them at a low cost, which in turn lowers the cost of manufacturing the board.  A typical IC has between 10 to 100 pins. The Evachip is a sophisticated, expensive device with 250 pins, so it was a considerable advantage to be able to get these at a low cost.

Another advantage was that we were able to interact directly with NEC’s IC engineers who design the Evachips. They told us they already had an interface bus designed into the Evachips and the Realchip. So we were able to avoid the engineering costs connected with creating an interface between the two boards.

The idea of including a FLASH programmer on the board didn’t come up until we were in the final stages of the design. The engineers at Microsystem Synthesis Inc. were implementing the PLDs for us.  They told us that when they finished all the logic design, they had a few extra gates and some PCB real estate left. They thought they could provide for a FLASH programmer for just a few cents more. We just needed to be sure the power supply had enough current to operate the LCE and the flash programmer. We didn’t have to think twice before we said, “Hell, yes!”

What’s ahead?

The K0S LCE is ready now.  We are presently designing the LCE for the K0 family, and expect to start production Q1 2001.  We are also starting a design for the V850 family but due to the high-speed RISC architecture it will be priced at about $1000 – but that’s still much cheaper than the high-end emulator for this product family ($5000 to $10,000). The V850 LCE will be available mid-year 2001. 

To return to the page you came from, just close this window.