Electronic – Reverse engineer a chip or go with a new one and start from scratch

costreverse-engineering

I'm working on an existing toy product and the chip has been discontinued. We still want to produce more of this product. You press a combination of buttons and it talks to you.

What would be a more cost effective approach?

  • Reverse engineer a chip (a possiblity based on this post: Is it possible to reverse engineer a chip design? ) and retrieve the program off of it (is this possible?). Make a new chip based on what we find.
  • Start from scratch and see if there are any chips that are compatible (pin assignments, features, package or die) with our existing chip. This way we can still keep the existing PCB design).
  • Start from scratch and use a totally different chip, which would mean PCB redesign, chip programming, etc.

Can anyone give me an order of magnitude comparison between these options?

More Details
We're talking about:

  • thousands maybe tens of thousands units a year
  • 25 x 10 second audio tracks (mono)

Best Answer

Look at it this way: No matter which path you choose, you are reverse-engineering the old design. Before you can build a new chip, select a new off-the-shelf chip, or design a new PCA, you will first have to determine what are all the behaviors, features, and characteristics of the old design that need to be reproduced in the new design.

You'll need to prepare a detailed specification of what the new design must do to reproduce the behavior of the old design. Detailed down to the "bug-compatibility" layer. If a user pushes two unrelated buttons at once, do you need to reproduce the old behavior (maybe the old design crashes when this happens)? If the batteries are put in backwards, do you need to reproduce the old behavior? If the voice recording includes normally non-audible frequencies, do you need to reproduce the old behavior?

Once you have a thorough and detailed spec for what you want to build, then you'll be in a much better place to decide what's the best path to build it.

If you do decide to re-use some of the old design I can only offer a couple of ideas:

  • If you want to reproduce a chip, be prepared for sticker shock. My understanding is that for the absolute lowest-cost type of custom chip (structured ASIC) NRE charges start at US$100k. If you aren't saving something in the range of 6 engineer-months (or gaining some behavior that's absolutely not reproducible any other way) by going this route, its probably not viable.

  • Given the high NRE for a custom chip, at your volumes an FPGA or CPLD solution could be cost-competitive (at much lower risk) with a new chip design. But a new microcontroller design will likely have much lower materials cost than either one.

  • If you want to find a form-fit replacement for the old chip to mount on the existing PCB, consider the idea of a daughter card with pins or pads that mount on the old footprint. On this daughter card you could include more than one part, a new part in a different package, or a new part with its pins re-routed to match the old footprint.