Electronic – How to make a design more independent of a particular silicon vendor

microcontrollermicroprocessoropen sourceopen-hardware

In many hardware projects it would be nice to have the freedom to switch between vendors easily, mainly microprocessors and microcontrollers.

I can see many reasons for wanting to have this freedom, one of them being the ability to easily switch to a cheaper company if one company decided to jack their prices up. Another situation is when a designer decides to change the project in a direction that the old microcontroller just can't handle, I can see this happening within a company that is trying to reuse hardware modules.

Is there any way of designing hardware to be modular enough to easily switch out these core components? What are the issues with designing this way?

Best Answer

There is no formal or 'only right' answer to this, but sensible guidelines can be suggested. These are essentially the same as a designer would seek to comply with if developing a product intended to have a long lifetime, international multi country manufacture and a desire for no design changes.

I've gone beyond just silicon as if you want to make your product buildable anywhere on earth & long term there are more issues than just the silicon.

In all of this a good working crystal ball and perfect 20-20 hindsight helps.

There is some redundancy and even contradiction here. The aim are guidelines which are each considered on their merits rather that a set of hard and fast rules. For example - the first two suggestions have purposefully been chosen to somewhat contradict each other as an example. These are all "out of my head" and on the fly - if I think of more I'll add them. Criticism welcome via comment system.

  • Use only multiple vendor sourced parts.

    This would tend to eliminate anything from eg Maxim who make superb products but who are frequently the sole source. They are also far from reliable in supply to other than larger customers.

  • If using single sourced parts choose only vendors who have a solid history of maintaining old parts in stock for decades and/or who provide 100% backwards compatability between newer and legacy parts. Applies more to eg microcontrollers than AND gates.

    A supplier who does very well at this is Microchip. You can (probably) still buy 16C16's.

    A supplier who does badly at this is Atmel. This does not make them bad per se - just bad for this purpose. Old parts are taken out of production quite rapidly. Backwards compatability is not apparently a priority.

  • Consider avoiding parts which are or are likely to be restricted in availability by regulations. A notable example is USA's ITAR which effectively classifies various components as if they were munitions and regulates or prevents their export from the US. I am informed that some manufacturers of certain niche products (eg European satellite systems) make every effort to avoid componentry which is or may be ITAR entangled. If a consistent internationally produced product is required then this may involve using parts from eg European sources in the US.

  • Use parts which have potentially long lifetime families and which are part of formal or informal standards. eg the ARM processors offer a generic processor base which would allow a subset of parts to be chosen which have a good chance of being widely available and for a significant period,

  • Choose logic families which are liable to remain mainstream or to be likely to offer backwards compatible families.

  • For systems where it is not utterly essential that they be leading edge, highest performance, highest density, ... do not make them so. Today's leading edge gee whizz system can be tomorrow's bad idea. Cooling, reliability, longevity, quality, ... are not necessarily comfortable companions of the latest and greatest. But, they may be. Choose sensibly.

  • Use industry standards where applicable.

  • The following is more about longevity than long term buildability, but ...:

    Do due diligence diligently.

    Use reputable manufacturers who know their stuff, produce quality product invariably, provide good data sheets with accurate and detailed information.

    Identify component groups that have longevity issues and design accordingly. eg wet electrolytic aluminum caps.

    If you don't use Panasonics caps know why not.

    If you don't use LEDs made by or licensed via the 6 or so major makers know that you've got it wrong.

    Don't use tantalum capacitors (yes, I know).

    Be aware of potential issues of technologies. eg LiIon vent with flame and calendar life. Beryllium ceramics die in pain. Tin whiskering.

    When designing, understand maximum versus typical ratings (or minimum versus typical) - and realise that what usually works is not guaranteed to always work. Understand absolute max versus recommended max operating - and realise that what is guaranteed to survive is not guaranteed to operate. Design for manufacturers worst case specs. And then some.

    Never allow protection diodes to conduct more than a few microamps (if that) under normal operating conditions. Realise that allowing protection diodes to conduct may produce no observed bad results ever - but may cause heartache and problems beyond imagining just as easily.

    Buy batteries of any technology only from manufacturers and vendors whose capabilities, integrity and bona-fides are known beyond question. Test them anyway.

    Understand what aspects of electrostatic protection are marketing hype and which are necessary. Know that unprotected LEDs care more than almost anything.

    Understand solder.