This document discusses embedded systems design. It begins with an overview of embedded systems and their components. It then covers the embedded systems design process, including requirements analysis, specifications, architecture design, and integration. Design methodologies like top-down, bottom-up, and structured approaches are introduced. Challenges in embedded design such as meeting deadlines and minimizing power consumption are also addressed.
This document discusses embedded systems and provides an overview of the embedded system design process. It defines embedded systems and gives examples. Key steps in the design process are discussed such as defining requirements, creating specifications, designing the architecture, and integrating system components. Challenges in embedded system design such as meeting deadlines, minimizing power consumption, and testing are also covered.
The document describes the syllabus for the course EC8791 - Embedded and Real Time Systems. The objectives of the course are to understand embedded system design concepts, learn ARM processor architecture and programming, understand basic embedded programming concepts, and learn about real-time operating systems. The course covers topics such as introduction to embedded computing and ARM processors, embedded system design process, real-time operating systems, and performance analysis of embedded systems. It also discusses formalisms for embedded system design such as the Unified Modeling Language.
The document discusses the introduction, design process, and formalisms for embedded system design. It begins by defining embedded systems and their components. It then describes the embedded system design process which involves requirements analysis, specification, architecture design, component design, integration, and testing. Finally, it introduces the Unified Modeling Language (UML) as a formalism to describe the structural and behavioral aspects of embedded system design using objects, classes, and their interactions.
This document provides an overview of electronic control units (ECUs) in automobiles. It describes what an ECU is, its basic hardware components including a microprocessor and sensors, and how it operates using closed-loop control to monitor sensor outputs and control engine inputs. The document also discusses the AUTOSAR architecture for standardized ECU software, and some applications of ECUs like engine mapping and anti-lock braking systems. It notes challenges in designing robust ECUs that can withstand vehicle vibrations and temperature variations.
An embedded system is a combination of computer hardware and software designed to perform a specific function. It has three main components - hardware, application software, and an optional real-time operating system. Embedded systems are used in devices like fire alarms, cruise control systems, and digital cameras where they perform specialized tasks in real-time. Common characteristics include being single-purpose, constrained by tight design requirements like size and power consumption, and reactive to changes in their environment.
This document provides an overview of embedded systems presented in a seminar by a student. It defines an embedded system as a specialized computer system that is part of a larger machine. Embedded systems are used in appliances, vehicles, and other devices. Typical hardware includes microprocessors, microcontrollers, memory, and I/O ports. Popular embedded operating systems are also discussed. Examples of where embedded systems are used everyday are provided. The 8051 microcontroller architecture is then explained in detail.
1. The document discusses the unit ITEL01 - Embedded Systems which covers introduction to embedded computing, instruction sets, textbooks and reference books.
2. It defines what an embedded system is, discusses the hardware and software components, and classification of microprocessors.
3. The challenges in embedded system design process are also summarized which includes meeting specifications within constraints of cost, power and size.
Embedded systems can be categorized based on complexity, cost, purpose, available tools and environment. The main categories are stand-alone embedded systems, real-time embedded systems, networked information appliances, and mobile devices. Stand-alone systems take inputs, process them, and produce outputs without connecting to other systems. Real-time systems must perform tasks within strict time deadlines. Networked information appliances are connected to networks like the Internet and can communicate with other nodes. Mobile devices are portable embedded systems.
This document discusses embedded systems and provides an overview of the embedded system design process. It defines embedded systems and gives examples. Key steps in the design process are discussed such as defining requirements, creating specifications, designing the architecture, and integrating system components. Challenges in embedded system design such as meeting deadlines, minimizing power consumption, and testing are also covered.
The document describes the syllabus for the course EC8791 - Embedded and Real Time Systems. The objectives of the course are to understand embedded system design concepts, learn ARM processor architecture and programming, understand basic embedded programming concepts, and learn about real-time operating systems. The course covers topics such as introduction to embedded computing and ARM processors, embedded system design process, real-time operating systems, and performance analysis of embedded systems. It also discusses formalisms for embedded system design such as the Unified Modeling Language.
The document discusses the introduction, design process, and formalisms for embedded system design. It begins by defining embedded systems and their components. It then describes the embedded system design process which involves requirements analysis, specification, architecture design, component design, integration, and testing. Finally, it introduces the Unified Modeling Language (UML) as a formalism to describe the structural and behavioral aspects of embedded system design using objects, classes, and their interactions.
This document provides an overview of electronic control units (ECUs) in automobiles. It describes what an ECU is, its basic hardware components including a microprocessor and sensors, and how it operates using closed-loop control to monitor sensor outputs and control engine inputs. The document also discusses the AUTOSAR architecture for standardized ECU software, and some applications of ECUs like engine mapping and anti-lock braking systems. It notes challenges in designing robust ECUs that can withstand vehicle vibrations and temperature variations.
An embedded system is a combination of computer hardware and software designed to perform a specific function. It has three main components - hardware, application software, and an optional real-time operating system. Embedded systems are used in devices like fire alarms, cruise control systems, and digital cameras where they perform specialized tasks in real-time. Common characteristics include being single-purpose, constrained by tight design requirements like size and power consumption, and reactive to changes in their environment.
This document provides an overview of embedded systems presented in a seminar by a student. It defines an embedded system as a specialized computer system that is part of a larger machine. Embedded systems are used in appliances, vehicles, and other devices. Typical hardware includes microprocessors, microcontrollers, memory, and I/O ports. Popular embedded operating systems are also discussed. Examples of where embedded systems are used everyday are provided. The 8051 microcontroller architecture is then explained in detail.
1. The document discusses the unit ITEL01 - Embedded Systems which covers introduction to embedded computing, instruction sets, textbooks and reference books.
2. It defines what an embedded system is, discusses the hardware and software components, and classification of microprocessors.
3. The challenges in embedded system design process are also summarized which includes meeting specifications within constraints of cost, power and size.
Embedded systems can be categorized based on complexity, cost, purpose, available tools and environment. The main categories are stand-alone embedded systems, real-time embedded systems, networked information appliances, and mobile devices. Stand-alone systems take inputs, process them, and produce outputs without connecting to other systems. Real-time systems must perform tasks within strict time deadlines. Networked information appliances are connected to networks like the Internet and can communicate with other nodes. Mobile devices are portable embedded systems.
1. The document discusses the unit ITEL01 - Embedded Systems which covers introduction to embedded computing, instruction sets, textbooks and reference books.
2. It defines what an embedded system is, discusses the hardware and software components, and classification of microprocessors.
3. The document covers advantages of programmable CPUs, functionality of embedded systems, challenges in design, performance aspects, and formalisms for system design including UML.
1. The document discusses embedded system design and embedded computing. It covers topics like components of embedded systems, real-time operating systems, challenges in embedded system design, and performance analysis.
2. It provides examples of embedded applications like ABS and stability control systems in cars that use microprocessors. Complex algorithms, user interfaces, real-time deadlines, and multirate behavior are characteristics of embedded computing applications.
3. Choosing hardware, meeting deadlines, minimizing power consumption, and designing for upgradability are some of the challenges in embedded system design discussed in the document. The CPU, platform, program, tasks, and multiprocessor impact performance in embedded computing systems.
Final Year Projects, Final Year Projects in Chennai, Software Projects, Embedded Projects, Microcontrollers Projects, DSP Projects, VLSI Projects, Matlab Projects, Java Projects, .NET Projects, IEEE Projects, IEEE 2009 Projects, IEEE 2009 Projects, Software, IEEE 2009 Projects, Embedded, Software IEEE 2009 Projects, Embedded IEEE 2009 Projects, Final Year Project Titles, Final Year Project Reports, Final Year Project Review, Robotics Projects, Mechanical Projects, Electrical Projects, Power Electronics Projects, Power System Projects, Model Projects, Java Projects, J2EE Projects, Engineering Projects, Student Projects, Engineering College Projects, MCA Projects, BE Projects, BTech Projects, ME Projects, MTech Projects, Wireless Networks Projects, Network Security Projects, Networking Projects, final year projects, ieee projects, student projects, college projects, ieee projects in chennai, java projects, software ieee projects, embedded ieee projects, "ieee2009projects", "final year projects", "ieee projects", "Engineering Projects", "Final Year Projects in Chennai", "Final year Projects at Chennai"
An embedded system is a combination of computer hardware and software designed for a specific function within a larger mechanical or electrical system. Embedded systems use microcontrollers or microprocessors and include additional components like timers, interrupt controllers, and I/O devices. They are used in devices ranging from small portable devices like MP3 players to large stationary installations like traffic lights or nuclear power plants. Embedded systems are designed to perform predefined tasks with specific hardware and software configurations.
An embedded system is a combination of computer hardware and software designed for a specific function within a larger mechanical or electrical system. Embedded systems use microcontrollers or microprocessors and are commonly found in devices like digital watches, DVD players, traffic lights, and industrial controllers. They range in complexity from low-cost systems with a single microcontroller chip to sophisticated cyber-physical systems with multiple units and networks.
It is a presentation for the Embedded System Basics. It will be very useful for the engineering students who need to know the basics of Embedded System.
This document provides an overview of embedded systems topics including:
1. It outlines an agenda to cover embedded system basics, processors and architectures, serial communication, real-time operating systems, and embedded programming demos.
2. It defines embedded systems as systems with dedicated software embedded in hardware to perform specific tasks as part of a larger system.
3. It discusses different processor types including microprocessors, microcontrollers, digital signal processors, and application specific integrated processors.
All the concepts of 8051 Micro controller have been explained in detail. Also some information on Embedded Systems. The Presentation deals with Processors & Microcontrollers from first generation to the present generation. This presentation an invaluable compendium of knowledge to the individuals trying to explore the field of electronics. Moreover, a complete coverage for Mumbai University students have been made available.
This document summarizes a report submitted by Amiyodyuti ganguly for their 5th semester diploma in electronics and communication from Dayananda Sagar Institute of Technology in Bangalore. The report discusses the history and development of microprocessors from early specialized designs like the CADC from 1968 used in aircraft, to early general purpose microprocessors like the Intel 4004 introduced in 1971. It covers the evolution of microprocessor designs from 4-bit to 8-bit to 16-bit and beyond, as well as the integration of additional components like floating point units and cache memory.
The document provides an overview of microcontrollers and embedded systems. It defines an embedded system and describes their characteristics such as real-time operation, small size, low power usage, and operation in harsh environments. It discusses the hardware components of typical embedded systems including microcontrollers. It then focuses on the 8051 microcontroller, describing its architecture and pin layout.
The document discusses embedded systems and microcontrollers. It defines an embedded system as a combination of computer hardware and software designed for a specific application. Microcontrollers are similar to microprocessors but have memory and I/O integrated on a single chip, making them well-suited for embedded applications that require low cost, low power consumption, and small size. The 8051 microcontroller is commonly used in embedded systems due to its low price and availability of development tools. Programming techniques for microcontrollers include assembly language and high-level languages like C.
An embedded system is a combination of the computer hardware and software accomplished with additional mechanical or other parts designed to perform a specific function.
Embedded software is an almost every electronic device in the use today. There is a software hidden away inside our watches, VCR's, cellular phones.A well-designed embedded system conceals the existence of the processor and the software .
http://www.edgefxkits.com/
Visit our page to get more ideas on embedded system by professionals.
Edgefx provides free verified embedded system kits around the world with abstracts, circuit diagrams, and free electronic software. We provide guidance manual for Do It Yourself Kits (DIY) with the modules at best price along with free shipping.
The document discusses key aspects of embedded system design. It describes embedded systems as single-functioned, tightly-constrained, and reactive in real-time. An example of a digital camera is provided. Key design challenges involve optimizing metrics like cost, size, performance and power. The document outlines three key embedded system technologies: processor technology including general-purpose, single-purpose and application-specific processors; integrated circuit technologies like full-custom ASICs, semi-custom ASICs and programmable logic devices; and design technologies.
We are the Best Embedded Systems Training Institute in Hyderabad, Want to learn Advanced Courses like Vector Embedded Systems, DSP and VLSI Embedded Systems. Register now for new batches Call Us-040 -23754144,+91- 9640648777
Design of a low power processor for Embedded system applicationsROHIT89352
The document describes the design of a low power processor for embedded systems. It uses clock gating techniques and a standby mode to reduce power consumption. The processor is designed based on a modified MIPS microarchitecture and can operate using the RV32E instruction set. It has been implemented at the register transfer level in Verilog and synthesized into an 180nm CMOS technology. The processor consumes 189uA in normal mode and 11.1uA in standby mode, achieving low power operation.
Project report on embedded system using 8051 microcontrollerVandna Sambyal
The document describes a home security prototype project that was developed using an 8051 microcontroller to control various devices like LEDs, DC motors, relays and sensors. It provides details on the circuit diagram and working of the home security system, which uses components like a microcontroller, motion sensor, door sensor and siren to detect intrusion and alert users. The document also includes information on microcontrollers, their architecture, programming and how to interface them with external devices.
Embedded machine learning-based road conditions and driving behavior monitoringIJECEIAES
Car accident rates have increased in recent years, resulting in losses in human lives, properties, and other financial costs. An embedded machine learning-based system is developed to address this critical issue. The system can monitor road conditions, detect driving patterns, and identify aggressive driving behaviors. The system is based on neural networks trained on a comprehensive dataset of driving events, driving styles, and road conditions. The system effectively detects potential risks and helps mitigate the frequency and impact of accidents. The primary goal is to ensure the safety of drivers and vehicles. Collecting data involved gathering information on three key road events: normal street and normal drive, speed bumps, circular yellow speed bumps, and three aggressive driving actions: sudden start, sudden stop, and sudden entry. The gathered data is processed and analyzed using a machine learning system designed for limited power and memory devices. The developed system resulted in 91.9% accuracy, 93.6% precision, and 92% recall. The achieved inference time on an Arduino Nano 33 BLE Sense with a 32-bit CPU running at 64 MHz is 34 ms and requires 2.6 kB peak RAM and 139.9 kB program flash memory, making it suitable for resource-constrained embedded systems.
More Related Content
Similar to EC8791 EMBEDDED AND REALTIME SYSTEMS.pptx
1. The document discusses the unit ITEL01 - Embedded Systems which covers introduction to embedded computing, instruction sets, textbooks and reference books.
2. It defines what an embedded system is, discusses the hardware and software components, and classification of microprocessors.
3. The document covers advantages of programmable CPUs, functionality of embedded systems, challenges in design, performance aspects, and formalisms for system design including UML.
1. The document discusses embedded system design and embedded computing. It covers topics like components of embedded systems, real-time operating systems, challenges in embedded system design, and performance analysis.
2. It provides examples of embedded applications like ABS and stability control systems in cars that use microprocessors. Complex algorithms, user interfaces, real-time deadlines, and multirate behavior are characteristics of embedded computing applications.
3. Choosing hardware, meeting deadlines, minimizing power consumption, and designing for upgradability are some of the challenges in embedded system design discussed in the document. The CPU, platform, program, tasks, and multiprocessor impact performance in embedded computing systems.
Final Year Projects, Final Year Projects in Chennai, Software Projects, Embedded Projects, Microcontrollers Projects, DSP Projects, VLSI Projects, Matlab Projects, Java Projects, .NET Projects, IEEE Projects, IEEE 2009 Projects, IEEE 2009 Projects, Software, IEEE 2009 Projects, Embedded, Software IEEE 2009 Projects, Embedded IEEE 2009 Projects, Final Year Project Titles, Final Year Project Reports, Final Year Project Review, Robotics Projects, Mechanical Projects, Electrical Projects, Power Electronics Projects, Power System Projects, Model Projects, Java Projects, J2EE Projects, Engineering Projects, Student Projects, Engineering College Projects, MCA Projects, BE Projects, BTech Projects, ME Projects, MTech Projects, Wireless Networks Projects, Network Security Projects, Networking Projects, final year projects, ieee projects, student projects, college projects, ieee projects in chennai, java projects, software ieee projects, embedded ieee projects, "ieee2009projects", "final year projects", "ieee projects", "Engineering Projects", "Final Year Projects in Chennai", "Final year Projects at Chennai"
An embedded system is a combination of computer hardware and software designed for a specific function within a larger mechanical or electrical system. Embedded systems use microcontrollers or microprocessors and include additional components like timers, interrupt controllers, and I/O devices. They are used in devices ranging from small portable devices like MP3 players to large stationary installations like traffic lights or nuclear power plants. Embedded systems are designed to perform predefined tasks with specific hardware and software configurations.
An embedded system is a combination of computer hardware and software designed for a specific function within a larger mechanical or electrical system. Embedded systems use microcontrollers or microprocessors and are commonly found in devices like digital watches, DVD players, traffic lights, and industrial controllers. They range in complexity from low-cost systems with a single microcontroller chip to sophisticated cyber-physical systems with multiple units and networks.
It is a presentation for the Embedded System Basics. It will be very useful for the engineering students who need to know the basics of Embedded System.
This document provides an overview of embedded systems topics including:
1. It outlines an agenda to cover embedded system basics, processors and architectures, serial communication, real-time operating systems, and embedded programming demos.
2. It defines embedded systems as systems with dedicated software embedded in hardware to perform specific tasks as part of a larger system.
3. It discusses different processor types including microprocessors, microcontrollers, digital signal processors, and application specific integrated processors.
All the concepts of 8051 Micro controller have been explained in detail. Also some information on Embedded Systems. The Presentation deals with Processors & Microcontrollers from first generation to the present generation. This presentation an invaluable compendium of knowledge to the individuals trying to explore the field of electronics. Moreover, a complete coverage for Mumbai University students have been made available.
This document summarizes a report submitted by Amiyodyuti ganguly for their 5th semester diploma in electronics and communication from Dayananda Sagar Institute of Technology in Bangalore. The report discusses the history and development of microprocessors from early specialized designs like the CADC from 1968 used in aircraft, to early general purpose microprocessors like the Intel 4004 introduced in 1971. It covers the evolution of microprocessor designs from 4-bit to 8-bit to 16-bit and beyond, as well as the integration of additional components like floating point units and cache memory.
The document provides an overview of microcontrollers and embedded systems. It defines an embedded system and describes their characteristics such as real-time operation, small size, low power usage, and operation in harsh environments. It discusses the hardware components of typical embedded systems including microcontrollers. It then focuses on the 8051 microcontroller, describing its architecture and pin layout.
The document discusses embedded systems and microcontrollers. It defines an embedded system as a combination of computer hardware and software designed for a specific application. Microcontrollers are similar to microprocessors but have memory and I/O integrated on a single chip, making them well-suited for embedded applications that require low cost, low power consumption, and small size. The 8051 microcontroller is commonly used in embedded systems due to its low price and availability of development tools. Programming techniques for microcontrollers include assembly language and high-level languages like C.
An embedded system is a combination of the computer hardware and software accomplished with additional mechanical or other parts designed to perform a specific function.
Embedded software is an almost every electronic device in the use today. There is a software hidden away inside our watches, VCR's, cellular phones.A well-designed embedded system conceals the existence of the processor and the software .
http://www.edgefxkits.com/
Visit our page to get more ideas on embedded system by professionals.
Edgefx provides free verified embedded system kits around the world with abstracts, circuit diagrams, and free electronic software. We provide guidance manual for Do It Yourself Kits (DIY) with the modules at best price along with free shipping.
The document discusses key aspects of embedded system design. It describes embedded systems as single-functioned, tightly-constrained, and reactive in real-time. An example of a digital camera is provided. Key design challenges involve optimizing metrics like cost, size, performance and power. The document outlines three key embedded system technologies: processor technology including general-purpose, single-purpose and application-specific processors; integrated circuit technologies like full-custom ASICs, semi-custom ASICs and programmable logic devices; and design technologies.
We are the Best Embedded Systems Training Institute in Hyderabad, Want to learn Advanced Courses like Vector Embedded Systems, DSP and VLSI Embedded Systems. Register now for new batches Call Us-040 -23754144,+91- 9640648777
Design of a low power processor for Embedded system applicationsROHIT89352
The document describes the design of a low power processor for embedded systems. It uses clock gating techniques and a standby mode to reduce power consumption. The processor is designed based on a modified MIPS microarchitecture and can operate using the RV32E instruction set. It has been implemented at the register transfer level in Verilog and synthesized into an 180nm CMOS technology. The processor consumes 189uA in normal mode and 11.1uA in standby mode, achieving low power operation.
Project report on embedded system using 8051 microcontrollerVandna Sambyal
The document describes a home security prototype project that was developed using an 8051 microcontroller to control various devices like LEDs, DC motors, relays and sensors. It provides details on the circuit diagram and working of the home security system, which uses components like a microcontroller, motion sensor, door sensor and siren to detect intrusion and alert users. The document also includes information on microcontrollers, their architecture, programming and how to interface them with external devices.
Similar to EC8791 EMBEDDED AND REALTIME SYSTEMS.pptx (20)
Embedded machine learning-based road conditions and driving behavior monitoringIJECEIAES
Car accident rates have increased in recent years, resulting in losses in human lives, properties, and other financial costs. An embedded machine learning-based system is developed to address this critical issue. The system can monitor road conditions, detect driving patterns, and identify aggressive driving behaviors. The system is based on neural networks trained on a comprehensive dataset of driving events, driving styles, and road conditions. The system effectively detects potential risks and helps mitigate the frequency and impact of accidents. The primary goal is to ensure the safety of drivers and vehicles. Collecting data involved gathering information on three key road events: normal street and normal drive, speed bumps, circular yellow speed bumps, and three aggressive driving actions: sudden start, sudden stop, and sudden entry. The gathered data is processed and analyzed using a machine learning system designed for limited power and memory devices. The developed system resulted in 91.9% accuracy, 93.6% precision, and 92% recall. The achieved inference time on an Arduino Nano 33 BLE Sense with a 32-bit CPU running at 64 MHz is 34 ms and requires 2.6 kB peak RAM and 139.9 kB program flash memory, making it suitable for resource-constrained embedded systems.
Using recycled concrete aggregates (RCA) for pavements is crucial to achieving sustainability. Implementing RCA for new pavement can minimize carbon footprint, conserve natural resources, reduce harmful emissions, and lower life cycle costs. Compared to natural aggregate (NA), RCA pavement has fewer comprehensive studies and sustainability assessments.
A review on techniques and modelling methodologies used for checking electrom...nooriasukmaningtyas
The proper function of the integrated circuit (IC) in an inhibiting electromagnetic environment has always been a serious concern throughout the decades of revolution in the world of electronics, from disjunct devices to today’s integrated circuit technology, where billions of transistors are combined on a single chip. The automotive industry and smart vehicles in particular, are confronting design issues such as being prone to electromagnetic interference (EMI). Electronic control devices calculate incorrect outputs because of EMI and sensors give misleading values which can prove fatal in case of automotives. In this paper, the authors have non exhaustively tried to review research work concerned with the investigation of EMI in ICs and prediction of this EMI using various modelling methodologies and measurement setups.
ACEP Magazine edition 4th launched on 05.06.2024Rahul
This document provides information about the third edition of the magazine "Sthapatya" published by the Association of Civil Engineers (Practicing) Aurangabad. It includes messages from current and past presidents of ACEP, memories and photos from past ACEP events, information on life time achievement awards given by ACEP, and a technical article on concrete maintenance, repairs and strengthening. The document highlights activities of ACEP and provides a technical educational article for members.
Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapte...University of Maribor
Slides from talk presenting:
Aleš Zamuda: Presentation of IEEE Slovenia CIS (Computational Intelligence Society) Chapter and Networking.
Presentation at IcETRAN 2024 session:
"Inter-Society Networking Panel GRSS/MTT-S/CIS
Panel Session: Promoting Connection and Cooperation"
IEEE Slovenia GRSS
IEEE Serbia and Montenegro MTT-S
IEEE Slovenia CIS
11TH INTERNATIONAL CONFERENCE ON ELECTRICAL, ELECTRONIC AND COMPUTING ENGINEERING
3-6 June 2024, Niš, Serbia
Batteries -Introduction – Types of Batteries – discharging and charging of battery - characteristics of battery –battery rating- various tests on battery- – Primary battery: silver button cell- Secondary battery :Ni-Cd battery-modern battery: lithium ion battery-maintenance of batteries-choices of batteries for electric vehicle applications.
Fuel Cells: Introduction- importance and classification of fuel cells - description, principle, components, applications of fuel cells: H2-O2 fuel cell, alkaline fuel cell, molten carbonate fuel cell and direct methanol fuel cells.
2. UNIT I
INTRODUCTION TO EMBEDDEDSYSTEM DESIGN
Complex systems and micro processors– Embedded system design process –
Design example: Model train controller- Design methodologies- Design flows
– Requirement Analysis – Specifications-System analysis and architecture
design – Quality Assurance techniques - Designing with computing platforms
– consumer electronics architecture –platform-level performance analysis.
3. Today’s Lecture
What is the embedded system?
An embedded system is one that has
computer-hardware with software
embedded in it as one of its most important
component.
An embedded system has three main components
Hardware ,Application software andRTOS
5. COMPLEX SYSTEMS AND
MICROPROCESSORS
Embedding Computers
Characteristics of Embedded
Computing Applications
Why use microprocessors?
Challenges in Embedded Computing
System Design
Performance in Embedded Computing
6. Embedding Computers
Embedded Systemsare
everywhere
Ubiquitous, invisible
Hidden (computer inside)
Dedicated purpose
MicroProcessor
Intel: 4004, ..8080,.. x86
Freescale: 6800, .. 9S12,..
PowerPC
ARM, DEC, SPARC, MIPS,
PowerPC, Natl. Semi.,…
MicroController
Processor+Memory+
I/O Ports(Interfaces)
I/O Ports
Electrical,
mechanical,
chemical,
or
optical
devices
Embedded system
Bus ADC
Analog
signals
Microcontroller LM3S orTM4C
DAC
Processor
RAM
ROM
Medical
Automotive
Communications
Comsumer Industrial
Military
7. Early History
Late 1940’s: MIT Whirlwind computer was designed for real-
time operations.
Originally designed to control an aircraft simulator.
First microprocessor was Intel 4004 in early1970’s.
HP-35 calculator used several chips to implement a
microprocessor in 1972.
Automobiles used microprocessor-based engine controllers
starting in 1970’s.
Controlfuel/air mixture, engine timing, etc.
Provides lower emissions, betterfuel efficiency.
8. A Short List of Embedded Systems
Anti-lock brakes
Auto-focus cameras
Automatic teller machines
Automatic toll systems
Automatic transmission
Avionic systems
Battery chargers
Camcorders
Cell phones
Cell-phone basestations
Cordless phones
Cruise control
Curbside check-in systems
Digital cameras
Disk drives
Electronic card readers
Electronic instruments
Electronic toys/games
Factory control
Fax machines
Fingerprint identifiers
Home security systems
Life-support systems
Medical testingsystems
Modems
MPEG decoders
Network cards
Network switches/routers
On-board navigation
Pagers
Photocopiers
Point-of-sale systems
Portable video games
Printers
Satellite phones
Scanners
Smart ovens/dishwashers
Speech recognizers
Stereo systems
Teleconferencing systems
Televisions
Temperature controllers
Theft tracking systems
TV set-top boxes
VCR’s, DVD players
Video game consoles
Video phones
Washers anddryers
10. Components of Embedded Systems
Analog Digital Analog
Coprocessors
Converters
Processor
Memory Controllers Interface
Software
(Application Programs)
ASIC
11. Components of Embedded Systems
Analog Components
Sensors, Actuators, Controllers, …
Digital Components
Processor, Coprocessors
Memories
Controllers, Buses
Application Specific Integrated Circuits(ASIC)
Converters – A2D, D2A,…
Software
Application Programs
Exception Handlers
14. BMW 850i Brake and Stability Control
System
An antilock brake system (ABS) reduces skidding by
pumping the brakes.
An automatic stability control Plus Traction (ASC + T)
system intervenes with the engine during drive to
improve the car’sstability
the ASC + T is integrated with the ABS functions.
There is a single electronic control unit (with more
processing power than an ABS-only unit), and the
same four spinning toothed rings with magnetic
pickups to determine individual wheel speeds.
15. BMW 850i Brake and Stability Control
System
The purpose of an ABS is to temporarily release the brake on a wheel when it
rotates too slowly—when a wheel stops turning, the car starts skidding and
becomes hard to control. It sits between the hydraulic pump, which provides
power to the brakes, and the brakes themselves as seen in the diagram. This
hookup allows the ABS system to modulate the brakes in order to keep the
wheels from locking. The ABS system uses sensors on each wheel to measure
the speed of the wheel. The wheel speeds are used by the ABS system to
determine how to vary the hydraulic fluid pressure to prevent the wheels from
skidding.
The hydraulic control unit has four channels. The ABS-only unit has three
channels,only one for both rear wheels. Separate rear channels are required
for individual control of rear wheel spin. (ASC + T system has even better
braking performance).
ABS has to control the braking force at all four wheels. ASC + T has to control
the power delivery of the engine, and the way the rear differential distributes
torque between the two back wheels.
16. The ASC + T control unit has a high-speed (CAN) data link to themain
engine control unit, and has control of a throttle actuator motor. This
allows it to reduce engine power.
There is a dashboard switch that allows the ASC + T to be disabled (but
the ABS functions remain active).
The ASC + T system determines that a wheel is spinning by comparing
the rear wheels' speed to the front. Also, there is probably a maximum
wheel acceleration threshold built into thesystem.
The ASC + T system intervenes in two stages: When it detects one rear
wheel near the threshold of adhesion, it starts to rapid pulse the brake to
that wheel (just like ABS). When the second rear wheel nears the limitof
adhesion, engine power is reduced.
The first stage (single wheel braking) actually improvesvehicle
performance. The second stage is reducing engine power.
BMW 850i Brake and Stability Control
System
18. Characteristics of Embedded Systems
Very high performance, sophisticated functionality
Vision + compression + speech + networking all on the same
platform.
ComplexAlgorithms
User Interfaces
Multiple task, heterogeneous.
Real-time.
Often low power.
Low manufacturing cost..
Highly reliable.
I reboot my piano every 4 months, my PC every day.
Designed to tight deadlines by small teams.
19. Why Use Microprocessors?
Alternatives: field-programmable gate arrays
(FPGAs), custom logic, application specific
integrated circuit (ASIC), etc.
Microprocessors are often very efficient: can use
same logic to perform many different functions.
Microprocessors simplify the design of families of
products.
20. Why Use Microprocessors?
Two factors that work together to make
microprocessor-based designs fast
First, microprocessors execute programs very
efficiently. While there is overhead that must
be paid for interpreting instructions, it can often
be hidden by clever utilization of parallelism
within the CPU
Second, microprocessor manufacturers spend
a great deal of money to make their CPUs run
very fast.
21. Why Use Microprocessors?
Performance
Microprocessors use much more logic to implement a
function than does custom logic.
But microprocessors are often at least as fast:
heavily pipelined;
large design teams;
aggressive VLSI technology.
Power consumption
Custom logic is a clear winner for low power devices.
Modern microprocessors offer features to help control power
consumption.
Software design techniques can help reduce power
consumption.
Heterogeneous systems: some custom logic for well-defined
functions, CPUs+ software for everything else.
22. Microprocessor Varieties
Microcontroller: includes I/O devices, on-board
memory.
Digital signal processor (DSP): microprocessor
optimized for digital signal processing.
Typical embedded word sizes: 8-bit, 16-bit, 32-bit.
23. Microprocessor Varieties
4-bit, 8-bit, 16-bit, 32-bit :
8-bit processor : more than 3 billion new chips per year
32-bit microprocessors : PowerPC, 68k, MIPS, and
ARM chips.
ARM-based chips alone do about triple the volume that
Intel and AMD peddle to PC makers.
Most (98% or so) 32-bit processors are used in
embedded systems, not PCs.
RISC-type processor owns most of the overall
embedded market [MPF: 2002].
25. The physics of software
Computing is a physical act.
Software doesn’t do anything without hardware.
Executing software consumes energy, requires
time.
To understand the dynamics of software (time,
energy), we need to characterize the platform on
which the software runs.
26. Challenges in Embedded Computing System Design
How much hardware do we need?
How big is the CPU? Memory?
more hardware - capabilities -more money
How do we meet deadlines?
Faster hardware or cleverer software
How do we minimize power consumption?
Turn off unnecessary logic
Reduce memory accesses
Run at slower clock rate
27. Challenges in Embedded Computing
System Design
Does it really work?
Is the specification correct?
Does the implementation meet the specification?
How do we test for real-time characteristics?
How do we test on real data?
How do we work on thesystem?
Observability and controllability
What is our development platform?
28. What does “Performance” mean?
In general-purpose computing, performance often
means average-case, may not be well-defined.
In real-time systems, performance means
meeting deadlines.
Missing the deadline by even a little is bad.
Finishing ahead of the deadline may not help.
29. Characterizing performance
We need to analyze the system at several levels
of abstraction to understand performance:
CPU: microprocessor architecture.
Platform: bus, I/O devices.
Program: implementation, structure.
Task: multitasking, interaction between tasks.
Multiprocessor: interaction between processors.
30. Design methodologies
A procedure for designing a system.
Understanding your methodology helps you
ensure you didn’t skip anything.
Compilers, software engineering tools, computer-
aided design (CAD) tools, etc., can be used to:
help automate methodology steps;
keep track of the methodology itself.
31. Design goals
Performance.
Overall speed, deadlines.
Functionality and user interface.
Manufacturing cost.
Power consumption.
Other requirements (physical size, etc.)
33. Top-down vs. bottom-up
Top-down design:
start from most abstract description;
work to most detailed.
Bottom-up design:
work from small components to big system.
Real design uses both techniques.
34. Stepwise refinement
At each level of abstraction, we must:
analyze the design to determine characteristics
of the current state of the design;
refine the design to add detail.
35. Requirements
Plain language description of what the user
wants and expects to get.
May be developed in several ways:
talking directly to customers;
talking to marketing representatives;
providing prototypes to users for comment.
36. Functional vs. non-functional requirements
Functional requirements:
output as a function of input.
Non-functional requirements:
time required to computeoutput;
size, weight, etc.;
power consumption;
reliability;
Performance -Speed
Cost – Manufacturing Cost andNonrecurring
Engineering Cost
38. Example: GPS moving map requirements
Moving map
obtains position
from GPS, paints
map from local
database.
lat: 40 13 lon: 32 19
I-78
Scotch
Road
39. GPS moving map needs
Functionality: For automotive use. Show major
roads and landmarks.
User interface: At least 400 x 600 pixel screen.
Three buttons max. Pop-up menu.
Performance: Map should scroll smoothly. No
more than 1 sec power-up. Lock onto GPS within
15 seconds.
Cost: $120 street price = approx. $30 cost of
goods sold.
40. GPS moving map needs, cont’d.
Physical size/weight: Should fit in hand.
Power consumption: Should run for 8 hours
on four AA batteries.
41. GPS moving map requirements form
name
purpose
inputs
outputs
functions
performance
manufacturing cost
power
physical size/weight
GPS moving map
consumer-grade
moving map for driving
power button, two
control buttons
back-lit LCD 400 X 600
5-receiver GPS; three
resolutions; displays
current lat/lon
updates screen within
0.25 sec of movement
$100 cost-of-goods-
sold
100 mW
no more than 2: X 6:,
12 oz.
42. Specification
A more precise description of the system:
should not imply a particular architecture;
provides input to the architecture design
process.
May include functional and non-functional
elements.
May be executable or may be in
mathematical form for proofs.
43. GPS specification
Should include:
What is received from GPS;
map data;
user interface;
operations required to satisfy user requests;
background operations needed to keep the
system running.
44. Architecture design
What major components go satisfying the
specification?
Hardware components:
CPUs, peripherals, etc.
Software components:
major programs and their operations.
Must take into account functional and non-
functional specifications.
47. GPS moving map software architecture
position database
search renderer
timer
user
interface
pixels
48. Designing hardware and software components
Must spend time architecting the system before
you start coding.
Some components are ready-made, some can
be modified from existing designs, others must be
designed from scratch.
49. System integration
Put together thecomponents.
Many bugs appear only at this stage.
Have a plan for integrating components to
uncover bugs quickly, test as much functionality
as early as possible.
50. Summary
Embedded computers are all around us.
Many systems have complex embedded
hardware and software.
Embedded systems pose many design
challenges: design time, deadlines, power,
etc.
Design methodologies help us manage the
design process.
51. ⦿ Top down Design or Stepwise Refinement: This starts from the
end solution and works backwards, refining each step along the
way.
⦿ Bottom Up Design: This methodology starts with a foundation
and works up towards a solution.
⦿ Structured Design: This is an industry standard. The technique
starts by identifying inputs and desired outputs to create a
graphical representation.
approach
system's
⦿ Structured Analysis and Design Technique: This
utilizes a diagram to describe the hierarchy of a
functions.
⦿ Data Structured Systems Development:Data structure
determines the system structure in this methodology.
⦿ Object Oriented Design: This methodology is based on a system
of interacting objects
52. ⦿ The goal of a design process is to create a product that
does something useful to the society.
⦿ Functionality (e.g., cell phone),
⦿ Manufacturing cost (must have a retail price below
$200),
⦿ Performance (must power up within 3 s),
⦿ Power consumption (must run for 12 h on two AA
batteries) and
⦿ Time-to-market: Customers always want new features.
⦿ Design cost
⦿Quality
53. ⦿Design flow: sequence of steps in a
design methodology.
⦿May be partially or fully automated.
• Use tools to transform, verify design.
⦿Design flow is one component of
methodology. Methodology also includes
management organization, etc.
54. ⦿Early model for software development:
requirements
coding
testing
maintenance
entails deployment in the field, bug fixes,
and upgrades.
exercise and uncovers bugs
decomposes the functionality into major
components
architecture
implements the pieces
and integrates them
determines the basic characteristics of the
system
55. ⦿Only local feedback---may need
iterations between coding and
requirements
⦿Doesn’t integrate top-down and bottom-
up design.
⦿it is an unrealistic design process
57. ⦿Successive refinement of system.
• Start with mock-ups(proto type), move through
simple systems to full-scale systems.
⦿Provides bottom-up feedback from
previous stages.
⦿Working through stages may take too
much time.
60. ⦿Must architect hardware and software
together:
• provide sufficient resources;
• avoid software bottlenecks.
⦿Can build pieces somewhat
independently, but integration is major
step.
⦿Requires bottom-up feedback.
61. ⦿Embedded systems must be designed
across multiple levels of abstraction:
• system architecture;
• hardware and software systems;
• hardware and software components.
⦿Often need design flows within design
flows.
62.
63. ⦿Large projects use many people from
multiple disciplines.
⦿Work on several tasks at once to reduce
design time.
⦿Feedback between tasks helps improve
quality, reduce number of later design
problems.
64. ⦿Cross-functional teams - including manufacturing,
hardware and software design,marketing
⦿Concurrent product realization - designing various
subsystems simultaneously
⦿ Incremental information sharing - helps minimize the
chance
⦿ Integrated product management - ensures that someone
is responsible for the entire project
⦿ Supplier involvement - make the best use of suppliers’
capabilities.
⦿ Customer focus - ensure that the product best meets
customers’needs.
65. ⦿ Requirements: informal description of what
customer wants.
⦿ Specification: more detailed, precise, and
consistent descriptions of the system that can
be used to create the architecture .
⦿The overall goal of creating a requirements
document is effective communication between
the customers and the designers.
68. ⦿Modifiable: can update requirements
easily.
⦿Traceable:
• know why each requirement exists;
• go from source documents to requirements;
• go from requirement to implementation;
• back from implementation to requirement.
69. ⦿Customer interviews.
⦿Comparison with competitors.
⦿Sales feedback.
⦿Mock-ups,prototypes.
⦿Next-bench syndrome (HP): design a
product for someone like you.
70. ⦿C apture functional and non-functional
properties:
• verify correctness of spec;
• compare spec to implementation.
⦿Many specification styles:
• control-oriented vs. data-oriented;
• textual vs.graphical.
⦿UML is one specification/design
language.
72. ⦿Statecharts are used to describe the behaviour of a
system and describe all of the possible states of an
object as events acting upon it.The Statechartnotation
uses an event-driven model.
⦿Ancestor of UML state diagrams.
⦿Provided composite states:
• OR states;
• AND states.
⦿Composite states reduce the size of the state transition
graph.
⦿ Statecharts are useful for describing large,complex,
reactive systems
73. ⦿Use statecharts for classes where it is necessary to
understand the behaviour of the object through the
entire system.
⦿Not all classes will require a statechart, and there aren’t
useful for describing the collaboration of all objects in
a use case.
⦿ Statecharts are combined with other diagrams such as
interaction diagrams and activity diagrams
74. ⦿ States: they’re represented by rounded boxes and show the state of the
object. The arrow between states indicates the transition.
⦿ All the diagrams begin with a“start state”and ends with a“final state”.
Transition: they’re represented by an
arrow from one to other state.
75.
76. ⦿ -> And-states: Have orthogonal components that are related by
“and”. They’re represented graphically as rounded rectangles
(parent state) divided by dashed lines
⦿-> Or-states: This is, if the state of the high level is active, only one
of the internal states will be active.
77. ⦿Well-known method for analyzing a system and
developing an architecture.
⦿ It encourages the encapsulation of data and functions
⦿CRC:A Class Responsibility Collaborator (CRC) model
is a collection of standard index cards that have been
divided into three sections
• Classes;
• Responsibilities of each class;
• Collaborators are other classes that work with a
class.
⦿Team-oriented methodology.
79. ⦿Develop an initial list of classes.
• Simple description is OK.
• Team members should discuss their choices.
⦿Write initial
responsibilities/collaborators.
• Helps to define the classes.
⦿C reate some usage scenarios.
• Major uses of system and classes.
80. ⦿Walk through scenarios.
• See what works and doesn’t work.
⦿Refine the classes, responsibilities,and
collaborators.
⦿Add class relatoinships:
• superclass, subclass.
81. ⦿Real-world classes:
• elevator car,passenger,floor control,car control,
car sensor.
⦿Architectural classes: car state,floor
control reader, car control reader,car
control sender,scheduler.
82. class responsibilities collaborators
Elevator car* Move up and down Car control, car
sensor, car control
sender
Car control*
Car state
Transmits car
requests
Reads current
position of car
Passenger
, floor
control reader
Scheduler
, car
sensor
87. Hardware and software
architectures
Hardware and software areintimately
related:
software doesn’t run without hardware;
how much hardware you need is
determined by the software requirements:
speed;
memory.
88. Evaluation boards
Basic Platform chip and a variety ofI/O
Devices
Designed by CPU manufacturer orothers.
Includes CPU, memory, some I/O devices.
May include prototyping section.
CPU manufacturer often gives out
evaluation board netlist---can be usedas
starting point for your custom board
design.
89. Beegle board
open source platform is used to develop a
low-cost board for embedded systems. This
board consists of ARM Cortex TM –A8
processor, several built-in I/O devices and
many connectors (flash memory, video and
audio). It is primarily intended to support
software development and serve as a
starting point for a product design
90. Adding logic to a board
Programmable logic devices (PLDs)
provide low/medium density logic.
Field-programmable gate arrays (FPGAs)
provide more logic and multi-level logic.
Application-specific integrated circuits
(ASICs) are manufactured for a single
purpose.
91. The PC as a platform
Advantages:
cheap and easy to get;
rich and familiar software environment.
Disadvantages:
requires a lot of hardware resources;
not well-adapted to real-time.
More power hungry
More expensive
92. Typical PC hardware
platform
CPU
CPU bus
memory
DMA
controller
timers
bus
interface
bus
interfac
e
high-speed bus
low-speed bus
device
device
intr
ctrl
93. Typical PC hardware
platform
The CPU provides basic computational facilities.
RAM is used for programstorage.
ROM holds the boot program.
A DMA controller provides DMA capabilities.
Timers are used by the operating system for a variety of purposes.
A high-speed bus, connected to the CPU bus through a bridge,
allows fast devices to communicate efficiently with the rest ofthe
system.
A low-speed bus provides an inexpensive way to connectsimpler
devices and may be necessary for backward compatibility aswell.
94. Typical busses
PCI: standard for high-speed interfacing
33 or 66 MHz.
PCI Express.
USB (Universal Serial Bus), Firewire (IEEE
1394): relatively low-cost serial interface
with high speed.
95. Software elements
IBM PC uses BIOS (Basic I/O System) to
implement low-level functions:
boot-up;
minimal device drivers.
BIOS has become a generic term forthe
lowest-level system software.
96. Example: StrongARM
StrongARM system includes:
CPU chip (3.686 MHz clock)
system control module (32.768 kHz clock).
• Real-time clock;
• operating system timer
• general-purpose I/O;
• interrupt controller;
• power manager controller;
• reset controller.
97. Host/target design
Use a host system to prepare software for
target system:
target
system
serial line
host system
99. Software debuggers
A monitor program residing on the target
provides basic debugger functions.
Debugger should have a minimal footprint in
memory.
User program must be careful not to destroy
debugger program, but , should be able to
recover from some damage caused by user
code.
100. Debugging Techniques
The serial port (USB)- development debugging but also for
diagnosing problems in thefield.
A breakpoint allows the user to stop execution, examine system
state, and change state and to specify an address at which the
program’s execution is to break
LEDs can be used to show error conditions, when the code enters
certain routines, or to show idle timeactivity
The microprocessor in-circuit emulator (ICE) is a specialized
hardware tool that can help debug software in a working embedded
system. Allows you to stop execution, examine CPU state, modify
registers.
A logic analyzer is an array of low-grade oscilloscopes
101. Breakpoints
A breakpoint allows the user to stop
execution, examine system state, and change
state.
Replace the breakpointed instruction with a
subroutine call to the monitor program.
102. Breakpoint handler actions
Save registers.
Allow user to examine machine.
Before returning, restore system state.
Safest way to execute the instruction is to replace it and execute in place.
Put another breakpoint after the replaced breakpoint to allow restoring
the original breakpoint.
103. In-circuit emulation &
logic analyzer
*In-circuit emulation (ICE) is the use of a hardware device or in-
circuit emulator used to debug the software of an embedded system.
It operates by using a processor with the additional ability to support
debugging operations, as well as to carry out the main function of the
system.
*A logic analyzer is an electronic instrument that captures and displays
multiple signals from a digital system or digital circuit. A logic analyzer
may convert the captured data into timing diagrams, protocol
decodes, state machine traces, assembly language, or may correlate
assembly with source-level software. Logic analyzers have advanced
triggering capabilities, and are useful when a user needs to see the
timing relationships between many signals in a digital system
106. Debugging Challenges
Logical errors in software can be hard to track down, but errorsin
real-time code can create problems that are even harder to
diagnose.
Real-time programs are required to finish their work within a
certain amount of time; if they run too long, they can create much
unexpected behavior.
The exact results of missing real-time deadlines depend on the
detailed characteristics of the I/O devices and the nature of the
timing violation. This makes debugging real-time problems
especially difficult
107. Boundary scan
Simplifies testing of
multiple chips on a
board.
Registers on pins can
be configured as a
scan chain.
Used for debuggers,
in-circuit emulators.
108. How to exercise code
Run on host system.
Run on target system.
Run in instruction-level simulator.
Run on cycle-accurate simulator.
Run in hardware/software co-simulation
environment.
109. Debugging real-time code
Bugs in drivers can cause non-
deterministic behavior in the foreground
problem.
Bugs may be timing-dependent.
111. Bandwidth as performance
Bandwidth applies to several components:
Memory.
Bus.
CPU fetches.
Different parts of the system run at
different clock rates.
Different components may have different
widths (bus, memory).
112. Bandwidth and data
transfers
Video frame: 320 x 240 x 3 = 230,400
bytes.
Transfer in 1/30 = 0.034 sec.
if Transfer 1 byte/sec, then
230400/1000000= 0.23 sec/ frame.
Too slow.
Increase bandwidth:
Increase bus width.
Increase bus clock rate.
113. Bus bandwidth (W)
T: # bus cycles.
P: time/bus cycle.
Total time for
transfer:
t = TP.
D: each data
payload length.
O1 + O2 = overhead
O.
N-Total no. of payload
O1 D O2
W
Tbasic(N) = (D+O)N/W
114. Bus burst transfer
bandwidth(Burst size=B)
T: # bus cycles.
P: time/bus cycle.
Total time for
transfer:
t = TP.
D: data payload
length.
O1 + O2 = overhead
O.
B O
W
burst
T (N) = (BD+O)N/(BW)
1 2
…
115. Memory aspect ratios (variable bus
width memories-select one based on application)
16 M
64 M
8 M
1 4 8
116. Memory access times
Memory component access times comes
from chip data sheet.
Page modes allow faster access for
successive transfers on same page.
If data doesn’t fit naturally into physical
Words, total no of access reqd to read
E data elements, each of w bits:
A = [(E/W)mod W]+1 and W is memory
width.
117. Bus performance bottlenecks
Transfer 320 x 240
video frame @ 30
frames/sec = 612,000
bytes/sec.
Is performance
bottleneck bus or
memory?
memory CPU
119. Parallelism
Speed things up by
running several units
at once.
DMA provides
parallelism if CPU
doesn’t need the bus:
DMA + bus.
CPU.
120. Consumer electronics
architecture
A.Functional requirements:
1. Multimedia – mp3,mp4,mpeg,jpeg
2. data storage and management – PC compatible files
3. Communications – USB, Ethernet
B. Non-Functional requirements- Low power, Cheap, High
performance, Sophistication
C. Hardware architectures-RISC CPU, DSP
D.Operating systems-Processes, concurrency, dynamic
operation
E.DOS file systems - Small
F.Flash memory – Simple to Write/Delete
121. Consumer electronics use
cases
Multimedia: stored in
compressed form,
uncompressed on viewing.
Data storage and
management: keep track of
your multimedia, etc.
Communication: download,
upload, chat.
123. CE devices and hosts
Many devices talk to host
system.
PC host does things that are hard
to do on the device.
Increasingly, CE
devices communicate
directly over the
network, avoiding the
host for access.
124. Platforms and operating
systems
Many CE devices use a DSP for
signal processing and a RISC
CPU for other tasks.
I/O devices include buttons,
screen, USB.
125. Flash file systems
Flash is widely used for mass storage.
Flash wears out on writing (up to 1 million
cycles).
Directory is most often written, wears out first.
Flash file system has layer that moves
contents to levelize wear.
Hides wear leveling from API.
126. Cell phones
Most popular CE
device in history;
most widely used
computing device.
1 billion sold per year.
Handset talks to cell.
Cells hand off handset
as it moves.
127. Cell phone platforms
Today’s cell phones use analog
front end, digital baseband
processing.
Future cell phones will perform IF
processing with DSP.
Baseband processing in DSP:
Voice compression.
Network protocol.
Other processing:
Multimedia functions.
User interface.
File system.
Applications (contacts, etc.)
128. Quality Assurance Techniques
Quality management based on ISO 9000:
•Process is crucial. Haphazard development leads to haphazard products and low
quality. Knowing what steps are to be followed to create a high-quality product is
essential to ensuring that all the necessary steps are in fact followed.
• Documentation is important. Documentation has several roles: The creation
of the documents describing processes helps those involved understand the
processes; documentation helps internal quality monitoring groups to ensure that
the required processes are actually being followed; and documentation also helps
outside groups (customers, auditors, etc.) understand the processes and how they
are being implemented.
•Communication is important. Quality ultimately relies on people. Good
documentation is an aid for helping people understand the total quality process.
The people in the organization should understand not only their specific tasks but
also how their jobs can affect overall system quality.
129. Quality Assurance Techniques contd…
Capability Maturity Model (CMM) - five levels of maturity:
1.Initial. A poorly organized process, with very few well-defined
processes. Success of a project depends on the efforts of individuals,
not the organization itself.
2. Repeatable. This level provides basic tracking mechanisms
that allow management to understand cost, scheduling, and how well
the systems under development meet their goals.
3.Defined. The management and engineering processes are
documentedandstandardized. All projects make use of documented
and approved standard methods.
4. Managed. This phase makes detailed measurements of the
development process and product quality.
5.Optimizing. At the highest level, feedback from detailed
measurements is used to continually improve the organization’s
processes.
130. The longer a bug survives in the system, the more expensive it will be to fix. A
coding bug, if not found until after system deployment, will cost money to recall
and reprogram existing systems, among other things. But a bug introduced earlier
in the flow and not discovered until the same point will accrue all those costs and
more costs as well.
131. Quality Assurance Techniques contd…
A design review team has several types of members:
•The designers of the component being reviewed are, of
course, central to the design process. They present their design
to the rest of the team for review and analysis.
• The review leader coordinates the pre-meeting activities, the
design review itself, and the post-meeting follow-up.
• The review scribe records the minutes of the meeting so that
designers and others know which problems need to be fixed.
•The review audience studies the component. Audience
members will naturally include other members of the project
for which this component is being designed. Audience members
from other projects often add valuable perspective
and may notice problems that team members have missed.
132. Quality Assurance Techniques contd…
The audience should look for all types of problems
at every level of detail:
•Is the design team’s view of the component’s
specification consistent with the overall system
specification, or has the team misinterpreted
something?
• Is the interface specification correct?
•Does the component’s internal architecture work
well?
• Are there coding errors in the component?
• Is the testing strategy adequate?