Emission Aware Programming
Encyclopedia
Emission-aware programming is a design philosophy aiming to reduce the amount of electromagnetic radiation
emitted by electronic devices
through proper design of the software executed by the device, rather than changing the hardware
.
Three basic actions for emission reduction can be defined:
In the following all components that can be influenced by the software design will be described.
configuration is used. Harmonic frequencies of the clock cause unwanted emissions.
The circuit internal to the MC in simplified form is a NAND gate followed by an inverter.
The external oscillator is not the only source of emissions. The system clock circuits consists of an internal RF divider followed by large amplifiers. These amplifiers drive long lines inside the components and might cause interferences.
The use of internal oscillators instead of external ones should be preferred. (An additional hardware measure is the use of spread spectrum oscillators.)
A software based solution is to temporary disable peripheral devices when not needed and thereby reduce unnecessary power consumption.
For the IRQ or reset pins (input pins) the termination is more important than for general I/O ports. If noise causes these two pins to mis-trigger it will have a negative effect on the circuit behavior. A high current consumption is often observed, particularly in CMOS devices, when the input pins are unconnected due to leakage current internal to the IC. Terminating high
impedance input pins can therefore lead to a reduction in supply current and hence reduces emission.
With most MC the internal pull-up resistors can be used to set unused pins to a defined voltage level.
Some microcontrollers offer current limiting
, a way of limiting the maximum current driven by the output port (e.g. Motorola MCS12).
Most software implemented improvements on emission can only be detected using an Average-Detector!
Electromagnetic radiation
Electromagnetic radiation is a form of energy that exhibits wave-like behavior as it travels through space...
emitted by electronic devices
Electronics
Electronics is the branch of science, engineering and technology that deals with electrical circuits involving active electrical components such as vacuum tubes, transistors, diodes and integrated circuits, and associated passive interconnection technologies...
through proper design of the software executed by the device, rather than changing the hardware
Hardware
Hardware is a general term for equipment such as keys, locks, hinges, latches, handles, wire, chains, plumbing supplies, tools, utensils, cutlery and machine parts. Household hardware is typically sold in hardware stores....
.
Emission Sources
Emission considerations require the evaluation of many details such as the clock frequencies and switching rates which are related to the oscillator. Rise/fall times and signal harmonics are related to the output driver. The data transfer rates can be dependent on hardware or can be controlled by software and often have to meet a certain protocol. Impedances, trace loading and the various circuit components are hardware related and must be considered from the beginning of the design.Three basic actions for emission reduction can be defined:
- Avoidance of unnecessary RF-noise.
- Only this action can be applied to software based emission control. Reduction of for instance the switching frequency or the number of switching circuits reduces the power consumption and therefore the emissions. For example this could be low voltage operation or the usage of power reduction modes.
- Keeping RF-energy insulated from antenna structures.
- RF-energy is not a problem if the structures dealing with it are too small for acting as effective antennas. A decoupling capacity keeps most of the RF-energy locally in a small loop between the device and the capacitor as shown in the figure.
- Transforming RF-energy into heat.
- Any impedance formed by coils, capacitors, resistors, ferrites etc. can be used for this purpose.
In the following all components that can be influenced by the software design will be described.
The Oscillator
Microcontrollers require a clock source for the switching of the internal transistors. Almost all controllers require an external crystal or ceramic resonator. Since the ceramic resonator is potentially sensitive to spikes which can shorten clock periods typically a Pierce oscillatorPierce oscillator
The Pierce oscillator is a type of electronic oscillator particularly well-suited for use in piezoelectric crystal oscillator circuits. Named for its inventor, George W. Pierce , the Pierce oscillator is a derivative of the Colpitts oscillator...
configuration is used. Harmonic frequencies of the clock cause unwanted emissions.
The circuit internal to the MC in simplified form is a NAND gate followed by an inverter.
The external oscillator is not the only source of emissions. The system clock circuits consists of an internal RF divider followed by large amplifiers. These amplifiers drive long lines inside the components and might cause interferences.
The use of internal oscillators instead of external ones should be preferred. (An additional hardware measure is the use of spread spectrum oscillators.)
The Power Supply
The field strength is proportional to the current as a consequence the power supply, providing the current for the entire system, is a strong source of emissions. Physically, a reduction of the power consumption of the system and the minimising of circuit loops (by the usage of decoupling capacities) emitting the noise, improves the EME performance.A software based solution is to temporary disable peripheral devices when not needed and thereby reduce unnecessary power consumption.
The I/O Pins
If an MC uses external memory space or peripheral devices continuous transitions on several data/address bus lines are implied. The emission depends on the frequency of the transitions, their quantity, rise/fall time and duration. The quantity of transitions, of port traffic can be influenced by the use of interrupts instead of continuous polling of ports. The use of interrupts is software based as well.For the IRQ or reset pins (input pins) the termination is more important than for general I/O ports. If noise causes these two pins to mis-trigger it will have a negative effect on the circuit behavior. A high current consumption is often observed, particularly in CMOS devices, when the input pins are unconnected due to leakage current internal to the IC. Terminating high
impedance input pins can therefore lead to a reduction in supply current and hence reduces emission.
With most MC the internal pull-up resistors can be used to set unused pins to a defined voltage level.
Ringing
- To achieve fastest possible transmission rates the fastest possible switching rates are applied. The faster the switching rate the more likely over- and undershooting (ringing) will occur. Ringing of the output signal is mainly caused by parasitic elements of the output structure e.g. the capacitive components like the parasitic capacities and the load capacitances as well as the parasitic inductances that are built by the bond wire and the lead frame.
- In four techniques to reduce ringing are described:
- Digital Control
- Increasing the On-Resistance
- Feedback Control
- Skewing of the Output Driver Switching
Ground Bounce
- Ground bounce is a voltage bounce caused by simultaneous switching of several outputs from one logic state to the other, for example from high to low. The voltage built up across the parasitic inductance of the IC ground return connection causes a transient voltage potential shift in the ground reference potential with respect to the system ground. Ground bounce is caused by CMOS crowbar current and the dynamic switching currents of capacitive loads.
Rise and Fall Time
One way of reducing the emissions of an MC System is to extend the rise and fall time (Slew Rate Control). Some controllers like the Motorola HCS08 offer the feature of software controlled slew rate output buffers enabling the user to extend the rise time from 3 ns to 30 ns for each pin separately.Some microcontrollers offer current limiting
Current limiting
Current limiting is the practice in electrical or electronic circuits of imposing an upper limit on the current that may be delivered to a load with the purpose of protecting the circuit generating or transmitting the current from harmful effects due to a short-circuit or similar problem in the load...
, a way of limiting the maximum current driven by the output port (e.g. Motorola MCS12).
Emission Control: Power Saving
The most effective way of reducing emissions is to temporary shut down unused modules in the MC, thereby saving power. Most controller support several sleep modes.Conclusion
In order to reduce electromagnetic emissions on software basis the following measures should be considered:- Oscillator (kind and frequency)
- Power (Saving Modes, low voltage operation and supply)
- I/O Port switching frequency and power (if possible: Slew Rate control and skewing)
Most software implemented improvements on emission can only be detected using an Average-Detector!
See also
- EMC Aware ProgrammingEMC Aware ProgrammingElectromagnetic compatibility –aware programming involves writing software which is resilient to errors induced by electromagnetic fields.-Motivation:...
- Immunity Aware ProgrammingImmunity Aware ProgrammingWhen writing firmware for an embedded system, immunity-aware programming refers to programming techniques which improve the tolerance of transient errors in the program counter or other modules of a program that would otherwise lead to failure...
- Electromagnetic compatibilityElectromagnetic compatibilityElectromagnetic compatibility is the branch of electrical sciences which studies the unintentional generation, propagation and reception of electromagnetic energy with reference to the unwanted effects that such energy may induce...
- List of EMC standards
- low-powerLow-powerIn electronics, the term low-power may mean:* Low-power broadcasting, that the power of the broadcast is less, i.e. the radio waves are not intended to travel as far as from typical transmitters....