7
\$\begingroup\$

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)
\$\endgroup\$
  • 1
    \$\begingroup\$ Crucial: What duration of speech? / What speech quality is required ? / How many messages / What is an acceptable materials cost for new design? / What volume ? / What is your time scale? / [[[ Do you want me to do it for you / What is the job worth to you ? :-) ]]] - Look at This site for Nuvoton ISD Chipcorder products to see a range of products that may serve as a core BUT there are many ways to do this and some will probably be lower cost. \$\endgroup\$ – Russell McMahon Feb 15 '12 at 23:18
  • \$\begingroup\$ Also important: What is the product volume? Millions of units per year? Hundreds of thousands? thousands? just a few dozen units? The reason to ask is that NRE for setting up a new chip is likely to dominate the cost if your volume is not 100k or more per year. \$\endgroup\$ – The Photon Feb 16 '12 at 0:17
  • \$\begingroup\$ There's a thing that is not clear to me: you have the binaries of the software or you have to reverse-engineer also that? Because in that case is almost useless to replicate the board... \$\endgroup\$ – clabacchio Feb 16 '12 at 8:16
11
\$\begingroup\$

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.

\$\endgroup\$
13
\$\begingroup\$

Assuming that you guys are halfway decent engineers then starting from scratch will be the better approach. My reasoning for saying this is simple: Since you have experience with the previous product, and you're decent engineers, and new chips have come out since the previous product was designed, then you can probably make a better product now rather than just repeating what has been done before. Also, you can probably do it faster and cheaper than trying to reverse engineer a chip.

Reverse engineering a chip is not easy. It can be done, but unless you have a lot of extra time and some very expensive equipment (hundreds of thousands to a million US dollars) then it usually isn't worth it. This is doubly so if the new product does not have to be compatible with the old product (I.E., it doesn't adhere to some old protocol or something).

It is difficult to give you a comparative analysis of how hard it would be since we don't have all the facts about the old product. But let's assume that it's a simple toy with some buttons, a speaker, and some LED's. Nothing else. That's a fairly simple product. Doing a new product from scratch might cost 1/10th of what reverse engineering the old chip would cost. Most of that is labor, so in terms of time it might take 1/10th the time as well. The fact that the new product would be better (newer chips, better software, etc.) is just a bonus for you and your customers.

\$\endgroup\$
  • 6
    \$\begingroup\$ Also, reverse-engineering a chip is much, much harder than laying out a PCB. A simple PCB will only take a few days to layout. So it doesn't make sense to reverse-engineer a chip to save your PCB design. \$\endgroup\$ – markrages Feb 16 '12 at 0:52
11
\$\begingroup\$

The first solution should be to stockpile the discontinued IC before it completely dissapears. Contact the IC manufacturer directly and scour their distributors. There are also component brokers that specialize in discontinued parts. Buy everything you can find. Depending on the price of the chip an order of ten thousand might be worth a specialty run for the IC manufacturer.

Depending on your success, this may provide a stop gap to supply while you redesign the product, or you may purchase enough to see out the lifecycle.

As a warning to others, when possible set up email alerts for critical components in a design. When parts go from active to discontinued, it is time to go on a buying spree.

\$\endgroup\$
  • 1
    \$\begingroup\$ That is a great suggestion. I know that we have a small stockpile right now, but we should definitely look for more to basically buy us time!!! \$\endgroup\$ – milesmeow Feb 16 '12 at 7:54
3
\$\begingroup\$

Look at this site for Nuvoton ISD Chipcorder products to see a range of products that may serve as a core. These cover several technologies and methods, length of speech, quality and ease of programming.

BUT

There are many ways to do this and some will probably be lower cost.
Crucial questions include:

  • What duration of speech?
  • What speech quality is required ?
  • How many messages
  • What is an acceptable materials cost for new design?
  • What volume ?
  • What is your time scale?

[[[ Do you want me to do it for you / What is the job worth to you ? :-) ]]]

\$\endgroup\$
1
\$\begingroup\$

I guess telephone quality speech is sufficient? DS0 rate (http://en.wikipedia.org/wiki/DS0) is 64kbit/sec. For your 25 x 10 seconds 16Mbit = 2 Mbyte would be needed. DS0 decoding is almost trivial. A 16Mb SPI memory chip should be less than $1 (for instance SST25VF080B-80-4I-SAE at mouser). A simple microcontroller (PIC, AVR, Cortex) will cost about the same in your quantities. Use a cheap DA converter, or PWM directly from the microcontrller to the transistor driving the speaker. Sounds like a relatively simple project to me.

For some more enigneering effort do mpeg compression on your soundbites to fit in the 0.5 Mb commonly available on 32-bit microcontrollers. I am not sure this is worth the trouble.

To have the best of both worlds, start wit a PCB that has both a CortexM0 chip and the FLASH chip, and decide lateron to do the MPEG trick and leave the FLASH chip out.

\$\endgroup\$

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.