Download - Embedded system hardware architecture ii
EMBEDDED SYSTEM HARDWARE ARCHITECTURE II
MODULE IV
GRACE ABRAHAM
2
ELECTROSTATIC DISCHARGE EFFECTS• ESD is an important design consideration in embedded
applications because of the potential for failure & erroneous operation in the presence of external electric fields
• ESD voltages are commonly impressed on embedded interfaces-on the order of 10’s of 1000’s of volt
• This issue is in the keyboard or user i/p device
• This effect can damage or may cause latent failures
• Shielding & grounding techniques to minimize this effect
• Several useful resources like publications, seminars, test labs and consultants who specialize in solving EDC problems
3
• FAULT TOLERANCE Fault tolerance has become a requirement in embedded system
Many hardware & software solutions have been developed
Each fault is categorized as “hard” or “soft” fault
Hard faults cause an error that does not go away
Soft faults are due to transient events or program errors Self test and diagnostic programs may be able to identify & diagnose the failure if it is not severe Depending on type of fault that occurs and which devices are effected, it is possible to design a system to detect the fault
o Eg. Pushing reset or powering down does not result in recovery from fault
4
In the event of a soft failure, it is possible for designers to make the system recover from fault automatically
A BIST program can be used to detect faults in following devices
The data contents of ROM devices can be tested for errors using following techniques
o Processoro Memoryo ROMo RAMo E/EEPROMo Peripheral devices
o Parityo Checksumo Cyclic redundancy check (CRC)
5
o Hardware error detection and correctiono Data/address pattern testso Data structure integrity by checking stack limits and address range validity
RAM memories & the integrity of information stored in RAM by processor can be tested for proper operation using following techniques
The integrity of the program and proper execution sequence by the CPU can be checked using following techniques
o Hardware parity error detectiono Duplicate, redundant hardware and cross checking or votingo “Watch dog” timer that operates the CPU chip’s reset line o Diagnostics that run constantly, when CPU has nothing else to do
6
HARDWARE DEVELOPMENT TOOLS• Two general classes of hardware development tools are
• Passive analysis tools allow looking at the operation of the system
• Active tools allow the designer to intrude on the operation of the system while it’s running
• System under test – “target” system
• Computer that is used to develop, edit, compile, assemble, and download the code to target system – “Host” system
Passive tools Active tools
7• Passive tools include :
• Active tools include :
Logic probes to look at static logical level and detect pulses
Oscilloscopes to look at single waveform
Logic analyzers, with processor specific probes
Software to assist hardware development, scope loops
In-circuit emulators (ICE) for HW/SW integration are plugged to target system in the place of CPU, allowing designer to see inside the microcontroller, download & execute the programs selectively
ROM emulators(ROM ICE) allow designer to reduce the time to edit, compile, debug programs by replacing program EPROM with a RAM that can be loaded quickly from host computer
8
• INSTRUMENTATION ISSUES One of the most significant problem is the proper selection and use of test instrumentation Improper selection and application of tools is the source of wasted time & confusion for the designer Two common usage problems relate to the use of oscilloscope logic analyzer probes
2 common causes for measurement problems
Problems causes a potential for erroneous measurements
2 things are done two mitigate these problems :
o Excessive ground lead inductanceso Excessive capacitive loading
9
1) Use the shortest possible test leads2) Use high-impedance probes, especially designed for high-speed
applications
10
SOFTWARE DEVELOPMENT TOOLS• 3 categories of software development tools
• Most of available tools are available as freeware, shareware, or low-cost commercial products
• Translators include :
Language translators Debuggers Utility programs that generally run on the host computers
Assembler Compiler Linker Interpreter
11
• Debuggers include :
• Utilities include :
Software /firmware monitors Processors In circuit Emulator (ICE) ROM ICE
PROM Programming Performance measurement Execution frequency histogram
12
OTHER SPECIALIZED DESIGN CONSIDERATIONS
• Thermal characteristics of a system
• Concept of thermal resistance
• Power dissipation
• Effects on device temperature & reliability
• Battery power storage
13
• THERMAL ANALYSIS AND DESIGN Reliability of devices are closely related to temperature Device’s reliability drops exponentially with increasing temperature To calculate operating temperature, consider an electrical analogy
Temperature rise(°C)=power(watts) * thermal resistance(°C/watt) For eg : Given a 5V linear voltage regulator with a 9V i/p providing 1A of load current, the regulator will dissipate : P = V * I = (9-5 volts) * 1 amp = 4 watts Total thermal resistance between the semiconductor junction and ambient air
o Temperature is analogous to voltageo Power dissipated is equivalent to currento Thermal resistance is equivalent to electrical resistance
14
ϴja = ϴjc + ϴca = 1 + 10 = 11°C/watt
Temperature rise of the junction above that of air surrounding the regulator is given by:
T = P * ϴja = 4 watts * 11°C/watt = 44°C above ambient
The designer must reduce the input voltage to reduce the thermal resistance by forced air flow
15
• BATTERY – POWERED SYSTEM DESIGN CONSIDERATIONS
Rapid increase in use of portable, battery-operated electronic devices Batteries are divided into 2 common groups :
Primary cells include :
Secondary cells include :
o Primary (one- time discharge & discard)o Secondary (rechargeable)
o Lead-acid cell (older)o Nickel-cadmium (NiCd) cell (older)o Nickel metal hydride (NiMH) (newer)o Rechargeable alkaline and lithium ion cell (newer)
o Non-rechargeable alkaline and lithium cells
16
A wide range of special – purpose batteries that are optimized for some specific characteristics
Primary batteries : alkalines and lithium coin cells
Secondary cells :
o Zinc-air primary cello Uses atmospheric air as an “electrode” to provide very high energy density at low operating current
o Simple to useo Limited to 1 to 3 years of operationo Shelf-time limit imposed by internal leakage current that discharges the battery slowly over time, especially at high temperatures
o Rechargeable battery types each have slightly differing charge/discharge requirementso Special algorithms to optimize the performance & service life of batteries
17
Embedded devices must be designed to operate long periods of time
There are CMOS processors & memories which have been designed with very low power consumption operating modes frequently referred to as “sleep”, ‘’power down”, or “idle” modes
18
PROCESSOR PERFORMANCE METRICS
• To compare different processor performance we have performance metrics such as
IPS (instructions per second) OPS (operations per second) FLOPS(floating – point OPS) Benchmarks
19
• IPS (Instructions per second) Rate at which the fastest instruction executes on a machine MIPS (millions of IPS) BIPS (billions of IPS)
• OPS (Operations per second) OPS (MOPS & BOPS) are instruction execution times based on a
mix of different instructions
FLOPS (mega FLOPS, giga FLOPS) are similar expect that they
weight floating – point instructions heavily to represent heavy
computational applications such as computational simulations
20
Problem with OPS metric is that the resulting number is heavily dependent on the instruction mix that is used to compute it, which may not accurately represent intended application instruction execution frequency
• BENCHMARKS Benchmarks are short, self contained programs that perform a critical part of an application Used to compare functionally equivalent code on different machines Programs are run for some number of iterations, and the time is measured and compared with that of other CPU Problem : Benchmark is not only the measure of the processor but also of programmer & tools used to implement the program
21
THANK YOU