What is Component Selection?

Component selection is a process of selecting devices for the board design based on the various requirements like functional, electrical, mechanical, thermal, etc. Selection of a wrong component can create major problems in the functionality of the board. Hence, component selection is a very important aspect in the board design cycle. Component selection is a critical step, which will have lot of impact on rest of the project from the point of view of meeting functionality, performance, testing, manufacturing, confirming to standards and also to the schedule. In a typical product design cycle, component selection is required in the 3 following phases:

  • Before a new design – new component selection
  • Component obsolescence – replacement with an updated version or ROHS versions
  • Performance or feature enhancement – replacement with enhanced features

Criteria for Component Selection in New Design

Functional requirement

  • Logical functionality (Eg.: If we need USB2.0, you should not select USB1.1 controller)
  • Timing: Checking of timing related parameters like frequency, setup/hold time margin
  • Performance: This is mostly applicable for complex devices like CPU, FPGA, DSP, etc. (Eg.: In case of CPU, we need to consider MIPS requirement and this is a performance related requirement.)
  • Standards Compliance: If the product has to meet some specific standards, some or all of the components in the board might have to comply to that standard. For example, if the product is being released in European market after July 1, 2006, then it has to meet the ROHS standard. In that case, all components on the board has to meet the ROHS standard.
  • Future Roadmap: We need also consider the future roadmap of the product while selecting a component. For example, the current product might have 128MB SDRAM whereas in future it might need 256MB SDRAM. In that case, we need to select a memory which is available in the next higher density with the same footprint.

Electrical Requirement

  • Operating voltages and tolerances: For example, we should not select a 5V component in a 3.3V circuit. (i.e., where all other components are 3.3V)
  • Maximum power dissipation: We need to keep in mind the total power dissipation of the board while selecting each of the major components. For example, if whole board is having a requirement of 10W max power dissipation, we cannot select a processor which dissipates 5W power since CPU itself would have consumed 50% of power! A suitable selection of CPU in this case would be a CPU which does not dissipate more than 2W power
  • I/O Interface: we need to check the logic levels and fanout (both current loading and capacitive loading) of the I/O interface. Logic levels should be such that we get enough noise margin. For TTL logic family we mostly consider the current drive (sourcing and sinking) capability as the fanout whereas for CMOS devices, we use the capacitive loading to calculate fanout since the input current requirement is negligible in case of CMOS.
  • Special Requirements: For example, Vcc_Core should come up at least 10ms before Vcc_IO in an FPGA. This type of requirement has to be taken care during selection of power supply components so that tbe regulator circuit provides the required power sequencing.

Mechanical Requirement

  • Height of the component (including heat sink etc.)
  • Suitable package/footprint: Warning!! Some times packages with same name have different varieties – for example, there are different types of SOIC packages – narrow SOIC, wide SOIC, so we need to check the pitch and width also while ordering the component – not just the name of the package in the datasheet.
  • Area of the component
  • Footprint compatibility for future upgrades: we also need to check whether the next higher capacity or higher performance version of the same device is available with the same footprint so that we can upgrade the capacity in future without changing the PCB layout. This is more relevant to memory.

Thermal Requirement

  • We should select a component which supports an ambient temperature range as per the temperature grade required for the whole product.
    • Commercial – 0 to 70
    • Industrial – -40 to 85 (sometimes -25 to 85)
    • Military – -55 to 125
  • If the datasheet does not mention about the maximum operating ambient temperature, we can calculate the junction temperature of the device and compare with the maximum allowed junction temperature.
  • Requirement of heat sink can be calculated using “Theta-JA = TJ – TA divided by Pd”. Where Theta-JA is junction to ambience thermal resistance, TJ is junction temperature , TA is ambient temperature, Pd is total power dissipation of the device

Compliance Requirements

  • Regulations: for example, telecom regulations
  • ESD protection

Manufacturing Considerations

  • Manufacturability: take care of fine pitch packages – it is difficult to solder
  • Multiple vendors with same package
  • Preferred vendors
  • Reduction of components (resistors into resistor pack etc.)
  • Reduction in variety of components: too many types of components results in large inventory and difficulty in maintenance
  • SMT are preferred

Testability Considerations

  • JTAG support
  • In-System Programmability (ISP) support for programmable devices
  • In-built debug capabilities: some devices have built in self test logic inside to check the device functionality automatically during boot up.
  • Sockets for important components: Sockets have both advantages and disadvantages. It produces inductance of the interconnection between the IC and the board. Try to avoid sockets as much as possible.
  • Emulator facility

Reliability Requirement

  • MTBF: normally expressed in yrs or hrs.
  • Any known issues with the component
  • Previous experience of the component in other projects

Engineering Aspects

  • Life of component Vs product life
  • Cost
  • Lead time for procurement
  • Errata of components
  • Qualifications performed by vendor or evolution boards ect.
  • Component sample availability
  • Engineering support from vendor

DFE Considerations

  • ROHS/WEEE compliance: ROHS restricts the usage of Lead (Pb), Mercury (C), Cadmium (Cd), Chromium-6, PBB, PDE
  • Low voltage operation: Operating at lower voltage would result in lower power dissipation. Hence, this is environmental friendly. CPUs may have sleep mode to reduce power consumption.

Software Considerations

  • Availability of ported OS
  • Availability of software drivers

Criteria for Component Selection during Obsolescence

  • All factors used for new component selection
  • As far as possible maintain same foot print so that layout change can be avoided.
  • As far as possible, no or minimal software impact
  • Testing and Qualification: Minimize there-tests and re-qualifications required.

Criteria for Component Selection during Feature Enhancement

  • All factors used for new component selection
  • As far as possible maintain same foot print so that layout change can be avoided.
  • Software compatibility: we should keep in mind that the same software used earlier should work in the re-designed board without any change or with minimal change. This is because, if there is any significant change in software, then we need to test all interfaces once again and that would result in a significant increase of re-design effort and cost.